all-for-claudecode 2.0.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/.claude-plugin/marketplace.json +4 -4
  2. package/.claude-plugin/plugin.json +3 -4
  3. package/MIGRATION.md +10 -7
  4. package/README.md +20 -22
  5. package/agents/afc-architect.md +16 -0
  6. package/agents/afc-impl-worker.md +40 -0
  7. package/agents/afc-security.md +11 -0
  8. package/bin/cli.mjs +1 -1
  9. package/commands/analyze.md +1 -1
  10. package/commands/auto.md +344 -93
  11. package/commands/checkpoint.md +3 -3
  12. package/commands/clarify.md +8 -1
  13. package/commands/debug.md +39 -2
  14. package/commands/doctor.md +11 -11
  15. package/commands/implement.md +211 -66
  16. package/commands/init.md +20 -15
  17. package/commands/plan.md +85 -15
  18. package/commands/principles.md +6 -1
  19. package/commands/resume.md +1 -1
  20. package/commands/review.md +68 -18
  21. package/commands/spec.md +60 -3
  22. package/commands/tasks.md +19 -4
  23. package/commands/test.md +20 -2
  24. package/docs/phase-gate-protocol.md +5 -5
  25. package/hooks/hooks.json +29 -3
  26. package/package.json +7 -5
  27. package/schemas/hooks.schema.json +75 -0
  28. package/schemas/marketplace.schema.json +52 -0
  29. package/schemas/plugin.schema.json +53 -0
  30. package/scripts/afc-bash-guard.sh +6 -6
  31. package/scripts/afc-blast-radius.sh +418 -0
  32. package/scripts/afc-config-change.sh +6 -4
  33. package/scripts/afc-dag-validate.mjs +94 -0
  34. package/scripts/afc-dag-validate.sh +142 -0
  35. package/scripts/afc-failure-hint.sh +6 -4
  36. package/scripts/afc-parallel-validate.mjs +81 -0
  37. package/scripts/afc-parallel-validate.sh +33 -45
  38. package/scripts/afc-permission-request.sh +46 -11
  39. package/scripts/afc-pipeline-manage.sh +42 -39
  40. package/scripts/afc-preflight-check.sh +6 -3
  41. package/scripts/afc-schema-validate.sh +225 -0
  42. package/scripts/afc-session-end.sh +5 -5
  43. package/scripts/afc-state.sh +236 -0
  44. package/scripts/afc-stop-gate.sh +29 -19
  45. package/scripts/afc-subagent-context.sh +8 -6
  46. package/scripts/afc-subagent-stop.sh +4 -2
  47. package/scripts/afc-task-completed-gate.sh +15 -19
  48. package/scripts/afc-teammate-idle.sh +9 -14
  49. package/scripts/afc-test-pre-gen.sh +141 -0
  50. package/scripts/afc-timeline-log.sh +9 -6
  51. package/scripts/afc-user-prompt-submit.sh +8 -10
  52. package/scripts/afc-worktree-create.sh +56 -0
  53. package/scripts/afc-worktree-remove.sh +47 -0
  54. package/scripts/install-shellspec.sh +38 -0
  55. package/scripts/pre-compact-checkpoint.sh +6 -4
  56. package/scripts/session-start-context.sh +9 -8
  57. package/scripts/track-afc-changes.sh +6 -9
  58. package/templates/afc.config.express-api.md +1 -1
  59. package/templates/afc.config.monorepo.md +1 -1
  60. package/templates/afc.config.nextjs-fsd.md +1 -1
  61. package/templates/afc.config.react-spa.md +1 -1
  62. package/templates/afc.config.template.md +1 -1
@@ -5,15 +5,15 @@
5
5
  "email": "relee6203@gmail.com"
6
6
  },
7
7
  "metadata": {
8
- "description": "Automated pipeline for Claude Code — spec → plan → tasks → implement → review → clean",
9
- "version": "2.0.0"
8
+ "description": "Automated pipeline for Claude Code — spec → plan → implement → review → clean",
9
+ "version": "2.1.0"
10
10
  },
11
11
  "plugins": [
12
12
  {
13
13
  "name": "afc",
14
14
  "source": "./",
15
- "description": "Automated pipeline for Claude Code. Automates the full development cycle: spec → plan → tasks → implement → review → clean.",
16
- "version": "2.0.0",
15
+ "description": "Automated pipeline for Claude Code. Automates the full development cycle: spec → plan → implement → review → clean.",
16
+ "version": "2.1.0",
17
17
  "category": "automation",
18
18
  "tags": ["pipeline", "automation", "spec", "plan", "implement", "review", "critic-loop"]
19
19
  }
@@ -1,12 +1,11 @@
1
1
  {
2
2
  "name": "afc",
3
- "version": "2.0.0",
4
- "description": "Automated pipeline for Claude Code. Automates the full development cycle: spec → plan → tasks → implement → review → clean.",
3
+ "version": "2.1.0",
4
+ "description": "Automated pipeline for Claude Code. Automates the full development cycle: spec → plan → implement → review → clean.",
5
5
  "author": { "name": "jhlee0409", "email": "relee6203@gmail.com" },
6
6
  "homepage": "https://github.com/jhlee0409/all-for-claudecode",
7
7
  "repository": "https://github.com/jhlee0409/all-for-claudecode",
8
8
  "license": "MIT",
9
9
  "keywords": ["pipeline", "automation", "spec", "plan", "implement", "review", "critic-loop"],
10
- "commands": "./commands/",
11
- "hooks": "./hooks/hooks.json"
10
+ "commands": "./commands/"
12
11
  }
package/MIGRATION.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  ## v2.0 — Rebrand: selfish-pipeline → all-for-claudecode
4
4
 
5
- > All-for-ClaudeCode v2.0 renames the package, plugin prefix, scripts, agents, and state files from `selfish` to `afc`.
5
+ > all-for-claudecode v2.0 renames the package, plugin prefix, scripts, agents, and state files from `selfish` to `afc`.
6
6
 
7
7
  ### What Changed
8
8
 
@@ -13,7 +13,7 @@
13
13
  | Command prefix | `/selfish:spec` | `/afc:spec` |
14
14
  | Script prefix | `selfish-*.sh` | `afc-*.sh` |
15
15
  | Agent names | `selfish-architect`, `selfish-security` | `afc-architect`, `afc-security` |
16
- | State files | `.selfish-active`, `.selfish-phase`, etc. | `.afc-active`, `.afc-phase`, etc. |
16
+ | State files | `.selfish-active`, `.selfish-phase`, etc. | `.claude/.afc-state.json` (single consolidated file) |
17
17
  | Config file | `selfish.config.md` | `afc.config.md` |
18
18
  | Git tags | `selfish/pre-auto` | `afc/pre-auto` |
19
19
  | CLAUDE.md block | `SELFISH:START` / `SELFISH:END` | `AFC:START` / `AFC:END` |
@@ -55,15 +55,18 @@ Replace the `SELFISH:START` / `SELFISH:END` block in your project's CLAUDE.md:
55
55
 
56
56
  Or simply run `/afc:init` to regenerate the block.
57
57
 
58
- #### 4. Rename state files (if pipeline was active)
58
+ #### 4. Migrate state files (if pipeline was active)
59
+
60
+ v2.0 consolidated multiple state flag files (`.selfish-active`, `.selfish-phase`, `.selfish-ci-passed`, `.selfish-changes.log`) into a single JSON file (`.claude/.afc-state.json`). If you had an active pipeline:
59
61
 
60
62
  ```bash
61
63
  cd .claude
62
- for f in .selfish-*; do
63
- [ -f "$f" ] && mv "$f" "${f/.selfish-/.afc-}"
64
- done
64
+ # Remove old individual flag files
65
+ rm -f .selfish-active .selfish-phase .selfish-ci-passed .selfish-changes.log
66
+ # Rename directories
65
67
  [ -d selfish ] && mv selfish afc
66
68
  [ -f selfish.config.md ] && mv selfish.config.md afc.config.md
69
+ # Note: .afc-state.json is created automatically on next pipeline start
67
70
  ```
68
71
 
69
72
  #### 5. Update git tags
@@ -159,9 +162,9 @@ For new projects, you can auto-generate it with `/afc:init`.
159
162
  ## What Stays the Same
160
163
 
161
164
  - `.claude/afc.config.md` file format and path
162
- - `.afc-*` state file paths
163
165
  - `git tag afc/pre-*` safety tags
164
166
  - Internal logic of hook scripts
167
+ - Pipeline state concept (now consolidated in `.claude/.afc-state.json`)
165
168
 
166
169
  ## What Changed (v1.2.2+)
167
170
 
package/README.md CHANGED
@@ -1,18 +1,18 @@
1
- # All-for-ClaudeCode
1
+ # all-for-claudecode
2
2
 
3
- **Claude Code plugin that automates the full development cycle — spec → plan → tasks → implement → review → clean.**
3
+ **Claude Code plugin that automates the full development cycle — spec → plan → implement → review → clean.**
4
4
 
5
5
  [![npm version](https://img.shields.io/npm/v/all-for-claudecode)](https://www.npmjs.com/package/all-for-claudecode)
6
6
  [![license](https://img.shields.io/github/license/jhlee0409/all-for-claudecode)](./LICENSE)
7
- [![test](https://img.shields.io/badge/tests-161%20passed-brightgreen)](#how-it-works)
7
+ [![test](https://img.shields.io/badge/tests-125%20passed-brightgreen)](#how-it-works)
8
8
  [![hooks](https://img.shields.io/badge/hooks-15%20events-blue)](#15-hook-events)
9
9
  [![commands](https://img.shields.io/badge/commands-18-orange)](#18-slash-commands)
10
10
 
11
- > Zero-dependency automation pipeline for Claude Code. One command (`/afc:auto`) runs the entire cycle: write specs, design plans, break into tasks, implement code, review quality, and clean up — all with built-in CI gates and critic loops.
11
+ > Zero-dependency automation pipeline for Claude Code. One command (`/afc:auto`) runs the entire cycle: write specs, design plans, implement code, review quality, and clean up — all with built-in CI gates and critic loops.
12
12
 
13
- ## What is All-for-ClaudeCode?
13
+ ## What is all-for-claudecode?
14
14
 
15
- All-for-ClaudeCode is a **Claude Code plugin** that transforms your development workflow into a fully automated pipeline. Instead of manually prompting Claude through each development phase, you run a single command and the pipeline handles everything — from writing feature specifications to final code review.
15
+ all-for-claudecode is a **Claude Code plugin** that transforms your development workflow into a fully automated pipeline. Instead of manually prompting Claude through each development phase, you run a single command and the pipeline handles everything — from writing feature specifications to final code review.
16
16
 
17
17
  - **18 slash commands** for every phase of development
18
18
  - **15 hook events** with 3 handler types (shell scripts, LLM prompts, subagents)
@@ -55,11 +55,10 @@ claude plugin install afc@all-for-claudecode --scope user
55
55
 
56
56
  That's it. The pipeline will:
57
57
  1. Write a feature spec with acceptance criteria
58
- 2. Design an implementation plan with file change map
59
- 3. Break the plan into parallelizable tasks
60
- 4. Implement each task with CI verification
61
- 5. Run a code review with security scan
62
- 6. Clean up artifacts and prepare for commit
58
+ 2. Design an implementation plan with file change map and dependency graph
59
+ 3. Implement each task with CI verification (tasks auto-generated from plan)
60
+ 4. Run a code review with security scan
61
+ 5. Clean up artifacts and prepare for commit
63
62
 
64
63
  ## Features
65
64
 
@@ -69,10 +68,10 @@ That's it. The pipeline will:
69
68
  /afc:auto "feature description"
70
69
  ```
71
70
 
72
- Runs all 6 phases automatically with **Critic Loop** quality checks at each gate:
71
+ Runs all 5 phases automatically with **Critic Loop** quality checks at each gate:
73
72
 
74
73
  ```
75
- Spec (1/6) → Plan (2/6) → Tasks (3/6) → Implement (4/6) → Review (5/6) → Clean (6/6)
74
+ Spec (1/5) → Plan (2/5) → Implement (3/5) → Review (4/5) → Clean (5/5)
76
75
  ```
77
76
 
78
77
  ### 18 Slash Commands
@@ -81,7 +80,7 @@ Spec (1/6) → Plan (2/6) → Tasks (3/6) → Implement (4/6) → Review (5/6)
81
80
 
82
81
  | Command | Description |
83
82
  |---|---|
84
- | `/afc:auto` | Full Auto pipeline — runs all 6 phases |
83
+ | `/afc:auto` | Full Auto pipeline — runs all 5 phases |
85
84
  | `/afc:spec` | Write feature specification with acceptance criteria |
86
85
  | `/afc:plan` | Design implementation plan with file change map |
87
86
  | `/afc:implement` | Execute code implementation with CI gates |
@@ -106,7 +105,7 @@ Spec (1/6) → Plan (2/6) → Tasks (3/6) → Implement (4/6) → Review (5/6)
106
105
 
107
106
  | Command | Description |
108
107
  |---|---|
109
- | `/afc:tasks` | Break plan into parallelizable tasks |
108
+ | `/afc:tasks` | Task decomposition (auto-generated by implement) |
110
109
  | `/afc:analyze` | Verify artifact consistency |
111
110
  | `/afc:clarify` | Resolve spec ambiguities |
112
111
 
@@ -165,12 +164,11 @@ Two custom agents that **learn across sessions**:
165
164
  ┌─────────────────────────────────────────────┐
166
165
  │ /afc:auto "Add feature X" │
167
166
  ├─────────────────────────────────────────────┤
168
- │ Phase 1: Spec → Critic Loop → Gate ✓
169
- │ Phase 2: Plan → Critic Loop → Gate ✓
170
- │ Phase 3: Tasks Critic LoopGate
171
- │ Phase 4: Implement CI Gate → Gate ✓ │
172
- │ Phase 5: Review Security Scan → Gate ✓
173
- │ Phase 6: Clean → Artifacts removed │
167
+ │ Phase 1: Spec → Critic Loop → Gate ✓
168
+ │ Phase 2: Plan → Critic Loop → Gate ✓
169
+ │ Phase 3: Implement Tasks auto-genCI
170
+ │ Phase 4: Review 8 perspectives → Gate ✓│
171
+ │ Phase 5: Clean Artifacts removed
174
172
  ├─────────────────────────────────────────────┤
175
173
  │ 15 hooks run automatically at each step │
176
174
  │ Stop/TaskCompleted gates block if CI fails │
@@ -194,7 +192,7 @@ This detects your tech stack and generates `.claude/afc.config.md` with:
194
192
  ## FAQ
195
193
 
196
194
  ### What is all-for-claudecode?
197
- A Claude Code plugin that automates the entire development cycle (spec → plan → tasks → implement → review → clean) through 18 slash commands and 15 hook events.
195
+ A Claude Code plugin that automates the entire development cycle (spec → plan → implement → review → clean) through 18 slash commands and 15 hook events.
198
196
 
199
197
  ### How does it compare to manual Claude Code workflows?
200
198
  Instead of manually prompting each step, all-for-claudecode orchestrates the full cycle with built-in quality gates that physically prevent skipping CI or security checks.
@@ -18,6 +18,22 @@ skills:
18
18
 
19
19
  You are an architecture analysis agent for the current project.
20
20
 
21
+ ## Pipeline Integration
22
+
23
+ This agent is invoked automatically during the auto pipeline at two points:
24
+
25
+ ### Plan Phase — ADR Recording
26
+ - **Input**: Architecture Decision + File Change Map sections from plan.md
27
+ - **Task**: Check for conflicts with existing ADRs, record new decisions
28
+ - **Output**: `{ decisions_recorded: N, conflicts: [{ existing: "...", new: "...", reason: "..." }] }`
29
+ - If conflicts found: orchestrator ESCALATEs to user
30
+
31
+ ### Review Phase — Architecture Review (Perspective B)
32
+ - **Input**: List of changed files from `git diff`
33
+ - **Task**: Review files for architecture compliance, cross-reference with ADRs
34
+ - **Output**: Findings as `severity (Critical/Warning/Info), file:line, issue, suggested fix`
35
+ - Findings are merged into the consolidated review report
36
+
21
37
  ## Reference Documents
22
38
 
23
39
  Before performing analysis, read these shared reference documents:
@@ -0,0 +1,40 @@
1
+ ---
2
+ name: afc-impl-worker
3
+ description: "Parallel implementation worker — executes assigned tasks from the pipeline task pool with worktree isolation support."
4
+ tools:
5
+ - Read
6
+ - Write
7
+ - Edit
8
+ - Bash
9
+ - Glob
10
+ - Grep
11
+ model: sonnet
12
+ ---
13
+
14
+ You are a parallel implementation worker for the all-for-claudecode pipeline.
15
+
16
+ ## Workflow
17
+
18
+ The orchestrator pre-assigns tasks to you via the prompt. Do NOT self-claim tasks via TaskList/TaskUpdate — this avoids last-write-wins race conditions.
19
+
20
+ 1. Read the **Implementation Context** section in your prompt first — this contains the feature objective, constraints, edge cases, and prohibitions from the original spec/plan
21
+ 2. Read the task list provided in your prompt (orchestrator pre-assigned)
22
+ 3. For each assigned task, in order:
23
+ a. Read all files you need to modify BEFORE making changes
24
+ b. Implement the task following the plan design and Implementation Context constraints
25
+ c. Verify with the project's gate command if applicable
26
+ 4. Return a structured summary of completed work:
27
+ - Files changed (with paths)
28
+ - Key decisions made during implementation
29
+ - Issues encountered or concerns
30
+ - Gate command result
31
+ 5. Do NOT call TaskList or TaskUpdate — the orchestrator handles task state management
32
+
33
+ ## Rules
34
+
35
+ - Always read existing files before modifying them
36
+ - Follow the project's shell script conventions: `set -euo pipefail`, `trap cleanup EXIT`, jq-first parsing
37
+ - Use `printf '%s\n' "$VAR"` instead of `echo "$VAR"` for external data
38
+ - All scripts must pass shellcheck
39
+ - Do not modify files outside your assigned task's scope
40
+ - If a task fails, report the error and move to the next task
@@ -18,6 +18,17 @@ skills:
18
18
 
19
19
  You are a security scanning agent for the current project.
20
20
 
21
+ ## Pipeline Integration
22
+
23
+ This agent is invoked automatically during the auto pipeline:
24
+
25
+ ### Review Phase — Security Review (Perspective C)
26
+ - **Input**: List of changed files from `git diff`
27
+ - **Task**: Scan for security vulnerabilities, filter known false positives from memory
28
+ - **Output**: Findings as `severity (Critical/Warning/Info), file:line, issue, suggested fix`
29
+ - Findings are merged into the consolidated review report
30
+ - Check for: command injection, path traversal, unvalidated input, sensitive data exposure, shell escaping issues
31
+
21
32
  ## Reference Documents
22
33
 
23
34
  Before performing scans, read these shared reference documents:
package/bin/cli.mjs CHANGED
@@ -40,7 +40,7 @@ function run(cmd) {
40
40
 
41
41
  async function main() {
42
42
  console.log();
43
- console.log(" All-for-ClaudeCode — Claude Code Plugin Installer");
43
+ console.log(" all-for-claudecode — Claude Code Plugin Installer");
44
44
  console.log(" ===================================================");
45
45
  console.log();
46
46
 
@@ -123,4 +123,4 @@ Analysis complete
123
123
 
124
124
  - **Read-only**: Do not modify any files. Report only.
125
125
  - **Avoid false positives**: Do not over-flag ambiguity. Consider context.
126
- - **Optional**: Not required in the pipeline. Can proceed plan → tasks → implement directly.
126
+ - **Optional**: Not required in the pipeline. Can proceed plan → implement directly.