Intent System
The intent system is DUUMBI’s highest-level interface for program generation. You describe what you want, and DUUMBI handles the how.
Creating an intent
Section titled “Creating an intent”duumbi intent create "Build a calculator with add, subtract, multiply, and divide functions"The AI generates a structured YAML spec:
intent: "Build a calculator"version: 1status: Pendingacceptance_criteria: - "add(a, b) returns a+b for i64" - "sub(a, b) returns a-b for i64" - "mul(a, b) returns a*b for i64" - "div(a, b) returns a/b for i64"modules: create: ["calculator/ops"] modify: ["app/main"]test_cases: - name: basic_add function: add args: [3, 5] expected_return: 8 - name: basic_mul function: mul args: [6, 7] expected_return: 42Reviewing an intent
Section titled “Reviewing an intent”duumbi intent review calculatorEdit the spec before executing:
duumbi intent review calculator --editExecuting an intent
Section titled “Executing an intent”duumbi intent execute calculatorThe execution pipeline:
- Coordinator decomposes the intent into ordered tasks (CreateModule, AddFunction, ModifyMain)
- Orchestrator sends each task to the AI for graph mutation (with 3-step retry)
- Verifier generates test programs, compiles, and checks exit codes against expected values
- On success: intent archived to
.duumbi/intents/history/
Intent lifecycle
Section titled “Intent lifecycle”Pending → Executing → Completed → Failed (with error details)Check status:
duumbi intent status calculatorREPL integration
Section titled “REPL integration”All intent commands are available as slash commands in the REPL:
duumbi> /intent create "build a fibonacci calculator"duumbi> /intent review fibonacciduumbi> /intent execute fibonacciduumbi> /intent status fibonacci