Skip to main content
Skills are the building blocks of 2bd. Ada is the central orchestrator that owns all logic. Entity skills and aliases dispatch to Ada.

Skill architecture

Skills use a flat structure with naming conventions:

Skill file structure

Each skill lives in its own folder with SKILL.md:

Writing style

Skills read as prose describing what happens, not scripts with directives. Do:
  • Write descriptive prose: “Load the vault path from context. Validate the structure exists.”
  • Organize into sections describing flow
  • Reference context naturally
Don’t:
  • Use template syntax: {{VAULT}}, {{#if}}
  • Use imperative directives: “Ask:”, “Check:”, numbered steps
  • Include bash code blocks for file operations

Creating a skill

  1. Create folder: .claude/skills/{skill-name}/
  2. Add SKILL.md with frontmatter
  3. Write instructions as prose
  4. Test: claude skill run {skill-name}

Assistant architecture

Assistants are conceptual domains that flow through all timescales. Each assistant has its own section in templates and its own phase in rituals.
Assistants are processed sequentially. Each assistant:
  • Has a consistent ## {Assistant} section in templates
  • Has a phase file per timescale in rituals
  • Cascades independently through timescales

Draft Mode

Assistants run in draft mode during parallel execution.

Draft Mode Contract

Each assistant must:
  1. Load context - Read vault files autonomously
  2. Analyze - Synthesize what it knows
  3. Generate draft - Create section with placeholders for unknowns
  4. Write output - Save to Synthetic/Assistants/{name}/{timescale}-draft.md

Placeholder Syntax

Use HTML comments for questions:
Placeholder ID format: {assistant}-{question-key}
  • Must be unique within assistant
  • Use kebab-case: goals-top-priority
  • Descriptive but concise

Output Location

Examples:
  • Synthetic/Assistants/goals/daily-draft.md
  • Synthetic/Assistants/calendar/weekly-draft.md

Status Frontmatter

Include status in draft:

Context Sources

Assistants should read:
  • Higher timescale notes (daily reads Week.md, weekly reads Quarter.md)
  • Relevant vault sections (projects, people, etc.)
  • Assistant memory: Semantic/Assistants/{name}/memory.md

Example Conversion

Before (interactive):
After (draft mode):

Assistant matrix

Use for timescales where the assistant does not apply.

Adding a new assistant

  1. Define the matrix row — For each timescale, define the section name (## {AssistantName}) and intent
  2. Add template sections — Add ## {AssistantName} to each Captive template where the assistant applies
  3. Create phase files — For each timescale, create .claude/skills/ritual-planning-{timescale}/references/{NN}-{assistantname}.md
  4. Update SKILL.md — Add the new phase to the ritual’s table of contents
  5. Update template contract — Add the new section to the template contract in SKILL.md

Coach system

Each assistant has a coach that provides guidance and learns from usage.

Coach files

Learning flow

  1. Each assistant phase captures observations → Synthetic/Coaching/{Assistant}/insights.md
  2. Observations auto-cluster with confidence scoring (0-5)
  3. Clusters graduate when confidence ≥ 4.5 AND stable for 3+ sessions
  4. User crystallizes insight → Semantic/Coaching/{Assistant}/insights.md
  5. Crystallized insights inform guidance updates