claude-code-pilot 3.1.1 → 3.3.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.
- package/CHANGELOG.md +57 -0
- package/README.md +16 -11
- package/bin/install.js +127 -11
- package/manifest.json +20 -1
- package/package.json +4 -3
- package/src/agents/a11y-architect.md +141 -0
- package/src/agents/code-architect.md +71 -0
- package/src/agents/code-explorer.md +69 -0
- package/src/agents/code-simplifier.md +47 -0
- package/src/agents/comment-analyzer.md +45 -0
- package/src/agents/csharp-reviewer.md +101 -0
- package/src/agents/dart-build-resolver.md +201 -0
- package/src/agents/django-build-resolver.md +252 -0
- package/src/agents/django-reviewer.md +169 -0
- package/src/agents/fastapi-reviewer.md +79 -0
- package/src/agents/fsharp-reviewer.md +109 -0
- package/src/agents/pr-test-analyzer.md +45 -0
- package/src/agents/silent-failure-hunter.md +50 -0
- package/src/agents/swift-build-resolver.md +170 -0
- package/src/agents/swift-reviewer.md +116 -0
- package/src/agents/type-design-analyzer.md +41 -0
- package/src/available-rules/README.md +3 -1
- package/src/available-rules/dart/coding-style.md +159 -0
- package/src/available-rules/dart/hooks.md +66 -0
- package/src/available-rules/dart/patterns.md +261 -0
- package/src/available-rules/dart/security.md +135 -0
- package/src/available-rules/dart/testing.md +215 -0
- package/src/available-rules/web/coding-style.md +105 -0
- package/src/available-rules/web/design-quality.md +72 -0
- package/src/available-rules/web/hooks.md +129 -0
- package/src/available-rules/web/patterns.md +88 -0
- package/src/available-rules/web/performance.md +73 -0
- package/src/available-rules/web/security.md +66 -0
- package/src/available-rules/web/testing.md +64 -0
- package/src/commands/ccp/ai-integration-phase.md +36 -0
- package/src/commands/ccp/audit-fix.md +33 -0
- package/src/commands/ccp/code-review-fix.md +52 -0
- package/src/commands/ccp/cost-report.md +107 -0
- package/src/commands/ccp/eval-review.md +32 -0
- package/src/commands/ccp/extract_learnings.md +22 -0
- package/src/commands/ccp/import.md +37 -0
- package/src/commands/ccp/ingest-docs.md +42 -0
- package/src/commands/ccp/intel.md +179 -0
- package/src/commands/ccp/mvp-phase.md +45 -0
- package/src/commands/ccp/plan-prd.md +160 -0
- package/src/commands/ccp/plan-review-convergence.md +58 -0
- package/src/commands/ccp/pr-ecc.md +184 -0
- package/src/commands/ccp/scan.md +26 -0
- package/src/commands/ccp/security-scan.md +74 -0
- package/src/commands/ccp/sketch-wrap-up.md +31 -0
- package/src/commands/ccp/sketch.md +54 -0
- package/src/commands/ccp/spec-phase.md +62 -0
- package/src/commands/ccp/spike-wrap-up.md +31 -0
- package/src/commands/ccp/spike.md +51 -0
- package/src/commands/ccp/ultraplan-phase.md +33 -0
- package/src/hooks/ccp-bash-hook-dispatcher.js +96 -0
- package/src/hooks/ccp-context-monitor.js +23 -0
- package/src/hooks/ccp-doc-file-warning.js +93 -0
- package/src/hooks/ccp-pre-bash-dispatcher.js +24 -0
- package/src/hooks/ccp-read-injection-scanner.js +152 -0
- package/src/hooks/ccp-write-gateguard.js +868 -0
- package/src/hooks/kit-check-update.js +59 -7
- package/src/hooks/run-with-flags-shell.sh +1 -0
- package/src/hooks/run-with-flags.js +48 -1
- package/src/hooks/session-end.js +88 -1
- package/src/lib/hook-flags.js +14 -0
- package/src/lib/project-detect.js +0 -2
- package/src/lib/shell-substitution.js +499 -0
- package/src/pilot/references/agent-contracts.md +79 -0
- package/src/pilot/references/ai-evals.md +156 -0
- package/src/pilot/references/ai-frameworks.md +186 -0
- package/src/pilot/references/doc-conflict-engine.md +91 -0
- package/src/pilot/references/execute-mvp-tdd.md +81 -0
- package/src/pilot/references/gate-prompts.md +100 -0
- package/src/pilot/references/gates.md +70 -0
- package/src/pilot/references/mandatory-initial-read.md +2 -0
- package/src/pilot/references/mvp-concepts.md +49 -0
- package/src/pilot/references/planner-graphify-auto-update.md +67 -0
- package/src/pilot/references/planner-human-verify-mode.md +57 -0
- package/src/pilot/references/planner-mvp-mode.md +53 -0
- package/src/pilot/references/project-skills-discovery.md +19 -0
- package/src/pilot/references/revision-loop.md +97 -0
- package/src/pilot/references/skeleton-template.md +48 -0
- package/src/pilot/references/sketch-interactivity.md +41 -0
- package/src/pilot/references/sketch-theme-system.md +94 -0
- package/src/pilot/references/sketch-tooling.md +45 -0
- package/src/pilot/references/sketch-variant-patterns.md +81 -0
- package/src/pilot/references/spidr-splitting.md +69 -0
- package/src/pilot/references/thinking-models-debug.md +44 -0
- package/src/pilot/references/thinking-models-execution.md +50 -0
- package/src/pilot/references/thinking-models-planning.md +62 -0
- package/src/pilot/references/thinking-models-research.md +50 -0
- package/src/pilot/references/thinking-models-verification.md +55 -0
- package/src/pilot/references/user-story-template.md +58 -0
- package/src/pilot/references/verify-mvp-mode.md +85 -0
- package/src/pilot/references/worktree-path-safety.md +89 -0
- package/src/pilot/templates/AI-SPEC.md +246 -0
- package/src/pilot/templates/spec.md +307 -0
- package/src/pilot/workflows/ai-integration-phase.md +284 -0
- package/src/pilot/workflows/audit-fix.md +175 -0
- package/src/pilot/workflows/code-review-fix.md +497 -0
- package/src/pilot/workflows/eval-review.md +155 -0
- package/src/pilot/workflows/extract_learnings.md +242 -0
- package/src/pilot/workflows/help.md +5 -0
- package/src/pilot/workflows/import.md +246 -0
- package/src/pilot/workflows/ingest-docs.md +328 -0
- package/src/pilot/workflows/mvp-phase.md +199 -0
- package/src/pilot/workflows/plan-review-convergence.md +329 -0
- package/src/pilot/workflows/scan.md +102 -0
- package/src/pilot/workflows/sketch-wrap-up.md +285 -0
- package/src/pilot/workflows/sketch.md +360 -0
- package/src/pilot/workflows/spec-phase.md +262 -0
- package/src/pilot/workflows/spike-wrap-up.md +306 -0
- package/src/pilot/workflows/spike.md +452 -0
- package/src/pilot/workflows/ultraplan-phase.md +189 -0
- package/src/skills/accessibility/SKILL.md +146 -0
- package/src/skills/agent-architecture-audit/SKILL.md +256 -0
- package/src/skills/agent-eval/SKILL.md +145 -0
- package/src/skills/agent-harness-design/SKILL.md +73 -0
- package/src/skills/agent-introspection-debugging/SKILL.md +153 -0
- package/src/skills/android-clean-architecture/SKILL.md +339 -0
- package/src/skills/angular-developer/SKILL.md +154 -0
- package/src/skills/angular-developer/references/angular-animations.md +160 -0
- package/src/skills/angular-developer/references/angular-aria.md +410 -0
- package/src/skills/angular-developer/references/cli.md +86 -0
- package/src/skills/angular-developer/references/component-harnesses.md +59 -0
- package/src/skills/angular-developer/references/component-styling.md +91 -0
- package/src/skills/angular-developer/references/components.md +117 -0
- package/src/skills/angular-developer/references/creating-services.md +97 -0
- package/src/skills/angular-developer/references/data-resolvers.md +69 -0
- package/src/skills/angular-developer/references/define-routes.md +67 -0
- package/src/skills/angular-developer/references/defining-providers.md +72 -0
- package/src/skills/angular-developer/references/di-fundamentals.md +120 -0
- package/src/skills/angular-developer/references/e2e-testing.md +56 -0
- package/src/skills/angular-developer/references/effects.md +83 -0
- package/src/skills/angular-developer/references/hierarchical-injectors.md +43 -0
- package/src/skills/angular-developer/references/host-elements.md +80 -0
- package/src/skills/angular-developer/references/injection-context.md +63 -0
- package/src/skills/angular-developer/references/inputs.md +101 -0
- package/src/skills/angular-developer/references/linked-signal.md +59 -0
- package/src/skills/angular-developer/references/loading-strategies.md +61 -0
- package/src/skills/angular-developer/references/mcp.md +108 -0
- package/src/skills/angular-developer/references/navigate-to-routes.md +69 -0
- package/src/skills/angular-developer/references/outputs.md +86 -0
- package/src/skills/angular-developer/references/reactive-forms.md +122 -0
- package/src/skills/angular-developer/references/rendering-strategies.md +44 -0
- package/src/skills/angular-developer/references/resource.md +77 -0
- package/src/skills/angular-developer/references/route-animations.md +56 -0
- package/src/skills/angular-developer/references/route-guards.md +52 -0
- package/src/skills/angular-developer/references/router-lifecycle.md +45 -0
- package/src/skills/angular-developer/references/router-testing.md +87 -0
- package/src/skills/angular-developer/references/show-routes-with-outlets.md +68 -0
- package/src/skills/angular-developer/references/signal-forms.md +795 -0
- package/src/skills/angular-developer/references/signals-overview.md +94 -0
- package/src/skills/angular-developer/references/tailwind-css.md +69 -0
- package/src/skills/angular-developer/references/template-driven-forms.md +114 -0
- package/src/skills/angular-developer/references/testing-fundamentals.md +65 -0
- package/src/skills/api-connector-builder/SKILL.md +120 -0
- package/src/skills/code-tour/SKILL.md +236 -0
- package/src/skills/compose-multiplatform-patterns/SKILL.md +299 -0
- package/src/skills/csharp-testing/SKILL.md +321 -0
- package/src/skills/dart-flutter-patterns/SKILL.md +563 -0
- package/src/skills/dashboard-builder/SKILL.md +108 -0
- package/src/skills/dotnet-patterns/SKILL.md +321 -0
- package/src/skills/error-handling/SKILL.md +376 -0
- package/src/skills/fastapi-patterns/SKILL.md +327 -0
- package/src/skills/flox-environments/SKILL.md +496 -0
- package/src/skills/frontend-design/SKILL.md +145 -0
- package/src/skills/frontend-slides/SKILL.md +184 -0
- package/src/skills/frontend-slides/STYLE_PRESETS.md +330 -0
- package/src/skills/fsharp-testing/SKILL.md +280 -0
- package/src/skills/gateguard/SKILL.md +121 -0
- package/src/skills/github-ops/SKILL.md +144 -0
- package/src/skills/hookify-rules/SKILL.md +128 -0
- package/src/skills/ios-icon-gen/SKILL.md +157 -0
- package/src/skills/ios-icon-gen/scripts/generate_icons.swift +258 -0
- package/src/skills/ios-icon-gen/scripts/iconify_gen.sh +235 -0
- package/src/skills/knowledge-ops/SKILL.md +154 -0
- package/src/skills/liquid-glass-design/SKILL.md +279 -0
- package/src/skills/make-interfaces-feel-better/SKILL.md +151 -0
- package/src/skills/mysql-patterns/SKILL.md +412 -0
- package/src/skills/nestjs-patterns/SKILL.md +230 -0
- package/src/skills/plan-orchestrate/SKILL.md +220 -0
- package/src/skills/prisma-patterns/SKILL.md +371 -0
- package/src/skills/production-audit/SKILL.md +206 -0
- package/src/skills/security-bounty-hunter/SKILL.md +99 -0
- package/src/skills/security-scan/references/agentshield-policy-exception/candidate-playbook.md +49 -0
- package/src/skills/security-scan/references/agentshield-policy-exception/report.json +35 -0
- package/src/skills/security-scan/references/agentshield-policy-exception/scenario.json +62 -0
- package/src/skills/security-scan/references/agentshield-policy-exception/trace.json +45 -0
- package/src/skills/security-scan/references/agentshield-policy-exception/verifier-result.json +35 -0
- package/src/skills/swift-actor-persistence/SKILL.md +143 -0
- package/src/skills/swift-protocol-di-testing/SKILL.md +190 -0
- package/src/skills/swiftui-patterns/SKILL.md +259 -0
- package/src/skills/terminal-ops/SKILL.md +109 -0
- package/src/skills/ui-demo/SKILL.md +465 -0
- package/src/skills/vite-patterns/SKILL.md +449 -0
- package/src/skills/windows-desktop-e2e/SKILL.md +887 -0
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Generate a local Claude Code cost report from a cost-tracker SQLite database.
|
|
3
|
+
argument-hint: [csv]
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Cost Report
|
|
7
|
+
|
|
8
|
+
Query the local cost-tracking database and present a spending report by day,
|
|
9
|
+
project, tool, and session. This command assumes a cost-tracking hook or plugin
|
|
10
|
+
is already writing usage rows to `~/.claude-cost-tracker/usage.db`.
|
|
11
|
+
|
|
12
|
+
## What This Command Does
|
|
13
|
+
|
|
14
|
+
1. Check that `sqlite3` is available.
|
|
15
|
+
2. Check that `~/.claude-cost-tracker/usage.db` exists.
|
|
16
|
+
3. Run aggregate queries against the `usage` table.
|
|
17
|
+
4. Present a compact report, or export recent rows as CSV when the argument is
|
|
18
|
+
`csv`.
|
|
19
|
+
|
|
20
|
+
## Prerequisites
|
|
21
|
+
|
|
22
|
+
The database must be populated by a local cost tracker. If the file is missing,
|
|
23
|
+
tell the user the tracker is not set up and suggest installing or enabling a
|
|
24
|
+
trusted Claude Code cost-tracking hook/plugin first.
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
test -f ~/.claude-cost-tracker/usage.db && echo "Database found" || echo "Database not found"
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Summary Query
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
sqlite3 -header -column ~/.claude-cost-tracker/usage.db "
|
|
34
|
+
SELECT
|
|
35
|
+
ROUND(COALESCE(SUM(CASE WHEN date(timestamp) = date('now') THEN cost_usd END), 0), 4) AS today_cost,
|
|
36
|
+
ROUND(COALESCE(SUM(CASE WHEN date(timestamp) = date('now', '-1 day') THEN cost_usd END), 0), 4) AS yesterday_cost,
|
|
37
|
+
ROUND(COALESCE(SUM(cost_usd), 0), 4) AS total_cost,
|
|
38
|
+
COUNT(*) AS total_calls,
|
|
39
|
+
COUNT(DISTINCT session_id) AS sessions
|
|
40
|
+
FROM usage;
|
|
41
|
+
"
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
## Project Breakdown
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
sqlite3 -header -column ~/.claude-cost-tracker/usage.db "
|
|
48
|
+
SELECT project, ROUND(SUM(cost_usd), 4) AS cost, COUNT(*) AS calls
|
|
49
|
+
FROM usage
|
|
50
|
+
GROUP BY project
|
|
51
|
+
ORDER BY cost DESC;
|
|
52
|
+
"
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## Tool Breakdown
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
sqlite3 -header -column ~/.claude-cost-tracker/usage.db "
|
|
59
|
+
SELECT tool_name, ROUND(SUM(cost_usd), 4) AS cost, COUNT(*) AS calls
|
|
60
|
+
FROM usage
|
|
61
|
+
GROUP BY tool_name
|
|
62
|
+
ORDER BY cost DESC;
|
|
63
|
+
"
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
## Last Seven Days
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
sqlite3 -header -column ~/.claude-cost-tracker/usage.db "
|
|
70
|
+
SELECT date(timestamp) AS date, ROUND(SUM(cost_usd), 4) AS cost, COUNT(*) AS calls
|
|
71
|
+
FROM usage
|
|
72
|
+
GROUP BY date(timestamp)
|
|
73
|
+
ORDER BY date DESC
|
|
74
|
+
LIMIT 7;
|
|
75
|
+
"
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
## CSV Export
|
|
79
|
+
|
|
80
|
+
If the user asks for `/cost-report csv`, export the most recent usage rows with
|
|
81
|
+
an explicit column list:
|
|
82
|
+
|
|
83
|
+
```bash
|
|
84
|
+
sqlite3 -csv -header ~/.claude-cost-tracker/usage.db "
|
|
85
|
+
SELECT timestamp, project, tool_name, input_tokens, output_tokens, cost_usd, session_id, model
|
|
86
|
+
FROM usage
|
|
87
|
+
ORDER BY timestamp DESC
|
|
88
|
+
LIMIT 100;
|
|
89
|
+
"
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
## Report Format
|
|
93
|
+
|
|
94
|
+
Format the response as:
|
|
95
|
+
|
|
96
|
+
1. Summary: today, yesterday, total, calls, sessions.
|
|
97
|
+
2. By project: projects ranked by total cost.
|
|
98
|
+
3. By tool: tools ranked by total cost.
|
|
99
|
+
4. Last seven days: date, cost, call count.
|
|
100
|
+
|
|
101
|
+
Use four decimal places for sub-dollar amounts. Do not estimate pricing from raw
|
|
102
|
+
tokens in this command; rely on the precomputed `cost_usd` values written by the
|
|
103
|
+
tracker.
|
|
104
|
+
|
|
105
|
+
## Source
|
|
106
|
+
|
|
107
|
+
Salvaged from stale community PR #1304 by `MayurBhavsar`.
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ccp:eval-review
|
|
3
|
+
description: Retroactively audit an executed AI phase's evaluation coverage — scores each eval dimension as COVERED/PARTIAL/MISSING and produces an actionable EVAL-REVIEW.md with remediation plan
|
|
4
|
+
argument-hint: "[phase number]"
|
|
5
|
+
allowed-tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Write
|
|
8
|
+
- Bash
|
|
9
|
+
- Glob
|
|
10
|
+
- Grep
|
|
11
|
+
- Task
|
|
12
|
+
- AskUserQuestion
|
|
13
|
+
---
|
|
14
|
+
<objective>
|
|
15
|
+
Conduct a retroactive evaluation coverage audit of a completed AI phase.
|
|
16
|
+
Checks whether the evaluation strategy from AI-SPEC.md was implemented.
|
|
17
|
+
Produces EVAL-REVIEW.md with score, verdict, gaps, and remediation plan.
|
|
18
|
+
</objective>
|
|
19
|
+
|
|
20
|
+
<execution_context>
|
|
21
|
+
@~/.claude/pilot/workflows/eval-review.md
|
|
22
|
+
@~/.claude/pilot/references/ai-evals.md
|
|
23
|
+
</execution_context>
|
|
24
|
+
|
|
25
|
+
<context>
|
|
26
|
+
Phase: $ARGUMENTS — optional, defaults to last completed phase.
|
|
27
|
+
</context>
|
|
28
|
+
|
|
29
|
+
<process>
|
|
30
|
+
Execute @~/.claude/pilot/workflows/eval-review.md end-to-end.
|
|
31
|
+
Preserve all workflow gates.
|
|
32
|
+
</process>
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ccp:extract-learnings
|
|
3
|
+
description: Extract decisions, lessons, patterns, and surprises from completed phase artifacts
|
|
4
|
+
argument-hint: <phase-number>
|
|
5
|
+
allowed-tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Write
|
|
8
|
+
- Bash
|
|
9
|
+
- Grep
|
|
10
|
+
- Glob
|
|
11
|
+
- Agent
|
|
12
|
+
type: prompt
|
|
13
|
+
---
|
|
14
|
+
<objective>
|
|
15
|
+
Extract structured learnings from completed phase artifacts (PLAN.md, SUMMARY.md, VERIFICATION.md, UAT.md, STATE.md) into a LEARNINGS.md file that captures decisions, lessons learned, patterns discovered, and surprises encountered.
|
|
16
|
+
</objective>
|
|
17
|
+
|
|
18
|
+
<execution_context>
|
|
19
|
+
@~/.claude/pilot/workflows/extract_learnings.md
|
|
20
|
+
</execution_context>
|
|
21
|
+
|
|
22
|
+
Execute the extract-learnings workflow from @~/.claude/pilot/workflows/extract_learnings.md end-to-end.
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ccp:import
|
|
3
|
+
description: Ingest external plans with conflict detection against project decisions before writing anything.
|
|
4
|
+
argument-hint: "--from <filepath>"
|
|
5
|
+
allowed-tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Write
|
|
8
|
+
- Edit
|
|
9
|
+
- Bash
|
|
10
|
+
- Glob
|
|
11
|
+
- Grep
|
|
12
|
+
- AskUserQuestion
|
|
13
|
+
- Task
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
<objective>
|
|
17
|
+
Import external plan files into the GSD planning system with conflict detection against PROJECT.md decisions.
|
|
18
|
+
|
|
19
|
+
- **--from**: Import an external plan file, detect conflicts, write as GSD PLAN.md, validate via gsd-plan-checker.
|
|
20
|
+
|
|
21
|
+
Future: `--prd` mode for PRD extraction is planned for a follow-up PR.
|
|
22
|
+
</objective>
|
|
23
|
+
|
|
24
|
+
<execution_context>
|
|
25
|
+
@~/.claude/pilot/workflows/import.md
|
|
26
|
+
@~/.claude/pilot/references/ui-brand.md
|
|
27
|
+
@~/.claude/pilot/references/gate-prompts.md
|
|
28
|
+
@~/.claude/pilot/references/doc-conflict-engine.md
|
|
29
|
+
</execution_context>
|
|
30
|
+
|
|
31
|
+
<context>
|
|
32
|
+
$ARGUMENTS
|
|
33
|
+
</context>
|
|
34
|
+
|
|
35
|
+
<process>
|
|
36
|
+
Execute the import workflow end-to-end.
|
|
37
|
+
</process>
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ccp:ingest-docs
|
|
3
|
+
description: Scan a repo for mixed ADRs, PRDs, SPECs, and DOCs and bootstrap or merge the full .planning/ setup from them. Classifies each doc in parallel, synthesizes a consolidated context with a conflicts report, and routes to new-project or merge-milestone depending on whether .planning/ already exists.
|
|
4
|
+
argument-hint: "[path] [--mode new|merge] [--manifest <file>] [--resolve auto|interactive]"
|
|
5
|
+
allowed-tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Write
|
|
8
|
+
- Edit
|
|
9
|
+
- Bash
|
|
10
|
+
- Glob
|
|
11
|
+
- Grep
|
|
12
|
+
- AskUserQuestion
|
|
13
|
+
- Task
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
<objective>
|
|
17
|
+
Build the full `.planning/` setup (or merge into an existing one) from multiple pre-existing planning documents — ADRs, PRDs, SPECs, DOCs — in one pass.
|
|
18
|
+
|
|
19
|
+
- **Net-new bootstrap** (`--mode new`, default when `.planning/` is absent): produces PROJECT.md + REQUIREMENTS.md + ROADMAP.md + STATE.md from synthesized doc content, delegating final generation to `gsd-roadmapper`.
|
|
20
|
+
- **Merge into existing** (`--mode merge`, default when `.planning/` is present): appends phases and requirements derived from the ingested docs; hard-blocks any contradiction with existing locked decisions.
|
|
21
|
+
|
|
22
|
+
Auto-synthesizes most conflicts using the precedence rule `ADR > SPEC > PRD > DOC` (overridable via manifest). Surfaces unresolved cases in `.planning/INGEST-CONFLICTS.md` with three buckets: auto-resolved, competing-variants, unresolved-blockers. The BLOCKER gate from the shared conflict engine prevents any destination file from being written when unresolved contradictions exist.
|
|
23
|
+
|
|
24
|
+
**Inputs:** directory-convention discovery (`docs/adr/`, `docs/prd/`, `docs/specs/`, `docs/rfc/`, root-level `{ADR,PRD,SPEC,RFC}-*.md`), or an explicit `--manifest <file>` YAML listing `{path, type, precedence?}` per doc.
|
|
25
|
+
|
|
26
|
+
**v1 constraints:** hard cap of 50 docs per invocation; `--resolve interactive` is reserved for a future release.
|
|
27
|
+
</objective>
|
|
28
|
+
|
|
29
|
+
<execution_context>
|
|
30
|
+
@~/.claude/pilot/workflows/ingest-docs.md
|
|
31
|
+
@~/.claude/pilot/references/ui-brand.md
|
|
32
|
+
@~/.claude/pilot/references/gate-prompts.md
|
|
33
|
+
@~/.claude/pilot/references/doc-conflict-engine.md
|
|
34
|
+
</execution_context>
|
|
35
|
+
|
|
36
|
+
<context>
|
|
37
|
+
$ARGUMENTS
|
|
38
|
+
</context>
|
|
39
|
+
|
|
40
|
+
<process>
|
|
41
|
+
Execute the ingest-docs workflow end-to-end. Preserve all approval gates (discovery, conflict report, routing) and the BLOCKER safety rule.
|
|
42
|
+
</process>
|
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ccp:intel
|
|
3
|
+
description: "Query, inspect, or refresh codebase intelligence files in .planning/intel/"
|
|
4
|
+
argument-hint: "[query <term>|status|diff|refresh]"
|
|
5
|
+
allowed-tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Bash
|
|
8
|
+
- Task
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
**STOP -- DO NOT READ THIS FILE. You are already reading it. This prompt was injected into your context by Claude Code's command system. Using the Read tool on this file wastes tokens. Begin executing Step 0 immediately.**
|
|
12
|
+
|
|
13
|
+
## Step 0 -- Banner
|
|
14
|
+
|
|
15
|
+
**Before ANY tool calls**, display this banner:
|
|
16
|
+
|
|
17
|
+
```
|
|
18
|
+
CCP > INTEL
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
Then proceed to Step 1.
|
|
22
|
+
|
|
23
|
+
## Step 1 -- Config Gate
|
|
24
|
+
|
|
25
|
+
Check if intel is enabled by reading `.planning/config.json` directly using the Read tool.
|
|
26
|
+
|
|
27
|
+
**DO NOT use the config get-value CLI** -- it hard-exits on missing keys. Read `.planning/config.json` directly instead.
|
|
28
|
+
|
|
29
|
+
1. Read `.planning/config.json` using the Read tool
|
|
30
|
+
2. If the file does not exist: display the disabled message below and **STOP**
|
|
31
|
+
3. Parse the JSON content. Check if `config.intel && config.intel.enabled === true`
|
|
32
|
+
4. If `intel.enabled` is NOT explicitly `true`: display the disabled message below and **STOP**
|
|
33
|
+
5. If `intel.enabled` is `true`: proceed to Step 2
|
|
34
|
+
|
|
35
|
+
**Disabled message:**
|
|
36
|
+
|
|
37
|
+
```
|
|
38
|
+
CCP > INTEL
|
|
39
|
+
|
|
40
|
+
Intel system is disabled. To activate:
|
|
41
|
+
|
|
42
|
+
gsd-sdk query config-set intel.enabled true
|
|
43
|
+
|
|
44
|
+
Then run /ccp:intel refresh to build the initial index.
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
## Step 2 -- Parse Argument
|
|
50
|
+
|
|
51
|
+
Parse `$ARGUMENTS` to determine the operation mode:
|
|
52
|
+
|
|
53
|
+
| Argument | Action |
|
|
54
|
+
|----------|--------|
|
|
55
|
+
| `query <term>` | Run inline query (Step 2a) |
|
|
56
|
+
| `status` | Run inline status check (Step 2b) |
|
|
57
|
+
| `diff` | Run inline diff check (Step 2c) |
|
|
58
|
+
| `refresh` | Spawn intel-updater agent (Step 3) |
|
|
59
|
+
| No argument or unknown | Show usage message |
|
|
60
|
+
|
|
61
|
+
**Usage message** (shown when no argument or unrecognized argument):
|
|
62
|
+
|
|
63
|
+
```
|
|
64
|
+
CCP > INTEL
|
|
65
|
+
|
|
66
|
+
Usage: /ccp:intel <mode>
|
|
67
|
+
|
|
68
|
+
Modes:
|
|
69
|
+
query <term> Search intel files for a term
|
|
70
|
+
status Show intel file freshness and staleness
|
|
71
|
+
diff Show changes since last snapshot
|
|
72
|
+
refresh Rebuild all intel files from codebase analysis
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
### Step 2a -- Query
|
|
76
|
+
|
|
77
|
+
Run:
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
gsd-sdk query intel.query <term>
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
Parse the JSON output and display results:
|
|
84
|
+
- If the output contains `"disabled": true`, display the disabled message from Step 1 and **STOP**
|
|
85
|
+
- If no matches found, display: `No intel matches for '<term>'. Try /ccp:intel refresh to build the index.`
|
|
86
|
+
- Otherwise, display matching entries grouped by intel file
|
|
87
|
+
|
|
88
|
+
**STOP** after displaying results. Do not spawn an agent.
|
|
89
|
+
|
|
90
|
+
### Step 2b -- Status
|
|
91
|
+
|
|
92
|
+
Run:
|
|
93
|
+
|
|
94
|
+
```bash
|
|
95
|
+
gsd-sdk query intel.status
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
Parse the JSON output and display each intel file with:
|
|
99
|
+
- File name
|
|
100
|
+
- Last `updated_at` timestamp
|
|
101
|
+
- STALE or FRESH status (stale if older than 24 hours or missing)
|
|
102
|
+
|
|
103
|
+
**STOP** after displaying status. Do not spawn an agent.
|
|
104
|
+
|
|
105
|
+
### Step 2c -- Diff
|
|
106
|
+
|
|
107
|
+
Run:
|
|
108
|
+
|
|
109
|
+
```bash
|
|
110
|
+
gsd-sdk query intel.diff
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
Parse the JSON output and display:
|
|
114
|
+
- Added entries since last snapshot
|
|
115
|
+
- Removed entries since last snapshot
|
|
116
|
+
- Changed entries since last snapshot
|
|
117
|
+
|
|
118
|
+
If no snapshot exists, suggest running `refresh` first.
|
|
119
|
+
|
|
120
|
+
**STOP** after displaying diff. Do not spawn an agent.
|
|
121
|
+
|
|
122
|
+
---
|
|
123
|
+
|
|
124
|
+
## Step 3 -- Refresh (Agent Spawn)
|
|
125
|
+
|
|
126
|
+
Display before spawning:
|
|
127
|
+
|
|
128
|
+
```
|
|
129
|
+
CCP > Spawning intel-updater agent to analyze codebase...
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
Spawn a Task:
|
|
133
|
+
|
|
134
|
+
```
|
|
135
|
+
Task(
|
|
136
|
+
description="Refresh codebase intelligence files",
|
|
137
|
+
prompt="You are the gsd-intel-updater agent. Your job is to analyze this codebase and write/update intelligence files in .planning/intel/.
|
|
138
|
+
|
|
139
|
+
Project root: ${CWD}
|
|
140
|
+
Use: node "$HOME/.claude/pilot/bin/ccp-tools.cjs" <subcommand>
|
|
141
|
+
|
|
142
|
+
Instructions:
|
|
143
|
+
1. Analyze the codebase structure, dependencies, APIs, and architecture
|
|
144
|
+
2. Write JSON intel files to .planning/intel/ (stack.json, api-map.json, dependency-graph.json, file-roles.json, arch-decisions.json)
|
|
145
|
+
3. Each file must have a _meta object with updated_at timestamp
|
|
146
|
+
4. Use `gsd-sdk query intel.extract-exports <file>` to analyze source files
|
|
147
|
+
5. Use `gsd-sdk query intel.patch-meta <file>` to update timestamps after writing
|
|
148
|
+
6. Use `gsd-sdk query intel.validate` to check your output
|
|
149
|
+
|
|
150
|
+
When complete, output: ## INTEL UPDATE COMPLETE
|
|
151
|
+
If something fails, output: ## INTEL UPDATE FAILED with details."
|
|
152
|
+
)
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
Wait for the agent to complete.
|
|
156
|
+
|
|
157
|
+
---
|
|
158
|
+
|
|
159
|
+
## Step 4 -- Post-Refresh Summary
|
|
160
|
+
|
|
161
|
+
After the agent completes, run:
|
|
162
|
+
|
|
163
|
+
```bash
|
|
164
|
+
gsd-sdk query intel.status
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
Display a summary showing:
|
|
168
|
+
- Which intel files were written or updated
|
|
169
|
+
- Last update timestamps
|
|
170
|
+
- Overall health of the intel index
|
|
171
|
+
|
|
172
|
+
---
|
|
173
|
+
|
|
174
|
+
## Anti-Patterns
|
|
175
|
+
|
|
176
|
+
1. DO NOT spawn an agent for query/status/diff operations -- these are inline CLI calls
|
|
177
|
+
2. DO NOT modify intel files directly -- the agent handles writes during refresh
|
|
178
|
+
3. DO NOT skip the config gate check
|
|
179
|
+
4. DO NOT use the config get-value CLI for the config gate -- it exits on missing keys
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ccp:mvp-phase
|
|
3
|
+
description: Plan a phase as a vertical MVP slice — user story, SPIDR splitting, then plan-phase
|
|
4
|
+
argument-hint: "<phase-number>"
|
|
5
|
+
allowed-tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Write
|
|
8
|
+
- Bash
|
|
9
|
+
- Glob
|
|
10
|
+
- Grep
|
|
11
|
+
- Agent
|
|
12
|
+
- AskUserQuestion
|
|
13
|
+
requires: [new-project, plan-phase]
|
|
14
|
+
---
|
|
15
|
+
<objective>
|
|
16
|
+
Guide the user through MVP-mode planning for a phase. The command:
|
|
17
|
+
|
|
18
|
+
1. Prompts for an "As a / I want to / So that" user story (three structured questions)
|
|
19
|
+
2. Runs SPIDR splitting check — if the story is too large, walks through Spike/Paths/Interfaces/Data/Rules and offers to split into multiple phases
|
|
20
|
+
3. Writes `**Mode:** mvp` and the reformatted `**Goal:**` to the phase's ROADMAP.md section
|
|
21
|
+
4. Delegates to `/ccp:plan-phase <N>` which auto-detects MVP mode via the roadmap field
|
|
22
|
+
|
|
23
|
+
Phase 1 of the vertical-mvp-slice PRD shipped the planner-side machinery; this command is the user entry point for it.
|
|
24
|
+
</objective>
|
|
25
|
+
|
|
26
|
+
<execution_context>
|
|
27
|
+
@~/.claude/pilot/workflows/mvp-phase.md
|
|
28
|
+
@~/.claude/pilot/references/spidr-splitting.md
|
|
29
|
+
@~/.claude/pilot/references/user-story-template.md
|
|
30
|
+
</execution_context>
|
|
31
|
+
|
|
32
|
+
<runtime_note>
|
|
33
|
+
**Copilot (VS Code):** Use `vscode_askquestions` wherever this workflow calls `AskUserQuestion`. Equivalent API.
|
|
34
|
+
</runtime_note>
|
|
35
|
+
|
|
36
|
+
<context>
|
|
37
|
+
Phase number: $ARGUMENTS (required — integer or decimal like `2.1`)
|
|
38
|
+
|
|
39
|
+
The phase must already exist in ROADMAP.md (created via `/ccp:new-project`, `/ccp:add-phase`, or `/ccp:insert-phase`). This command does not create new phases — it converts an existing phase to MVP mode.
|
|
40
|
+
</context>
|
|
41
|
+
|
|
42
|
+
<process>
|
|
43
|
+
Execute the mvp-phase workflow from @~/.claude/pilot/workflows/mvp-phase.md end-to-end.
|
|
44
|
+
Preserve all gates: phase existence, status guard (refuse in_progress/completed), user-story format validation, SPIDR splitting check, ROADMAP write confirmation, plan-phase delegation.
|
|
45
|
+
</process>
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: "Generate a lean, problem-first PRD and hand off to /plan for implementation planning."
|
|
3
|
+
argument-hint: "[product/feature idea] (blank = start with questions)"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# PRD Command
|
|
7
|
+
|
|
8
|
+
Produces a **Product Requirements Document** — the requirements-phase artifact of the SDLC. Captures *what* must be true for success and *why*, and stops before *how*. Implementation decomposition is delegated to `/plan`.
|
|
9
|
+
|
|
10
|
+
**Input**: `$ARGUMENTS`
|
|
11
|
+
|
|
12
|
+
## Scope of this command
|
|
13
|
+
|
|
14
|
+
| This command does | This command does NOT do |
|
|
15
|
+
|---|---|
|
|
16
|
+
| Frame the problem and users | Design the architecture |
|
|
17
|
+
| Capture success criteria and scope | Pick files or write patterns |
|
|
18
|
+
| List open questions and risks | Enumerate implementation tasks |
|
|
19
|
+
| Write `.claude/prds/{name}.prd.md` | Produce an implementation plan — that's `/plan` |
|
|
20
|
+
|
|
21
|
+
If you find yourself writing implementation detail, stop and cut it. It belongs in `/plan`.
|
|
22
|
+
|
|
23
|
+
**Anti-fluff rule**: When information is missing, write `TBD — needs validation via {method}`. Never invent plausible-sounding requirements.
|
|
24
|
+
|
|
25
|
+
## Workflow
|
|
26
|
+
|
|
27
|
+
Four phases. Each phase is a single gate — ask the questions, wait for the user, then move on. No nested loops, no parallel research ceremony.
|
|
28
|
+
|
|
29
|
+
### Phase 1 — FRAME
|
|
30
|
+
|
|
31
|
+
If `$ARGUMENTS` is empty, ask:
|
|
32
|
+
|
|
33
|
+
> What do you want to build? One or two sentences.
|
|
34
|
+
|
|
35
|
+
If provided, restate in one sentence and ask:
|
|
36
|
+
|
|
37
|
+
> I understand: *{restated}*. Correct, or should I adjust?
|
|
38
|
+
|
|
39
|
+
Then ask the framing questions in a single set:
|
|
40
|
+
|
|
41
|
+
> 1. **Who** has this problem? (specific role or segment)
|
|
42
|
+
> 2. **What** is the observable pain? (describe behavior, not assumed needs)
|
|
43
|
+
> 3. **Why** can't they solve it with what exists today?
|
|
44
|
+
> 4. **Why now?** — what changed that makes this worth doing?
|
|
45
|
+
|
|
46
|
+
Wait for the user. Do not proceed without answers (or explicit "skip").
|
|
47
|
+
|
|
48
|
+
### Phase 2 — GROUND
|
|
49
|
+
|
|
50
|
+
Ask for evidence. This is the shortest phase and the most load-bearing:
|
|
51
|
+
|
|
52
|
+
> What evidence do you have that this problem is real and worth solving? (user quotes, support tickets, metrics, observed behavior, failed workarounds — anything concrete)
|
|
53
|
+
|
|
54
|
+
If the user has none, record the PRD's Evidence section as `Assumption — needs validation via {user research | analytics | prototype}`. This keeps the PRD honest.
|
|
55
|
+
|
|
56
|
+
### Phase 3 — DECIDE
|
|
57
|
+
|
|
58
|
+
Scope and hypothesis in a single set:
|
|
59
|
+
|
|
60
|
+
> 1. **Hypothesis** — Complete: *We believe **{capability}** will **{solve problem}** for **{users}**. We'll know we're right when **{measurable outcome}**.*
|
|
61
|
+
> 2. **MVP** — The minimum needed to test the hypothesis?
|
|
62
|
+
> 3. **Out of scope** — What are you explicitly **not** building (even if users ask)?
|
|
63
|
+
> 4. **Open questions** — Uncertainties that could change the approach?
|
|
64
|
+
|
|
65
|
+
Wait for responses.
|
|
66
|
+
|
|
67
|
+
### Phase 4 — GENERATE & HAND OFF
|
|
68
|
+
|
|
69
|
+
Create the directory if needed, write the PRD, and report.
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
mkdir -p .claude/prds
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
**Output path**: `.claude/prds/{kebab-case-name}.prd.md`
|
|
76
|
+
|
|
77
|
+
#### PRD Template
|
|
78
|
+
|
|
79
|
+
```markdown
|
|
80
|
+
# {Product / Feature Name}
|
|
81
|
+
|
|
82
|
+
## Problem
|
|
83
|
+
{2–3 sentences: who has what problem, and what's the cost of leaving it unsolved?}
|
|
84
|
+
|
|
85
|
+
## Evidence
|
|
86
|
+
- {User quote, data point, or observation}
|
|
87
|
+
- {OR: "Assumption — needs validation via {method}"}
|
|
88
|
+
|
|
89
|
+
## Users
|
|
90
|
+
- **Primary**: {role, context, what triggers the need}
|
|
91
|
+
- **Not for**: {who this explicitly excludes}
|
|
92
|
+
|
|
93
|
+
## Hypothesis
|
|
94
|
+
We believe **{capability}** will **{solve problem}** for **{users}**.
|
|
95
|
+
We'll know we're right when **{measurable outcome}**.
|
|
96
|
+
|
|
97
|
+
## Success Metrics
|
|
98
|
+
| Metric | Target | How measured |
|
|
99
|
+
|---|---|---|
|
|
100
|
+
| {primary} | {number} | {method} |
|
|
101
|
+
|
|
102
|
+
## Scope
|
|
103
|
+
**MVP** — {the minimum to test the hypothesis}
|
|
104
|
+
|
|
105
|
+
**Out of scope**
|
|
106
|
+
- {item} — {why deferred}
|
|
107
|
+
|
|
108
|
+
## Delivery Milestones
|
|
109
|
+
<!-- Business outcomes, not engineering tasks. /plan turns each into a plan. -->
|
|
110
|
+
<!-- Status: pending | in-progress | complete -->
|
|
111
|
+
|
|
112
|
+
| # | Milestone | Outcome | Status | Plan |
|
|
113
|
+
|---|---|---|---|---|
|
|
114
|
+
| 1 | {name} | {user-visible change} | pending | — |
|
|
115
|
+
| 2 | {name} | {user-visible change} | pending | — |
|
|
116
|
+
|
|
117
|
+
## Open Questions
|
|
118
|
+
- [ ] {question that could change scope or approach}
|
|
119
|
+
|
|
120
|
+
## Risks
|
|
121
|
+
| Risk | Likelihood | Impact | Mitigation |
|
|
122
|
+
|---|---|---|---|
|
|
123
|
+
|
|
124
|
+
---
|
|
125
|
+
*Status: DRAFT — requirements only. Implementation planning pending via /plan.*
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
#### Report to user
|
|
129
|
+
|
|
130
|
+
```
|
|
131
|
+
PRD created: .claude/prds/{name}.prd.md
|
|
132
|
+
|
|
133
|
+
Problem: {one line}
|
|
134
|
+
Hypothesis: {one line}
|
|
135
|
+
MVP: {one line}
|
|
136
|
+
|
|
137
|
+
Validation status:
|
|
138
|
+
Problem {validated | assumption}
|
|
139
|
+
Users {concrete | generic — refine}
|
|
140
|
+
Metrics {defined | TBD}
|
|
141
|
+
|
|
142
|
+
Open questions: {count}
|
|
143
|
+
|
|
144
|
+
Next step: /plan .claude/prds/{name}.prd.md
|
|
145
|
+
→ /plan will pick the next pending milestone and produce an implementation plan.
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
## Integration
|
|
149
|
+
|
|
150
|
+
- `/plan <prd-path>` — consume the PRD and produce an implementation plan for the next pending milestone.
|
|
151
|
+
- `tdd-workflow` skill — implement the plan test-first.
|
|
152
|
+
- `/pr` — open a PR that references the PRD and plan.
|
|
153
|
+
|
|
154
|
+
## Success criteria
|
|
155
|
+
|
|
156
|
+
- **PROBLEM_CLEAR**: problem is specific and evidenced (or flagged as assumption).
|
|
157
|
+
- **USER_CONCRETE**: primary user is a specific role, not "users".
|
|
158
|
+
- **HYPOTHESIS_TESTABLE**: measurable outcome included.
|
|
159
|
+
- **SCOPE_BOUNDED**: explicit MVP and explicit out-of-scope.
|
|
160
|
+
- **NO_IMPLEMENTATION_DETAIL**: file paths, libraries, or task breakdowns are absent — if they appeared, move them to the `/plan` step.
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ccp:plan-review-convergence
|
|
3
|
+
description: "Cross-AI plan convergence loop — replan with review feedback until no HIGH concerns remain (max 3 cycles)"
|
|
4
|
+
argument-hint: "<phase> [--codex] [--gemini] [--claude] [--opencode] [--ollama] [--lm-studio] [--llama-cpp] [--text] [--ws <name>] [--all] [--max-cycles N]"
|
|
5
|
+
allowed-tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Write
|
|
8
|
+
- Bash
|
|
9
|
+
- Glob
|
|
10
|
+
- Grep
|
|
11
|
+
- Agent
|
|
12
|
+
- AskUserQuestion
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
<objective>
|
|
16
|
+
Cross-AI plan convergence loop — an outer revision gate around gsd-review and gsd-planner.
|
|
17
|
+
Repeatedly: review plans with external AI CLIs → if HIGH concerns found → replan with --reviews feedback → re-review. Stops when no HIGH concerns remain or max cycles reached.
|
|
18
|
+
|
|
19
|
+
**Flow:** Agent→Skill("gsd-plan-phase") → Agent→Skill("gsd-review") → check HIGHs → Agent→Skill("gsd-plan-phase --reviews") → Agent→Skill("gsd-review") → ... → Converge or escalate
|
|
20
|
+
|
|
21
|
+
Replaces gsd-plan-phase's internal gsd-plan-checker with external AI reviewers (codex, gemini, etc.). Each step runs inside an isolated Agent that calls the corresponding existing Skill — orchestrator only does loop control.
|
|
22
|
+
|
|
23
|
+
**Orchestrator role:** Parse arguments, validate phase, spawn Agents for existing Skills, check HIGHs, stall detection, escalation gate.
|
|
24
|
+
</objective>
|
|
25
|
+
|
|
26
|
+
<execution_context>
|
|
27
|
+
@$HOME/.claude/pilot/workflows/plan-review-convergence.md
|
|
28
|
+
@$HOME/.claude/pilot/references/revision-loop.md
|
|
29
|
+
@$HOME/.claude/pilot/references/gates.md
|
|
30
|
+
@$HOME/.claude/pilot/references/agent-contracts.md
|
|
31
|
+
</execution_context>
|
|
32
|
+
|
|
33
|
+
<runtime_note>
|
|
34
|
+
**Copilot (VS Code):** Use `vscode_askquestions` wherever this workflow calls `AskUserQuestion`. They are equivalent — `vscode_askquestions` is the VS Code Copilot implementation of the same interactive question API. Do not skip questioning steps because `AskUserQuestion` appears unavailable; use `vscode_askquestions` instead.
|
|
35
|
+
</runtime_note>
|
|
36
|
+
|
|
37
|
+
<context>
|
|
38
|
+
Phase number: extracted from $ARGUMENTS (required)
|
|
39
|
+
|
|
40
|
+
**Flags:**
|
|
41
|
+
- `--codex` — Use Codex CLI as reviewer (default if no reviewer specified)
|
|
42
|
+
- `--gemini` — Use Gemini CLI as reviewer
|
|
43
|
+
- `--claude` — Use Claude CLI as reviewer (separate session)
|
|
44
|
+
- `--opencode` — Use OpenCode as reviewer
|
|
45
|
+
- `--ollama` — Use local Ollama server as reviewer (OpenAI-compatible, default host `http://localhost:11434`; configure model via `review.models.ollama`)
|
|
46
|
+
- `--lm-studio` — Use local LM Studio server as reviewer (OpenAI-compatible, default host `http://localhost:1234`; configure model via `review.models.lm_studio`)
|
|
47
|
+
- `--llama-cpp` — Use local llama.cpp server as reviewer (OpenAI-compatible, default host `http://localhost:8080`; configure model via `review.models.llama_cpp`)
|
|
48
|
+
- `--all` — Use all available CLIs and running local model servers
|
|
49
|
+
- `--max-cycles N` — Maximum replan→review cycles (default: 3)
|
|
50
|
+
|
|
51
|
+
**Feature gate:** This command requires `workflow.plan_review_convergence=true`. Enable with:
|
|
52
|
+
`gsd config-set workflow.plan_review_convergence true`
|
|
53
|
+
</context>
|
|
54
|
+
|
|
55
|
+
<process>
|
|
56
|
+
Execute the plan-review-convergence workflow from @$HOME/.claude/pilot/workflows/plan-review-convergence.md end-to-end.
|
|
57
|
+
Preserve all workflow gates (pre-flight, revision loop, stall detection, escalation).
|
|
58
|
+
</process>
|