Phase 1 of building a Claude Managed Agent — interview the founder about the one job the agent should do, then produce a build sheet (CMA primitives table + v1/v2 deferrals + eval plan) WITHOUT needing their API key yet. Use when the user says "help me scope an agent", "I have an idea for an agent", "what should this agent be", or when the orchestrator routes phase=interview. Drives the six intake slots (job, trigger, inputs, actions, definition-of-done, recurrence) via AskUserQuestion, maps them to primitives with interview_planner.py, assembles build-sheet.json with build_sheet_builder.py, and validates limits with primitives_validator.py. Connectors are mockable in v0 (schema-true custom tools); real MCP servers become v1 deferrals. Distinct from stage-launch (which turns the sheet into payloads).
Open warmly with one or two examples from
../../references/examples-bank.md, then interview
the founder into a build sheet. No API key needed in this phase — the output
is a plan.
| Slot | Question | Maps to |
|---|---|---|
| Job | "What one job should this agent do end-to-end?" | agent.system + outcome description |
| Trigger | "What kicks it off — you ask it, an event, or a schedule?" | on-demand / event / cron |
| Inputs | "What does it read?" (files, repo, memory, gmail/slack/github, web) | resources / MCP servers / memory |
| Actions | "What does it do?" (draft, write, call APIs, run code) | agent toolset / custom tools / MCP |
| Done | "How would you grade a good run?" | outcome rubric (required) |
| Recurrence | "Once, on request, or on a cadence?" | single-pass / grade-loop / cron-loop |
See ../../references/interview-to-config.md
for the full mapping.
python3 scripts/interview_planner.py \
--job "Triage overnight support email" --trigger schedule \
--inputs "gmail,memory" --actions "label,reply" \
--dod "one label per email, grounded reason, no invented facts" \
--recurrence daily --out ./my-agent/plan.json
MCP inputs become schema-true mock custom tools in v0 and a v1 deferral
to wire the real server. Irreversible actions (send/publish) become v2
deferrals behind always_ask.python3 scripts/build_sheet_builder.py --plan ./my-agent/plan.json --out-dir ./my-agent
python3 scripts/primitives_validator.py --sheet ./my-agent/build-sheet.json
FAIL blocks progress; fix and re-run. WARN is advisory (surface it).goal_state.py set --phase stage-launch --artifact build_sheet=./my-agent/build-sheet.json, then advance.scripts/interview_planner.py — answers → primitives skeleton + deferrals.scripts/build_sheet_builder.py — assemble/normalize build-sheet.json.scripts/primitives_validator.py — validate vs CMA limits (PASS/WARN/FAIL).Copy a source-pinned command for your client. You run it yourself.
Destination: .claude/skills/interview · pinned to the source commit
# Run from your project root
git clone https://github.com/alirezarezvani/claude-skills.git .skillboard-tmp
git -C .skillboard-tmp checkout 19392f7a08264ed00486a251f5b2098321771f94
mkdir -p ".claude/skills"
cp -r ".skillboard-tmp/agent-launcher/skills/interview" ".claude/skills/"
rm -rf .skillboard-tmpReview the source before running. This copies files into your project; it is not a one-click install and does not verify runtime safety.
sudo apt update && sudo apt install -y gitnpm install -g @anthropic-ai/claude-code# Run from your project root
git clone https://github.com/alirezarezvani/claude-skills.git .skillboard-tmp
git -C .skillboard-tmp checkout 19392f7a08264ed00486a251f5b2098321771f94
mkdir -p ".claude/skills"
cp -r ".skillboard-tmp/agent-launcher/skills/interview" ".claude/skills/"
rm -rf .skillboard-tmpDestination: .claude/skills/interview
Scanner static-checks@0.1.0 · commit 19392f7a0826. Static checks cannot prove runtime safety – review the source and the exact diff before installing. How checks work.
References parent-directory traversal, which can escape a target directory.
Evidence: ../· fingerprint fa08499e14d0113b