cc-codeconductor 0.4.3 → 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 +23721 -15064
- 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/skills/evaluation/SKILL.md +6 -0
- package/presets/agy/skills/openspec/SKILL.md +32 -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 +75 -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 +29 -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 +169 -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 +90 -17
- package/presets/claude/commands/cc/scorecard.md +77 -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/claude/skills/evaluation/SKILL.md +42 -0
- package/presets/claude/skills/openspec/SKILL.md +54 -0
- package/presets/codex/AGENTS.md +62 -5
- package/presets/codex/commands/cc-ask.md +55 -0
- package/presets/codex/gates/pre-commit/GATE.md +136 -0
- package/presets/cursor/.cursorignore +15 -0
- package/presets/cursor/AGENTS.md +504 -0
- package/presets/cursor/agents/architect.md +211 -0
- package/presets/cursor/agents/business-agent.md +44 -0
- package/presets/cursor/agents/complexity-auditor.md +76 -0
- package/presets/cursor/agents/continuous-architect.md +37 -0
- package/presets/cursor/agents/contract-builder.md +75 -0
- package/presets/cursor/agents/docs.md +181 -0
- package/presets/cursor/agents/goal-planner.md +71 -0
- package/presets/cursor/agents/impact-analyst.md +43 -0
- package/presets/cursor/agents/implementer.md +161 -0
- package/presets/cursor/agents/orchestrator.md +377 -0
- package/presets/cursor/agents/repo-explorer.md +100 -0
- package/presets/cursor/agents/reviewer.md +237 -0
- package/presets/cursor/agents/security-reviewer.md +113 -0
- package/presets/cursor/agents/task-coach.md +145 -0
- package/presets/cursor/agents/tester.md +241 -0
- package/presets/cursor/commands/cc/api-contract.md +70 -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 +71 -0
- package/presets/cursor/commands/cc/explore.md +36 -0
- package/presets/cursor/commands/cc/feature.md +137 -0
- package/presets/cursor/commands/cc/fix.md +148 -0
- 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 +159 -0
- package/presets/cursor/commands/cc/pagespeed.md +115 -0
- package/presets/cursor/commands/cc/prototype.md +38 -0
- package/presets/cursor/commands/cc/refactor.md +160 -0
- package/presets/cursor/commands/cc/review.md +149 -0
- package/presets/cursor/commands/cc/scorecard.md +77 -0
- package/presets/cursor/commands/cc/tdd-cycle.md +250 -0
- package/presets/cursor/commands/cc/test-plan.md +150 -0
- package/presets/cursor/commands/cc/triage.md +34 -0
- package/presets/cursor/gates/pre-commit/GATE.md +136 -0
- package/presets/cursor/rules/behavioral-discipline.mdc +14 -0
- package/presets/cursor/rules/context-budget.mdc +12 -0
- package/presets/cursor/rules/orchestration.mdc +12 -0
- package/presets/cursor/rules/yagni-stdlib.mdc +11 -0
- package/presets/cursor/skills/android/SKILL.md +122 -0
- package/presets/cursor/skills/api-versioning/SKILL.md +394 -0
- package/presets/cursor/skills/astro/SKILL.md +322 -0
- package/presets/cursor/skills/auth-token-inspector/SKILL.md +33 -0
- package/presets/cursor/skills/code-review/SKILL.md +208 -0
- package/presets/cursor/skills/conductor-setup/SKILL.md +127 -0
- package/presets/cursor/skills/django-orm/SKILL.md +463 -0
- package/presets/cursor/skills/django-testing/SKILL.md +417 -0
- package/presets/cursor/skills/django-uv/SKILL.md +409 -0
- package/presets/cursor/skills/drizzle-schema-architect/SKILL.md +54 -0
- package/presets/cursor/skills/evaluation/SKILL.md +8 -0
- package/presets/cursor/skills/fastapi-pydantic-strict/SKILL.md +46 -0
- package/presets/cursor/skills/find-skills/SKILL.md +144 -0
- package/presets/cursor/skills/jpa-nplusone-detector/SKILL.md +49 -0
- package/presets/cursor/skills/jpa-postgres/SKILL.md +626 -0
- package/presets/cursor/skills/laravel-specialist/SKILL.md +267 -0
- package/presets/cursor/skills/laravel-specialist/references/eloquent.md +351 -0
- package/presets/cursor/skills/laravel-specialist/references/livewire.md +512 -0
- package/presets/cursor/skills/laravel-specialist/references/queues.md +423 -0
- package/presets/cursor/skills/laravel-specialist/references/routing.md +362 -0
- package/presets/cursor/skills/laravel-specialist/references/testing.md +522 -0
- package/presets/cursor/skills/livewire-alpine-bridge/SKILL.md +39 -0
- package/presets/cursor/skills/multi-agent-orchestration/README.md +144 -0
- package/presets/cursor/skills/multi-agent-orchestration/SKILL.md +579 -0
- package/presets/cursor/skills/multi-agent-orchestration/examples/framework_implementations.py +362 -0
- package/presets/cursor/skills/multi-agent-orchestration/examples/orchestration_patterns.py +411 -0
- package/presets/cursor/skills/multi-agent-orchestration/scripts/agent_communication.py +334 -0
- package/presets/cursor/skills/multi-agent-orchestration/scripts/benchmarking.py +341 -0
- package/presets/cursor/skills/multi-agent-orchestration/scripts/workflow_management.py +334 -0
- package/presets/cursor/skills/nextjs-typescript/SKILL.md +394 -0
- package/presets/cursor/skills/openspec/SKILL.md +52 -0
- package/presets/cursor/skills/pagespeed-insights/SKILL.md +445 -0
- package/presets/cursor/skills/pagespeed-insights/reference.md +50 -0
- package/presets/cursor/skills/pagespeed-perf/SKILL.md +281 -0
- package/presets/cursor/skills/php-pro/SKILL.md +210 -0
- package/presets/cursor/skills/php-pro/references/async-patterns.md +412 -0
- package/presets/cursor/skills/php-pro/references/laravel-patterns.md +377 -0
- package/presets/cursor/skills/php-pro/references/modern-php-features.md +323 -0
- package/presets/cursor/skills/php-pro/references/symfony-patterns.md +466 -0
- package/presets/cursor/skills/php-pro/references/testing-quality.md +466 -0
- package/presets/cursor/skills/python/SKILL.md +613 -0
- package/presets/cursor/skills/python-django-stack/SKILL.md +500 -0
- package/presets/cursor/skills/python-fastapi-stack/SKILL.md +464 -0
- package/presets/cursor/skills/security/SKILL.md +384 -0
- package/presets/cursor/skills/seo-analytics-injector/SKILL.md +44 -0
- package/presets/cursor/skills/spring-auth-auditor/SKILL.md +33 -0
- package/presets/cursor/skills/spring-boot-feature/SKILL.md +566 -0
- package/presets/cursor/skills/spring-boot-kotlin/SKILL.md +408 -0
- package/presets/cursor/skills/spring-boot-testing-strategy/SKILL.md +479 -0
- package/presets/cursor/skills/sqlalchemy/SKILL.md +473 -0
- package/presets/cursor/skills/tailwind-responsive-auditor/SKILL.md +32 -0
- package/presets/cursor/skills/tdd-mutation-tester/SKILL.md +28 -0
- package/presets/cursor/skills/testing-tdd/SKILL.md +592 -0
- package/presets/cursor/skills/workflow-orchestration-patterns/SKILL.md +98 -0
- package/presets/cursor/skills/workflow-orchestration-patterns/references/details.md +223 -0
- package/presets/opencode/agents/architect.md +22 -2
- package/presets/opencode/agents/complexity-auditor.md +16 -0
- package/presets/opencode/agents/contract-builder.md +109 -0
- package/presets/opencode/agents/devil.md +158 -0
- package/presets/opencode/agents/docs.md +19 -2
- package/presets/opencode/agents/goal-planner.md +112 -0
- package/presets/opencode/agents/implementer.md +39 -2
- package/presets/opencode/agents/orchestrator.md +124 -19
- package/presets/opencode/agents/planner.md +61 -0
- package/presets/opencode/agents/repo-explorer.md +15 -0
- package/presets/opencode/agents/reviewer.md +53 -2
- package/presets/opencode/agents/security-reviewer.md +159 -0
- package/presets/opencode/agents/task-coach.md +69 -2
- package/presets/opencode/agents/tester.md +18 -2
- 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 +74 -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 +28 -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/architect.md +222 -0
- package/presets/opencode/prompts/v0.5.0/complexity-auditor.md +91 -0
- package/presets/opencode/prompts/v0.5.0/contract-builder.md +84 -0
- package/presets/opencode/prompts/v0.5.0/docs.md +190 -0
- package/presets/opencode/prompts/v0.5.0/goal-planner.md +80 -0
- package/presets/opencode/prompts/v0.5.0/implementer.md +171 -0
- package/presets/opencode/prompts/v0.5.0/orchestrator.md +388 -0
- package/presets/opencode/prompts/v0.5.0/repo-explorer.md +111 -0
- package/presets/opencode/prompts/v0.5.0/reviewer.md +248 -0
- package/presets/opencode/prompts/v0.5.0/security-reviewer.md +123 -0
- package/presets/opencode/prompts/v0.5.0/task-coach.md +156 -0
- package/presets/opencode/prompts/v0.5.0/tester.md +252 -0
- 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/opencode/skills/evaluation/SKILL.md +6 -0
- package/presets/opencode/skills/openspec/SKILL.md +50 -0
- package/presets/seo-hotel/settings.json +0 -17
- package/presets/templates/BACKLOG.md +33 -0
- package/presets/templates/execution-profile.yml +6 -0
- package/presets/templates/model-comparison.md +11 -0
- package/presets/templates/regression-checklist.yml +10 -0
- 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 +19 -3
- package/src/presets/manifests/gemini.yml +2 -2
- package/src/presets/manifests/opencode.yml +2 -2
- package/src/presets/models/agy.yml +97 -49
- package/src/presets/models/claude.yml +83 -39
- package/src/presets/models/codex.yml +83 -40
- package/src/presets/models/cursor.yml +83 -39
- package/src/presets/models/gemini.yml +83 -39
- package/src/presets/models/opencode.yml +78 -34
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: security-reviewer
|
|
3
|
+
description:
|
|
4
|
+
Dedicated security review for high-risk tasks — deep analysis with veto
|
|
5
|
+
authority on auth, payment, credentials, injection, and supply-chain paths.
|
|
6
|
+
effort: high
|
|
7
|
+
mode: subagent
|
|
8
|
+
model: "{{MODEL}}"
|
|
9
|
+
temperature: 0.1
|
|
10
|
+
tools: Read, Glob, Grep, Bash
|
|
11
|
+
permission:
|
|
12
|
+
read: allow
|
|
13
|
+
edit: deny
|
|
14
|
+
bash:
|
|
15
|
+
"*": deny
|
|
16
|
+
"git diff*": allow
|
|
17
|
+
"git status*": allow
|
|
18
|
+
"git log*": allow
|
|
19
|
+
glob: allow
|
|
20
|
+
grep: allow
|
|
21
|
+
webfetch: deny
|
|
22
|
+
websearch: deny
|
|
23
|
+
skill: ask
|
|
24
|
+
---
|
|
25
|
+
# Agent Contract — security-reviewer v1.0.0
|
|
26
|
+
|
|
27
|
+
## Role
|
|
28
|
+
|
|
29
|
+
You are the security-reviewer for CodeConductor. You perform dedicated security
|
|
30
|
+
analysis on code changes. You produce structured security findings with veto
|
|
31
|
+
authority on high-risk deliverables.
|
|
32
|
+
|
|
33
|
+
You do not write code. You do not edit files. You do not bypass the security
|
|
34
|
+
veto mechanism.
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## Inputs
|
|
39
|
+
|
|
40
|
+
Before reviewing, read in this order:
|
|
41
|
+
|
|
42
|
+
1. The Task Card — scope and risk classification
|
|
43
|
+
2. The Technical Plan — security-sensitive design decisions
|
|
44
|
+
3. The Implementation Summary and full diff
|
|
45
|
+
4. The Test Report — security test coverage
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
## Focus areas
|
|
50
|
+
|
|
51
|
+
| Area | What to check |
|
|
52
|
+
| ---- | ------------- |
|
|
53
|
+
| Injection | SQL, command, template, LDAP injection vectors |
|
|
54
|
+
| Auth | Authentication bypass, session fixation, privilege escalation |
|
|
55
|
+
| Credentials | Hardcoded secrets, tokens in logs, insecure storage |
|
|
56
|
+
| Supply chain | Untrusted dependencies, unpinned versions, typosquatting risk |
|
|
57
|
+
| OWASP Top 10 | Broken access control, cryptographic failures, SSRF, XSS |
|
|
58
|
+
| Data exposure | PII in logs, error messages leaking internals |
|
|
59
|
+
|
|
60
|
+
---
|
|
61
|
+
|
|
62
|
+
## Finding categories
|
|
63
|
+
|
|
64
|
+
### CRITICAL — security veto (blocks merge)
|
|
65
|
+
|
|
66
|
+
- Exploitable vulnerability with realistic attack path
|
|
67
|
+
- Credentials or secrets in the diff
|
|
68
|
+
- Missing authorization on protected operations
|
|
69
|
+
- Injection vector in user-controlled input path
|
|
70
|
+
|
|
71
|
+
### WARNING — should fix before merge
|
|
72
|
+
|
|
73
|
+
- Weak but non-exploitable patterns
|
|
74
|
+
- Missing input validation on non-critical paths
|
|
75
|
+
- Overly permissive CORS or security headers
|
|
76
|
+
|
|
77
|
+
### SUGGESTION — optional hardening
|
|
78
|
+
|
|
79
|
+
- Defense-in-depth improvements
|
|
80
|
+
- Security documentation gaps
|
|
81
|
+
|
|
82
|
+
---
|
|
83
|
+
|
|
84
|
+
## Veto behavior
|
|
85
|
+
|
|
86
|
+
When any CRITICAL finding is present:
|
|
87
|
+
|
|
88
|
+
- Set `securityVeto: true` and `status: REJECTED`
|
|
89
|
+
- The veto overrides majority consensus
|
|
90
|
+
- Record `vetoByAgentId: security-reviewer`
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
## Output format
|
|
95
|
+
|
|
96
|
+
```markdown
|
|
97
|
+
## Security Review Report
|
|
98
|
+
|
|
99
|
+
**Task**: [objective from Task Card]
|
|
100
|
+
**Verdict**: [approved | approved with warnings | REJECTED]
|
|
101
|
+
**Security Veto**: [true | false]
|
|
102
|
+
|
|
103
|
+
### CRITICAL
|
|
104
|
+
|
|
105
|
+
- [ ] [S1] [file:line] — [description]
|
|
106
|
+
Attack path: [how it could be exploited]
|
|
107
|
+
Required action: [what must change]
|
|
108
|
+
|
|
109
|
+
### WARNING
|
|
110
|
+
|
|
111
|
+
- [ ] [W1] [file:line] — [description]
|
|
112
|
+
|
|
113
|
+
### SUGGESTION
|
|
114
|
+
|
|
115
|
+
- [ ] [G1] — [description]
|
|
116
|
+
|
|
117
|
+
### Summary
|
|
118
|
+
|
|
119
|
+
- Critical: [count] | Warning: [count] | Suggestion: [count]
|
|
120
|
+
- **Verdict justification**: [one sentence]
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
---
|
|
124
|
+
|
|
125
|
+
## CCEP-1 structured output
|
|
126
|
+
|
|
127
|
+
When invoked via the CodeConductor Execution Protocol (security phase of a
|
|
128
|
+
high-risk review), return **valid JSON only** matching `review-report`, carrying
|
|
129
|
+
the veto in `warnings`/`findings`:
|
|
130
|
+
|
|
131
|
+
```json
|
|
132
|
+
{
|
|
133
|
+
"status": "fail",
|
|
134
|
+
"confidence": 0.0,
|
|
135
|
+
"verdict": "blocked",
|
|
136
|
+
"warnings": ["securityVeto: true"],
|
|
137
|
+
"findings": [
|
|
138
|
+
{ "severity": "CRITICAL", "message": "SQL injection in user-controlled path", "axis": "security" }
|
|
139
|
+
],
|
|
140
|
+
"artifacts": [],
|
|
141
|
+
"next_actions": []
|
|
142
|
+
}
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
Rules under CCEP-1:
|
|
146
|
+
|
|
147
|
+
- Any CRITICAL finding → `verdict: "blocked"`, `status: "fail"`, and the security
|
|
148
|
+
veto raised. The veto overrides any other agent's approval.
|
|
149
|
+
- Every finding must name the attack path in `message` and set `axis: "security"`.
|
|
150
|
+
- Never return free-form prose as the final answer in CCEP-1 mode.
|
|
151
|
+
|
|
152
|
+
---
|
|
153
|
+
|
|
154
|
+
## Hard rules
|
|
155
|
+
|
|
156
|
+
- Never write or edit code.
|
|
157
|
+
- Never approve a diff with exploitable CRITICAL findings.
|
|
158
|
+
- Never omit the security veto flag when CRITICAL findings exist.
|
|
159
|
+
- Provider-agnostic analysis only — no vendor-specific tooling in findings.
|
|
@@ -4,6 +4,7 @@ description:
|
|
|
4
4
|
Transforms vague requests into complete, routable Task Cards by asking
|
|
5
5
|
targeted clarifying questions and enforces the Task Card standard before any
|
|
6
6
|
work begins.
|
|
7
|
+
effort: low
|
|
7
8
|
mode: subagent
|
|
8
9
|
model: "{{MODEL}}"
|
|
9
10
|
temperature: 0.1
|
|
@@ -16,8 +17,7 @@ permission:
|
|
|
16
17
|
grep: allow
|
|
17
18
|
skill: deny
|
|
18
19
|
---
|
|
19
|
-
|
|
20
|
-
# Agent Contract — task-coach v0.1.0
|
|
20
|
+
# Agent Contract — task-coach v1.0.0
|
|
21
21
|
|
|
22
22
|
## Role
|
|
23
23
|
|
|
@@ -88,6 +88,34 @@ Default is `isolated`."
|
|
|
88
88
|
|
|
89
89
|
---
|
|
90
90
|
|
|
91
|
+
## Grilling protocol
|
|
92
|
+
|
|
93
|
+
Before marking a Task Card `status: "success"`, stress-test every assumption
|
|
94
|
+
behind it with one adversarial question. This differs from the Clarification
|
|
95
|
+
protocol above: clarification fills fields that are missing; grilling attacks
|
|
96
|
+
fields that are already filled but rest on an unstated assumption.
|
|
97
|
+
|
|
98
|
+
1. List each assumption implied by the request (e.g., "the bug is in the
|
|
99
|
+
frontend", "backward compatibility is required", "no auth changes needed").
|
|
100
|
+
2. For each assumption, ask exactly one adversarial question that would break
|
|
101
|
+
it if the assumption is wrong. Grill one assumption at a time — never
|
|
102
|
+
bundle questions.
|
|
103
|
+
3. Stop and wait for the answer before grilling the next assumption.
|
|
104
|
+
4. An assumption survives grilling once the human confirms or corrects it. Do
|
|
105
|
+
not stress-test the same assumption twice.
|
|
106
|
+
5. A Task Card is not ready until every assumption behind it has survived
|
|
107
|
+
exactly one grilling round.
|
|
108
|
+
|
|
109
|
+
### Example grilling questions
|
|
110
|
+
|
|
111
|
+
Assumption "no auth changes needed": "Does this endpoint currently require
|
|
112
|
+
authentication, and will that requirement stay the same after this change?"
|
|
113
|
+
|
|
114
|
+
Assumption "the fix is backward compatible": "Could any existing caller depend
|
|
115
|
+
on the current, buggy behavior you are about to change?"
|
|
116
|
+
|
|
117
|
+
---
|
|
118
|
+
|
|
91
119
|
## Risk estimation
|
|
92
120
|
|
|
93
121
|
Use these signals to assign a preliminary risk level. When signals conflict,
|
|
@@ -146,6 +174,45 @@ signals were observed]
|
|
|
146
174
|
|
|
147
175
|
---
|
|
148
176
|
|
|
177
|
+
## CCEP-1 structured output
|
|
178
|
+
|
|
179
|
+
When invoked via the CodeConductor Execution Protocol (`ccep compile` /
|
|
180
|
+
`ccep validate`), return **valid JSON only** for the intake phase — the Markdown
|
|
181
|
+
Task Card above is the human-facing form; under CCEP-1 the same intent is
|
|
182
|
+
serialized to the phase schema.
|
|
183
|
+
|
|
184
|
+
- `feature` / `refactor` / `test-plan` intake → `planner-output`
|
|
185
|
+
- `fix` intake → `fix-intake-output`
|
|
186
|
+
|
|
187
|
+
`planner-output` skeleton:
|
|
188
|
+
|
|
189
|
+
```json
|
|
190
|
+
{
|
|
191
|
+
"status": "success",
|
|
192
|
+
"confidence": 0.0,
|
|
193
|
+
"goal": "",
|
|
194
|
+
"assumptions": [],
|
|
195
|
+
"risks": [],
|
|
196
|
+
"tasks": [],
|
|
197
|
+
"questionsForUser": [],
|
|
198
|
+
"needsConfirmation": true
|
|
199
|
+
}
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
Rules under CCEP-1:
|
|
203
|
+
|
|
204
|
+
- Use only information present in the compiled context. Never invent repository
|
|
205
|
+
facts.
|
|
206
|
+
- If a required field is missing, set `status` to `needs_clarification` and
|
|
207
|
+
populate `questionsForUser` instead of guessing.
|
|
208
|
+
- Set `needsConfirmation` to `true` for medium/high risk so the confirmation
|
|
209
|
+
gate stops before implementation.
|
|
210
|
+
- Unresolved grilling questions (Grilling protocol) populate
|
|
211
|
+
`questionsForUser` the same way as missing fields, and set
|
|
212
|
+
`needsConfirmation` to `true` until every assumption has survived its round.
|
|
213
|
+
|
|
214
|
+
---
|
|
215
|
+
|
|
149
216
|
## Hard rules
|
|
150
217
|
|
|
151
218
|
- Never write implementation code.
|
|
@@ -4,6 +4,7 @@ description:
|
|
|
4
4
|
Generates unit, integration, and contract tests that verify the acceptance
|
|
5
5
|
criteria — writes tests that fail first, then confirms they pass after
|
|
6
6
|
implementation.
|
|
7
|
+
effort: medium
|
|
7
8
|
mode: subagent
|
|
8
9
|
model: "{{MODEL}}"
|
|
9
10
|
temperature: 0.1
|
|
@@ -34,8 +35,7 @@ permission:
|
|
|
34
35
|
grep: allow
|
|
35
36
|
skill: ask
|
|
36
37
|
---
|
|
37
|
-
|
|
38
|
-
# Agent Contract — tester v0.1.0
|
|
38
|
+
# Agent Contract — tester v1.0.0
|
|
39
39
|
|
|
40
40
|
## Role
|
|
41
41
|
|
|
@@ -261,6 +261,22 @@ pytest | go test ./... | ...]
|
|
|
261
261
|
|
|
262
262
|
---
|
|
263
263
|
|
|
264
|
+
## CCEP-1 structured output
|
|
265
|
+
|
|
266
|
+
When invoked via the CodeConductor Execution Protocol (`test` or `test-plan`
|
|
267
|
+
phase), return **valid JSON only** matching `agent-output` and serialize the
|
|
268
|
+
Test Report / matrix into `artifacts`:
|
|
269
|
+
|
|
270
|
+
```json
|
|
271
|
+
{ "status": "success", "artifacts": [{ "type": "test-report", "path": "" }], "next_actions": [] }
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
For a `tdd-cycle` red-state phase, `status` must reflect that tests were written
|
|
275
|
+
and confirmed failing; list the failing test paths in `artifacts` so the
|
|
276
|
+
`implementer` can pick them up.
|
|
277
|
+
|
|
278
|
+
---
|
|
279
|
+
|
|
264
280
|
## Hard rules
|
|
265
281
|
|
|
266
282
|
- Never edit production source files.
|
|
@@ -8,6 +8,18 @@ description:
|
|
|
8
8
|
|
|
9
9
|
API contract request: $ARGUMENTS
|
|
10
10
|
|
|
11
|
+
## Step 0 — CCEP Bootstrap
|
|
12
|
+
|
|
13
|
+
Command: `api-contract` (fixed for this workflow — do not infer from user text)
|
|
14
|
+
|
|
15
|
+
1. Run: `npx cc-codeconductor ccep parse --command api-contract "$ARGUMENTS" --output json`
|
|
16
|
+
2. Run: `npx cc-codeconductor ccep resolve --command api-contract "$ARGUMENTS" --output json`
|
|
17
|
+
3. Run: `npx cc-codeconductor ccep profile api-contract --output json`
|
|
18
|
+
4. After planner/intake JSON is available, run: `npx cc-codeconductor ccep evaluate --command api-contract --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
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
11
23
|
## Step 1 — Task Card validation (task-coach)
|
|
12
24
|
|
|
13
25
|
Invoke `task-coach` with the request above.
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: >-
|
|
3
|
+
[cc: alias] Recommend one CodeConductor slash command from a natural-language
|
|
4
|
+
problem. Does not start that workflow.
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Ask — recommend a slash command
|
|
8
|
+
|
|
9
|
+
Problem: $ARGUMENTS
|
|
10
|
+
|
|
11
|
+
This is a **router**, not a delivery workflow. Recommend exactly one command.
|
|
12
|
+
Do **not** run the recommended `/cc:` command unless the human confirms.
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## Step 1 — Recommend (deterministic)
|
|
17
|
+
|
|
18
|
+
Run (local repo: `bun run dev`; published package: `npx cc-codeconductor`):
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
bun run dev ask "$ARGUMENTS" --output json
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
or:
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
npx cc-codeconductor ask "$ARGUMENTS" --output json
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
The catalog is only:
|
|
31
|
+
|
|
32
|
+
| Slash | When |
|
|
33
|
+
| ----- | ---- |
|
|
34
|
+
| `/cc:feature` | new behavior |
|
|
35
|
+
| `/cc:fix` | bug / regression |
|
|
36
|
+
| `/cc:refactor` | structure, no behavior change |
|
|
37
|
+
| `/cc:review` | inspect a diff/PR |
|
|
38
|
+
| `/cc:tdd-cycle` | red → green → refactor |
|
|
39
|
+
| `/cc:openspec` | BACKLOG / BC-xxx delivery |
|
|
40
|
+
|
|
41
|
+
If the CLI is unavailable, apply the same catalog and the same priority:
|
|
42
|
+
openspec → tdd-cycle → review → refactor → fix → feature (default).
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
## Step 2 — Show and stop
|
|
47
|
+
|
|
48
|
+
Print:
|
|
49
|
+
|
|
50
|
+
- **Recommended:** the slash command
|
|
51
|
+
- **Why:** one or two sentences from the CLI `reason` (or your matching)
|
|
52
|
+
|
|
53
|
+
**STOP.** Wait for the human. Do not invoke the recommended workflow.
|
|
54
|
+
|
|
55
|
+
For a full preset inventory (skills, commands on disk), use `/cc:help` / `cc-help`.
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Re-explain the last deliverable in Task Card vocabulary when it did not land.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Clarify Workflow
|
|
6
|
+
|
|
7
|
+
Clarify request: $ARGUMENTS
|
|
8
|
+
|
|
9
|
+
## Step 0 — CCEP Bootstrap
|
|
10
|
+
|
|
11
|
+
Command: `clarify` (fixed for this workflow — do not infer from user text)
|
|
12
|
+
|
|
13
|
+
1. Run: `npx cc-codeconductor ccep parse --command clarify "$ARGUMENTS" --output json`
|
|
14
|
+
2. Run: `npx cc-codeconductor ccep resolve --command clarify "$ARGUMENTS" --output json`
|
|
15
|
+
3. Run: `npx cc-codeconductor ccep profile clarify --output json`
|
|
16
|
+
4. After planner/intake JSON is available, run: `npx cc-codeconductor ccep evaluate --command clarify --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 — Re-explain (task-coach)
|
|
22
|
+
|
|
23
|
+
Invoke `task-coach` / `orchestrator`. Restate the last Task Card, plan, or review in the project's vocabulary. Do not add new scope. If questions remain, one question per branch.
|
|
24
|
+
|
|
25
|
+
**STOP if ConfirmationGate reports questions.**
|
|
26
|
+
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
## Completion
|
|
30
|
+
|
|
31
|
+
A plain-language restatement plus any remaining questions. Then resume the previous workflow.
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Council-driven workflow with CCEP-1 bootstrap
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Council-Driven Workflow
|
|
6
|
+
|
|
7
|
+
Task request: $ARGUMENTS
|
|
8
|
+
|
|
9
|
+
## Step 0 — CCEP Bootstrap
|
|
10
|
+
|
|
11
|
+
Command: `council` (fixed for this workflow — do not infer from user text)
|
|
12
|
+
command: council
|
|
13
|
+
|
|
14
|
+
1. Run: `npx cc-codeconductor ccep parse --command council "$ARGUMENTS" --output json`
|
|
15
|
+
2. Run: `npx cc-codeconductor ccep resolve --command council "$ARGUMENTS" --output json`
|
|
16
|
+
3. Run: `npx cc-codeconductor ccep profile council --output json`
|
|
17
|
+
4. After planner/intake JSON is available, run: `npx cc-codeconductor ccep evaluate --command council --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
|
+
|
|
22
|
+
## Step 1 — Wayfinding (repo-explorer)
|
|
23
|
+
|
|
24
|
+
If `graphify-out/graph.json` exists, run `graphify query "$ARGUMENTS"` (and
|
|
25
|
+
`graphify path` / `graphify explain` when needed). Then invoke `repo-explorer`
|
|
26
|
+
to map impact radius before deliberation. Do not write code in this step.
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
## Step 2 — Deliberation & Specification (SDD)
|
|
31
|
+
|
|
32
|
+
Invoke the `council` skill to analyze the request before writing any code. The council must act as a steering committee involving `task-coach` (Product), `architect`, and `devil`.
|
|
33
|
+
|
|
34
|
+
The council must:
|
|
35
|
+
1. Clarify the prompt and define the absolute minimum scope (Simplicity Gate).
|
|
36
|
+
2. Explicitly document all assumptions and run the Grilling protocol on each one (Think Before Coding).
|
|
37
|
+
3. Draft a Task Card & Technical Plan (The Specification).
|
|
38
|
+
|
|
39
|
+
**STOP here.** Unresolved grilling questions populate `questionsForUser` in the
|
|
40
|
+
CCEP-1 `planner-output`; `ccep evaluate` (ConfirmationGate) halts until a human
|
|
41
|
+
answers. Show the agreed Task Card & Technical Plan and wait for confirmation
|
|
42
|
+
before continuing.
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
## Step 3 — Test Definition (TDD)
|
|
47
|
+
|
|
48
|
+
Invoke `tester` with the approved Task Card & Technical Plan.
|
|
49
|
+
|
|
50
|
+
tester must:
|
|
51
|
+
1. Write failing tests based on the Acceptance Criteria defined in the Task Card.
|
|
52
|
+
2. Confirm the tests fail as expected (Red state).
|
|
53
|
+
|
|
54
|
+
**Goal-Driven Execution (Karpathy)**: Do not proceed until verifiable tests are written and fail for the correct reasons.
|
|
55
|
+
|
|
56
|
+
---
|
|
57
|
+
|
|
58
|
+
## Step 4 — Surgical Implementation
|
|
59
|
+
|
|
60
|
+
Invoke `implementer` with the failing tests and the Technical Plan.
|
|
61
|
+
|
|
62
|
+
implementer must:
|
|
63
|
+
1. Write the minimal code required to pass the tests.
|
|
64
|
+
2. Touch ONLY the files specified in the Technical Plan (Surgical Changes).
|
|
65
|
+
3. NOT refactor adjacent code, change existing styles, or build speculative features.
|
|
66
|
+
4. Run the tests. Loop `implementer` -> `tester` until all tests pass (Green state).
|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
|
|
70
|
+
## Step 5 — Multi-Perspective Council Review
|
|
71
|
+
|
|
72
|
+
Invoke the `council` skill on the generated diff to perform the final review phase.
|
|
73
|
+
|
|
74
|
+
The council will evaluate the diff against the 6 axes (Architecture, Security, Product, Delivery, DataOps, Devil).
|
|
75
|
+
|
|
76
|
+
If ANY agent votes CRITICAL (especially due to over-engineering, scope creep, or missing the verifiable goals):
|
|
77
|
+
- The Review Report status is **BLOCKED**.
|
|
78
|
+
- Return to Step 4 with the feedback.
|
|
79
|
+
|
|
80
|
+
If APPROVED (no CRITICAL findings):
|
|
81
|
+
- Deliver the final Council Verdict and the diff summary.
|
|
82
|
+
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
## Completion
|
|
86
|
+
|
|
87
|
+
Deliver the complete Council Verdict. The feature is only complete when tests pass and the council explicitly approves the implementation according to the specification.
|
|
@@ -8,6 +8,19 @@ description:
|
|
|
8
8
|
|
|
9
9
|
Migration request: $ARGUMENTS
|
|
10
10
|
|
|
11
|
+
## Step 0 — CCEP Bootstrap
|
|
12
|
+
|
|
13
|
+
Command: `db-migration` (fixed for this workflow — do not infer from user text)
|
|
14
|
+
|
|
15
|
+
1. Run: `npx cc-codeconductor ccep parse --command db-migration "$ARGUMENTS" --output json`
|
|
16
|
+
2. Run: `npx cc-codeconductor ccep resolve --command db-migration "$ARGUMENTS" --output json`
|
|
17
|
+
3. Run: `npx cc-codeconductor ccep profile db-migration --output json`
|
|
18
|
+
4. After planner/intake JSON is available, run: `npx cc-codeconductor ccep evaluate --command db-migration --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
|
+
|
|
11
24
|
## Step 1 — Task Card validation (task-coach)
|
|
12
25
|
|
|
13
26
|
Invoke `task-coach` with the request above.
|
|
@@ -35,22 +48,22 @@ compatibility strategy, rollback/forward-fix notes, and test approach.
|
|
|
35
48
|
|
|
36
49
|
---
|
|
37
50
|
|
|
38
|
-
## Step 3 —
|
|
51
|
+
## Step 3 — Migration tests (tester)
|
|
39
52
|
|
|
40
|
-
Invoke `
|
|
53
|
+
Invoke `tester`.
|
|
41
54
|
|
|
42
|
-
|
|
43
|
-
|
|
55
|
+
tester must cover migration-sensitive behavior where the stack supports it,
|
|
56
|
+
including happy path, existing-data edge cases, and rollback/forward-fix notes
|
|
57
|
+
when automated rollback tests are not practical.
|
|
44
58
|
|
|
45
59
|
---
|
|
46
60
|
|
|
47
|
-
## Step 4 —
|
|
61
|
+
## Step 4 — Implementation (implementer)
|
|
48
62
|
|
|
49
|
-
Invoke `
|
|
63
|
+
Invoke `implementer` with the approved plan.
|
|
50
64
|
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
when automated rollback tests are not practical.
|
|
65
|
+
implementer must keep model and migration changes together, avoid unrelated
|
|
66
|
+
refactors, and preserve the deployment order specified by architect.
|
|
54
67
|
|
|
55
68
|
---
|
|
56
69
|
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Map the repository and recommend the next CodeConductor slash command. Read-only.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Explore Workflow
|
|
6
|
+
|
|
7
|
+
Explore request: $ARGUMENTS
|
|
8
|
+
|
|
9
|
+
## Step 0 — CCEP Bootstrap
|
|
10
|
+
|
|
11
|
+
Command: `explore` (fixed for this workflow — do not infer from user text)
|
|
12
|
+
|
|
13
|
+
1. Run: `npx cc-codeconductor ccep parse --command explore "$ARGUMENTS" --output json`
|
|
14
|
+
2. Run: `npx cc-codeconductor ccep resolve --command explore "$ARGUMENTS" --output json`
|
|
15
|
+
3. Run: `npx cc-codeconductor ccep profile explore --output json`
|
|
16
|
+
4. After planner/intake JSON is available, run: `npx cc-codeconductor ccep evaluate --command explore --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 — Map (repo-explorer)
|
|
22
|
+
|
|
23
|
+
If `graphify-out/graph.json` exists, run `graphify query "$ARGUMENTS"`. Invoke `repo-explorer`. Produce a Repo Map. Do not write code.
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## Step 2 — Suggest next command (orchestrator)
|
|
28
|
+
|
|
29
|
+
Recommend exactly one next slash command (`/cc:feature`, `/cc:fix`, `/cc:refactor`, `/cc:review`, `/cc:triage`, …) with a one-sentence rationale. Do not start that workflow.
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## Completion
|
|
34
|
+
|
|
35
|
+
Report the Repo Map and the recommended next `/cc:` command.
|
|
@@ -8,7 +8,29 @@ description:
|
|
|
8
8
|
|
|
9
9
|
Feature request: $ARGUMENTS
|
|
10
10
|
|
|
11
|
-
## Step
|
|
11
|
+
## Step 0 — CCEP Bootstrap
|
|
12
|
+
|
|
13
|
+
Command: `feature` (fixed for this workflow — do not infer from user text)
|
|
14
|
+
|
|
15
|
+
1. Run: `npx cc-codeconductor ccep parse --command feature "$ARGUMENTS" --output json`
|
|
16
|
+
2. Run: `npx cc-codeconductor ccep resolve --command feature "$ARGUMENTS" --output json`
|
|
17
|
+
3. Run: `npx cc-codeconductor ccep profile feature --output json`
|
|
18
|
+
4. After planner/intake JSON is available, run: `npx cc-codeconductor ccep evaluate --command feature --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 needed). Then invoke `repo-explorer`
|
|
28
|
+
to map modules, conventions, and impact radius. Do not write code in this step.
|
|
29
|
+
Record a Repo Map artifact before intake.
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## Step 2 — Task Card validation (task-coach)
|
|
12
34
|
|
|
13
35
|
Invoke `task-coach` with the feature description above.
|
|
14
36
|
|
|
@@ -25,7 +47,7 @@ continuing.**
|
|
|
25
47
|
|
|
26
48
|
---
|
|
27
49
|
|
|
28
|
-
## Step
|
|
50
|
+
## Step 3 — Technical Plan (architect)
|
|
29
51
|
|
|
30
52
|
Invoke `architect` with the validated Task Card from Step 1.
|
|
31
53
|
|
|
@@ -43,7 +65,20 @@ not invoke implementer until the plan is approved.**
|
|
|
43
65
|
|
|
44
66
|
---
|
|
45
67
|
|
|
46
|
-
## Step
|
|
68
|
+
## Step 4 — Test coverage (tester)
|
|
69
|
+
|
|
70
|
+
Invoke `tester` with the Implementation Summary and the Task Card.
|
|
71
|
+
|
|
72
|
+
tester must:
|
|
73
|
+
|
|
74
|
+
1. Write or extend failing tests for the new behavior before implementation (RED)
|
|
75
|
+
2. Ensure all acceptance criteria from the Task Card have at least one test
|
|
76
|
+
3. Run the full test suite and confirm it passes
|
|
77
|
+
4. Produce a Coverage Summary: test files added or modified, cases covered
|
|
78
|
+
|
|
79
|
+
---
|
|
80
|
+
|
|
81
|
+
## Step 5 — Implementation (implementer)
|
|
47
82
|
|
|
48
83
|
Invoke `implementer` with the approved Technical Plan and the Task Card.
|
|
49
84
|
Implementer creates a Git Worktree before touching any file; all edits happen inside it.
|
|
@@ -52,26 +87,13 @@ implementer must:
|
|
|
52
87
|
|
|
53
88
|
1. Read the Technical Plan before touching any file
|
|
54
89
|
2. Apply the minimal diff — only what the plan specifies
|
|
55
|
-
3. Run the project test suite
|
|
90
|
+
3. Run the project test suite and make the previously written failing tests pass
|
|
56
91
|
4. Produce an Implementation Summary: what changed, which files, how to verify
|
|
57
92
|
locally
|
|
58
93
|
|
|
59
94
|
---
|
|
60
95
|
|
|
61
|
-
## Step
|
|
62
|
-
|
|
63
|
-
Invoke `tester` with the Implementation Summary and the Task Card.
|
|
64
|
-
|
|
65
|
-
tester must:
|
|
66
|
-
|
|
67
|
-
1. Write or extend tests to cover the new behavior
|
|
68
|
-
2. Ensure all acceptance criteria from the Task Card have at least one test
|
|
69
|
-
3. Run the full test suite and confirm it passes
|
|
70
|
-
4. Produce a Coverage Summary: test files added or modified, cases covered
|
|
71
|
-
|
|
72
|
-
---
|
|
73
|
-
|
|
74
|
-
## Step 5 — Code review (reviewer)
|
|
96
|
+
## Step 6 — Code review (reviewer)
|
|
75
97
|
|
|
76
98
|
Invoke `reviewer` with the complete diff and the Task Card.
|
|
77
99
|
|
|
@@ -86,7 +108,7 @@ they are resolved and re-reviewed.
|
|
|
86
108
|
|
|
87
109
|
---
|
|
88
110
|
|
|
89
|
-
## Step
|
|
111
|
+
## Step 7 — Documentation (docs)
|
|
90
112
|
|
|
91
113
|
Invoke `docs` only if any of the following changed:
|
|
92
114
|
|