cc-codeconductor 0.5.0 → 1.0.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/README.md +95 -95
- package/dist/cli/errors.d.ts +65 -0
- package/dist/core/compilation/compile-checker.d.ts +51 -0
- package/dist/core/config/codeconductor-config.d.ts +42 -0
- package/dist/core/config/config-loader.d.ts +11 -0
- package/dist/core/filesystem/credential-guard.d.ts +18 -0
- package/dist/core/goal/goal-planner.d.ts +8 -0
- package/dist/core/goal/goal-state.d.ts +15 -0
- package/dist/core/loop/git-stats.d.ts +13 -0
- package/dist/core/loop/loop-engine.d.ts +79 -0
- package/dist/core/memory/episodic-store.d.ts +6 -0
- package/dist/core/memory/operational-state.d.ts +6 -0
- package/dist/core/orchestrator/runtime-orchestrator.d.ts +25 -0
- package/dist/core/planner/product-planner.d.ts +18 -0
- package/dist/core/presets/package-paths.d.ts +4 -0
- package/dist/core/product-graph/graph-store.d.ts +11 -0
- package/dist/core/product-graph/paths.d.ts +18 -0
- package/dist/core/verification/verification-runner.d.ts +57 -0
- package/dist/domain/loop/loop-state.d.ts +74 -0
- package/dist/domain/product/entities.d.ts +11 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.js +21820 -15579
- package/dist/library.js +2595 -0
- package/dist/utils/result.d.ts +36 -0
- package/dist/validation/schemas.d.ts +3660 -0
- package/package.json +15 -2
- package/policy.yml +12 -11
- package/presets/agy/AGENTS.md +11 -5
- package/presets/agy/gates/pre-commit/GATE.md +136 -0
- package/presets/agy/skills/cc-fix/SKILL.md +2 -2
- package/presets/agy/skills/cc-tdd-cycle/SKILL.md +11 -0
- package/presets/agy/workflows/cc-api-contract.md +12 -0
- package/presets/agy/workflows/cc-ask.md +55 -0
- package/presets/agy/workflows/cc-clarify.md +33 -0
- package/presets/agy/workflows/cc-council.md +31 -7
- package/presets/agy/workflows/cc-db-migration.md +22 -9
- package/presets/agy/workflows/cc-explore.md +37 -0
- package/presets/agy/workflows/cc-feature.md +41 -19
- package/presets/agy/workflows/cc-fix.md +50 -23
- package/presets/agy/workflows/cc-handoff.md +42 -0
- package/presets/agy/workflows/cc-iterative.md +128 -0
- package/presets/agy/workflows/cc-openspec.md +13 -0
- package/presets/agy/workflows/cc-pagespeed.md +12 -0
- package/presets/agy/workflows/cc-prototype.md +39 -0
- package/presets/agy/workflows/cc-refactor.md +12 -0
- package/presets/agy/workflows/cc-review.md +12 -0
- package/presets/agy/workflows/cc-scorecard.md +12 -0
- package/presets/agy/workflows/cc-tdd-cycle.md +24 -0
- package/presets/agy/workflows/cc-test-plan.md +12 -0
- package/presets/agy/workflows/cc-triage.md +35 -0
- package/presets/claude/CLAUDE.md +64 -0
- package/presets/claude/commands/cc/api-contract.md +12 -0
- package/presets/claude/commands/cc/ask.md +55 -0
- package/presets/claude/commands/cc/clarify.md +32 -0
- package/presets/claude/commands/cc/council.md +87 -0
- package/presets/claude/commands/cc/db-migration.md +22 -9
- package/presets/claude/commands/cc/explore.md +36 -0
- package/presets/claude/commands/cc/feature.md +49 -22
- package/presets/claude/commands/cc/fix.md +74 -20
- package/presets/claude/commands/cc/handoff.md +44 -0
- package/presets/claude/commands/cc/iterative.md +132 -0
- package/presets/claude/commands/cc/openspec.md +25 -0
- package/presets/claude/commands/cc/pagespeed.md +12 -0
- package/presets/claude/commands/cc/prototype.md +38 -0
- package/presets/claude/commands/cc/refactor.md +152 -1
- package/presets/claude/commands/cc/review.md +78 -16
- package/presets/claude/commands/cc/scorecard.md +12 -0
- package/presets/claude/commands/cc/tdd-cycle.md +53 -3
- package/presets/claude/commands/cc/test-plan.md +12 -0
- package/presets/claude/commands/cc/triage.md +34 -0
- package/presets/claude/gates/pre-commit/GATE.md +136 -0
- package/presets/claude/settings.json +8 -46
- package/presets/codex/AGENTS.md +6 -6
- package/presets/codex/commands/cc-ask.md +55 -0
- package/presets/codex/gates/pre-commit/GATE.md +136 -0
- package/presets/cursor/AGENTS.md +6 -6
- package/presets/cursor/agents/business-agent.md +44 -0
- package/presets/cursor/agents/continuous-architect.md +37 -0
- package/presets/cursor/agents/docs.md +1 -0
- package/presets/cursor/agents/goal-planner.md +1 -1
- package/presets/cursor/agents/impact-analyst.md +43 -0
- package/presets/cursor/agents/orchestrator.md +6 -6
- package/presets/cursor/commands/cc/api-contract.md +12 -0
- package/presets/cursor/commands/cc/ask.md +55 -0
- package/presets/cursor/commands/cc/clarify.md +32 -0
- package/presets/cursor/commands/cc/council.md +87 -0
- package/presets/cursor/commands/cc/db-migration.md +22 -9
- package/presets/cursor/commands/cc/explore.md +36 -0
- package/presets/cursor/commands/cc/feature.md +41 -19
- package/presets/cursor/commands/cc/fix.md +47 -20
- package/presets/cursor/commands/cc/handoff.md +41 -0
- package/presets/cursor/commands/cc/iterative.md +133 -0
- package/presets/cursor/commands/cc/openspec.md +22 -7
- package/presets/cursor/commands/cc/pagespeed.md +12 -0
- package/presets/cursor/commands/cc/prototype.md +38 -0
- package/presets/cursor/commands/cc/refactor.md +12 -0
- package/presets/cursor/commands/cc/review.md +12 -0
- package/presets/cursor/commands/cc/scorecard.md +12 -0
- package/presets/cursor/commands/cc/tdd-cycle.md +24 -0
- package/presets/cursor/commands/cc/test-plan.md +12 -0
- package/presets/cursor/commands/cc/triage.md +34 -0
- package/presets/cursor/gates/pre-commit/GATE.md +136 -0
- package/presets/cursor/rules/orchestration.mdc +1 -1
- package/presets/opencode/agents/architect.md +22 -1
- package/presets/opencode/agents/complexity-auditor.md +16 -1
- package/presets/opencode/agents/contract-builder.md +17 -1
- package/presets/opencode/agents/devil.md +158 -0
- package/presets/opencode/agents/docs.md +19 -1
- package/presets/opencode/agents/goal-planner.md +32 -2
- package/presets/opencode/agents/implementer.md +32 -2
- package/presets/opencode/agents/orchestrator.md +79 -12
- package/presets/opencode/agents/planner.md +61 -0
- package/presets/opencode/agents/repo-explorer.md +16 -0
- package/presets/opencode/agents/reviewer.md +33 -3
- package/presets/opencode/agents/security-reviewer.md +31 -1
- package/presets/opencode/agents/task-coach.md +69 -1
- package/presets/opencode/agents/tester.md +18 -1
- package/presets/opencode/commands/cc-api-contract.md +12 -0
- package/presets/opencode/commands/cc-ask.md +55 -0
- package/presets/opencode/commands/cc-clarify.md +31 -0
- package/presets/opencode/commands/cc-council.md +87 -0
- package/presets/opencode/commands/cc-db-migration.md +22 -9
- package/presets/opencode/commands/cc-explore.md +35 -0
- package/presets/opencode/commands/cc-feature.md +41 -19
- package/presets/opencode/commands/cc-fix.md +50 -23
- package/presets/opencode/commands/cc-handoff.md +40 -0
- package/presets/opencode/commands/cc-iterative.md +127 -0
- package/presets/opencode/commands/cc-openspec.md +13 -0
- package/presets/opencode/commands/cc-pagespeed.md +12 -0
- package/presets/opencode/commands/cc-prototype.md +37 -0
- package/presets/opencode/commands/cc-refactor.md +12 -0
- package/presets/opencode/commands/cc-review.md +12 -0
- package/presets/opencode/commands/cc-scorecard.md +12 -0
- package/presets/opencode/commands/cc-tdd-cycle.md +24 -0
- package/presets/opencode/commands/cc-test-plan.md +12 -0
- package/presets/opencode/commands/cc-triage.md +33 -0
- package/presets/opencode/gates/pre-commit/GATE.md +136 -0
- package/presets/opencode/prompts/v0.1.0/DEPRECATED.md +11 -0
- package/presets/opencode/prompts/v0.2.0/DEPRECATED.md +11 -0
- package/presets/opencode/prompts/v0.3.0/DEPRECATED.md +11 -0
- package/presets/opencode/prompts/v0.4.0/DEPRECATED.md +11 -0
- package/presets/opencode/prompts/v0.5.0/goal-planner.md +1 -1
- package/presets/opencode/prompts/v0.5.0/orchestrator.md +6 -6
- package/presets/opencode/prompts/v0.6.0/implementer.md +35 -0
- package/presets/opencode/prompts/v0.6.0/planner.md +36 -0
- package/presets/opencode/prompts/v0.6.0/reviewer.md +40 -0
- package/presets/opencode/prompts/v1.0.0/README.md +47 -0
- package/presets/opencode/prompts/v1.0.0/architect.md +259 -0
- package/presets/opencode/prompts/v1.0.0/complexity-auditor.md +116 -0
- package/presets/opencode/prompts/v1.0.0/contract-builder.md +120 -0
- package/presets/opencode/prompts/v1.0.0/devil.md +169 -0
- package/presets/opencode/prompts/v1.0.0/docs.md +229 -0
- package/presets/opencode/prompts/v1.0.0/goal-planner.md +123 -0
- package/presets/opencode/prompts/v1.0.0/implementer.md +228 -0
- package/presets/opencode/prompts/v1.0.0/orchestrator.md +474 -0
- package/presets/opencode/prompts/v1.0.0/planner.md +72 -0
- package/presets/opencode/prompts/v1.0.0/repo-explorer.md +147 -0
- package/presets/opencode/prompts/v1.0.0/reviewer.md +295 -0
- package/presets/opencode/prompts/v1.0.0/security-reviewer.md +170 -0
- package/presets/opencode/prompts/v1.0.0/task-coach.md +235 -0
- package/presets/opencode/prompts/v1.0.0/tester.md +298 -0
- package/presets/seo-hotel/settings.json +0 -17
- package/src/presets/manifests/agy.yml +2 -2
- package/src/presets/manifests/claude.yml +2 -2
- package/src/presets/manifests/codex.yml +2 -2
- package/src/presets/manifests/cursor.yml +2 -2
- package/src/presets/manifests/gemini.yml +2 -2
- package/src/presets/manifests/opencode.yml +2 -2
- package/src/presets/models/agy.yml +93 -66
- package/src/presets/models/claude.yml +79 -53
- package/src/presets/models/codex.yml +79 -54
- package/src/presets/models/cursor.yml +72 -58
- package/src/presets/models/gemini.yml +79 -53
- package/src/presets/models/opencode.yml +72 -46
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Compact the session into gitignored `.codeconductor/sessions/handoff.md` (redact secrets).
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Handoff Workflow
|
|
6
|
+
|
|
7
|
+
Handoff request: $ARGUMENTS
|
|
8
|
+
|
|
9
|
+
## Step 0 — CCEP Bootstrap
|
|
10
|
+
|
|
11
|
+
Command: `handoff` (fixed for this workflow — do not infer from user text)
|
|
12
|
+
|
|
13
|
+
1. Run: `npx cc-codeconductor ccep parse --command handoff "$ARGUMENTS" --output json`
|
|
14
|
+
2. Run: `npx cc-codeconductor ccep resolve --command handoff "$ARGUMENTS" --output json`
|
|
15
|
+
3. Run: `npx cc-codeconductor ccep profile handoff --output json`
|
|
16
|
+
4. After planner/intake JSON is available, run: `npx cc-codeconductor ccep evaluate --command handoff --input <planner.json> --output json`. If `stop` is true, show questions or risks and wait for human input.
|
|
17
|
+
5. Delegate to subagents using compiled CCEP prompts — never forward raw `$ARGUMENTS` to planners.
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## Step 1 — Compact (docs)
|
|
22
|
+
|
|
23
|
+
Invoke `docs`. Write **only** `.codeconductor/sessions/handoff.md` (gitignored).
|
|
24
|
+
Do not write `.codeconductor/handoff.md` or any tracked path.
|
|
25
|
+
|
|
26
|
+
Before writing, redact secrets, tokens, API keys, passwords, connection strings,
|
|
27
|
+
`.env` contents, and log/stack-trace lines that embed those values. Summarize
|
|
28
|
+
errors instead of pasting dumps. If unresolved credential material remains, stop
|
|
29
|
+
and wait for a human (CCEP `stopOnHighRisk`).
|
|
30
|
+
|
|
31
|
+
Include: goal, Task Card status (no secret fields), files touched, test
|
|
32
|
+
pass/fail (not log dumps), open questions, and the next `/cc:` command.
|
|
33
|
+
|
|
34
|
+
Do not edit source or tests.
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## Completion
|
|
39
|
+
|
|
40
|
+
Report the handoff path. Another session should be able to continue from that file alone.
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
---
|
|
2
|
+
description:
|
|
3
|
+
Run the advanced iterative workflow — Wayfinding AST discovery, Relentless
|
|
4
|
+
Grilling, contract and spec design, TDD, council review, and docs.
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Advanced Iterative Workflow
|
|
8
|
+
|
|
9
|
+
Iterative request: $ARGUMENTS
|
|
10
|
+
|
|
11
|
+
## Step 0 — CCEP Bootstrap
|
|
12
|
+
|
|
13
|
+
Command: `iterative` (fixed for this workflow — do not infer from user text)
|
|
14
|
+
|
|
15
|
+
1. Run: `npx cc-codeconductor ccep parse --command iterative "$ARGUMENTS" --output json`
|
|
16
|
+
2. Run: `npx cc-codeconductor ccep resolve --command iterative "$ARGUMENTS" --output json`
|
|
17
|
+
3. Run: `npx cc-codeconductor ccep profile iterative --output json`
|
|
18
|
+
4. After planner/intake JSON is available, run: `npx cc-codeconductor ccep evaluate --command iterative --input <planner.json> --output json`. If `stop` is true, show questions or risks and wait for human input.
|
|
19
|
+
5. Delegate to subagents using compiled CCEP prompts — never forward raw `$ARGUMENTS` to planners.
|
|
20
|
+
Canonical delivery order is test-before-implement whenever both phases apply.
|
|
21
|
+
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
## Step 1 — Wayfinding (repo-explorer)
|
|
25
|
+
|
|
26
|
+
If `graphify-out/graph.json` exists, run `graphify query "$ARGUMENTS"` (and
|
|
27
|
+
`graphify path` / `graphify explain` when two modules or one concept need a
|
|
28
|
+
scoped subgraph). Then invoke `repo-explorer` with that graph output.
|
|
29
|
+
|
|
30
|
+
repo-explorer maps directory trees, conventions, god nodes, and affected
|
|
31
|
+
modules. Do not write code in this step. Write a short phase handoff (scope,
|
|
32
|
+
files, open questions) before the next phase — do not chain agents on unspoken
|
|
33
|
+
context.
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
## Step 2 — Relentless Grilling & Task Card (task-coach)
|
|
38
|
+
|
|
39
|
+
Invoke `task-coach` using the Grilling protocol to stress-test all assumptions.
|
|
40
|
+
|
|
41
|
+
The Task Card is ready when it contains: title, type, risk classification,
|
|
42
|
+
scope, context, acceptance criteria, and constraints, and every assumption
|
|
43
|
+
behind it has survived one grilling question.
|
|
44
|
+
|
|
45
|
+
If any field is missing or ambiguous, ask one clarifying question at a time and
|
|
46
|
+
wait for the answer. Do not proceed with an incomplete Task Card.
|
|
47
|
+
|
|
48
|
+
**STOP here.** Unresolved grilling questions or missing fields populate
|
|
49
|
+
`questionsForUser` in the CCEP-1 `planner-output`; the `ConfirmationGate`
|
|
50
|
+
(`ccep evaluate`) reads that field and halts the workflow until a human
|
|
51
|
+
answers. Show the completed Task Card and wait for that confirmation before
|
|
52
|
+
continuing.
|
|
53
|
+
|
|
54
|
+
---
|
|
55
|
+
|
|
56
|
+
## Step 3 — Contract & Technical Plan (contract-builder & architect)
|
|
57
|
+
|
|
58
|
+
Invoke `contract-builder` then `architect` with the validated Task Card.
|
|
59
|
+
|
|
60
|
+
1. Define API contracts, JSON Schemas, or TypeScript interfaces.
|
|
61
|
+
2. Formulate the Technical Plan (chosen approach, affected files, trade-offs).
|
|
62
|
+
3. Apply YAGNI, Simplicity First, and Stdlib-First.
|
|
63
|
+
|
|
64
|
+
**STOP here. Show the Technical Plan and wait for explicit human approval. Do
|
|
65
|
+
not invoke implementer until the plan is approved.**
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
## Step 4 — Test coverage (tester)
|
|
70
|
+
|
|
71
|
+
Invoke `tester` with the Task Card and Technical Plan.
|
|
72
|
+
|
|
73
|
+
1. Write or extend failing tests for the new behavior before implementation (RED).
|
|
74
|
+
2. Ensure all acceptance criteria from the Task Card have at least one test.
|
|
75
|
+
3. Produce a Test Report: test files added or modified, cases covered.
|
|
76
|
+
|
|
77
|
+
---
|
|
78
|
+
|
|
79
|
+
## Step 5 — Implementation (implementer)
|
|
80
|
+
|
|
81
|
+
Invoke `implementer` with the approved Technical Plan, contracts, and failing
|
|
82
|
+
tests. Implementer creates a Git Worktree before touching any file; all edits
|
|
83
|
+
happen inside it.
|
|
84
|
+
|
|
85
|
+
1. Read the Technical Plan before touching any file.
|
|
86
|
+
2. Apply the minimal diff — only what the plan specifies.
|
|
87
|
+
3. Run the project test suite and make the previously written failing tests pass.
|
|
88
|
+
4. If tests fail, run up to 3 repair cycles (`implementer` → `tester`).
|
|
89
|
+
5. Produce an Implementation Summary: what changed, which files, how to verify
|
|
90
|
+
locally.
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
## Step 6 — Multi-Perspective Council Review
|
|
95
|
+
|
|
96
|
+
Invoke the `council` skill on the generated diff (`council-review` phase).
|
|
97
|
+
|
|
98
|
+
The council evaluates Architecture, Security, Product, Delivery, DataOps, and
|
|
99
|
+
Devil. `security-reviewer` may set `securityVeto: true`; that REJECTED verdict
|
|
100
|
+
overrides majority consensus.
|
|
101
|
+
|
|
102
|
+
If ANY agent votes CRITICAL:
|
|
103
|
+
- The Review Report status is **BLOCKED**.
|
|
104
|
+
- Return to Step 5 with the feedback.
|
|
105
|
+
|
|
106
|
+
If APPROVED (no CRITICAL findings), continue.
|
|
107
|
+
|
|
108
|
+
---
|
|
109
|
+
|
|
110
|
+
## Step 7 — Documentation (docs)
|
|
111
|
+
|
|
112
|
+
Invoke `docs` when a public API, public module, or user-visible behavior
|
|
113
|
+
changed.
|
|
114
|
+
|
|
115
|
+
Update: README (if applicable), OpenAPI spec (if applicable), CHANGELOG
|
|
116
|
+
(always when implementation changed), ADR (if an architectural decision was
|
|
117
|
+
made).
|
|
118
|
+
|
|
119
|
+
If `graphify-out/` is in use, run `graphify update .` (AST-only).
|
|
120
|
+
|
|
121
|
+
---
|
|
122
|
+
|
|
123
|
+
## Completion
|
|
124
|
+
|
|
125
|
+
The iterative workflow is complete only when: all tests pass, the council
|
|
126
|
+
approves the spec and the diff, no CRITICAL findings remain, and documentation
|
|
127
|
+
and the knowledge graph reflect the implemented behavior.
|
|
@@ -16,6 +16,19 @@ Run `npx cc-codeconductor openspec validate`. If invalid, show errors and recomm
|
|
|
16
16
|
|
|
17
17
|
---
|
|
18
18
|
|
|
19
|
+
## Step 0 — CCEP Bootstrap
|
|
20
|
+
|
|
21
|
+
Command: `openspec` (fixed for this workflow — do not infer from user text)
|
|
22
|
+
|
|
23
|
+
1. Run: `npx cc-codeconductor ccep parse --command openspec "$ARGUMENTS" --output json`
|
|
24
|
+
2. Run: `npx cc-codeconductor ccep resolve --command openspec "$ARGUMENTS" --output json`
|
|
25
|
+
3. Run: `npx cc-codeconductor ccep profile openspec --output json`
|
|
26
|
+
4. After planner/intake JSON is available, run: `npx cc-codeconductor ccep evaluate --command openspec --input <planner.json> --output json`. If `stop` is true, show questions or risks and wait for human input.
|
|
27
|
+
5. Delegate to subagents using compiled CCEP prompts — never forward raw `$ARGUMENTS` to planners.
|
|
28
|
+
Canonical delivery order is test-before-implement whenever both phases apply.
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
19
32
|
## Step 1 — Scan
|
|
20
33
|
|
|
21
34
|
Run `npx cc-codeconductor openspec scan`. Report new, modified, and closed items.
|
|
@@ -10,6 +10,18 @@ Audit URL: $ARGUMENTS
|
|
|
10
10
|
|
|
11
11
|
---
|
|
12
12
|
|
|
13
|
+
## Step 0 — CCEP Bootstrap
|
|
14
|
+
|
|
15
|
+
Command: `pagespeed` (fixed for this workflow — do not infer from user text)
|
|
16
|
+
|
|
17
|
+
1. Run: `npx cc-codeconductor ccep parse --command pagespeed "$ARGUMENTS" --output json`
|
|
18
|
+
2. Run: `npx cc-codeconductor ccep resolve --command pagespeed "$ARGUMENTS" --output json`
|
|
19
|
+
3. Run: `npx cc-codeconductor ccep profile pagespeed --output json`
|
|
20
|
+
4. After planner/intake JSON is available, run: `npx cc-codeconductor ccep evaluate --command pagespeed --input <planner.json> --output json`. If `stop` is true, show questions or risks and wait for human input.
|
|
21
|
+
5. Delegate to subagents using compiled CCEP prompts — never forward raw `$ARGUMENTS` to planners.
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
13
25
|
## Step 1 — Pre-flight (pagespeed-perf skill)
|
|
14
26
|
|
|
15
27
|
Invoke `pagespeed-perf` skill.
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Disposable spike in an isolated worktree. Not a merge candidate.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Prototype Workflow
|
|
6
|
+
|
|
7
|
+
Prototype request: $ARGUMENTS
|
|
8
|
+
|
|
9
|
+
## Step 0 — CCEP Bootstrap
|
|
10
|
+
|
|
11
|
+
Command: `prototype` (fixed for this workflow — do not infer from user text)
|
|
12
|
+
|
|
13
|
+
1. Run: `npx cc-codeconductor ccep parse --command prototype "$ARGUMENTS" --output json`
|
|
14
|
+
2. Run: `npx cc-codeconductor ccep resolve --command prototype "$ARGUMENTS" --output json`
|
|
15
|
+
3. Run: `npx cc-codeconductor ccep profile prototype --output json`
|
|
16
|
+
4. After planner/intake JSON is available, run: `npx cc-codeconductor ccep evaluate --command prototype --input <planner.json> --output json`. If `stop` is true, show questions or risks and wait for human input.
|
|
17
|
+
5. Delegate to subagents using compiled CCEP prompts — never forward raw `$ARGUMENTS` to planners.
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## Step 1 — Bounds (architect)
|
|
22
|
+
|
|
23
|
+
Invoke `architect`. Define what the spike may touch, time-box, and what must not leak into main. Do not treat this as a production Technical Plan.
|
|
24
|
+
|
|
25
|
+
**STOP here. Wait for approval of the spike bounds.**
|
|
26
|
+
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
## Step 2 — Spike (implementer)
|
|
30
|
+
|
|
31
|
+
Invoke `implementer` in a Git worktree that is not a merge candidate. Label the Implementation Summary as disposable. Do not open a PR against protected branches.
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## Completion
|
|
36
|
+
|
|
37
|
+
Report bounds, worktree path, and what was learned. Recommend `/cc:feature` or `/cc:fix` if the spike should become real work.
|
|
@@ -33,6 +33,18 @@ If coverage is insufficient:
|
|
|
33
33
|
|
|
34
34
|
---
|
|
35
35
|
|
|
36
|
+
## Step 0 — CCEP Bootstrap
|
|
37
|
+
|
|
38
|
+
Command: `refactor` (fixed for this workflow — do not infer from user text)
|
|
39
|
+
|
|
40
|
+
1. Run: `npx cc-codeconductor ccep parse --command refactor "$ARGUMENTS" --output json`
|
|
41
|
+
2. Run: `npx cc-codeconductor ccep resolve --command refactor "$ARGUMENTS" --output json`
|
|
42
|
+
3. Run: `npx cc-codeconductor ccep profile refactor --output json`
|
|
43
|
+
4. After planner/intake JSON is available, run: `npx cc-codeconductor ccep evaluate --command refactor --input <planner.json> --output json`. If `stop` is true, show questions or risks and wait for human input.
|
|
44
|
+
5. Delegate to subagents using compiled CCEP prompts — never forward raw `$ARGUMENTS` to planners.
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
36
48
|
## Step 1 — Architectural justification (architect)
|
|
37
49
|
|
|
38
50
|
Always invoke `architect` first, regardless of risk level. A refactor without a
|
|
@@ -17,6 +17,18 @@ Specify what to review. Accepted formats:
|
|
|
17
17
|
|
|
18
18
|
---
|
|
19
19
|
|
|
20
|
+
## Step 0 — CCEP Bootstrap
|
|
21
|
+
|
|
22
|
+
Command: `review` (fixed for this workflow — do not infer from user text)
|
|
23
|
+
|
|
24
|
+
1. Run: `npx cc-codeconductor ccep parse --command review "$ARGUMENTS" --output json`
|
|
25
|
+
2. Run: `npx cc-codeconductor ccep resolve --command review "$ARGUMENTS" --output json`
|
|
26
|
+
3. Run: `npx cc-codeconductor ccep profile review --output json`
|
|
27
|
+
4. After planner/intake JSON is available, run: `npx cc-codeconductor ccep evaluate --command review --input <planner.json> --output json`. If `stop` is true, show questions or risks and wait for human input.
|
|
28
|
+
5. Delegate to subagents using compiled CCEP prompts — never forward raw `$ARGUMENTS` to planners.
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
20
32
|
## Step 1 — Diff collection
|
|
21
33
|
|
|
22
34
|
Before invoking `reviewer`, collect the diff for the specified target.
|
|
@@ -7,6 +7,18 @@ description:
|
|
|
7
7
|
|
|
8
8
|
Scope: $ARGUMENTS
|
|
9
9
|
|
|
10
|
+
## Step 0 — CCEP Bootstrap
|
|
11
|
+
|
|
12
|
+
Command: `scorecard` (fixed for this workflow — do not infer from user text)
|
|
13
|
+
|
|
14
|
+
1. Run: `npx cc-codeconductor ccep parse --command scorecard "$ARGUMENTS" --output json`
|
|
15
|
+
2. Run: `npx cc-codeconductor ccep resolve --command scorecard "$ARGUMENTS" --output json`
|
|
16
|
+
3. Run: `npx cc-codeconductor ccep profile scorecard --output json`
|
|
17
|
+
4. After planner/intake JSON is available, run: `npx cc-codeconductor ccep evaluate --command scorecard --input <planner.json> --output json`. If `stop` is true, show questions or risks and wait for human input.
|
|
18
|
+
5. Delegate to subagents using compiled CCEP prompts — never forward raw `$ARGUMENTS` to planners.
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
10
22
|
1. `scorecard create --task <id> --from-diff`
|
|
11
23
|
2. Complete criteria (reviewer or human)
|
|
12
24
|
3. `scorecard regression` (optional)
|
|
@@ -17,6 +17,19 @@ Describe what behavior you want to implement. Include:
|
|
|
17
17
|
|
|
18
18
|
---
|
|
19
19
|
|
|
20
|
+
## Step 0 — CCEP Bootstrap
|
|
21
|
+
|
|
22
|
+
Command: `tdd-cycle` (fixed for this workflow — do not infer from user text)
|
|
23
|
+
|
|
24
|
+
1. Run: `npx cc-codeconductor ccep parse --command tdd-cycle "$ARGUMENTS" --output json`
|
|
25
|
+
2. Run: `npx cc-codeconductor ccep resolve --command tdd-cycle "$ARGUMENTS" --output json`
|
|
26
|
+
3. Run: `npx cc-codeconductor ccep profile tdd-cycle --output json`
|
|
27
|
+
4. After planner/intake JSON is available, run: `npx cc-codeconductor ccep evaluate --command tdd-cycle --input <planner.json> --output json`. If `stop` is true, show questions or risks and wait for human input.
|
|
28
|
+
5. Delegate to subagents using compiled CCEP prompts — never forward raw `$ARGUMENTS` to planners.
|
|
29
|
+
Canonical delivery order is test-before-implement whenever both phases apply.
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
20
33
|
## Before you begin — mandatory pre-check
|
|
21
34
|
|
|
22
35
|
This command enforces strict TDD discipline. The three phases are sequential and
|
|
@@ -29,6 +42,17 @@ non-negotiable:
|
|
|
29
42
|
Do not write implementation code during RED. Do not refactor during GREEN.
|
|
30
43
|
Mixing phases invalidates the cycle.
|
|
31
44
|
|
|
45
|
+
## Verifiable phase gates
|
|
46
|
+
|
|
47
|
+
RED → GREEN and GREEN → REFACTOR are enforced by `tddCycleStateMachine` in
|
|
48
|
+
`domain/loop`. Evidence must be captured with `captureTddSuiteEvidence` (verification
|
|
49
|
+
runner) — do not hand-edit JSON under `.codeconductor/evidence/`.
|
|
50
|
+
|
|
51
|
+
- RED→GREEN requires runner evidence that the suite **failed**.
|
|
52
|
+
- GREEN→REFACTOR requires runner evidence that the suite **passed**.
|
|
53
|
+
|
|
54
|
+
Do not advance phases until that evidence exists.
|
|
55
|
+
|
|
32
56
|
---
|
|
33
57
|
|
|
34
58
|
## Phase 1 — RED (Tester role)
|
|
@@ -20,6 +20,18 @@ If $ARGUMENTS is empty, describe the scope in your next message before invoking
|
|
|
20
20
|
|
|
21
21
|
---
|
|
22
22
|
|
|
23
|
+
## Step 0 — CCEP Bootstrap
|
|
24
|
+
|
|
25
|
+
Command: `test-plan` (fixed for this workflow — do not infer from user text)
|
|
26
|
+
|
|
27
|
+
1. Run: `npx cc-codeconductor ccep parse --command test-plan "$ARGUMENTS" --output json`
|
|
28
|
+
2. Run: `npx cc-codeconductor ccep resolve --command test-plan "$ARGUMENTS" --output json`
|
|
29
|
+
3. Run: `npx cc-codeconductor ccep profile test-plan --output json`
|
|
30
|
+
4. After planner/intake JSON is available, run: `npx cc-codeconductor ccep evaluate --command test-plan --input <planner.json> --output json`. If `stop` is true, show questions or risks and wait for human input.
|
|
31
|
+
5. Delegate to subagents using compiled CCEP prompts — never forward raw `$ARGUMENTS` to planners.
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
23
35
|
## Step 1 — Scope confirmation
|
|
24
36
|
|
|
25
37
|
Before invoking `tester`, confirm the scope is well-defined.
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Classify a request into type, risk, and the destination CodeConductor command.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Triage Workflow
|
|
6
|
+
|
|
7
|
+
Triage request: $ARGUMENTS
|
|
8
|
+
|
|
9
|
+
## Step 0 — CCEP Bootstrap
|
|
10
|
+
|
|
11
|
+
Command: `triage` (fixed for this workflow — do not infer from user text)
|
|
12
|
+
|
|
13
|
+
1. Run: `npx cc-codeconductor ccep parse --command triage "$ARGUMENTS" --output json`
|
|
14
|
+
2. Run: `npx cc-codeconductor ccep resolve --command triage "$ARGUMENTS" --output json`
|
|
15
|
+
3. Run: `npx cc-codeconductor ccep profile triage --output json`
|
|
16
|
+
4. After planner/intake JSON is available, run: `npx cc-codeconductor ccep evaluate --command triage --input <planner.json> --output json`. If `stop` is true, show questions or risks and wait for human input.
|
|
17
|
+
5. Delegate to subagents using compiled CCEP prompts — never forward raw `$ARGUMENTS` to planners.
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## Step 1 — Classify (task-coach)
|
|
22
|
+
|
|
23
|
+
Invoke `task-coach`. Produce: title, type (`feature` | `fix` | `refactor` | `review` | `docs` | `test`), risk, named scope, and the destination command (`feature`, `fix`, `refactor`, `review`, `explore`, …).
|
|
24
|
+
|
|
25
|
+
Ask one question per unresolved branch. If the human is unavailable, emit a Markdown questionnaire and stop at ConfirmationGate.
|
|
26
|
+
|
|
27
|
+
**STOP here. Show the classification and wait for confirmation before running the destination workflow.**
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## Completion
|
|
32
|
+
|
|
33
|
+
Do not implement. Hand the human a destination slash command and a partial Task Card.
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
# Pre-commit Gate: Typecheck and Test
|
|
2
|
+
|
|
3
|
+
Este gate instala un hook `pre-commit` que ejecuta `bun run typecheck` y `bun run test` antes de permitir commits en el repositorio. Si cualquiera de estos comandos falla, el commit es bloqueado.
|
|
4
|
+
|
|
5
|
+
## Cuándo usar
|
|
6
|
+
|
|
7
|
+
**Para agentes**: Integra este gate en flujos de desarrollo local cuando quieras garantizar que los cambios typecheck correctamente y pasan los tests antes de ser cometidos.
|
|
8
|
+
|
|
9
|
+
**Para equipos**: Utiliza este gate como barrera de calidad local (sin dependencias externas) para prevenir commits con errores de tipado o tests fallidos.
|
|
10
|
+
|
|
11
|
+
## Instalación
|
|
12
|
+
|
|
13
|
+
### Paso 1: Descarga el script
|
|
14
|
+
|
|
15
|
+
El script está embebido abajo (sección "Script Installer").
|
|
16
|
+
|
|
17
|
+
### Paso 2: Ejecuta en la raíz de tu proyecto
|
|
18
|
+
|
|
19
|
+
Desde la raíz del repositorio (o cualquier subdirectorio), extrae el bloque ```bash de este archivo y ejecuta:
|
|
20
|
+
|
|
21
|
+
bash << 'SCRIPT_EOF'
|
|
22
|
+
#!/bin/bash
|
|
23
|
+
set -e
|
|
24
|
+
# [contenido del bloque bash de abajo]
|
|
25
|
+
SCRIPT_EOF
|
|
26
|
+
|
|
27
|
+
O, más simplemente, guarda el script en un archivo temporal y ejecútalo:
|
|
28
|
+
|
|
29
|
+
curl -s https://raw.githubusercontent.com/.../ | bash
|
|
30
|
+
|
|
31
|
+
### Paso 3: Verifica
|
|
32
|
+
|
|
33
|
+
Después de la instalación, debería verse:
|
|
34
|
+
|
|
35
|
+
Pre-commit hook installed successfully.
|
|
36
|
+
|
|
37
|
+
## Script Installer
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
#!/bin/bash
|
|
41
|
+
set -e
|
|
42
|
+
|
|
43
|
+
# Resolver git directory dinámicamente (worktree-safe)
|
|
44
|
+
GIT_DIR=$(git rev-parse --git-dir)
|
|
45
|
+
HOOK_PATH="$GIT_DIR/hooks/pre-commit"
|
|
46
|
+
|
|
47
|
+
# Detectar Husky o lint-staged en package.json
|
|
48
|
+
if grep -q '"husky"' package.json 2>/dev/null || grep -q '"lint-staged"' package.json 2>/dev/null; then
|
|
49
|
+
echo "Warning: Husky or lint-staged detected in package.json. Installation skipped."
|
|
50
|
+
exit 0
|
|
51
|
+
fi
|
|
52
|
+
|
|
53
|
+
# Verificar si un pre-commit hook ya existe
|
|
54
|
+
if [ -f "$HOOK_PATH" ]; then
|
|
55
|
+
echo "Warning: Pre-commit hook already exists at $HOOK_PATH. Not overwriting."
|
|
56
|
+
exit 0
|
|
57
|
+
fi
|
|
58
|
+
|
|
59
|
+
# Crear directorio hooks si no existe
|
|
60
|
+
mkdir -p "$GIT_DIR/hooks"
|
|
61
|
+
|
|
62
|
+
# Escribir el hook pre-commit
|
|
63
|
+
cat > "$HOOK_PATH" << 'HOOK_EOF'
|
|
64
|
+
#!/bin/bash
|
|
65
|
+
bun run typecheck || exit 1
|
|
66
|
+
bun run test || exit 1
|
|
67
|
+
HOOK_EOF
|
|
68
|
+
|
|
69
|
+
# Hacer el hook ejecutable
|
|
70
|
+
chmod +x "$HOOK_PATH"
|
|
71
|
+
|
|
72
|
+
echo "Pre-commit hook installed successfully."
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
## Notas de implementación
|
|
76
|
+
|
|
77
|
+
- **Sin dependencias externas**: El script no instala Husky, lint-staged, ni ninguna otra herramienta. Solo escribe un archivo shell y configura permisos.
|
|
78
|
+
- **Resolución dinámica de git dir**: Usa `git rev-parse --git-dir` para localizar el directorio correcto, incluso en worktrees.
|
|
79
|
+
- **Detección de conflictos**: Si Husky o lint-staged ya está en `package.json`, el script avisa y no instala para evitar conflictos.
|
|
80
|
+
- **Protección de hooks existentes**: Si ya existe un `.git/hooks/pre-commit`, el script no lo sobrescribe.
|
|
81
|
+
- **Solo Bun**: El hook ejecuta `bun run typecheck` y `bun run test`. Asegúrate de que estos scripts están definidos en `package.json`.
|
|
82
|
+
|
|
83
|
+
## Verificación
|
|
84
|
+
|
|
85
|
+
Después de instalar, verifica que el hook está en su lugar.
|
|
86
|
+
|
|
87
|
+
Para verificar, ejecuta:
|
|
88
|
+
|
|
89
|
+
ls -la .git/hooks/pre-commit
|
|
90
|
+
|
|
91
|
+
Debe mostrar algo como:
|
|
92
|
+
|
|
93
|
+
-rwxr-xr-x user group ... .git/hooks/pre-commit
|
|
94
|
+
|
|
95
|
+
Luego, intenta hacer un commit. Si hay errores de tipo o tests fallidos, el commit será bloqueado:
|
|
96
|
+
|
|
97
|
+
git add .
|
|
98
|
+
git commit -m "test"
|
|
99
|
+
# Si typecheck o test falla, verás el error y el commit será abortado.
|
|
100
|
+
|
|
101
|
+
## Troubleshooting
|
|
102
|
+
|
|
103
|
+
### "Warning: Pre-commit hook already exists"
|
|
104
|
+
|
|
105
|
+
Ya hay un hook pre-commit. Revisa su contenido:
|
|
106
|
+
|
|
107
|
+
cat .git/hooks/pre-commit
|
|
108
|
+
|
|
109
|
+
Si quieres reemplazarlo, bórralo y ejecuta el script nuevamente:
|
|
110
|
+
|
|
111
|
+
rm .git/hooks/pre-commit
|
|
112
|
+
bash /path/to/installer
|
|
113
|
+
|
|
114
|
+
### "Warning: Husky or lint-staged detected"
|
|
115
|
+
|
|
116
|
+
Tu proyecto usa Husky o lint-staged. Este gate no se instala para evitar conflictos. Si quieres usar este gate, remove Husky/lint-staged de `package.json` y ejecuta de nuevo.
|
|
117
|
+
|
|
118
|
+
### Hook no se ejecuta al hacer commit
|
|
119
|
+
|
|
120
|
+
Verifica que el hook es ejecutable:
|
|
121
|
+
|
|
122
|
+
chmod +x .git/hooks/pre-commit
|
|
123
|
+
|
|
124
|
+
Verifica que `bun run typecheck` y `bun run test` existen en `package.json`:
|
|
125
|
+
|
|
126
|
+
cat package.json | grep -A 5 '"scripts"'
|
|
127
|
+
|
|
128
|
+
### "command not found: bun"
|
|
129
|
+
|
|
130
|
+
Bun no está instalado o no está en PATH. Instala Bun desde https://bun.sh o configura PATH adecuadamente.
|
|
131
|
+
|
|
132
|
+
## Adicional: Desinstalación
|
|
133
|
+
|
|
134
|
+
Para remover el hook, simplemente bórralo:
|
|
135
|
+
|
|
136
|
+
rm .git/hooks/pre-commit
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# DEPRECATED — v0.1.0
|
|
2
|
+
|
|
3
|
+
**Status:** deprecated. Superseded by `v1.0.0`.
|
|
4
|
+
|
|
5
|
+
These Agent Contracts are kept for reproducibility only. Projects that pinned
|
|
6
|
+
`contract_version: 0.1.0` can still reinstall from this directory, but new work
|
|
7
|
+
must not adopt this version.
|
|
8
|
+
|
|
9
|
+
- Do not edit these files — contracts are append-only.
|
|
10
|
+
- Use `prompts/v1.0.0/` for all new installs.
|
|
11
|
+
- See `docs/prompt-versioning.md` for the full version table.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# DEPRECATED — v0.2.0
|
|
2
|
+
|
|
3
|
+
**Status:** deprecated. Superseded by `v1.0.0`.
|
|
4
|
+
|
|
5
|
+
These Agent Contracts are kept for reproducibility only. Projects that pinned
|
|
6
|
+
`contract_version: 0.2.0` can still reinstall from this directory, but new work
|
|
7
|
+
must not adopt this version.
|
|
8
|
+
|
|
9
|
+
- Do not edit these files — contracts are append-only.
|
|
10
|
+
- Use `prompts/v1.0.0/` for all new installs.
|
|
11
|
+
- See `docs/prompt-versioning.md` for the full version table.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# DEPRECATED — v0.3.0
|
|
2
|
+
|
|
3
|
+
**Status:** deprecated. Superseded by `v1.0.0`.
|
|
4
|
+
|
|
5
|
+
These Agent Contracts are kept for reproducibility only. Projects that pinned
|
|
6
|
+
`contract_version: 0.3.0` can still reinstall from this directory, but new work
|
|
7
|
+
must not adopt this version.
|
|
8
|
+
|
|
9
|
+
- Do not edit these files — contracts are append-only.
|
|
10
|
+
- Use `prompts/v1.0.0/` for all new installs.
|
|
11
|
+
- See `docs/prompt-versioning.md` for the full version table.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# DEPRECATED — v0.4.0
|
|
2
|
+
|
|
3
|
+
**Status:** deprecated. Superseded by `v1.0.0`.
|
|
4
|
+
|
|
5
|
+
These Agent Contracts are kept for reproducibility only. Projects that pinned
|
|
6
|
+
`contract_version: 0.4.0` can still reinstall from this directory, but new work
|
|
7
|
+
must not adopt this version.
|
|
8
|
+
|
|
9
|
+
- Do not edit these files — contracts are append-only.
|
|
10
|
+
- Use `prompts/v1.0.0/` for all new installs.
|
|
11
|
+
- See `docs/prompt-versioning.md` for the full version table.
|
|
@@ -45,7 +45,7 @@ Match objective keywords against built-in templates (in order):
|
|
|
45
45
|
| migration, schema, database | migration |
|
|
46
46
|
| (no match) | generic 4-task chain |
|
|
47
47
|
|
|
48
|
-
**Generic fallback chain:** `task-coach` → `architect` → `
|
|
48
|
+
**Generic fallback chain:** `task-coach` → `architect` → `tester` → `implementer`
|
|
49
49
|
|
|
50
50
|
Each task must include: `id`, `title`, `type`, `risk`, `status: pending`,
|
|
51
51
|
`context_scope`, `depends_on`, `acceptance_criteria` (≥ 1 each).
|
|
@@ -106,22 +106,22 @@ regression.
|
|
|
106
106
|
|
|
107
107
|
| Task type | Risk | Route |
|
|
108
108
|
| ------------------ | ----------- | ------------------------------------------------------------------ |
|
|
109
|
-
| New feature | high | `architect` → `
|
|
110
|
-
| New feature | low-medium | `architect` → `
|
|
109
|
+
| New feature | high | `architect` → `tester` → `implementer` → `security-reviewer` → `reviewer` |
|
|
110
|
+
| New feature | low-medium | `architect` → `tester` → `implementer` → `reviewer` |
|
|
111
111
|
| Performance Opt | medium | `task-coach` → `implementer` → `reviewer` |
|
|
112
|
-
| Bug fix | low | `
|
|
113
|
-
| Bug fix | medium–high | `task-coach` → `architect` → `
|
|
112
|
+
| Bug fix | low | `tester` → `implementer` |
|
|
113
|
+
| Bug fix | medium–high | `task-coach` → `architect` → `tester` → `implementer` → `reviewer` |
|
|
114
114
|
| Refactor | low | `architect` → `implementer` |
|
|
115
115
|
| Refactor | medium–high | `architect` → `implementer` → `reviewer` |
|
|
116
116
|
| API change | any | `architect` → `implementer` → `reviewer` |
|
|
117
|
-
| Database migration | any | `architect` → `
|
|
117
|
+
| Database migration | any | `architect` → `tester` → `implementer` → `reviewer` |
|
|
118
118
|
| Test coverage | any | `tester` |
|
|
119
119
|
| Documentation | any | `docs` |
|
|
120
120
|
| Codebase question | any | `repo-explorer` |
|
|
121
121
|
| Code review | any | `reviewer` |
|
|
122
122
|
| Task unclear | any | `task-coach` |
|
|
123
123
|
| Multi-step goal | any | `goal-planner` → [dependency-ordered agents] |
|
|
124
|
-
| DDD→SDD→TDD | any | `contract-builder` → `architect` → `
|
|
124
|
+
| DDD→SDD→TDD | any | `contract-builder` → `architect` → `tester` → `implementer` |
|
|
125
125
|
|
|
126
126
|
---
|
|
127
127
|
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Implementer
|
|
3
|
+
description: Executes an approved Technical Plan with minimal diff. CCEP-1 structured output.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Agent Contract — implementer v0.6.0
|
|
7
|
+
|
|
8
|
+
## Role
|
|
9
|
+
|
|
10
|
+
You are the Implementer for CodeConductor (CCEP-1). Execute the approved Technical
|
|
11
|
+
Plan and Task Card. Write the minimal diff. Do not invent architecture.
|
|
12
|
+
|
|
13
|
+
## Output contract (mandatory JSON)
|
|
14
|
+
|
|
15
|
+
Respond with **valid JSON only** matching `ImplementerOutputSchema`:
|
|
16
|
+
|
|
17
|
+
```json
|
|
18
|
+
{
|
|
19
|
+
"status": "success",
|
|
20
|
+
"confidence": 0.0,
|
|
21
|
+
"warnings": [],
|
|
22
|
+
"artifacts": [{ "type": "diff", "path": "src/example.ts" }],
|
|
23
|
+
"next_actions": [],
|
|
24
|
+
"filesChanged": [{ "path": "src/example.ts", "summary": "Added validation" }],
|
|
25
|
+
"tests": { "runner": "bun test", "result": "passed" }
|
|
26
|
+
}
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
## Rules
|
|
30
|
+
|
|
31
|
+
- Read the Technical Plan before editing any file.
|
|
32
|
+
- Touch only files listed in the plan.
|
|
33
|
+
- Run tests before returning output.
|
|
34
|
+
- If blocked, set `status` to `blocked` and list `next_actions`.
|
|
35
|
+
- Never return free-form prose as the final answer.
|