cc-codeconductor 1.4.2 → 1.5.1
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 +52 -14
- package/dist/domain/product/entities.d.ts +1 -1
- package/dist/index.js +811 -354
- package/dist/library.js +47 -3
- package/dist/validation/schemas.d.ts +183 -21
- package/docs/generated/cli.md +16 -0
- package/package.json +1 -1
- package/presets/agy/README.md +1 -1
- package/presets/agy/hooks.json +1 -1
- package/presets/agy/scripts/invoke-hook.cjs +20 -5
- package/presets/agy/settings.json +1 -1
- package/presets/agy/skills/api-versioning/SKILL.md +394 -0
- package/presets/agy/skills/astro/SKILL.md +318 -0
- package/presets/agy/skills/auth-token-inspector/SKILL.md +30 -0
- package/presets/agy/skills/cc-pagespeed/SKILL.md +2 -3
- package/presets/agy/skills/code-review/SKILL.md +207 -0
- package/presets/agy/skills/django-orm/SKILL.md +460 -0
- package/presets/agy/skills/django-uv/SKILL.md +405 -0
- package/presets/agy/skills/drizzle-schema-architect/SKILL.md +50 -0
- package/presets/agy/skills/fastapi-pydantic-strict/SKILL.md +43 -0
- package/presets/agy/skills/jpa-nplusone-detector/SKILL.md +45 -0
- package/presets/agy/skills/jpa-postgres/SKILL.md +623 -0
- package/presets/agy/skills/livewire-alpine-bridge/SKILL.md +35 -0
- package/presets/agy/skills/nextjs-typescript/SKILL.md +390 -0
- package/presets/agy/skills/python/SKILL.md +611 -0
- package/presets/agy/skills/seo-analytics-injector/SKILL.md +43 -0
- package/presets/agy/skills/spring-auth-auditor/SKILL.md +29 -0
- package/presets/agy/skills/spring-boot-feature/SKILL.md +563 -0
- package/presets/agy/skills/spring-boot-testing-strategy/SKILL.md +475 -0
- package/presets/agy/skills/tailwind-responsive-auditor/SKILL.md +29 -0
- package/presets/agy/skills/tdd-mutation-tester/SKILL.md +27 -0
- package/presets/agy/workflows/cc-api-contract.md +4 -5
- package/presets/agy/workflows/cc-backlog.md +4 -5
- package/presets/agy/workflows/cc-clarify.md +4 -5
- package/presets/agy/workflows/cc-council.md +4 -5
- package/presets/agy/workflows/cc-db-migration.md +4 -5
- package/presets/agy/workflows/cc-explore.md +4 -5
- package/presets/agy/workflows/cc-feature.md +4 -5
- package/presets/agy/workflows/cc-fix.md +4 -5
- package/presets/agy/workflows/cc-handoff.md +8 -5
- package/presets/agy/workflows/cc-iterative.md +4 -5
- package/presets/agy/workflows/cc-odd.md +4 -3
- package/presets/agy/workflows/cc-openspec.md +5 -6
- package/presets/agy/workflows/cc-pagespeed.md +6 -8
- package/presets/agy/workflows/cc-prototype.md +4 -5
- package/presets/agy/workflows/cc-refactor.md +4 -5
- package/presets/agy/workflows/cc-review.md +35 -5
- package/presets/agy/workflows/cc-scorecard.md +4 -5
- package/presets/agy/workflows/cc-security.md +5 -6
- package/presets/agy/workflows/cc-spec-mutation.md +4 -5
- package/presets/agy/workflows/cc-tdd-cycle.md +4 -5
- package/presets/agy/workflows/cc-test-plan.md +4 -5
- package/presets/agy/workflows/cc-triage.md +4 -5
- package/presets/claude/CLAUDE.md +6 -5
- package/presets/claude/commands/cc/api-contract.md +4 -5
- package/presets/claude/commands/cc/backlog.md +4 -5
- package/presets/claude/commands/cc/clarify.md +4 -5
- package/presets/claude/commands/cc/council.md +4 -5
- package/presets/claude/commands/cc/db-migration.md +4 -5
- package/presets/claude/commands/cc/explore.md +4 -5
- package/presets/claude/commands/cc/feature.md +4 -5
- package/presets/claude/commands/cc/fix.md +4 -5
- package/presets/claude/commands/cc/handoff.md +8 -5
- package/presets/claude/commands/cc/iterative.md +4 -5
- package/presets/claude/commands/cc/odd.md +4 -3
- package/presets/claude/commands/cc/openspec.md +23 -7
- package/presets/claude/commands/cc/pagespeed.md +4 -5
- package/presets/claude/commands/cc/prototype.md +4 -5
- package/presets/claude/commands/cc/refactor.md +4 -5
- package/presets/claude/commands/cc/review.md +37 -5
- package/presets/claude/commands/cc/scorecard.md +4 -5
- package/presets/claude/commands/cc/security.md +4 -5
- package/presets/claude/commands/cc/spec-mutation.md +4 -5
- package/presets/claude/commands/cc/tdd-cycle.md +4 -5
- package/presets/claude/commands/cc/test-plan.md +4 -5
- package/presets/claude/commands/cc/triage.md +4 -5
- package/presets/claude/settings.json +33 -79
- package/presets/claude/skills/android/SKILL.md +1 -1
- package/presets/claude/skills/api-versioning/SKILL.md +1 -1
- package/presets/claude/skills/astro/SKILL.md +318 -0
- package/presets/claude/skills/auth-token-inspector/SKILL.md +30 -0
- package/presets/claude/skills/code-review/SKILL.md +207 -0
- package/presets/claude/skills/django-orm/SKILL.md +1 -1
- package/presets/claude/skills/django-testing/SKILL.md +1 -1
- package/presets/claude/skills/django-uv/SKILL.md +405 -0
- package/presets/claude/skills/drizzle-schema-architect/SKILL.md +50 -0
- package/presets/claude/skills/fastapi-pydantic-strict/SKILL.md +43 -0
- package/presets/claude/skills/jpa-nplusone-detector/SKILL.md +45 -0
- package/presets/claude/skills/jpa-postgres/SKILL.md +1 -1
- package/presets/claude/skills/livewire-alpine-bridge/SKILL.md +35 -0
- package/presets/claude/skills/nextjs-typescript/SKILL.md +390 -0
- package/presets/claude/skills/pagespeed-perf/SKILL.md +1 -1
- package/presets/claude/skills/python/SKILL.md +1 -1
- package/presets/claude/skills/python-django-stack/SKILL.md +1 -1
- package/presets/claude/skills/python-fastapi-stack/SKILL.md +1 -1
- package/presets/claude/skills/security/SKILL.md +1 -1
- package/presets/claude/skills/seo-analytics-injector/SKILL.md +43 -0
- package/presets/claude/skills/spring-auth-auditor/SKILL.md +29 -0
- package/presets/claude/skills/spring-boot-feature/SKILL.md +1 -1
- package/presets/claude/skills/spring-boot-kotlin/SKILL.md +1 -1
- package/presets/claude/skills/spring-boot-testing-strategy/SKILL.md +475 -0
- package/presets/claude/skills/sqlalchemy/SKILL.md +1 -1
- package/presets/claude/skills/tailwind-responsive-auditor/SKILL.md +29 -0
- package/presets/claude/skills/tdd-mutation-tester/SKILL.md +27 -0
- package/presets/claude/skills/testing-strategy/SKILL.md +1 -1
- package/presets/codex/config.toml +2 -0
- package/presets/codex/skills/android/SKILL.md +1 -1
- package/presets/codex/skills/api-versioning/SKILL.md +1 -1
- package/presets/codex/skills/astro/SKILL.md +318 -0
- package/presets/codex/skills/auth-token-inspector/SKILL.md +30 -0
- package/presets/codex/skills/cc-api-contract/SKILL.md +4 -5
- package/presets/codex/skills/cc-backlog/SKILL.md +4 -5
- package/presets/codex/skills/cc-clarify/SKILL.md +4 -5
- package/presets/codex/skills/cc-council/SKILL.md +10 -5
- package/presets/codex/skills/cc-db-migration/SKILL.md +4 -5
- package/presets/codex/skills/cc-explore/SKILL.md +4 -5
- package/presets/codex/skills/cc-feature/SKILL.md +4 -5
- package/presets/codex/skills/cc-fix/SKILL.md +4 -5
- package/presets/codex/skills/cc-handoff/SKILL.md +8 -5
- package/presets/codex/skills/cc-iterative/SKILL.md +4 -5
- package/presets/codex/skills/cc-odd/SKILL.md +4 -3
- package/presets/codex/skills/cc-openspec/SKILL.md +12 -7
- package/presets/codex/skills/cc-pagespeed/SKILL.md +6 -8
- package/presets/codex/skills/cc-prototype/SKILL.md +4 -5
- package/presets/codex/skills/cc-refactor/SKILL.md +4 -5
- package/presets/codex/skills/cc-review/SKILL.md +35 -5
- package/presets/codex/skills/cc-scorecard/SKILL.md +4 -5
- package/presets/codex/skills/cc-security/SKILL.md +5 -6
- package/presets/codex/skills/cc-spec-mutation/SKILL.md +4 -5
- package/presets/codex/skills/cc-tdd-cycle/SKILL.md +4 -5
- package/presets/codex/skills/cc-test-plan/SKILL.md +4 -5
- package/presets/codex/skills/cc-triage/SKILL.md +4 -5
- package/presets/codex/skills/code-review/SKILL.md +207 -0
- package/presets/codex/skills/django-orm/SKILL.md +1 -1
- package/presets/codex/skills/django-testing/SKILL.md +1 -1
- package/presets/codex/skills/django-uv/SKILL.md +405 -0
- package/presets/codex/skills/drizzle-schema-architect/SKILL.md +50 -0
- package/presets/codex/skills/fastapi-pydantic-strict/SKILL.md +43 -0
- package/presets/codex/skills/jpa-nplusone-detector/SKILL.md +45 -0
- package/presets/codex/skills/jpa-postgres/SKILL.md +1 -1
- package/presets/codex/skills/livewire-alpine-bridge/SKILL.md +35 -0
- package/presets/codex/skills/nextjs-typescript/SKILL.md +390 -0
- package/presets/codex/skills/pagespeed-perf/SKILL.md +1 -1
- package/presets/codex/skills/python/SKILL.md +1 -1
- package/presets/codex/skills/python-django-stack/SKILL.md +1 -1
- package/presets/codex/skills/python-fastapi-stack/SKILL.md +1 -1
- package/presets/codex/skills/security-ai-llm/SKILL.md +43 -0
- package/presets/codex/skills/security-blue-team/SKILL.md +43 -0
- package/presets/codex/skills/security-cloud/SKILL.md +43 -0
- package/presets/codex/skills/security-crypto/SKILL.md +43 -0
- package/presets/codex/skills/security-exploit-dev/SKILL.md +45 -0
- package/presets/codex/skills/security-grc/SKILL.md +43 -0
- package/presets/codex/skills/security-incident-response/SKILL.md +45 -0
- package/presets/codex/skills/security-log-analysis/SKILL.md +43 -0
- package/presets/codex/skills/security-malware-analysis/SKILL.md +44 -0
- package/presets/codex/skills/security-mobile/SKILL.md +43 -0
- package/presets/codex/skills/security-network/SKILL.md +43 -0
- package/presets/codex/skills/security-ot-ics/SKILL.md +43 -0
- package/presets/codex/skills/security-recon/SKILL.md +45 -0
- package/presets/codex/skills/security-red-team/SKILL.md +44 -0
- package/presets/codex/skills/security-reverse-engineering/SKILL.md +44 -0
- package/presets/codex/skills/security-soc-automation/SKILL.md +43 -0
- package/presets/codex/skills/security-threat-hunting/SKILL.md +43 -0
- package/presets/codex/skills/security-vuln-assessment/SKILL.md +45 -0
- package/presets/codex/skills/security-web/SKILL.md +44 -0
- package/presets/codex/skills/seo-analytics-injector/SKILL.md +43 -0
- package/presets/codex/skills/spring-auth-auditor/SKILL.md +29 -0
- package/presets/codex/skills/spring-boot-feature/SKILL.md +2 -2
- package/presets/codex/skills/spring-boot-kotlin/SKILL.md +1 -1
- package/presets/codex/skills/spring-boot-testing-strategy/SKILL.md +475 -0
- package/presets/codex/skills/sqlalchemy/SKILL.md +1 -1
- package/presets/codex/skills/tailwind-responsive-auditor/SKILL.md +29 -0
- package/presets/codex/skills/tdd-mutation-tester/SKILL.md +27 -0
- package/presets/codex/skills/testing-strategy/SKILL.md +1 -1
- package/presets/cursor/commands/cc/api-contract.md +4 -5
- package/presets/cursor/commands/cc/backlog.md +4 -5
- package/presets/cursor/commands/cc/clarify.md +4 -5
- package/presets/cursor/commands/cc/council.md +4 -5
- package/presets/cursor/commands/cc/db-migration.md +4 -5
- package/presets/cursor/commands/cc/explore.md +4 -5
- package/presets/cursor/commands/cc/feature.md +4 -5
- package/presets/cursor/commands/cc/fix.md +4 -5
- package/presets/cursor/commands/cc/handoff.md +8 -5
- package/presets/cursor/commands/cc/iterative.md +4 -5
- package/presets/cursor/commands/cc/odd.md +4 -3
- package/presets/cursor/commands/cc/openspec.md +6 -7
- package/presets/cursor/commands/cc/pagespeed.md +6 -8
- package/presets/cursor/commands/cc/prototype.md +4 -5
- package/presets/cursor/commands/cc/refactor.md +4 -5
- package/presets/cursor/commands/cc/review.md +35 -5
- package/presets/cursor/commands/cc/scorecard.md +4 -5
- package/presets/cursor/commands/cc/security.md +5 -6
- package/presets/cursor/commands/cc/spec-mutation.md +4 -5
- package/presets/cursor/commands/cc/tdd-cycle.md +4 -5
- package/presets/cursor/commands/cc/test-plan.md +4 -5
- package/presets/cursor/commands/cc/triage.md +4 -5
- package/presets/cursor/skills/android/SKILL.md +1 -1
- package/presets/cursor/skills/api-versioning/SKILL.md +2 -1
- package/presets/cursor/skills/astro/SKILL.md +1 -1
- package/presets/cursor/skills/auth-token-inspector/SKILL.md +1 -1
- package/presets/cursor/skills/code-review/SKILL.md +1 -1
- package/presets/cursor/skills/django-orm/SKILL.md +3 -5
- package/presets/cursor/skills/django-testing/SKILL.md +1 -1
- package/presets/cursor/skills/django-uv/SKILL.md +1 -1
- package/presets/cursor/skills/drizzle-schema-architect/SKILL.md +1 -1
- package/presets/cursor/skills/fastapi-pydantic-strict/SKILL.md +1 -1
- package/presets/cursor/skills/jpa-nplusone-detector/SKILL.md +1 -1
- package/presets/cursor/skills/jpa-postgres/SKILL.md +2 -4
- package/presets/cursor/skills/livewire-alpine-bridge/SKILL.md +1 -1
- package/presets/cursor/skills/nextjs-typescript/SKILL.md +1 -1
- package/presets/cursor/skills/pagespeed-perf/SKILL.md +1 -1
- package/presets/cursor/skills/python/SKILL.md +6 -7
- package/presets/cursor/skills/python-django-stack/SKILL.md +1 -1
- package/presets/cursor/skills/python-fastapi-stack/SKILL.md +1 -1
- package/presets/cursor/skills/security/SKILL.md +1 -1
- package/presets/cursor/skills/seo-analytics-injector/SKILL.md +1 -1
- package/presets/cursor/skills/spring-auth-auditor/SKILL.md +1 -1
- package/presets/cursor/skills/spring-boot-feature/SKILL.md +2 -4
- package/presets/cursor/skills/spring-boot-kotlin/SKILL.md +1 -1
- package/presets/cursor/skills/spring-boot-testing-strategy/SKILL.md +1 -1
- package/presets/cursor/skills/sqlalchemy/SKILL.md +1 -1
- package/presets/cursor/skills/tailwind-responsive-auditor/SKILL.md +1 -1
- package/presets/cursor/skills/tdd-mutation-tester/SKILL.md +1 -1
- package/presets/gemini/commands/cc/api-contract.toml +4 -5
- package/presets/gemini/commands/cc/backlog.toml +4 -5
- package/presets/gemini/commands/cc/clarify.toml +4 -5
- package/presets/gemini/commands/cc/council.toml +4 -5
- package/presets/gemini/commands/cc/db-migration.toml +4 -5
- package/presets/gemini/commands/cc/explore.toml +4 -5
- package/presets/gemini/commands/cc/feature.toml +4 -5
- package/presets/gemini/commands/cc/fix.toml +4 -5
- package/presets/gemini/commands/cc/handoff.toml +8 -5
- package/presets/gemini/commands/cc/iterative.toml +4 -5
- package/presets/gemini/commands/cc/odd.toml +4 -3
- package/presets/gemini/commands/cc/openspec.toml +6 -7
- package/presets/gemini/commands/cc/pagespeed.toml +6 -8
- package/presets/gemini/commands/cc/prototype.toml +4 -5
- package/presets/gemini/commands/cc/refactor.toml +4 -5
- package/presets/gemini/commands/cc/review.toml +35 -5
- package/presets/gemini/commands/cc/scorecard.toml +4 -5
- package/presets/gemini/commands/cc/security.toml +5 -6
- package/presets/gemini/commands/cc/spec-mutation.toml +4 -5
- package/presets/gemini/commands/cc/tdd-cycle.toml +4 -5
- package/presets/gemini/commands/cc/test-plan.toml +4 -5
- package/presets/gemini/commands/cc/triage.toml +4 -5
- package/presets/opencode/README.md +45 -52
- package/presets/opencode/commands/cc-api-contract.md +4 -5
- package/presets/opencode/commands/cc-backlog.md +4 -5
- package/presets/opencode/commands/cc-clarify.md +4 -5
- package/presets/opencode/commands/cc-council.md +4 -5
- package/presets/opencode/commands/cc-db-migration.md +4 -5
- package/presets/opencode/commands/cc-explore.md +4 -5
- package/presets/opencode/commands/cc-feature.md +4 -5
- package/presets/opencode/commands/cc-fix.md +4 -5
- package/presets/opencode/commands/cc-handoff.md +8 -5
- package/presets/opencode/commands/cc-iterative.md +4 -5
- package/presets/opencode/commands/cc-odd.md +4 -3
- package/presets/opencode/commands/cc-openspec.md +6 -7
- package/presets/opencode/commands/cc-pagespeed.md +6 -8
- package/presets/opencode/commands/cc-prototype.md +4 -5
- package/presets/opencode/commands/cc-refactor.md +4 -5
- package/presets/opencode/commands/cc-review.md +35 -5
- package/presets/opencode/commands/cc-scorecard.md +4 -5
- package/presets/opencode/commands/cc-security.md +5 -6
- package/presets/opencode/commands/cc-spec-mutation.md +4 -5
- package/presets/opencode/commands/cc-tdd-cycle.md +4 -5
- package/presets/opencode/commands/cc-test-plan.md +4 -5
- package/presets/opencode/commands/cc-triage.md +4 -5
- package/presets/opencode/opencode.jsonc +1 -1
- package/presets/opencode/skills/android/SKILL.md +1 -1
- package/presets/opencode/skills/api-versioning/SKILL.md +2 -1
- package/presets/opencode/skills/astro/SKILL.md +1 -1
- package/presets/opencode/skills/auth-token-inspector/SKILL.md +1 -1
- package/presets/opencode/skills/code-review/SKILL.md +1 -1
- package/presets/opencode/skills/django-orm/SKILL.md +3 -3
- package/presets/opencode/skills/django-testing/SKILL.md +1 -1
- package/presets/opencode/skills/django-uv/SKILL.md +1 -1
- package/presets/opencode/skills/drizzle-schema-architect/SKILL.md +1 -1
- package/presets/opencode/skills/fastapi-pydantic-strict/SKILL.md +1 -1
- package/presets/opencode/skills/jpa-nplusone-detector/SKILL.md +1 -1
- package/presets/opencode/skills/jpa-postgres/SKILL.md +2 -1
- package/presets/opencode/skills/livewire-alpine-bridge/SKILL.md +1 -1
- package/presets/opencode/skills/nextjs-typescript/SKILL.md +1 -1
- package/presets/opencode/skills/pagespeed-perf/SKILL.md +1 -1
- package/presets/opencode/skills/python/SKILL.md +6 -5
- package/presets/opencode/skills/python-django-stack/SKILL.md +1 -1
- package/presets/opencode/skills/python-fastapi-stack/SKILL.md +1 -1
- package/presets/opencode/skills/security/SKILL.md +1 -1
- package/presets/opencode/skills/seo-analytics-injector/SKILL.md +1 -1
- package/presets/opencode/skills/spring-auth-auditor/SKILL.md +1 -1
- package/presets/opencode/skills/spring-boot-feature/SKILL.md +2 -1
- package/presets/opencode/skills/spring-boot-kotlin/SKILL.md +1 -1
- package/presets/opencode/skills/spring-boot-testing-strategy/SKILL.md +1 -1
- package/presets/opencode/skills/sqlalchemy/SKILL.md +1 -1
- package/presets/opencode/skills/tailwind-responsive-auditor/SKILL.md +1 -1
- package/presets/opencode/skills/tdd-mutation-tester/SKILL.md +1 -1
- package/presets/seo-hotel/skills/astro-seo/SKILL.md +1 -1
- package/presets/seo-hotel/skills/geo-readiness/SKILL.md +1 -1
- package/presets/seo-hotel/skills/off-page/SKILL.md +1 -1
- package/presets/seo-hotel/skills/schema-validator/SKILL.md +1 -1
- package/presets/seo-hotel/skills/seo-audit/SKILL.md +1 -1
- package/presets/shared/invoke-hook.cjs +20 -5
- package/src/presets/manifests/codex.yml +3 -0
- package/src/presets/models/roles.yml +54 -56
- package/src/presets/shared-skills.yml +58 -22
|
@@ -15,11 +15,10 @@ Prototype request: $ARGUMENTS
|
|
|
15
15
|
|
|
16
16
|
Command: `prototype` (fixed for this workflow — do not infer from user text)
|
|
17
17
|
|
|
18
|
-
1. Run: `npx cc-codeconductor ccep
|
|
19
|
-
2.
|
|
20
|
-
3.
|
|
21
|
-
4.
|
|
22
|
-
5. Delegate to subagents using compiled CCEP prompts — never forward raw `$ARGUMENTS` to planners.
|
|
18
|
+
1. Run: `npx cc-codeconductor ccep profile prototype --output json` to get the phases and their roles.
|
|
19
|
+
2. For each delegated phase, run: `npx cc-codeconductor ccep compile --command prototype --phase <phase-id> "$ARGUMENTS" --view prompt --output json`
|
|
20
|
+
3. 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.
|
|
21
|
+
4. Pass each subagent only the compiled `prompt` for its phase — never forward raw `$ARGUMENTS` to planners.
|
|
23
22
|
|
|
24
23
|
---
|
|
25
24
|
|
|
@@ -40,11 +40,10 @@ If coverage is insufficient:
|
|
|
40
40
|
|
|
41
41
|
Command: `refactor` (fixed for this workflow — do not infer from user text)
|
|
42
42
|
|
|
43
|
-
1. Run: `npx cc-codeconductor ccep
|
|
44
|
-
2.
|
|
45
|
-
3.
|
|
46
|
-
4.
|
|
47
|
-
5. Delegate to subagents using compiled CCEP prompts — never forward raw `$ARGUMENTS` to planners.
|
|
43
|
+
1. Run: `npx cc-codeconductor ccep profile refactor --output json` to get the phases and their roles.
|
|
44
|
+
2. For each delegated phase, run: `npx cc-codeconductor ccep compile --command refactor --phase <phase-id> "$ARGUMENTS" --view prompt --output json`
|
|
45
|
+
3. 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.
|
|
46
|
+
4. Pass each subagent only the compiled `prompt` for its phase — never forward raw `$ARGUMENTS` to planners.
|
|
48
47
|
|
|
49
48
|
---
|
|
50
49
|
|
|
@@ -46,11 +46,10 @@ unavailable visual or emulator checks remain pending rather than claimed complet
|
|
|
46
46
|
|
|
47
47
|
Command: `review` (fixed for this workflow — do not infer from user text)
|
|
48
48
|
|
|
49
|
-
1. Run: `npx cc-codeconductor ccep
|
|
50
|
-
2.
|
|
51
|
-
3.
|
|
52
|
-
4.
|
|
53
|
-
5. Delegate to subagents using compiled CCEP prompts — never forward raw `$ARGUMENTS` to planners.
|
|
49
|
+
1. Run: `npx cc-codeconductor ccep profile review --output json` to get the phases and their roles.
|
|
50
|
+
2. For each delegated phase, run: `npx cc-codeconductor ccep compile --command review --phase <phase-id> "$ARGUMENTS" --view prompt --output json`
|
|
51
|
+
3. 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.
|
|
52
|
+
4. Pass each subagent only the compiled `prompt` for its phase — never forward raw `$ARGUMENTS` to planners.
|
|
54
53
|
|
|
55
54
|
---
|
|
56
55
|
|
|
@@ -116,6 +115,37 @@ Evaluate the diff against the following checklist:
|
|
|
116
115
|
|
|
117
116
|
---
|
|
118
117
|
|
|
118
|
+
## Severity Rubric
|
|
119
|
+
|
|
120
|
+
Classify every finding using these concrete anchors — not general judgment —
|
|
121
|
+
so the same finding gets the same category on any run.
|
|
122
|
+
|
|
123
|
+
**CRITICAL** (always):
|
|
124
|
+
|
|
125
|
+
- Unauthenticated access to a protected resource
|
|
126
|
+
- Injection (SQL, command, XSS) reachable from untrusted input
|
|
127
|
+
- A secret or credential present in the diff
|
|
128
|
+
- A destructive operation with no confirmation
|
|
129
|
+
- The build or test suite is broken
|
|
130
|
+
- A direct contradiction of an explicit acceptance criterion
|
|
131
|
+
|
|
132
|
+
**WARNING**:
|
|
133
|
+
|
|
134
|
+
- Missing test for a new branch or edge case
|
|
135
|
+
- An error is silently swallowed — no log, no propagation
|
|
136
|
+
- A change outside the declared scope
|
|
137
|
+
- Inconsistent with an established pattern already in the module
|
|
138
|
+
- Missing input validation in an internal function (not exposed at a trust boundary)
|
|
139
|
+
|
|
140
|
+
**SUGGESTION**:
|
|
141
|
+
|
|
142
|
+
- Style or naming
|
|
143
|
+
- Minor readability
|
|
144
|
+
- Speculative refactor that wasn't requested
|
|
145
|
+
- Non-blocking micro-optimization
|
|
146
|
+
|
|
147
|
+
---
|
|
148
|
+
|
|
119
149
|
## Step 3 — Review Report
|
|
120
150
|
|
|
121
151
|
Produce a structured Review Report with findings in three categories:
|
|
@@ -17,11 +17,10 @@ Scope: $ARGUMENTS
|
|
|
17
17
|
|
|
18
18
|
Command: `scorecard` (fixed for this workflow — do not infer from user text)
|
|
19
19
|
|
|
20
|
-
1. Run: `npx cc-codeconductor ccep
|
|
21
|
-
2.
|
|
22
|
-
3.
|
|
23
|
-
4.
|
|
24
|
-
5. Delegate to subagents using compiled CCEP prompts — never forward raw `$ARGUMENTS` to planners.
|
|
20
|
+
1. Run: `npx cc-codeconductor ccep profile scorecard --output json` to get the phases and their roles.
|
|
21
|
+
2. For each delegated phase, run: `npx cc-codeconductor ccep compile --command scorecard --phase <phase-id> "$ARGUMENTS" --view prompt --output json`
|
|
22
|
+
3. 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.
|
|
23
|
+
4. Pass each subagent only the compiled `prompt` for its phase — never forward raw `$ARGUMENTS` to planners.
|
|
25
24
|
|
|
26
25
|
---
|
|
27
26
|
|
|
@@ -50,11 +50,10 @@ payloads, malware, or attack procedures.
|
|
|
50
50
|
|
|
51
51
|
Command: `security` (fixed for this workflow — do not infer from user text)
|
|
52
52
|
|
|
53
|
-
1. Run: `npx cc-codeconductor ccep
|
|
54
|
-
2.
|
|
55
|
-
3.
|
|
56
|
-
4.
|
|
57
|
-
5. Delegate to subagents using compiled CCEP prompts — never forward raw `$ARGUMENTS` to planners.
|
|
53
|
+
1. Run: `npx cc-codeconductor ccep profile security --output json` to get the phases and their roles.
|
|
54
|
+
2. For each delegated phase, run: `npx cc-codeconductor ccep compile --command security --phase <phase-id> "$ARGUMENTS" --view prompt --output json`
|
|
55
|
+
3. After planner/intake JSON is available, run: `npx cc-codeconductor ccep evaluate --command security --input <planner.json> --output json`. If `stop` is true, show questions or risks and wait for human input.
|
|
56
|
+
4. Pass each subagent only the compiled `prompt` for its phase — never forward raw `$ARGUMENTS` to planners.
|
|
58
57
|
Canonical delivery order is test-before-implement whenever both phases apply.
|
|
59
58
|
|
|
60
59
|
---
|
|
@@ -65,7 +64,7 @@ If `graphify-out/graph.json` exists, run `graphify query "$ARGUMENTS"` (and
|
|
|
65
64
|
`graphify path` / `graphify explain` when needed). Then invoke `repo-explorer`
|
|
66
65
|
to map modules, conventions, and impact radius. Do not write code in this step.
|
|
67
66
|
Record a Repo Map artifact before intake. Load the matching `security-*` skill
|
|
68
|
-
for the named domain (see `.
|
|
67
|
+
for the named domain (see `.codex/skills/security-*/SKILL.md`). Keep the OWASP
|
|
69
68
|
`security` skill for application-security reviews.
|
|
70
69
|
|
|
71
70
|
---
|
|
@@ -24,11 +24,10 @@ Describe what behavior you want to implement. Include:
|
|
|
24
24
|
|
|
25
25
|
Command: `spec-mutation` (fixed for this workflow — do not infer from user text)
|
|
26
26
|
|
|
27
|
-
1. Run: `npx cc-codeconductor ccep
|
|
28
|
-
2.
|
|
29
|
-
3.
|
|
30
|
-
4.
|
|
31
|
-
5. Delegate to subagents using compiled CCEP prompts — never forward raw `$ARGUMENTS` to planners.
|
|
27
|
+
1. Run: `npx cc-codeconductor ccep profile spec-mutation --output json` to get the phases and their roles.
|
|
28
|
+
2. For each delegated phase, run: `npx cc-codeconductor ccep compile --command spec-mutation --phase <phase-id> "$ARGUMENTS" --view prompt --output json`
|
|
29
|
+
3. After planner/intake JSON is available, run: `npx cc-codeconductor ccep evaluate --command spec-mutation --input <planner.json> --output json`. If `stop` is true, show questions or risks and wait for human input.
|
|
30
|
+
4. Pass each subagent only the compiled `prompt` for its phase — never forward raw `$ARGUMENTS` to planners.
|
|
32
31
|
Canonical delivery order is test-before-implement whenever both phases apply.
|
|
33
32
|
|
|
34
33
|
---
|
|
@@ -24,11 +24,10 @@ Describe what behavior you want to implement. Include:
|
|
|
24
24
|
|
|
25
25
|
Command: `tdd-cycle` (fixed for this workflow — do not infer from user text)
|
|
26
26
|
|
|
27
|
-
1. Run: `npx cc-codeconductor ccep
|
|
28
|
-
2.
|
|
29
|
-
3.
|
|
30
|
-
4.
|
|
31
|
-
5. Delegate to subagents using compiled CCEP prompts — never forward raw `$ARGUMENTS` to planners.
|
|
27
|
+
1. Run: `npx cc-codeconductor ccep profile tdd-cycle --output json` to get the phases and their roles.
|
|
28
|
+
2. For each delegated phase, run: `npx cc-codeconductor ccep compile --command tdd-cycle --phase <phase-id> "$ARGUMENTS" --view prompt --output json`
|
|
29
|
+
3. 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.
|
|
30
|
+
4. Pass each subagent only the compiled `prompt` for its phase — never forward raw `$ARGUMENTS` to planners.
|
|
32
31
|
Canonical delivery order is test-before-implement whenever both phases apply.
|
|
33
32
|
|
|
34
33
|
---
|
|
@@ -27,11 +27,10 @@ proceeding.
|
|
|
27
27
|
|
|
28
28
|
Command: `test-plan` (fixed for this workflow — do not infer from user text)
|
|
29
29
|
|
|
30
|
-
1. Run: `npx cc-codeconductor ccep
|
|
31
|
-
2.
|
|
32
|
-
3.
|
|
33
|
-
4.
|
|
34
|
-
5. Delegate to subagents using compiled CCEP prompts — never forward raw `$ARGUMENTS` to planners.
|
|
30
|
+
1. Run: `npx cc-codeconductor ccep profile test-plan --output json` to get the phases and their roles.
|
|
31
|
+
2. For each delegated phase, run: `npx cc-codeconductor ccep compile --command test-plan --phase <phase-id> "$ARGUMENTS" --view prompt --output json`
|
|
32
|
+
3. 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.
|
|
33
|
+
4. Pass each subagent only the compiled `prompt` for its phase — never forward raw `$ARGUMENTS` to planners.
|
|
35
34
|
|
|
36
35
|
---
|
|
37
36
|
|
|
@@ -15,11 +15,10 @@ Triage request: $ARGUMENTS
|
|
|
15
15
|
|
|
16
16
|
Command: `triage` (fixed for this workflow — do not infer from user text)
|
|
17
17
|
|
|
18
|
-
1. Run: `npx cc-codeconductor ccep
|
|
19
|
-
2.
|
|
20
|
-
3.
|
|
21
|
-
4.
|
|
22
|
-
5. Delegate to subagents using compiled CCEP prompts — never forward raw `$ARGUMENTS` to planners.
|
|
18
|
+
1. Run: `npx cc-codeconductor ccep profile triage --output json` to get the phases and their roles.
|
|
19
|
+
2. For each delegated phase, run: `npx cc-codeconductor ccep compile --command triage --phase <phase-id> "$ARGUMENTS" --view prompt --output json`
|
|
20
|
+
3. 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.
|
|
21
|
+
4. Pass each subagent only the compiled `prompt` for its phase — never forward raw `$ARGUMENTS` to planners.
|
|
23
22
|
|
|
24
23
|
---
|
|
25
24
|
|
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: code-review
|
|
3
|
+
name: code-review
|
|
4
|
+
description: >
|
|
5
|
+
Provides a structured framework for conducting thorough code reviews covering correctness, security, architecture alignment, performance, and technical debt.
|
|
6
|
+
|
|
7
|
+
user-invokable: true
|
|
8
|
+
license: MIT
|
|
9
|
+
metadata:
|
|
10
|
+
author: lgzarturo
|
|
11
|
+
category: review
|
|
12
|
+
|
|
13
|
+
compatibility:
|
|
14
|
+
tools: [claude, codex, gemini, agy, opencode]
|
|
15
|
+
stacks:
|
|
16
|
+
languages: []
|
|
17
|
+
frameworks: []
|
|
18
|
+
|
|
19
|
+
risk:
|
|
20
|
+
level: low
|
|
21
|
+
can_execute_shell: false
|
|
22
|
+
can_modify_files: true
|
|
23
|
+
requires_network: false
|
|
24
|
+
|
|
25
|
+
inputs: []
|
|
26
|
+
|
|
27
|
+
outputs: []
|
|
28
|
+
|
|
29
|
+
quality:
|
|
30
|
+
reviewed_by: codeconductor-core
|
|
31
|
+
version: 0.1.0
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
# Code Review
|
|
37
|
+
|
|
38
|
+
## Review Axes
|
|
39
|
+
|
|
40
|
+
Every finding must reference exactly one axis. This prevents vague feedback and
|
|
41
|
+
makes it actionable.
|
|
42
|
+
|
|
43
|
+
| Axis | What to check |
|
|
44
|
+
|------|--------------|
|
|
45
|
+
| **Correctness** | Does the logic handle all cases in the acceptance criteria? |
|
|
46
|
+
| **Security** | Injection vectors, secret exposure, auth bypasses, insecure defaults |
|
|
47
|
+
| **Architecture** | Does the code follow existing patterns and module boundaries? |
|
|
48
|
+
| **Performance** | N+1 queries, unnecessary allocations, blocking I/O in hot paths |
|
|
49
|
+
| **Error handling** | Are failure cases handled explicitly and safely? |
|
|
50
|
+
| **Test coverage** | Do tests verify the acceptance criteria, not just happy paths? |
|
|
51
|
+
| **Scope** | Are there changes outside the stated task boundary? |
|
|
52
|
+
| **Technical debt** | Does the implementation introduce debt without acknowledging it? |
|
|
53
|
+
|
|
54
|
+
## Finding Categories
|
|
55
|
+
|
|
56
|
+
### CRITICAL — must be resolved before merge
|
|
57
|
+
|
|
58
|
+
- Logic failures that violate acceptance criteria
|
|
59
|
+
- Security vulnerabilities (injection, auth bypass, secret exposure)
|
|
60
|
+
- Data loss or corruption risk
|
|
61
|
+
- Breaking changes to public API or shared contracts
|
|
62
|
+
- Missing error handling that causes silent failures
|
|
63
|
+
|
|
64
|
+
### WARNING — should be resolved before merge
|
|
65
|
+
|
|
66
|
+
- Missing edge case coverage in tests
|
|
67
|
+
- Scope creep (changes outside the task boundary)
|
|
68
|
+
- Pattern inconsistency that will confuse future maintainers
|
|
69
|
+
- Performance issue that will degrade under load
|
|
70
|
+
- Missing input validation at system boundaries
|
|
71
|
+
|
|
72
|
+
### SUGGESTION — optional improvement
|
|
73
|
+
|
|
74
|
+
- Naming clarity improvements
|
|
75
|
+
- Extracting a reusable abstraction
|
|
76
|
+
- Test readability
|
|
77
|
+
- Documentation gaps on non-obvious behavior
|
|
78
|
+
|
|
79
|
+
## Review Report Format
|
|
80
|
+
|
|
81
|
+
```markdown
|
|
82
|
+
## Review Report
|
|
83
|
+
|
|
84
|
+
**Task**: [objective from task card]
|
|
85
|
+
**Verdict**: [approved | approved with warnings | blocked]
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
### CRITICAL
|
|
90
|
+
|
|
91
|
+
- [ ] [C1] `path/to/file:line` — [description]
|
|
92
|
+
Axis: [axis] | Evidence: `[quoted code]` | Required action: [what must change]
|
|
93
|
+
|
|
94
|
+
_(none)_ if no critical findings
|
|
95
|
+
|
|
96
|
+
### WARNING
|
|
97
|
+
|
|
98
|
+
- [ ] [W1] `path/to/file:line` — [description]
|
|
99
|
+
Axis: [axis] | Recommended action: [what should change]
|
|
100
|
+
|
|
101
|
+
_(none)_ if no warning findings
|
|
102
|
+
|
|
103
|
+
### SUGGESTION
|
|
104
|
+
|
|
105
|
+
- [ ] [S1] — [description] | Rationale: [brief reason]
|
|
106
|
+
|
|
107
|
+
_(none)_ if no suggestions
|
|
108
|
+
|
|
109
|
+
### Summary
|
|
110
|
+
|
|
111
|
+
- Critical: [count] | Warning: [count] | Suggestion: [count]
|
|
112
|
+
- **Verdict justification**: [one sentence]
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
**Verdict rules:**
|
|
116
|
+
|
|
117
|
+
- `blocked` — any CRITICAL finding present
|
|
118
|
+
- `approved with warnings` — no CRITICAL, at least one WARNING
|
|
119
|
+
- `approved` — no CRITICAL, no WARNING
|
|
120
|
+
|
|
121
|
+
## What to Check — by Axis
|
|
122
|
+
|
|
123
|
+
### Correctness
|
|
124
|
+
|
|
125
|
+
- Does every acceptance criterion have a corresponding code path?
|
|
126
|
+
- Are null/empty/zero values handled explicitly?
|
|
127
|
+
- Are boundary conditions checked (off-by-one, empty collections, max values)?
|
|
128
|
+
- Do conditional branches cover all cases (exhaustive when/switch)?
|
|
129
|
+
|
|
130
|
+
### Security
|
|
131
|
+
|
|
132
|
+
```text
|
|
133
|
+
Injection: SQL, command, LDAP, XML — is input sanitized or parameterized?
|
|
134
|
+
Auth: is the endpoint protected? are role checks correct?
|
|
135
|
+
Secrets: no hardcoded credentials, tokens, or keys in source
|
|
136
|
+
Headers: are security headers set (CSP, HSTS, X-Frame-Options)?
|
|
137
|
+
CORS: is the origin whitelist explicit, not wildcard?
|
|
138
|
+
Dependencies: are new dependencies from trusted sources?
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
### Performance
|
|
142
|
+
|
|
143
|
+
```text
|
|
144
|
+
N+1 queries: does a loop call the database per iteration?
|
|
145
|
+
Eager loading: are JOINs or includes used where needed?
|
|
146
|
+
Pagination: are all list endpoints paginated?
|
|
147
|
+
Caching: is expensive computation cached at an appropriate layer?
|
|
148
|
+
Index: do new query filters have corresponding DB indexes?
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
### Error Handling
|
|
152
|
+
|
|
153
|
+
```text
|
|
154
|
+
Are exceptions caught at the right layer (not swallowed silently)?
|
|
155
|
+
Is the error response format consistent with the rest of the API?
|
|
156
|
+
Is the original exception logged before translating to a user-facing error?
|
|
157
|
+
Are transient failures retried with backoff, or propagated immediately?
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
## What NOT to Flag
|
|
161
|
+
|
|
162
|
+
**Personal style preferences.** If the code follows the project's established
|
|
163
|
+
conventions, do not flag it because you would have written it differently.
|
|
164
|
+
|
|
165
|
+
**Trivial naming.** Variable names are a SUGGESTION at most, never a WARNING.
|
|
166
|
+
Do not block a PR over naming unless the name is genuinely misleading.
|
|
167
|
+
|
|
168
|
+
**Tests for trivial code.** Do not demand tests for getters, setters, or data
|
|
169
|
+
class construction. Test behavior, not boilerplate.
|
|
170
|
+
|
|
171
|
+
**Refactors not in scope.** If you notice an improvement opportunity outside
|
|
172
|
+
the task boundary, log it as a SUGGESTION. Do not block the PR for work that
|
|
173
|
+
was not requested.
|
|
174
|
+
|
|
175
|
+
**Framework defaults.** Do not second-guess framework conventions (Spring
|
|
176
|
+
dependency injection, Next.js file-based routing). Trust the framework.
|
|
177
|
+
|
|
178
|
+
## Exact Diff Recommendations
|
|
179
|
+
|
|
180
|
+
When a finding requires a code change, provide the exact replacement:
|
|
181
|
+
|
|
182
|
+
```text
|
|
183
|
+
# Current code (path/to/file:42)
|
|
184
|
+
val user = userRepository.findById(id)
|
|
185
|
+
return user.name // NPE if not found
|
|
186
|
+
|
|
187
|
+
# Recommended fix
|
|
188
|
+
val user = userRepository.findById(id)
|
|
189
|
+
?: throw NotFoundException("User $id not found")
|
|
190
|
+
return user.name
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
Vague instructions ("handle the null case") force the author to guess your
|
|
194
|
+
intent. Exact diffs remove ambiguity and speed up the review cycle.
|
|
195
|
+
|
|
196
|
+
## Prioritization Order
|
|
197
|
+
|
|
198
|
+
When multiple findings exist, address them in this order:
|
|
199
|
+
|
|
200
|
+
1. Security — security issues can silently compromise users or data
|
|
201
|
+
2. Correctness — broken behavior defeats the purpose of the change
|
|
202
|
+
3. Error handling — silent failures are hard to debug in production
|
|
203
|
+
4. Test coverage — gaps mean regressions will be invisible
|
|
204
|
+
5. Performance — degrade gradually; fix before it causes incidents
|
|
205
|
+
6. Architecture — inconsistency compounds over time
|
|
206
|
+
7. Technical debt — acknowledge and track; do not always block for it
|
|
207
|
+
8. Suggestions — apply at author's discretion
|