Skip to content

Quick Start Guide

This guide walks through the complete Askalot workflow from questionnaire design to statistical analysis.

Time to complete: ~15 minutes

The road on your home page follows the same order

The Roundtable home page shows these steps as a road for your project, with the next step marked. Its stages are, in order: connect an AI provider (only while you have none), goals in the paper, questionnaire validated, campaign with a pool, answers collected, dataset extracted, quality measured, paper chapter written. Step 1 below covers the goals and the questionnaire, Step 2 the campaign and its pool, Step 3 the answers, and Step 4 the dataset, its quality and the paper chapter. See the Research Flow Guide.

Step 1: Design in Armiger

Navigate to armiger.dev.askalot.io for AI-assisted questionnaire creation with real-time SMT validation.

Armiger lists the projects you can open. Pick one — your default project is there if you have not created any others — and the editor opens on it in your browser, showing that project's questionnaires, documents and Research Paper and nothing else. To work on a different project later, return to Armiger and choose it from the same list. The editor needs a desktop browser: Chrome or Edge 125, Firefox 147, Safari 26, or later. See Integration with Armiger.

To start a questionnaire without the AI assistant, choose New File on the questionnaires folder in the editor's Explorer and type a name.

Start from a template

The fastest start is a ready-made questionnaire from the template library: course evaluations, customer feedback, NPS, event registration, HR pulse checks, patient intake and several hundred more, in 13 categories.

You can browse the whole library before you sign up: the public template catalog shows every template with its flow diagram and its questions.

  • On the Roundtable home, choose Start from a template (the research flow guide's questionnaire step offers it too). Search by name or description, or browse a category. Opening a template shows a read-only preview: the questionnaire's flow diagram, the one the editor draws, with every section and question and the paths between them; nothing is created yet. Use this template adds a copy to the Project you pick (your default Project is preselected; the list holds the Projects you own) and then offers Edit, which opens it in the editor, or Run a campaign, which opens the new-campaign form with that Project and the new questionnaire already chosen.
  • In the editor, right-click the questionnaires folder and choose New Questionnaire from Template…, or run that command from the Command Palette. Type to search names and descriptions and pick one: its questionnaire opens read-only, and nothing is added to the Project yet. Choose Use this template (on the notice, or the button at the top right of the preview tab) to add your own copy and open it for editing; close the preview to drop it.
  • Over MCP, list_questionnaire_templates lists the library and create_questionnaire takes a template slug in place of content. See Questionnaire & QML Tools.

The copy is your own questionnaire from then on: change anything, and later versions of the library do not touch it. It is checked for logical soundness in the background a few seconds after it is created, like any saved version.

Create Your Questionnaire

Using AI Assistant:

Describe your survey requirements:

"Create a customer satisfaction survey. Ask about overall satisfaction, then conditionally ask about specific issues if satisfaction is low."

The AI generates QML code while the SMT solver validates logical consistency in real-time.

Example QML:

qmlVersion: "2.0"
questionnaire:
  title: "Customer Satisfaction Survey"
  codeInit: |
    satisfaction_level = 0
    needs_followup = 0

  blocks:
    - id: b_main
      title: "Your Experience"
      items:
        - id: q_overall
          kind: Question
          title: "How satisfied are you with our service?"
          codeBlock: |
            satisfaction_level = q_overall.outcome
            if q_overall.outcome <= 6:
                needs_followup = 1
          input:
            control: Slider
            min: 0
            max: 10
            labels:
              0: "Very Dissatisfied"
              5: "Neutral"
              10: "Very Satisfied"

        - id: q_reason
          kind: Question
          title: "What is the primary reason for your low rating?"
          precondition:
            - predicate: needs_followup == 1
          input:
            control: Radio
            labels:
              1: "Product quality"
              2: "Delivery time"
              3: "Customer service"
              4: "Pricing"

        - id: q_recommend
          kind: Question
          title: "Would you recommend us to others?"
          input:
            control: Switch
            on: "Yes"
            off: "No"

SMT Validation

Armiger automatically validates:

  • ✓ Reachability: All questions can be reached
  • ✓ Consistency: Validation rules are satisfiable
  • ✓ Acyclicity: No circular dependencies
  • ✓ Global satisfiability: Valid completion paths exist

Validation Output:

✓ All items reachable
✓ No circular dependencies detected
✓ Postconditions satisfiable
✓ Global formula: SAT

Flow paths: 2
  Path 1: q_overall → q_recommend (satisfaction > 6)
  Path 2: q_overall → q_reason → q_recommend (satisfaction ≤ 6)

Step 2: Build Campaign in Targetor

Navigate to targetor.dev.askalot.io to configure demographic targeting and launch your campaign.

Create Campaign

  1. Click "New Campaign"
  2. Configure settings:
  3. Name: "Q4 Customer Satisfaction"
  4. Target responses: 500
  5. Duration: 14 days

Import Respondents

Upload CSV or connect to user database:

user_id,email,age,gender,customer_segment
1001,[email protected],34,M,premium
1002,[email protected],28,F,standard

Configure Demographics

Target demographic distribution:

Age Distribution: - 18-24: 15% | 25-34: 30% | 35-44: 25% | 45-54: 20% | 55+: 10%

Customer Segment: - Premium: 30% | Standard: 70%

Targetor automatically calculates sample sizes and monitors real-time completion by segment.

Launch

  1. Attach the Customer Satisfaction questionnaire — this formally verifies it and pins the campaign to that exact version
  2. Review configuration
  3. Click "Launch Campaign"

Targetor generates unique survey links and begins distribution.

Step 3: Execute in SirWay

Respondents access sirway.dev.askalot.io via unique links.

Lazy Evaluation

SirWay evaluates questions dynamically based on current state:

  1. Initial state: Load questionnaire, initialize variables
  2. Dynamic flow: Present questions with satisfied preconditions
  3. Collect response: Execute codeBlock, update state
  4. Re-evaluate: Check preconditions for remaining questions
  5. Present next: Show newly eligible questions

Example Flow

Respondent: Slides satisfaction to 4/10
→ codeBlock executes: needs_followup = 1
→ Precondition evaluated: needs_followup == 1 ✓
→ Question appears: "What is the primary reason?"
→ Selects: "Delivery time"
→ Final question: "Would you recommend us?"
→ Survey complete

What Verification Keeps Out

A questionnaire can only be fielded after it passes verification, which refuses:

  • ❌ Questions with unsatisfiable preconditions (no respondent could reach them)
  • ❌ Answer checks no answer can satisfy
  • ❌ Conditions naming an answer no question produces
  • ❌ Circular dependencies

The check is against the questionnaire's formal model: every answer path the model contains is covered, not a sample of test runs.

Step 4: Analyze in Balansor

Navigate to balansor.dev.askalot.io for statistical correction and data export.

Build a Bundle

Balansor's home page is a board of Bundle cards. A Bundle binds one project, one questionnaire, and the campaigns you want to analyze into a single Bronze → Silver → Gold pipeline — every dataset step is scoped to it.

  1. Create a Bundle for "Q4 Customer Satisfaction" (project + questionnaire + its campaigns)
  2. Extract the Bronze dataset — raw responses with respondent demographics, no adjustments yet
  3. Balansor displays actual vs. target demographics

Response Distribution

Segment Target % Actual % Deviation
Age 18-24 15% 12% -3%
Age 25-34 30% 33% +3%
Premium 30% 35% +5%
Standard 70% 65% -5%

Derive the Silver Dataset

Deriving Silver codes any open-ended answers into categories first, then calculates post-stratification weights over that coded case base:

\[ w_i = \frac{N_{\text{target},g}}{N_{\text{sample},g}} \]

Example Weights: - Age 18-24: 1.25 (under-represented) - Age 25-34: 0.91 (over-represented) - Premium: 0.86 (over-represented) - Standard: 1.08 (under-represented)

Corrected Results

Before Rebalancing: - Average satisfaction: 6.8/10 - Recommend rate: 72%

After Rebalancing: - Average satisfaction: 6.5/10 (adjusted) - Recommend rate: 68% (adjusted)

Export Data

Export in multiple formats:

CSV:

user_id,q_overall,q_reason,q_recommend,weight,segment
1001,4,2,0,1.08,standard
1002,8,NULL,1,0.86,premium

SPSS (.sav): Variable labels and weights included

Excel / Parquet: Full dataset with the weight column, ready for your analysis tool

Summary Statistics: Weighted means, confidence intervals, cross-tabulations

Complete Workflow Trace

Design → Campaign → Execute → Analyze

Armiger:

AI generates questionnaire
→ SMT validates: ✓ SAT, ✓ No cycles, ✓ All reachable
→ Saved as a new version of the questionnaire

Targetor:

Import 10,000 users
→ Select 1,200 (stratified sampling, 2.4× oversampling)
→ Launch campaign
→ Send unique survey links

SirWay:

User 1001 clicks link
→ Load QML, init: satisfaction_level=0, needs_followup=0
→ Present: q_overall
→ Collect: 4 → Execute: needs_followup=1
→ Present: q_reason (precondition satisfied)
→ Collect: 2 (Delivery time)
→ Present: q_recommend
→ Collect: 0 (No)
→ Complete: 3 items, 45 seconds

Balansor:

Load 500 responses
→ Calculate weights by demographic
→ Apply post-stratification
→ Export corrected data
→ Result: Weighted satisfaction 6.5/10 (CI: 6.2-6.8)

Next Steps

→ Research Flow Guide - See where your own project stands and what comes next

→ Creating Surveys - Learn QML syntax in depth

→ Theory - Understand mathematical foundations

→ API Reference - Integrate Askalot programmatically

Summary

Key Workflow:

  1. ✓ Design with AI + SMT validation in Armiger
  2. ✓ Build campaigns with demographic targeting in Targetor
  3. ✓ Execute surveys with lazy evaluation in SirWay
  4. ✓ Analyze with statistical correction in Balansor

Key Innovation: Cognitive offloading—AI generates questions, SMT ensures consistency, you focus on research goals.