Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
16 commits
Select commit Hold shift + click to select a range
dbd6a11
docs(catalogue): codify F19 (install-test) + F20 (constitution-vs-wor…
Hakureirm May 11, 2026
5c7c2a2
feat(v1.2.0): add 5 cross-pollination references from Anthropic + Ope…
Hakureirm May 11, 2026
97c8da2
docs(skill): add cross-pollination references section to SKILL.md (v1…
Hakureirm May 11, 2026
2a7fd97
feat(v1.2.1): bilingual user docs + doc-coverage gate (ADSD §3 dogfood)
Hakureirm May 11, 2026
89a09f8
docs(catalogue): codify F22 (coverage-fix-cadence mitigation validate…
Hakureirm May 12, 2026
d00792e
docs(catalogue): codify F24 (primitive-as-everything-simulation, F1 f…
Hakureirm May 12, 2026
7244736
fix(framing): correct '9-week' overclaim — Cobrust is 12 days wall-cl…
Hakureirm May 12, 2026
a737d95
fix(v1.2.5): apply review-claude 3-agent audit findings A1+A2+A3
Hakureirm May 12, 2026
0b436e0
feat(case-study): Cobrust Studio N=2 dogfood — 2-day MVP exercised + …
Hakureirm May 12, 2026
9c1acad
docs(skill): SKILL.md cite Cobrust Studio as N=2 case study + Origin …
Hakureirm May 12, 2026
7321a6e
feat(catalogue): F25-F28 + F1.3/F1.4 — Studio N=2 case-study patterns…
Hakureirm May 12, 2026
283fe50
docs(skill): SKILL.md cite catalogue v1.2.6 + Studio-surfaced F25-F28…
Hakureirm May 12, 2026
1dbd7fd
chore(case-study): M6/M7 cycle empirical evidence (Cobrust Studio v0.…
Hakureirm May 12, 2026
aa44a51
docs(adsd): sync failure catalogue through F30
Hakureirm May 14, 2026
0479cbd
findings: F41-F43 Cobrust empirical corroboration (source-leak + devi…
Hakureirm May 21, 2026
9f1b459
fix(f43): correct Cobrust SHA to 9cb84b5 (DG abandonment doc commit)
Hakureirm May 21, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ findings, atomic commits, doc-coverage on the same change.

| Type | Where it lands | Bar |
|---|---|---|
| New failure mode (F22+) | `reference/failure-modes-catalogue.md` | At least one concrete empirical instance with citation |
| New failure mode (F31+) | `reference/failure-modes-catalogue.md` | At least one concrete empirical instance with citation |
| Case study extension | `case-study/<your-project>-multi-agent-experience.md` | Real project, real outcomes, dated entries |
| Template improvement | `templates/<name>.md` | Backwards-compatible OR new template |
| Section refinement in SKILL.md | `SKILL.md` | Cite at least one project where this refinement was tested |
Expand All @@ -16,7 +16,7 @@ findings, atomic commits, doc-coverage on the same change.
## What we will not merge

- Speculative methodology rules without an empirical instance
- F-pattern proposals that are restatements of existing F1-F21
- F-pattern proposals that are restatements of existing F1-F30
- "Tone" rewrites that lose specific examples or evidence
- Removal of attribution (e.g. dropping "discovered_by" frontmatter)

Expand All @@ -28,7 +28,7 @@ findings, atomic commits, doc-coverage on the same change.
doc + code (if any) + cross-references in the same commit.
3. **For F-pattern additions**: include `## FN — Title`, `**Signal**`,
`**Root cause**`, `**Evidence**` (cite project + commit SHA or
equivalent), `**Rule of thumb**`. Mirror the existing F1-F21 entry
equivalent), `**Rule of thumb**`. Mirror the existing F1-F30 entry
shape.
4. **For case studies**: use day-by-day or week-by-week structure. Mark
counterfactuals (`What would have failed without this discipline:`).
Expand Down
45 changes: 35 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Agent-Driven Software Development (ADSD)

> Methodology distilled from running a 9-week multi-agent Rust compiler
> Methodology distilled from running a 12-day multi-agent Rust compiler
> project where AI agents wrote ≥ 70% of the code under human strategic
> direction.

Expand All @@ -10,9 +10,9 @@
## What this is

ADSD is **not a framework**. It's a documented working style that survived
contact with reality: ~178 commits, ~2,611 tests, 43 ADRs, 19 findings, 21
documented failure modes, 2 P0 codegen bugs caught via organic stress test,
and a 0.1.1 release shipped publicly.
contact with reality: ~278 commits, ~2,611 tests, 49 ADRs (0001..0048 + 0047a),
27 findings, 24 documented failure modes, 2 P0 codegen bugs caught via organic
stress test, and v0.1.2 stable shipped publicly + α Phase F.2 in flight.

ADSD codifies the discipline that kept the multi-agent project coherent:
ADRs as decision capture, findings as negative-result memory, bilingual
Expand Down Expand Up @@ -46,7 +46,7 @@ simple workflows.

After install, invoke via `/agent-driven-development` or let Claude pick it
automatically based on context — the description-triggered activation fires
for multi-agent dispatch planning, ADR drafting, F1–F18 failure-mode triage,
for multi-agent dispatch planning, ADR drafting, F1–F30 failure-mode triage,
pre-release audit team design, and similar prompts.

### As a personal skill (fallback, no plugin system)
Expand Down Expand Up @@ -74,14 +74,14 @@ agent-driven-development/
├── .claude-plugin/
│ └── marketplace.json # Self-hosted single-plugin marketplace catalog
├── plugins/
│ └── agent-driven-development/ # Plugin root (matches marketplace.json source)
│ └── adsd/ # Plugin root (matches marketplace.json source)
│ ├── .claude-plugin/
│ │ └── plugin.json # Plugin manifest
│ └── skills/
│ └── agent-driven-development/ # Skill — auto-discovered by Claude Code
│ ├── SKILL.md # Main methodology document (~36 KB)
│ ├── reference/
│ │ └── failure-modes-catalogue.md # F1-F21 anti-patterns with empirical evidence
│ │ └── failure-modes-catalogue.md # F1-F30 anti-patterns with empirical evidence
│ ├── case-study/
│ │ └── cobrust-multi-agent-experience.md # The founding case study (N=1)
│ └── templates/
Expand All @@ -100,16 +100,41 @@ agent-driven-development/
## Quick start (after install)

1. Read [`SKILL.md`](./plugins/adsd/skills/agent-driven-development/SKILL.md) for the full methodology (~36 KB, 30 min).
2. Read [`reference/failure-modes-catalogue.md`](./plugins/adsd/skills/agent-driven-development/reference/failure-modes-catalogue.md) for the F1–F18 anti-patterns you'll likely hit. Don't re-derive them.
2. Read [`reference/failure-modes-catalogue.md`](./plugins/adsd/skills/agent-driven-development/reference/failure-modes-catalogue.md) for the F1–F30 anti-patterns you'll likely hit. Don't re-derive them.
3. Read [`case-study/cobrust-multi-agent-experience.md`](./plugins/adsd/skills/agent-driven-development/case-study/cobrust-multi-agent-experience.md) to see ADSD applied in practice (warts and all).
4. Copy the relevant template from [`templates/`](./plugins/adsd/skills/agent-driven-development/templates/) into your project's `docs/agent/` tree.
5. Start writing ADRs as decisions actually happen — not speculatively.

## Documentation

User-facing docs are in [`docs/human/`](./docs/human/) (zh + en parallel per ADSD §3 bilingual mandate). Agent-facing meta-conventions for this repo are in [`docs/agent/`](./docs/agent/).

### Bilingual user docs

| Topic | 中文 | English |
|---|---|---|
| Getting started — 30-min onboarding | [`docs/human/zh/getting-started.md`](./docs/human/zh/getting-started.md) | [`docs/human/en/getting-started.md`](./docs/human/en/getting-started.md) |
| Concept map — mermaid diagrams + narrative | [`docs/human/zh/concept-map.md`](./docs/human/zh/concept-map.md) | [`docs/human/en/concept-map.md`](./docs/human/en/concept-map.md) |

### Agent-facing meta-conventions

- [`docs/agent/conventions.md`](./docs/agent/conventions.md) — repo structure, frontmatter contracts, bilingual mandate enforcement, commit message format, identity hygiene (F21)

### Doc coverage gate

`scripts/doc-coverage.sh` enforces ADSD §3 bilingual mandate on this repo itself: every `docs/human/zh/*.md` MUST have a parallel `docs/human/en/*.md`. Run locally before commits:

```sh
bash scripts/doc-coverage.sh
```

The script also verifies reference files have YAML frontmatter and ADR files are zero-padded monotonic. This closes ADSD §3 mandate as F20 systemic prevention applied to ADSD itself.

## Origin

ADSD was extracted from the [Cobrust](https://github.com/Cobrust-lang/cobrust)
project, a Rust-implemented Python successor with an AI-native compiler.
Cobrust shipped its `0.1.0` stable tag on 2026-05-10 after a 9-week run
Cobrust shipped its `0.1.0-beta` tag on 2026-05-10 and `0.1.0` stable on 2026-05-11, after an 11-day intensive run (first commit 2026-04-30 → v0.1.0 stable tag 2026-05-11; v0.1.2 + α Phase F.2 followed)
with multiple parallel Claude agents (Opus 4.7 and Sonnet 4.6) coordinated
via the methodology you'll find in [`SKILL.md`](./plugins/adsd/skills/agent-driven-development/SKILL.md).

Expand All @@ -126,7 +151,7 @@ project so the methodology can be tested outside its founding context.
File an issue describing your project if interested.

ADSD is **battle-tested but not orthodoxy**. Adapt it. If you find a
failure mode we missed, propose F22+ via a PR to
failure mode we missed, propose F31+ via a PR to
[`reference/failure-modes-catalogue.md`](./plugins/adsd/skills/agent-driven-development/reference/failure-modes-catalogue.md).

## Contributing
Expand Down
185 changes: 185 additions & 0 deletions docs/agent/conventions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,185 @@
---
name: ADSD repo conventions
description: Meta-conventions for this repo itself. ADSD codifies how to manage AI-agent projects; this file applies ADSD discipline to the ADSD methodology itself. Agents contributing to this repo should read this first.
type: convention
version: 1.0.0
date: 2026-05-12
status: active
relates_to: [SKILL.md §"Documentation Discipline", README.md §Contributing, CONTRIBUTING.md]
---

# ADSD repo conventions

> ADSD is a methodology for managing AI-agent software projects. This repo IS such a project. Therefore, **ADSD applies to ADSD**. This file captures the meta-conventions specific to this repo's contributors (humans and AI agents).

## Repo structure (binding)

```
agent-driven-development/
├── .claude-plugin/marketplace.json # Plugin marketplace catalog
├── plugins/
│ └── adsd/
│ └── skills/
│ └── agent-driven-development/ # The skill — auto-loaded by Claude Code
│ ├── SKILL.md # Main methodology (~36 KB)
│ ├── reference/ # Deep-dive references (F-patterns, evals, prompts, etc.)
│ ├── case-study/ # Founding case study (Cobrust N=1)
│ └── templates/ # Templates for ADR / finding / dispatch / snapshot / handoff
├── docs/
│ ├── human/
│ │ ├── zh/ # Chinese user docs — 与 en 一一对应
│ │ └── en/ # English user docs — 1:1 parity with zh
│ └── agent/
│ ├── conventions.md # This file
│ ├── adr/ # Meta-ADRs for ADSD itself
│ └── findings/ # Findings about ADSD's evolution
├── scripts/
│ └── doc-coverage.sh # Enforces zh+en parity per ADSD §3 mandate
├── CONTRIBUTING.md # Human-facing contribution guide
├── LICENSE-APACHE / LICENSE-MIT
└── README.md # Entry point
```

**Binding constraints**:

1. Every file in `docs/human/zh/` MUST have a parallel file at `docs/human/en/` with the same filename. Enforced by `scripts/doc-coverage.sh`.
2. Every reference under `plugins/adsd/skills/agent-driven-development/reference/` MUST have YAML frontmatter (`name`, `description`, `type`, `version`, `date`, `status`, `relates_to`).
3. The SKILL.md `description` field is the auto-activation trigger — keep it keyword-dense and specific.
4. ADRs in `docs/agent/adr/` are zero-padded sequential (`0001-*.md`, `0002-*.md`, ...). Once accepted, an ADR is immutable; supersede via a new ADR.

## Frontmatter contracts

### Reference files (in `plugins/adsd/skills/agent-driven-development/reference/`)

```yaml
---
name: <Reference title>
description: <One-line trigger / summary>
type: reference
version: <semver>
date: <ISO date of last substantive edit>
status: active | deprecated | candidate
relates_to: [skill:SKILL.md §section, reference:other-file.md, ...]
---
```

### Meta-ADRs (in `docs/agent/adr/`)

```yaml
---
doc_kind: adr
adr_id: <NNNN, zero-padded>
title: <ADR title>
status: proposed | accepted | superseded | deprecated
date: <YYYY-MM-DD>
last_verified_commit: <SHA or TBD>
supersedes: [<adr_id>, ...]
superseded_by: [<adr_id>, ...]
relates_to: [<adr_id>, <finding-slug>, ...]
---
```

### Findings (in `docs/agent/findings/`)

```yaml
---
doc_kind: finding
finding_id: <slug>
last_verified_commit: <SHA>
status: open | closed | partial
discovered_by: <agent role + session ID>
dependencies: [adr:<NNNN>, finding:<slug>, ...]
---
```

## Bilingual docs mandate (ADSD §3 dogfood)

The skill's SKILL.md §3 mandates that every public item gets entries in:

- `docs/human/zh/<topic>.md`
- `docs/human/en/<topic>.md` (1:1 parity)
- Agent-facing schema (in this repo: SKILL.md + reference/)

This rule applies to ADSD itself. `scripts/doc-coverage.sh` enforces zh+en parity.

**Operative checks** (run by `doc-coverage.sh`):

1. Every `docs/human/zh/*.md` has a parallel `docs/human/en/*.md`
2. Every `docs/human/en/*.md` has a parallel `docs/human/zh/*.md`
3. Parallel files have identical filenames (case-sensitive)
4. (Future) Section headers are 1:1 between zh and en

CI fails if any check fails.

## When to add a new ADR vs amend SKILL.md vs add a finding

| Change type | Where | Trigger |
|---|---|---|
| New methodology rule | `docs/agent/adr/NNNN-<slug>.md` | The rule affects ≥2 reference files, templates, or SKILL.md sections |
| Refine existing reference | edit the reference file directly + note in commit | Single-file refinement |
| Document an ADSD evolution event | `docs/agent/findings/<slug>.md` | Real-world ADSD use surfaced a gap or worked unexpectedly well |
| Update SKILL.md | edit SKILL.md + cross-reference an ADR if it's a binding rule | Adds a new "Part N" or modifies an existing one |
| New cross-pollination ref (Anthropic / OpenAI / other) | `plugins/.../reference/<slug>.md` | New industry pattern worth adopting |

## When NOT to add an ADR

- Bug fix in a reference doc (typo, broken link)
- Updating frontmatter date / last_verified
- Adding an example to an existing section
- Re-organizing within a single file
- Translation update (zh ⟵→ en sync)

Per ADSD §"ADR vs Finding distinction": ADRs are forward-looking decisions; small refinements don't need them.

## Commit message format

```
<type>(<scope>): <short description> [vX.Y.Z]
```

- `<type>`: `feat`, `docs`, `fix`, `refactor`, `chore`
- `<scope>`: `skill`, `reference`, `case-study`, `templates`, `docs-zh`, `docs-en`, `meta`
- Include `[vX.Y.Z]` semver if the change is release-worthy

Examples:

```
feat(reference): add evals-first-development.md (v1.2.0)
docs(zh): translate getting-started.md to match en parity
fix(skill): correct cross-reference path after plugin layout migration
chore(meta): bump SKILL.md description for trigger keyword coverage
```

Sign with session ID per F21 (Cross-session identity overload):

```
Co-Authored-By: Claude Opus 4.7 (session XYZ) <noreply@anthropic.com>
```

## Identity hygiene (F21 closure)

Per F21 codification:

- Do NOT sign as bare "review-claude" or "ADSD-author" in commits or files
- Use session-stamped attribution: `review-claude (session 4bb35f43)` or `ADSD-author (session XYZ)`
- Reserve plain handles for the abstract role in narrative prose only

## Versioning policy

- **v1.0.x** — initial release, plugin migration
- **v1.1.x** — F19/F20/F21 codification
- **v1.2.x** — cross-pollination references (Anthropic + OpenAI)
- **v1.3.x** — bilingual docs + remaining G3/G5/G6/G8/G9/G10/G12 gaps

Semver bumps follow SemVer 2.0:

- MAJOR: breaking change to skill format, plugin layout, or canonical paths
- MINOR: new reference file, new template, new ADR
- PATCH: refinement, typo, frontmatter update, translation sync

## Cross-references

- `CONTRIBUTING.md` — human-facing contribution flow
- `plugins/adsd/skills/agent-driven-development/SKILL.md` §"Documentation Discipline" — methodology origin of these rules
- `plugins/adsd/skills/agent-driven-development/reference/failure-modes-catalogue.md` F1 family + F19 + F20 + F21 — the failure modes these conventions prevent
- `scripts/doc-coverage.sh` — machine enforcement of zh+en parity
Loading