Agent runaway loops
Agent burns 40 minutes and dollars of tokens retrying a flaky test, never escalating to a human.
Fix: aidokit verify --loop-cap bounds retries; hitting the cap creates a Beads blocker and stops.
aidokit scaffolds a structured, adapter-agnostic, AI-assisted development workflow into any project — greenfield or brownfield — and lets you pick which AI coding CLI drives it. Zero LLM calls. No telemetry. Reproducible.
Node.js 20+ · Apache 2.0 · first-party adapters: Claude Code, Codex CLI, GitHub Copilot CLI.
Scoped against a 25-point analysis of how AI coding workflows fail in practice. v1.x closes all 25 — see the table →
aidokit itself never talks to a model. Every decision is deterministic; every CI run is hermetic.
The same inputs always produce the same tree. A byte-compare gate in CI catches drift before it lands.
One workflow, your choice of CLI. Swap Claude Code for Codex or Copilot without rewriting your project.
Stack packs detect Node, TypeScript, Python, React, and Go projects and emit tailored testing + lint conventions.
Read-before-write everywhere. No file is overwritten without a diff. Existing conventions are preserved.
Every breaking change ships with aidokit migrate. Upgrading the kit never means rewriting it.
Six of the highest-cost ways AI coding workflows fail in practice — and the concrete aidokit mechanism that closes each. v1.x closes all 25 from the underlying analysis.
Agent burns 40 minutes and dollars of tokens retrying a flaky test, never escalating to a human.
Fix: aidokit verify --loop-cap bounds retries; hitting the cap creates a Beads blocker and stops.
Feature branch ships unrelated formatting, refactors, and "I noticed this" edits outside the task's stated scope.
Fix: Immutable task briefs + watchdog hook refuses writes outside the declared scope.
Agent invents a function name, a flag, or an entire module that doesn't exist — code compiles, breaks at runtime.
Fix: Context7 MCP, Read-before-edit skill, and a byte-compare gate that catches drift before merge.
A malicious doc snippet, search result, or web page in MCP output injects instructions the agent follows blindly.
Fix: untrustedOutput flag + quarantining-untrusted-output skill + doctor threat-T18 check.
Agent commits a .env, an API key in a test file, or a token in a config — straight to the remote.
Fix: aidokit verify --secrets blocks the merge; .aidoignore hides sensitive files from the agent at read time.
Every subagent loads the full MCP catalog; one session burns more than a week's worth of usage with nothing to show.
Fix: Per-role MCP scoping + aidokit verify --budget + sub-agent context isolation.
No magic. Each step is a question with a sensible default and a documented exit code.
Full hook system, slash commands, MCP servers, two-stage review. The reference experience.
Read moreLean surface: CLAUDE.md, docs scaffold, Beads task graph. Same workflow, fewer primitives.
Read moreSame scaffold targeting Copilot's CLI. Lands the workflow without forcing a tool switch.
Read moremy-project/
├── CLAUDE.md
├── .claude/
│ ├── agents/
│ ├── commands/
│ ├── hooks/
│ └── skills/
├── docs/
│ ├── architecture/
│ ├── specs/
│ └── superpowers/
├── agent-artifacts/
└── .beads/
└── tasks.db
One aidokit init emits a CLAUDE.md tuned to your stack, a .claude/ engine directory with the full Standard conformance kit, a docs/ scaffold ready for ADRs and specs, and a Beads task database for stateful planning.
Nothing is hidden. Every file is plain text. You can read it, diff it, and delete what you don't need.