Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
12 changes: 6 additions & 6 deletions .claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
{
"name": "dev-workflow",
"version": "1.1.0",
"description": "Spec, Plan, Review, Implement, Verify — a complete AI development workflow with TDD, structured specifications, and independent review agents.",
"keywords": ["tdd", "specification", "code-review", "workflow", "quality"],
"version": "2.0.0",
"description": "Spec, Plan, Review, Implement, Verify — a complete AI development workflow with test-driven implementation, structured specifications, and independent review agents.",
"keywords": ["tdd", "implement", "specification", "code-review", "workflow", "quality"],
"homepage": "https://github.com/openkash/ai-agent-dev-workflow",
"author": {
"name": "openkash"
Expand All @@ -14,9 +14,9 @@
"description": "Structured specification with user stories, acceptance criteria, and interactive clarification"
},
{
"name": "tdd",
"path": "skills/tdd",
"description": "Test-driven development with chunk decomposition, JSON tracker, and 8-point quality checklist"
"name": "implement",
"path": "skills/implement",
"description": "Test-driven implementation with chunk decomposition, JSON tracker, and 8-point quality checklist"
}
]
}
95 changes: 0 additions & 95 deletions .github/workflows/sync-skills.yml

This file was deleted.

24 changes: 24 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,29 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [2.0.0] - 2026-05-27

### Changed (breaking)

- Renamed `/tdd` to `/implement`. The slash command is now `/implement <feature>`. Speckit command ID is `speckit.dev-workflow.implement` (alias `speckit.implement`); the previous `speckit.dev-workflow.tdd` ID no longer resolves. Skill directory moved from `skills/tdd/` to `skills/implement/`.
- Tracker filename convention is now `impl-tracker-<feature>.json`. The previous `tdd-tracker-*.json` prefix is no longer recognized by review-plan / review-impl.
- Phase 6 parallel reviewer is now `/code-review` (read-only) instead of `/simplify` (which writes to the tree). Running a writer concurrently with review-impl was racy; the review pair is now both read-only.
- This repo is now the only distribution channel. `openkash/ai-agent-spec-skill` and `openkash/ai-agent-tdd-skill` are deprecated; the spec-sync workflow and `sync.sh` script have been removed. Install via the Claude Code plugin or copy directly from this repo.

### Added

- UI state-holder vs rendering-only distinction in the test-strategy table. UI chunks that introduce `mutableStateOf`, `LaunchedEffect`/`useEffect`, hoisted state, or input transformation must extract a state holder and unit-test its transitions. Pure prop/callback threading with no logic keeps the "no test" exemption.
- Both review-plan and review-impl now check the state-holder exemption explicitly. A chunk that claims "Pure UI — no test" while introducing a holder is flagged as a FAIL.
- Small-feature shortcut keeps both review gates. Only Plan Mode (Phase 2.4) and chunk decomposition (Phase 2.1-2.2) collapse for 1-chunk features; review-plan and review-impl + /code-review still run.

### Migration

- Replace any saved `/tdd <feature>` invocations with `/implement <feature>`.
- Rename existing in-flight tracker files from `tdd-tracker-*.json` to `impl-tracker-*.json` if you want them picked up by the agents on resumption.
- Update any project-level docs or onboarding notes that reference `skills/tdd/` to `skills/implement/`.
- If you customised `skills/tdd/PROJECT.md`, copy it to `skills/implement/PROJECT.md` before pulling — the directory rename means the old path will not exist after the update.
- The `resume` field on tracker chunks has been removed; per-chunk pattern hints and pitfalls now live in the optional `notes` field.

## [1.1.0] - 2026-04-12

### Changed
Expand Down Expand Up @@ -32,5 +55,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Example configs for Android/Kotlin, TypeScript/Node, Python/Django, Python/pytest, Rust/CLI, Rust/Cargo
- Session resumption via JSON tracker with per-chunk resume fields

[2.0.0]: https://github.com/openkash/ai-agent-dev-workflow/releases/tag/v2.0.0
[1.1.0]: https://github.com/openkash/ai-agent-dev-workflow/releases/tag/v1.1.0
[1.0.0]: https://github.com/openkash/ai-agent-dev-workflow/releases/tag/v1.0.0
2 changes: 1 addition & 1 deletion PRIVACY.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ This plugin collects no data. It consists entirely of markdown files (skills, ag

## What This Plugin Does

- Provides two skills (`/spec`, `/tdd`) that guide Claude Code through structured development workflows
- Provides two skills (`/spec`, `/implement`) that guide Claude Code through structured development workflows
- Provides two review agents (`review-plan`, `review-impl`) that evaluate plans and implementations
- All processing happens locally in your Claude Code session

Expand Down
59 changes: 25 additions & 34 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,21 +11,21 @@ specify, plan, review, implement, verify.
```
/spec Clarify WHAT to build (user stories, acceptance criteria)
|
/tdd Plan HOW to build it (chunks, dependencies, tracker)
/implement Plan HOW to build it (chunks, dependencies, tracker)
|
|--- GATE: tracker file triggers review-plan automatically
v
review-plan Independent 8-point plan review (blocks implementation)
|
/tdd Implement with TDD (failing test -> code -> pass)
/implement Implement test-first (failing test -> code -> pass)
|
|--- GATE: all chunks complete triggers parallel review
v
review-impl Verifies implementation matches plan ---+
/simplify Reviews code reuse and quality ----------+--- run in parallel
/code-review Reviews code reuse and quality ---------+--- run in parallel
```

`/tdd` handles both planning and implementation. Reviews are
`/implement` handles both planning and implementation. Reviews are
**artifact-triggered gates**, not optional suggestions. The tracker
file triggers review-plan; chunk completion triggers review-impl.
Both agents run in isolated context with no memory of writing the
Expand All @@ -34,22 +34,22 @@ code, so they evaluate honestly.
## Why This Workflow

> [!TIP]
> - **Reviews are gates, not suggestions.** The tracker file triggers review-plan before coding starts. Chunk completion triggers review-impl + /simplify in parallel. No manual invocation needed, no option to skip.
> - **Reviews are gates, not suggestions.** The tracker file triggers review-plan before coding starts. Chunk completion triggers review-impl + /code-review in parallel. No manual invocation needed, no option to skip.
> - **The reviewer didn't write the code.** Review agents spawn in a fresh context, separate from the author. Bias eliminated by architecture, not instruction.
> - **Scope is checked in both directions.** review-plan verifies every criterion has a chunk (completeness) AND every chunk serves a criterion (containment). Catches scope expansion before it becomes code.
> - **Design bugs are caught before coding starts.** 8-point plan review before any code is written. Fixing a wrong abstraction in a plan costs minutes. In code, hours.
> - **Specs are created, not just read.** `/spec` writes user stories with Given/When/Then acceptance criteria, then `/tdd` implements them. From "what should we build?" to passing tests.
> - **Work survives context resets.** JSON tracker with per-chunk `resume` fields and `plan_review` verdict tells a new session exactly where to pick up.
> - **Specs are created, not just read.** `/spec` writes user stories with Given/When/Then acceptance criteria, then `/implement` implements them. From "what should we build?" to passing tests.
> - **Work survives context resets.** JSON tracker with per-chunk `name`, `files_*`, `tdd`, `acceptance_criteria` (plus optional `notes`) and the top-level `plan_review` verdict tells a new session exactly where to pick up.
> - **One install, complete workflow.** Four pieces that work as a pipeline. No separate tools to discover, install, and wire.

## What's Included

| Piece | Type | Invocation | Purpose |
|-------|------|-----------|---------|
| [spec](skills/spec/SKILL.md) | Skill | `/spec <feature>` | User stories, acceptance criteria, edge cases |
| [tdd](skills/tdd/SKILL.md) | Skill | `/tdd <feature>` | Chunk decomposition, TDD cycle, quality checklist |
| [review-plan](agents/review-plan.md) | Agent | Triggered by /tdd | 8-point plan review with scope containment check |
| [review-impl](agents/review-impl.md) | Agent | Triggered by /tdd | Checks code matches the plan and passes acceptance criteria |
| [implement](skills/implement/SKILL.md) | Skill | `/implement <feature>` | Chunk decomposition, test-driven cycle, quality checklist |
| [review-plan](agents/review-plan.md) | Agent | Triggered by /implement | 8-point plan review with scope containment check |
| [review-impl](agents/review-impl.md) | Agent | Triggered by /implement | Checks code matches the plan and passes acceptance criteria |

## Installation

Expand All @@ -69,35 +69,27 @@ and both agents are available to use.
git clone https://github.com/openkash/ai-agent-dev-workflow.git /tmp/dev-workflow

# Skills
mkdir -p .claude/skills/spec .claude/skills/tdd
mkdir -p .claude/skills/spec .claude/skills/implement
cp /tmp/dev-workflow/skills/spec/SKILL.md .claude/skills/spec/
cp -r /tmp/dev-workflow/skills/spec/references/ .claude/skills/spec/
cp -r /tmp/dev-workflow/skills/spec/project-configs/ .claude/skills/spec/
cp /tmp/dev-workflow/skills/tdd/SKILL.md .claude/skills/tdd/
cp -r /tmp/dev-workflow/skills/tdd/references/ .claude/skills/tdd/
cp -r /tmp/dev-workflow/skills/tdd/project-configs/ .claude/skills/tdd/
cp /tmp/dev-workflow/skills/implement/SKILL.md .claude/skills/implement/
cp -r /tmp/dev-workflow/skills/implement/references/ .claude/skills/implement/
cp -r /tmp/dev-workflow/skills/implement/project-configs/ .claude/skills/implement/

# Agents
mkdir -p .claude/agents
cp /tmp/dev-workflow/agents/*.md .claude/agents/
```

### Individual skills (standalone repos)

If you only want the spec skill without the full workflow:

- **Spec only:** [openkash/ai-agent-spec-skill](https://github.com/openkash/ai-agent-spec-skill)

> **Note:** [ai-agent-tdd-skill](https://github.com/openkash/ai-agent-tdd-skill) is deprecated. This repo is the canonical source for the TDD skill, which depends on the review agents for its gate system.

## Configuration

Each skill reads a `PROJECT.md` in its directory for project-specific
settings (build commands, test commands, standards).

```bash
# Copy templates and customize
cp /tmp/dev-workflow/skills/tdd/PROJECT.md .claude/skills/tdd/PROJECT.md
cp /tmp/dev-workflow/skills/implement/PROJECT.md .claude/skills/implement/PROJECT.md
cp /tmp/dev-workflow/skills/spec/PROJECT.md .claude/skills/spec/PROJECT.md
```

Expand All @@ -113,25 +105,25 @@ Example configs for common stacks are in `skills/*/project-configs/`.
Produces `docs/specs/rate-limiting.md` with user stories and acceptance criteria.

```
/tdd implement rate limiting (spec: docs/specs/rate-limiting.md)
/implement rate limiting (spec: docs/specs/rate-limiting.md)
```
The TDD skill decomposes the work into chunks, creates a tracker, and
asks for approval. The tracker file automatically triggers the
review-plan gate:
The /implement skill decomposes the work into chunks, creates a
tracker, and asks for approval. The tracker file automatically
triggers the review-plan gate:

```
GATE: tracker triggers review-plan agent (blocks Phase 3)
-> Returns structured verdict (PASS/WARN/FAIL per criterion)
-> FAIL: update plan and re-run. PASS: proceed to implementation.
```

After all chunks are implemented, the TDD skill triggers the
After all chunks are implemented, /implement triggers the
implementation review gate (both run in parallel):

```
GATE: all chunks complete triggers parallel review
-> review-impl agent verifies plan conformance and acceptance criteria
-> /simplify reviews code reuse and quality
-> /code-review reviews code reuse and quality
-> Address any FAIL findings before completing.
```

Expand All @@ -141,7 +133,7 @@ The agents work independently of the skills:

```
Use the review-plan agent to review my-plan.md
Use the review-impl agent to check the implementation against docs/tdd-tracker.json
Use the review-impl agent to check the implementation against docs/impl-tracker.json
```

## File Structure
Expand All @@ -156,15 +148,14 @@ ai-agent-dev-workflow/
│ │ ├── PROJECT.md # Template - copy and customize
│ │ ├── references/ # Spec template, taxonomy, validation
│ │ └── project-configs/ # Example configs per stack
│ └── tdd/ # TDD skill
│ ├── SKILL.md # Core TDD process
│ └── implement/ # Implementation skill
│ ├── SKILL.md # Core implementation process
│ ├── PROJECT.md # Template - copy and customize
│ ├── references/ # Chunk template, tracker schema, checklist
│ └── project-configs/ # Example configs per stack
├── agents/
│ ├── review-plan.md # Plan review agent (8-point)
│ └── review-impl.md # Implementation review agent (8-point)
├── sync.sh # Sync to individual repos (maintainer use)
├── LICENSE # Apache 2.0
└── README.md
```
Expand All @@ -179,7 +170,7 @@ The review agents are subagents (not slash-command skills) by design:
|--------|----------------------|-------------------|
| **Evaluator independence** | Runs in same context as author, biased toward own work | Fresh context, no memory of writing the plan/code |
| **Context pollution** | Review details consume main window | Isolated, returns summary only |
| **Automation** | User must remember to invoke | /tdd gates trigger automatically from artifacts |
| **Automation** | User must remember to invoke | /implement gates trigger automatically from artifacts |
| **Parallel execution** | Sequential in main context | Can run both reviews in parallel |
| **Standalone use** | User invokes via `/review-plan` | User invokes via natural language ("review this plan") |

Expand Down
Loading
Loading