Concept Test demo · HTML DSL · GUI · runtime contracts
Build research surveys from inspectable HTML source, edit them in GUI, and keep the structure clear enough for AI agents to inspect.
Primary proof
1<question type="single" name="SQ1" required>2 <description>Consent</description>3 <options order="asc">4 <option value="1">Continue</option>Q6_{{item}} · Single choice
Loop, quota, and Survey Link continue from the same question names and option values.
Q6_{{item}} · Single choice
Loop
Named items stay explicit.
Quota
Workbook cells remain attached.
Survey Link
Runtime renders the same map.
Quota · Run generate · Survey Link
Mobile proof keeps the contract visible without stacking every desktop surface.
Product philosophy
Author in readable HTML, refine in GUI, and keep every runtime surface attached to the same structure.
Survey structure lives in HTML that researchers and engineers can inspect.
GUI changes stay attached to the same names, option values, and display styles.
Quota, response, Survey Link, and export behavior remain part of the contract.

AI-native by structure
The agent does not guess from a screenshot. It reads names, codes, conditions, loops, quotas, and runtime contracts.
1<survey id="concept_test">2<quota source="concept_quota" title="Concept assignment priority quota" />3<loop name="CT_CONCEPT_LOOP">4 <question type="ranking" name="Q8_{{item}}" display-style="accordion" />5 <question type="number" name="Q10_{{item}}" display-style="slider" />6 <question type="nps" name="Q11_{{item}}" display-style="carousel" />7</loop>8</survey>Product proof
Source
Inspectable
Editor
Aligned
Runtime
Named
Export
Predictable
1<survey id="concept_test">2<quota source="concept_quota" title="Concept assignment priority quota" />3<loop name="CT_CONCEPT_LOOP">4 <question type="ranking" name="Q8_{{item}}" display-style="accordion" />5 <question type="number" name="Q10_{{item}}" display-style="slider" />6 <question type="nps" name="Q11_{{item}}" display-style="carousel" />7</loop>8</survey>Blocks
Selected question
Q10_{{item}} · Slider number
Mode: float · Display-style: slider · Validation: 0–100
The same identifiers move from authoring through respondent runtime and export without becoming image-only proof.
Names, option codes, display-style, and authored logic.
Editor controls for blocks, question types, options, and settings.
Screen-outs, conditions, loops, and run-code stay inspectable.
Assignment cells and quota helpers connect to runtime behavior.
Simulation checks the survey map before live collection.
Respondent pages render from the same source contract.
Collected answers retain source, quota, and version context.
Response names, versions, and metadata stay predictable.
Core surfaces
Author, validate, preview, quota, collect, review, and export without splitting the survey into disconnected tools.
1<survey id="concept_test">2<quota source="concept_quota" title="Concept assignment priority quota" />3<loop name="CT_CONCEPT_LOOP">4 <question type="ranking" name="Q8_{{item}}" display-style="accordion" />5 <question type="number" name="Q10_{{item}}" display-style="slider" />6 <question type="nps" name="Q11_{{item}}" display-style="carousel" />7</loop>8</survey>Condition graph
Export shape
responses · quota_table · version · metadata
Agent interfaces
Skills, MCP, and app surfaces can act on survey maps only because the source remains explicit.
Programmatic access for reasoning over survey structure and rules.
Inspect, summarize, and author surveys from explicit source.
Model Context Protocol endpoint for survey maps and operations.
Embedded app surface for building surveys inside agent workflows.