Documentation

Getting Started

1. Create a Directive

Define your assessment in a YAML file in the `/directives` folder:

name: My Assessment
intent:
  purpose: Understand user preferences
phases:
  - name: Introduction
    topics:
      - name: Background

2. Load the Directive

const directive = await DirectiveParser.parseFile(
  '/directives/my-assessment.yaml'
)

3. Start the Assessment

const conductor = new AssessmentConductor({
  directive,
  engine
})
await conductor.start()
Architecture Overview

Assessment Directive

Human-readable YAML files that define the assessment structure, intent, and flow. No coding required to create new assessments.

Assessment Conductor

Reads directives and orchestrates the assessment experience. Manages state, controls timing, and adapts based on responses.

Assessment Engine

Renders input components and collects responses. Supports 40+ input types from simple text to complex visualizations.

Input Types

Text-Based

  • text
  • short-text
  • time-bound
  • word-association

Choice-Based

  • likert
  • multiple-choice
  • forced-choice
  • swipe-cards

Specialized

  • numeric-slider
  • forced-ranking
  • matrix-grid
  • point-allocation

AI-Driven

  • adaptive-chat-probe
  • ai-dynamic-interview
  • ai-checkpoint-analysis
  • ai-pattern-detection
Example Directive
id: executive-leadership-v1
name: Executive Leadership Assessment
version: 1.0.0

intent:
  purpose: Uncover leadership patterns
  outcomes:
    - Leadership style profile
    - Decision-making patterns
    - Strategic capabilities

parameters:
  duration:
    target: 30
    minimum: 25
    maximum: 40
  adaptivity:
    enabled: true
    factors:
      - response-quality
      - engagement

phases:
  - id: rapport-building
    name: Rapport & Context
    topics:
      - id: introduction
        name: Personal Introduction
        config:
          probeDepth: surface
          inputTypes:
            - text
            - ai-dynamic-interview