Install any skill in seconds. Free to start, no credit card required.
Get Started Free →AI DevKit · Track dev-lifecycle / structured-debug progress on a durable task with the ai-devkit task CLI. Use to record phase, progress, next step, blockers, and validation evidence.
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-07 | ✗→✓ | ▲ Improved | 126% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 131% | 0% |
| case-13 | ✗→✓ | ▲ Improved | 70% | 0% |
| case-16 | ✗→✓ | ▲ Improved | 73% | 0% |
| case-17 | ✗→✓ | ▲ Improved | 141% | 0% |
Record development progress on a durable task: phase, progress, next step, blockers, and validation evidence.
Requires the optional task command. Use npx ai-devkit@latest for task and agent commands. Before recording task events, run a real read probe:
bashnpx ai-devkit@latest task list --json # or, when a task name is known: npx ai-devkit@latest task list --name <task-name> --json
Only treat task tracing as available when the read probe exits 0. If it fails, continue without task logging and include the failed command plus stderr/stdout summary in the final report. Do not block the user's work just because optional task tracing is unavailable or unusable.
phase field as workmoves through the lifecycle or debug workflow.
<id> can be a task name. Every command below accepts the task name inplace of a task id, resolving to the latest non-terminal task. Prefer <task-name> so agents do not track task ids.
name. For debugging or review work, choose a short kebab-case task name.
immediate next-step changes, fresh evidence, blockers discovered/resolved. A handful of calls per session.
same task. Each mutation reads the current task snapshot and writes it back; parallel writes can clobber snapshot fields even though events append. Run create/assign/phase/next/progress/evidence/blocker/artifact/close commands one at a time, then read back with show --events --json when the final state matters.
mutation commands.
Use agent-management when attribution is needed:
agent-management self-identification workflow with npx ai-devkit@latest agent list --json.--agent <agent-name> --agent-type <agent-type> --pid <pid> --session <sessionId>. Map JSON fields directly: name -> --agent, type -> --agent-type, pid -> --pid, and sessionId -> --session.
flags rather than fabricating attribution.
--agent <agent-name> --agent-type <agent-type> --pid <pid> --session <sessionId> to every mutation command once known. If a task alreadyexists, run npx ai-devkit@latest task assign <task-name> --agent <agent-name> --agent-type <agent-type> --pid <pid> --session <sessionId> --json once so the task snapshot has current ownership.
actor flags.
When self identity is known, add all four actor flags to every mutation command: --agent <agent-name> --agent-type <agent-type> --pid <pid> --session <sessionId>.
bash# Create the task once (capture taskId from --json if needed) npx ai-devkit@latest task create --title "<title>" --name <task-name> --phase requirements --agent <agent-name> --agent-type <agent-type> --pid <pid> --session <sessionId> --json # If the task already exists, assign current ownership once when known npx ai-devkit@latest task assign <task-name> --agent <agent-name> --agent-type <agent-type> --pid <pid> --session <sessionId> --json # Mark real work as active after create/resume npx ai-devkit@latest task status <task-name> active --agent <agent-name> --agent-type <agent-type> --pid <pid> --session <sessionId> --json # Advance phase as the lifecycle moves on npx ai-devkit@latest task phase <task-name> implementation --agent <agent-name> --agent-type <agent-type> --pid <pid> --session <sessionId> --json # Progress (use --text; positional text is ignored) npx ai-devkit@latest task progress <task-name> --text "Implementing task CLI" --agent <agent-name> --agent-type <agent-type> --pid <pid> --session <sessionId> --json # Next step npx ai-devkit@latest task next <task-name> "Run validation" --agent <agent-name> --agent-type <agent-type> --pid <pid> --session <sessionId> --json # Blockers npx ai-devkit@latest task status <task-name> blocked --agent <agent-name> --agent-type <agent-type> --pid <pid> --session <sessionId> --json npx ai-devkit@latest task blocker <task-name> add "Waiting for review" --agent <agent-name> --agent-type <agent-type> --pid <pid> --session <sessionId> --json npx ai-devkit@latest task blocker <task-name> resolve <blocker-id> --agent <agent-name> --agent-type <agent-type> --pid <pid> --session <sessionId> --json npx ai-devkit@latest task status <task-name> active --agent <agent-name> --agent-type <agent-type> --pid <pid> --session <sessionId> --json # Validation evidence - record after a fresh verify/tdd/test run npx ai-devkit@latest task evidence <task-name> --passed --command "npm test" --exit-code 0 --summary "tests passed" --agent <agent-name> --agent-type <agent-type> --pid <pid> --session <sessionId> --json # Reference an artifact (never copies the file) npx ai-devkit@latest task artifact <task-name> docs/ai/testing/foo.md --kind test-report --description "Testing notes" --agent <agent-name> --agent-type <agent-type> --pid <pid> --session <sessionId> --json # Read current status / list npx ai-devkit@latest task show <task-name> --json npx ai-devkit@latest task list --name <task-name> --json # Close at lifecycle end npx ai-devkit@latest task close <task-name> completed --agent <agent-name> --agent-type <agent-type> --pid <pid> --session <sessionId> --json
create at start when nonon-terminal task exists for the feature; assign once when actor is known; set status active when real work starts or resumes; phase on every phase transition; next after phase planning; progress after planning/implementation task toggles; show at resume; close completed only after final verification/review is done.
evidence after fresh proof (this is whatmakes "last validation" trustworthy). Use --failed when it fails.
evidence for repro results,next for the next hypothesis, blocker add/resolve, progress.
blocker add when blocked, resolve when clear; next tostate the immediate next step. Set status blocked when an open blocker stops progress, and set status active again after the blocker is resolved.
--json when an agent must parse output (create/show/list). Omit forhuman-readable checks.
reached, what changed, what is next, what verified the claim, and what blocked or changed scope. Do not log every command; do log those checkpoints.
Other measured skills in the registry, with their headline benchmark lift.