原始内容
ADLC — Agentic Development Lifecycle Toolkit
A workspace of zero-dependency, gate-shaped Node.js CLIs for running software development the way frontier models actually behave — not the way humans do.
The SDLC is 60 years of defenses against human failure modes (forgetfulness, ego, fatigue). Models have a different flaw profile: premature satisfaction, sycophancy, context rot, confident hallucination, reward hacking. The Agentic Development Lifecycle (ADLC) redesigns every phase, gate, and loop around those flaws. Read the full thesis in ADLC.md.
Why this exists
Every phase, gate, and loop in this lifecycle must trace to a specific model failure mode it defends against, or a specific model property it exploits. If it traces to a human failure mode instead, cut it.
Each tool is a small CLI that enforces one machine-checkable gate. They share a runtime
convention (.adlc/ for tickets, ledgers, and gate evidence) and a common contract
(see CONVENTIONS.md) so 22 independently built tools feel like one
product.
Install
Each package publishes independently under the @adlc npm scope. For normal use,
install the dispatcher and run tools through the stable adlc <tool> surface:
npm install -g @adlc/cli
adlc spec-lint <spec.md>
# or run without installing
npx @adlc/cli spec-lint <spec.md>
Individual packages can still be installed for package development, but Codex skills, hooks, CI, and lifecycle docs should use the dispatcher.
The toolkit
| Phase | Packages |
|---|---|
| Spec & ticket shaping | parallax · spec-lint · premortem · coldstart · ticket-prune |
| Execution supervision & rails | preflight · model-router · merge-forecast · rails-guard · build-gate · flail-detector · consensus-fix · runner |
| Review evidence & calibration | behavior-diff · gate-manifest · hollow-test · prosecute · review-calibration · model-ratchet · gate-fuzzing |
| Compounding defenses | lesson-foundry · rejection-mining · skill-rot |
| Shared foundation | @adlc/cli · @adlc/core |
See docs/package-reference.md for binaries, command forms, and per-package detail, and docs/toolkit.md for how the packages fit the ADLC flow.
Use it in Claude Code
This repo is also a Claude Code plugin — it makes the whole lifecycle usable from
inside the editor (phase-routing skill, ticket/distill/maintain commands, a
prosecutor subagent, and hooks that fire the gates automatically), with no API
keys (Claude is the model via --prompt-only).
Recommended: install with plugins, the
vendor-neutral installer that auto-detects your agent tools and installs the plugin
into each (Claude Code today; other harnesses as their plugin packages publish — each
has a native install path below; see ADR-0009
for why this is the preferred path):
npx plugins add voodootikigod/adlc # install the plugin into your agent tool(s)
npm install -g @adlc/cli # the gate toolkit the plugin shells out to
/adlc:adlc-init # bootstrap .adlc/ in your repo (once)
Already using Claude Code's native plugin marketplace? That path still works:
npm install -g @adlc/cli
/plugin marketplace add voodootikigod/adlc
/plugin install adlc@adlc
/adlc:adlc-init
See docs/integrations/claude-code.md for the full adoption guide.
Use it in other editors
Each agent tool has its own native integration. See the guides:
- Codex — hooks-based integration.
- Cursor — preToolUse rails dispatcher, hook parity, command suite + prosecutor loop, rules.
- Google Antigravity — native plugin system.
- OpenCode — full phase-router coverage.
- Pi — TypeScript Extension integration.
Project layout
| Directory | Contents |
|---|---|
packages/ |
The toolkit: 22 zero-dependency, gate-shaped CLIs |
plugins/adlc-claude-code/ |
Claude Code integration (skill, commands, hooks, subagent) |
plugins/adlc-codex/ |
Codex integration (hooks and skills; no TypeScript package) |
plugins/adlc-antigravity/ |
Google Antigravity integration (native plugin system, skills, hooks) |
plugins/adlc-pi/ |
Pi harness integration package (TypeScript, skills, tests) |
docs/ |
Lifecycle thesis, integration guides, ADRs, CI templates |
.claude/commands/ |
Maintainer commands for this repo (release workflow) |
scripts/ |
Release, smoke test, and CI helper scripts (not published; run by npm test and CI) |
.adlc/ |
Runtime data directory (tickets, gate evidence — gitignored except example) |
.claude-plugin/ |
Repo-root marketplace manifest (marketplace.json) — the index npx plugins add voodootikigod/adlc (and the native /plugin marketplace add voodootikigod/adlc) read to resolve the plugin. See ADR 0003 for the subdirectory-source assumption and Pre-GA checklist. |
Design principles
Every tool follows the same contract (CONVENTIONS.md):
- Zero runtime dependencies — Node 18+ built-ins and
@adlc/coreonly. --prompt-onlyon every LLM-backed tool — print the exact prompt and exit, so the tool is usable with zero API keys (paste into any harness).--jsonon every tool — machine-readable output for orchestrators.- Exit codes are the gate:
0= gate passes ·1= operational error ·2= gate fails. - Never mutate the working tree without a flag — writers default to dry-run.
- Tests run offline — no network, no API keys, no trace left behind.
Quick start (from source)
git clone https://github.com/voodootikigod/adlc.git
cd adlc
npm install
npm test
Requires Node.js 18 or newer.
Documentation
- ADLC.md — the full lifecycle thesis and flaw inventory.
- docs/integrations/claude-code.md — adopt the ADLC inside Claude Code (plugin).
- docs/integrations/codex.md — native Codex integration guide.
- docs/integrations/pi.md — pi coding-agent harness integration guide.
- docs/ — toolkit guide, package reference, ADRs, and narrative essays.
- CONVENTIONS.md — the contract every package follows.
Contributing
Contributions are welcome. Please read CONTRIBUTING.md for the dev setup, the package contract, the testing requirements, and the PR process. By participating you agree to our Code of Conduct.
License
MIT © Chris Williams