cc-codeconductor 1.0.0 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (122) hide show
  1. package/README.md +324 -87
  2. package/dist/core/compilation/compile-checker.d.ts +2 -0
  3. package/dist/core/loop/loop-engine.d.ts +3 -0
  4. package/dist/index.js +2701 -577
  5. package/dist/library.js +167 -18
  6. package/dist/validation/schemas.d.ts +390 -44
  7. package/package.json +4 -1
  8. package/presets/agy/AGENTS.md +3 -0
  9. package/presets/agy/gates/pre-commit/GATE.md +5 -4
  10. package/presets/agy/skills/backlog/SKILL.md +91 -0
  11. package/presets/agy/skills/openspec/SKILL.md +5 -1
  12. package/presets/agy/skills/security-ai-llm/SKILL.md +43 -0
  13. package/presets/agy/skills/security-blue-team/SKILL.md +43 -0
  14. package/presets/agy/skills/security-cloud/SKILL.md +43 -0
  15. package/presets/agy/skills/security-crypto/SKILL.md +43 -0
  16. package/presets/agy/skills/security-exploit-dev/SKILL.md +45 -0
  17. package/presets/agy/skills/security-grc/SKILL.md +43 -0
  18. package/presets/agy/skills/security-incident-response/SKILL.md +45 -0
  19. package/presets/agy/skills/security-log-analysis/SKILL.md +43 -0
  20. package/presets/agy/skills/security-malware-analysis/SKILL.md +44 -0
  21. package/presets/agy/skills/security-mobile/SKILL.md +43 -0
  22. package/presets/agy/skills/security-network/SKILL.md +43 -0
  23. package/presets/agy/skills/security-ot-ics/SKILL.md +43 -0
  24. package/presets/agy/skills/security-recon/SKILL.md +45 -0
  25. package/presets/agy/skills/security-red-team/SKILL.md +44 -0
  26. package/presets/agy/skills/security-reverse-engineering/SKILL.md +44 -0
  27. package/presets/agy/skills/security-soc-automation/SKILL.md +43 -0
  28. package/presets/agy/skills/security-threat-hunting/SKILL.md +43 -0
  29. package/presets/agy/skills/security-vuln-assessment/SKILL.md +45 -0
  30. package/presets/agy/skills/security-web/SKILL.md +44 -0
  31. package/presets/agy/workflows/cc-ask.md +2 -1
  32. package/presets/agy/workflows/cc-backlog.md +69 -0
  33. package/presets/agy/workflows/cc-explore.md +1 -1
  34. package/presets/agy/workflows/cc-openspec.md +3 -1
  35. package/presets/agy/workflows/cc-security.md +180 -0
  36. package/presets/claude/CLAUDE.md +4 -0
  37. package/presets/claude/commands/cc/ask.md +2 -1
  38. package/presets/claude/commands/cc/backlog.md +104 -0
  39. package/presets/claude/commands/cc/explore.md +1 -1
  40. package/presets/claude/commands/cc/openspec.md +16 -1
  41. package/presets/claude/commands/cc/security.md +179 -0
  42. package/presets/claude/gates/pre-commit/GATE.md +5 -4
  43. package/presets/claude/skills/backlog/SKILL.md +91 -0
  44. package/presets/claude/skills/openspec/SKILL.md +5 -1
  45. package/presets/claude/skills/security/SKILL.md +382 -0
  46. package/presets/claude/skills/security-ai-llm/SKILL.md +43 -0
  47. package/presets/claude/skills/security-blue-team/SKILL.md +43 -0
  48. package/presets/claude/skills/security-cloud/SKILL.md +43 -0
  49. package/presets/claude/skills/security-crypto/SKILL.md +43 -0
  50. package/presets/claude/skills/security-exploit-dev/SKILL.md +45 -0
  51. package/presets/claude/skills/security-grc/SKILL.md +43 -0
  52. package/presets/claude/skills/security-incident-response/SKILL.md +45 -0
  53. package/presets/claude/skills/security-log-analysis/SKILL.md +43 -0
  54. package/presets/claude/skills/security-malware-analysis/SKILL.md +44 -0
  55. package/presets/claude/skills/security-mobile/SKILL.md +43 -0
  56. package/presets/claude/skills/security-network/SKILL.md +43 -0
  57. package/presets/claude/skills/security-ot-ics/SKILL.md +43 -0
  58. package/presets/claude/skills/security-recon/SKILL.md +45 -0
  59. package/presets/claude/skills/security-red-team/SKILL.md +44 -0
  60. package/presets/claude/skills/security-reverse-engineering/SKILL.md +44 -0
  61. package/presets/claude/skills/security-soc-automation/SKILL.md +43 -0
  62. package/presets/claude/skills/security-threat-hunting/SKILL.md +43 -0
  63. package/presets/claude/skills/security-vuln-assessment/SKILL.md +45 -0
  64. package/presets/claude/skills/security-web/SKILL.md +44 -0
  65. package/presets/codex/commands/cc-ask.md +2 -1
  66. package/presets/codex/gates/pre-commit/GATE.md +5 -4
  67. package/presets/cursor/AGENTS.md +2 -2
  68. package/presets/cursor/commands/cc/ask.md +2 -1
  69. package/presets/cursor/commands/cc/backlog.md +105 -0
  70. package/presets/cursor/commands/cc/explore.md +1 -1
  71. package/presets/cursor/commands/cc/openspec.md +16 -1
  72. package/presets/cursor/commands/cc/security.md +179 -0
  73. package/presets/cursor/gates/pre-commit/GATE.md +5 -4
  74. package/presets/cursor/skills/backlog/SKILL.md +91 -0
  75. package/presets/cursor/skills/openspec/SKILL.md +5 -1
  76. package/presets/cursor/skills/security-ai-llm/SKILL.md +43 -0
  77. package/presets/cursor/skills/security-blue-team/SKILL.md +43 -0
  78. package/presets/cursor/skills/security-cloud/SKILL.md +43 -0
  79. package/presets/cursor/skills/security-crypto/SKILL.md +43 -0
  80. package/presets/cursor/skills/security-exploit-dev/SKILL.md +45 -0
  81. package/presets/cursor/skills/security-grc/SKILL.md +43 -0
  82. package/presets/cursor/skills/security-incident-response/SKILL.md +45 -0
  83. package/presets/cursor/skills/security-log-analysis/SKILL.md +43 -0
  84. package/presets/cursor/skills/security-malware-analysis/SKILL.md +44 -0
  85. package/presets/cursor/skills/security-mobile/SKILL.md +43 -0
  86. package/presets/cursor/skills/security-network/SKILL.md +43 -0
  87. package/presets/cursor/skills/security-ot-ics/SKILL.md +43 -0
  88. package/presets/cursor/skills/security-recon/SKILL.md +45 -0
  89. package/presets/cursor/skills/security-red-team/SKILL.md +44 -0
  90. package/presets/cursor/skills/security-reverse-engineering/SKILL.md +44 -0
  91. package/presets/cursor/skills/security-soc-automation/SKILL.md +43 -0
  92. package/presets/cursor/skills/security-threat-hunting/SKILL.md +43 -0
  93. package/presets/cursor/skills/security-vuln-assessment/SKILL.md +45 -0
  94. package/presets/cursor/skills/security-web/SKILL.md +44 -0
  95. package/presets/opencode/commands/cc-ask.md +2 -1
  96. package/presets/opencode/commands/cc-backlog.md +68 -0
  97. package/presets/opencode/commands/cc-explore.md +1 -1
  98. package/presets/opencode/commands/cc-openspec.md +3 -1
  99. package/presets/opencode/commands/cc-security.md +179 -0
  100. package/presets/opencode/gates/pre-commit/GATE.md +5 -4
  101. package/presets/opencode/skills/backlog/SKILL.md +91 -0
  102. package/presets/opencode/skills/openspec/SKILL.md +5 -1
  103. package/presets/opencode/skills/security-ai-llm/SKILL.md +43 -0
  104. package/presets/opencode/skills/security-blue-team/SKILL.md +43 -0
  105. package/presets/opencode/skills/security-cloud/SKILL.md +43 -0
  106. package/presets/opencode/skills/security-crypto/SKILL.md +43 -0
  107. package/presets/opencode/skills/security-exploit-dev/SKILL.md +45 -0
  108. package/presets/opencode/skills/security-grc/SKILL.md +43 -0
  109. package/presets/opencode/skills/security-incident-response/SKILL.md +45 -0
  110. package/presets/opencode/skills/security-log-analysis/SKILL.md +43 -0
  111. package/presets/opencode/skills/security-malware-analysis/SKILL.md +44 -0
  112. package/presets/opencode/skills/security-mobile/SKILL.md +43 -0
  113. package/presets/opencode/skills/security-network/SKILL.md +43 -0
  114. package/presets/opencode/skills/security-ot-ics/SKILL.md +43 -0
  115. package/presets/opencode/skills/security-recon/SKILL.md +45 -0
  116. package/presets/opencode/skills/security-red-team/SKILL.md +44 -0
  117. package/presets/opencode/skills/security-reverse-engineering/SKILL.md +44 -0
  118. package/presets/opencode/skills/security-soc-automation/SKILL.md +43 -0
  119. package/presets/opencode/skills/security-threat-hunting/SKILL.md +43 -0
  120. package/presets/opencode/skills/security-vuln-assessment/SKILL.md +45 -0
  121. package/presets/opencode/skills/security-web/SKILL.md +44 -0
  122. package/src/presets/council/council.yml +12 -0
@@ -0,0 +1,43 @@
1
+ ---
2
+ name: security-ot-ics
3
+ description: >
4
+ Advise on defensive security for industrial control systems you operate. Safety first. No process-disruption guidance.
5
+ ---
6
+
7
+ # OT / ICS Security
8
+
9
+ ## Authorization
10
+
11
+ Use this skill only with **explicit written authorization** for a named
12
+ scope (systems, environments, and time window). If authorization is missing,
13
+ expired, or the request is for someone else's systems, **stop**.
14
+
15
+ This skill is **defensive and owner-authorized**. It does not authorize
16
+ offensive cyber operations.
17
+
18
+ ## Do
19
+
20
+ - Separate OT networks; no direct internet to PLCs
21
+ - Change default credentials; document who can stop a line
22
+ - Patch with maintenance windows; test on a replica
23
+
24
+ ## Do not
25
+
26
+ - Suggest actions that could halt unsafe physical processes
27
+ - Scan or 'test' live safety systems without OT engineering approval
28
+
29
+ - Do not produce exploit payloads, malware, or attack procedures.
30
+
31
+ ## How to Use
32
+
33
+ Load this skill from `/cc-security` when the Task Card domain is `security-ot-ics`.
34
+ Example prompts:
35
+
36
+ - `Review the jump-host design between IT and the plant VLAN.`
37
+ - `Draft a change window checklist for a PLC firmware update.`
38
+
39
+ ## Integration
40
+
41
+ - Workflow: `/cc-security` (CCEP command `security`)
42
+ - Existing OWASP application-security skill remains `security` (not this id)
43
+ - High-risk changes still require `security-reviewer`
@@ -0,0 +1,45 @@
1
+ ---
2
+ name: security-recon
3
+ description: >
4
+ Map owned assets, attack surface, and inventory for systems the requester is authorized to assess. Use for asset discovery, service catalogs, and exposure reviews — never unauthorized scanning.
5
+ ---
6
+
7
+ # Authorized Reconnaissance
8
+
9
+ ## Authorization
10
+
11
+ Use this skill only with **explicit written authorization** for a named
12
+ scope (systems, environments, and time window). If authorization is missing,
13
+ expired, or the request is for someone else's systems, **stop**.
14
+
15
+ This skill is **defensive and owner-authorized**. It does not authorize
16
+ offensive cyber operations.
17
+
18
+ ## Do
19
+
20
+ - Inventory hosts, services, and identities the authorization letter names
21
+ - Prefer read-only, rate-limited discovery against owned environments
22
+ - Record data sources (CMDB, cloud APIs, repo maps) in the Task Card
23
+ - Flag shadow IT only to the asset owner
24
+
25
+ ## Do not
26
+
27
+ - Scan networks, IPs, or tenants outside the authorization window
28
+ - Use third-party scanners against production without change control
29
+ - Store credentials, tokens, or dumps in the skill output
30
+
31
+ - Do not produce exploit payloads, malware, or attack procedures.
32
+
33
+ ## How to Use
34
+
35
+ Load this skill from `/cc-security` when the Task Card domain is `security-recon`.
36
+ Example prompts:
37
+
38
+ - `Inventory the staging VPC we own: services, public endpoints, and IAM principals in scope for Q3.`
39
+ - `From this repo, list internet-facing routes and compare them to the authorized asset list.`
40
+
41
+ ## Integration
42
+
43
+ - Workflow: `/cc-security` (CCEP command `security`)
44
+ - Existing OWASP application-security skill remains `security` (not this id)
45
+ - High-risk changes still require `security-reviewer`
@@ -0,0 +1,44 @@
1
+ ---
2
+ name: security-red-team
3
+ description: >
4
+ Plan purple-team / adversary-simulation exercises against systems you are contracted to test. High-level objectives and detection gaps only. No live attack procedures or payloads.
5
+ ---
6
+
7
+ # Authorized Adversary Simulation (Planning)
8
+
9
+ ## Authorization
10
+
11
+ Use this skill only with **explicit written authorization** for a named
12
+ scope (systems, environments, and time window). If authorization is missing,
13
+ expired, or the request is for someone else's systems, **stop**.
14
+
15
+ This skill is **defensive and owner-authorized**. It does not authorize
16
+ offensive cyber operations.
17
+
18
+ ## Do
19
+
20
+ - Require a rules-of-engagement document before any exercise
21
+ - Map ATT&CK techniques to detections you want to validate
22
+ - Coordinate with blue team; prefer tabletop if production risk is high
23
+
24
+ ## Do not
25
+
26
+ - Provide exploit steps, malware, phishing kits, or C2 playbooks
27
+ - Run unapproved tests against production
28
+ - Help with unauthorized 'red team' against third parties
29
+
30
+ - Do not produce exploit payloads, malware, or attack procedures.
31
+
32
+ ## How to Use
33
+
34
+ Load this skill from `/cc-security` when the Task Card domain is `security-red-team`.
35
+ Example prompts:
36
+
37
+ - `Draft ROE and in-scope techniques for an internal purple-team week on staging.`
38
+ - `List detections we should have for credential stuffing against our login — no attack scripts.`
39
+
40
+ ## Integration
41
+
42
+ - Workflow: `/cc-security` (CCEP command `security`)
43
+ - Existing OWASP application-security skill remains `security` (not this id)
44
+ - High-risk changes still require `security-reviewer`
@@ -0,0 +1,44 @@
1
+ ---
2
+ name: security-reverse-engineering
3
+ description: >
4
+ Analyze binaries or protocols you own (or have license to inspect) to improve security, compatibility, or incident response. Not for cracking, DRM bypass, or malware creation.
5
+ ---
6
+
7
+ # Authorized Reverse Engineering
8
+
9
+ ## Authorization
10
+
11
+ Use this skill only with **explicit written authorization** for a named
12
+ scope (systems, environments, and time window). If authorization is missing,
13
+ expired, or the request is for someone else's systems, **stop**.
14
+
15
+ This skill is **defensive and owner-authorized**. It does not authorize
16
+ offensive cyber operations.
17
+
18
+ ## Do
19
+
20
+ - Confirm license and ownership before inspecting a binary
21
+ - Focus on trust boundaries, crypto misuse, and update integrity
22
+ - Document findings as hardening tasks with tests where code exists
23
+
24
+ ## Do not
25
+
26
+ - Bypass license checks, DRM, or access controls you do not own
27
+ - Publish unpacking or unpacker tutorials for third-party software
28
+ - Produce malware droppers or obfuscators
29
+
30
+ - Do not produce exploit payloads, malware, or attack procedures.
31
+
32
+ ## How to Use
33
+
34
+ Load this skill from `/cc-security` when the Task Card domain is `security-reverse-engineering`.
35
+ Example prompts:
36
+
37
+ - `Review our firmware update signer: how is the public key pinned, and what tests prove tamper detection?`
38
+ - `Map native JNI entrypoints in our Android app for unsafe string concatenation.`
39
+
40
+ ## Integration
41
+
42
+ - Workflow: `/cc-security` (CCEP command `security`)
43
+ - Existing OWASP application-security skill remains `security` (not this id)
44
+ - High-risk changes still require `security-reviewer`
@@ -0,0 +1,43 @@
1
+ ---
2
+ name: security-soc-automation
3
+ description: >
4
+ Automate detection, enrichment, and response playbooks for a SOC you operate. Keep humans in the loop for destructive actions.
5
+ ---
6
+
7
+ # SOC Automation
8
+
9
+ ## Authorization
10
+
11
+ Use this skill only with **explicit written authorization** for a named
12
+ scope (systems, environments, and time window). If authorization is missing,
13
+ expired, or the request is for someone else's systems, **stop**.
14
+
15
+ This skill is **defensive and owner-authorized**. It does not authorize
16
+ offensive cyber operations.
17
+
18
+ ## Do
19
+
20
+ - Automate enrichment (WHOIS, asset owner, hash reputation) not auto-wipe
21
+ - Version playbooks; require approval for isolate/disable-user actions
22
+ - Test detections with synthetic events in a lab tenant
23
+
24
+ ## Do not
25
+
26
+ - Auto-disable production users or servers without an approval gate
27
+ - Pipe raw secrets from tickets into chat webhooks
28
+
29
+ - Do not produce exploit payloads, malware, or attack procedures.
30
+
31
+ ## How to Use
32
+
33
+ Load this skill from `/cc-security` when the Task Card domain is `security-soc-automation`.
34
+ Example prompts:
35
+
36
+ - `Draft a SOAR playbook: phishing report → hash lookup → ticket, no auto-containment.`
37
+ - `Turn this Sigma-style idea into a documented detection plus a false-positive test.`
38
+
39
+ ## Integration
40
+
41
+ - Workflow: `/cc-security` (CCEP command `security`)
42
+ - Existing OWASP application-security skill remains `security` (not this id)
43
+ - High-risk changes still require `security-reviewer`
@@ -0,0 +1,43 @@
1
+ ---
2
+ name: security-threat-hunting
3
+ description: >
4
+ Hunt for adversary techniques in telemetry you are authorized to query. Hypothesis-driven, evidence-first, no live offensive operations.
5
+ ---
6
+
7
+ # Threat Hunting
8
+
9
+ ## Authorization
10
+
11
+ Use this skill only with **explicit written authorization** for a named
12
+ scope (systems, environments, and time window). If authorization is missing,
13
+ expired, or the request is for someone else's systems, **stop**.
14
+
15
+ This skill is **defensive and owner-authorized**. It does not authorize
16
+ offensive cyber operations.
17
+
18
+ ## Do
19
+
20
+ - State a hypothesis (technique + data source + expected artifact)
21
+ - Query only approved telemetry (SIEM, EDR, cloud logs)
22
+ - Promote confirmed hits to IR with timestamps and host identity
23
+
24
+ ## Do not
25
+
26
+ - Run offensive tooling on production to 'verify' a hunt
27
+ - Query personal mailboxes or systems outside the authorization scope
28
+
29
+ - Do not produce exploit payloads, malware, or attack procedures.
30
+
31
+ ## How to Use
32
+
33
+ Load this skill from `/cc-security` when the Task Card domain is `security-threat-hunting`.
34
+ Example prompts:
35
+
36
+ - `Hypothesis: stolen refresh tokens in our IdP logs this week. Query patterns and list follow-ups.`
37
+ - `Hunt for unusual service-account key creation in GCP for project X (authorized).`
38
+
39
+ ## Integration
40
+
41
+ - Workflow: `/cc-security` (CCEP command `security`)
42
+ - Existing OWASP application-security skill remains `security` (not this id)
43
+ - High-risk changes still require `security-reviewer`
@@ -0,0 +1,45 @@
1
+ ---
2
+ name: security-vuln-assessment
3
+ description: >
4
+ Plan and report authorized vulnerability assessments on owned systems. Prioritize evidence, severity, and remediations. Do not deliver exploit payloads.
5
+ ---
6
+
7
+ # Vulnerability Assessment
8
+
9
+ ## Authorization
10
+
11
+ Use this skill only with **explicit written authorization** for a named
12
+ scope (systems, environments, and time window). If authorization is missing,
13
+ expired, or the request is for someone else's systems, **stop**.
14
+
15
+ This skill is **defensive and owner-authorized**. It does not authorize
16
+ offensive cyber operations.
17
+
18
+ ## Do
19
+
20
+ - Use scanner findings plus code review as evidence, not as a scoreboard
21
+ - Map issues to OWASP / CWE and to a concrete fix in the repo
22
+ - Require a reproduction that is safe (config, unit test, or staging)
23
+ - Track false positives explicitly
24
+
25
+ ## Do not
26
+
27
+ - Ship exploit PoCs, weaponized payloads, or live attack scripts
28
+ - Scan production without a documented freeze and rollback
29
+ - Mark a finding closed without a failing-then-passing test when code changes
30
+
31
+ - Do not produce exploit payloads, malware, or attack procedures.
32
+
33
+ ## How to Use
34
+
35
+ Load this skill from `/cc-security` when the Task Card domain is `security-vuln-assessment`.
36
+ Example prompts:
37
+
38
+ - `Assess the checkout API in staging (ticket SEC-214). Report exploitable authz gaps as remediations, not exploits.`
39
+ - `Triage SAST results on src/auth and turn confirmed issues into failing tests plus patches.`
40
+
41
+ ## Integration
42
+
43
+ - Workflow: `/cc-security` (CCEP command `security`)
44
+ - Existing OWASP application-security skill remains `security` (not this id)
45
+ - High-risk changes still require `security-reviewer`
@@ -0,0 +1,44 @@
1
+ ---
2
+ name: security-web
3
+ description: >
4
+ Review and harden web apps (authz, XSS, CSRF, SSRF, injection) on code you maintain. Complements the OWASP `security` skill. No exploit kits.
5
+ ---
6
+
7
+ # Web Application Security
8
+
9
+ ## Authorization
10
+
11
+ Use this skill only with **explicit written authorization** for a named
12
+ scope (systems, environments, and time window). If authorization is missing,
13
+ expired, or the request is for someone else's systems, **stop**.
14
+
15
+ This skill is **defensive and owner-authorized**. It does not authorize
16
+ offensive cyber operations.
17
+
18
+ ## Do
19
+
20
+ - Enforce authorization on every handler; never rely on the UI
21
+ - Parameterize queries; reject unknown fields
22
+ - Treat cookies, tokens, and redirects as untrusted until validated
23
+ - Add tests for authz, CSRF, and open redirects when you change those paths
24
+
25
+ ## Do not
26
+
27
+ - Provide XSS or SQLi payloads for use against systems you do not own
28
+ - Disable CSRF or SameSite 'to make local dev easier' in production configs
29
+
30
+ - Do not produce exploit payloads, malware, or attack procedures.
31
+
32
+ ## How to Use
33
+
34
+ Load this skill from `/cc-security` when the Task Card domain is `security-web`.
35
+ Example prompts:
36
+
37
+ - `Review our Next.js Server Actions for IDOR and CSRF. Propose tests, not exploits.`
38
+ - `Harden the file-upload endpoint: type, size, path containment, and tests.`
39
+
40
+ ## Integration
41
+
42
+ - Workflow: `/cc-security` (CCEP command `security`)
43
+ - Existing OWASP application-security skill remains `security` (not this id)
44
+ - High-risk changes still require `security-reviewer`
@@ -36,10 +36,11 @@ The catalog is only:
36
36
  | `/cc:refactor` | structure, no behavior change |
37
37
  | `/cc:review` | inspect a diff/PR |
38
38
  | `/cc:tdd-cycle` | red → green → refactor |
39
+ | `/cc:backlog` | create or append BACKLOG.md / objectives |
39
40
  | `/cc:openspec` | BACKLOG / BC-xxx delivery |
40
41
 
41
42
  If the CLI is unavailable, apply the same catalog and the same priority:
42
- openspec → tdd-cycle → review → refactor → fix → feature (default).
43
+ backlog (author) vs openspec (deliver) → tdd-cycle → review → refactor → fix → feature (default).
43
44
 
44
45
  ---
45
46
 
@@ -0,0 +1,69 @@
1
+ ---
2
+ name: cc-backlog
3
+ description:
4
+ Author BACKLOG.md — wayfinding, grilling, create or append items, validate
5
+ with openspec, and plan OpenSpec change folders for /cc-openspec.
6
+ ---
7
+
8
+ # Backlog Authoring Workflow
9
+
10
+ Objectives: $ARGUMENTS
11
+
12
+ Create or append valid `BACKLOG.md` items and OpenSpec change docs. Do **not**
13
+ deliver implementation — that is `/cc-openspec`.
14
+
15
+ ---
16
+
17
+ ## Step 0 — CCEP Bootstrap
18
+
19
+ Command: `backlog` (fixed for this workflow — do not infer from user text)
20
+
21
+ 1. Run: `npx cc-codeconductor ccep parse --command backlog "$ARGUMENTS" --output json`
22
+ 2. Run: `npx cc-codeconductor ccep resolve --command backlog "$ARGUMENTS" --output json`
23
+ 3. Run: `npx cc-codeconductor ccep profile backlog --output json`
24
+ 4. After planner/intake JSON is available, run: `npx cc-codeconductor ccep evaluate --command backlog --input <planner.json> --output json`. If `stop` is true, show questions or risks and wait for human input.
25
+ 5. Delegate to subagents using compiled CCEP prompts — never forward raw `$ARGUMENTS` to planners.
26
+
27
+ ---
28
+
29
+ ## Step 1 — Wayfinding (repo-explorer)
30
+
31
+ If `graphify-out/graph.json` exists, run `graphify query "$ARGUMENTS"`. Invoke
32
+ `repo-explorer`. Do not write `BACKLOG.md`. Scope must name real files.
33
+
34
+ ---
35
+
36
+ ## Step 2 — Relentless Grilling (task-coach)
37
+
38
+ Invoke `task-coach`. Measurable acceptance only. One grilling question at a time.
39
+
40
+ **STOP here.** Unresolved grilling questions populate `questionsForUser`;
41
+ `ccep evaluate --command backlog` halts until a human answers.
42
+
43
+ ---
44
+
45
+ ## Step 3 — Write or append BACKLOG.md
46
+
47
+ Apply skill `backlog`. Create from template if missing; otherwise append under
48
+ `## Items`. Next `BC-NNN` = max existing + 1. Status `READY`. Do not rewrite
49
+ `## Global` or `## Archive`. Do not `git add` `BACKLOG.md` or `openspec/`.
50
+
51
+ ---
52
+
53
+ ## Step 4 — Validate (mandatory gate)
54
+
55
+ Run `npx cc-codeconductor openspec validate`. If invalid, show errors and
56
+ canonical structure, fix, re-validate. **STOP** planning until valid.
57
+
58
+ ---
59
+
60
+ ## Step 5 — Plan new items
61
+
62
+ For each new `BC-id`: `npx cc-codeconductor openspec plan <BC-id>`.
63
+
64
+ ---
65
+
66
+ ## Completion
67
+
68
+ Report IDs, validate result, change folders. Tell the user to run `/cc-openspec`.
69
+ Apply skill `backlog`.
@@ -28,7 +28,7 @@ If `graphify-out/graph.json` exists, run `graphify query "$ARGUMENTS"`. Invoke `
28
28
 
29
29
  ## Step 2 — Suggest next command (orchestrator)
30
30
 
31
- 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.
31
+ Recommend exactly one next slash command (`/cc:feature`, `/cc:fix`, `/cc:refactor`, `/cc:review`, `/cc:backlog`, `/cc:openspec`, `/cc:triage`, …) with a one-sentence rationale. Do not start that workflow.
32
32
 
33
33
  ---
34
34
 
@@ -46,6 +46,8 @@ Use `$ARGUMENTS` BC-id or `npx cc-codeconductor openspec status` for next READY
46
46
 
47
47
  Run `npx cc-codeconductor openspec plan <BC-id>`. Show TaskCards and `openspec/changes/` path.
48
48
 
49
+ Drive status with CLI (do not edit openspec-state.json): `openspec start <cardId>`, `openspec done <cardId>`, `openspec block <cardId> --reason "…"`, `openspec archive <itemId>`.
50
+
49
51
  ---
50
52
 
51
53
  ## Step 4 — Execute loop
@@ -70,6 +72,6 @@ Reviewer approves or rejects against acceptance criteria. Reject → `IN_PROGRES
70
72
 
71
73
  ## Step 6 — Update
72
74
 
73
- Mark DONE, move to Archive in BACKLOG.md, run `openspec scan`.
75
+ Mark DONE with `openspec archive <itemId>` (all cards must be done), then run `openspec scan`.
74
76
 
75
77
  Apply skill `openspec` for format and state rules.
@@ -0,0 +1,180 @@
1
+ ---
2
+ name: cc-security
3
+ description: >
4
+ Run the authorized defensive security workflow — domain security-* skills,
5
+ authorization gate, risk-based routing, hardening, and review.
6
+ ---
7
+
8
+ # Defensive Security Workflow
9
+
10
+ Security objective: $ARGUMENTS
11
+
12
+ Provide the following information in $ARGUMENTS:
13
+
14
+ - What must be reviewed or hardened, and why
15
+ - Domain: a `security-*` skill id (recon, vuln-assessment, web, cloud, IR,
16
+ hunting, GRC, …) or `web-app` / `api` / `cloud-config` /
17
+ `dependency-supply-chain` / `secrets`
18
+ - Authorization: who authorized this work on this target, and the scope boundary
19
+ - Risk classification (`low`, `medium`, or `high`), if known
20
+ - Scope: which files, modules, repos, or environments are in and out of bounds
21
+
22
+ ---
23
+
24
+ ## Scope and authorization
25
+
26
+ This workflow performs **authorized defensive security work only**: threat
27
+ modeling, hardening, secure configuration, dependency and supply-chain review,
28
+ secret hygiene, and detection coverage.
29
+
30
+ Refuse outright and offer the defensive equivalent instead (threat model,
31
+ hardening, detection coverage, dependency audit):
32
+
33
+ - Exploit or proof-of-concept development
34
+ - Malware authoring, or malware analysis intended for reuse
35
+ - Reverse engineering aimed at bypassing a control
36
+ - Red-team playbooks
37
+ - Any unauthorized-access procedure
38
+
39
+ Scope is limited to the repository under analysis. Do not scan, probe, or
40
+ perform reconnaissance against third-party hosts.
41
+
42
+ Do not proceed without an authorization statement. Do not produce exploit
43
+ payloads, malware, or attack procedures.
44
+
45
+ ---
46
+
47
+ ## Step 0 — CCEP Bootstrap
48
+
49
+ Command: `security` (fixed for this workflow — do not infer from user text)
50
+
51
+ 1. Run: `npx cc-codeconductor ccep parse --command security "$ARGUMENTS" --output json`
52
+ 2. Run: `npx cc-codeconductor ccep resolve --command security "$ARGUMENTS" --output json`
53
+ 3. Run: `npx cc-codeconductor ccep profile security --output json`
54
+ 4. 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.
55
+ 5. Delegate to subagents using compiled CCEP prompts — never forward raw `$ARGUMENTS` to planners.
56
+ Canonical delivery order is test-before-implement whenever both phases apply.
57
+
58
+ ---
59
+
60
+ ## Step 1 — Wayfinding (repo-explorer)
61
+
62
+ If `graphify-out/graph.json` exists, run `graphify query "$ARGUMENTS"` (and
63
+ `graphify path` / `graphify explain` when needed). Then invoke `repo-explorer`
64
+ to map modules, conventions, and impact radius. Do not write code in this step.
65
+ Record a Repo Map artifact before intake. Load the matching `security-*` skill
66
+ for the named domain (see `.claude/skills/security-*/SKILL.md`). Keep the OWASP
67
+ `security` skill for application-security reviews.
68
+
69
+ ---
70
+
71
+ ## Step 2 — Task Card validation (task-coach)
72
+
73
+ Invoke `task-coach` with the security objective above.
74
+
75
+ task-coach must produce a Task Card that includes:
76
+
77
+ - Objective: what must be reviewed or hardened, in one sentence
78
+ - Domain: which `security-*` skill applies, or `web-app` / `api` /
79
+ `cloud-config` / `dependency-supply-chain` / `secrets`
80
+ - Authorization: who authorized this work on this target, and the scope boundary
81
+ - Risk classification: `low`, `medium`, or `high`
82
+ - Scope: which files or modules are likely affected
83
+
84
+ If authorization is absent, unclear, or names a system the requester does not
85
+ own or operate, **STOP and refuse. Do not route the task.**
86
+
87
+ Redact secrets, tokens, and credentials from any evidence before it enters the
88
+ Task Card. Summarize logs; do not paste env files.
89
+
90
+ **STOP here. Show the Task Card and wait for human confirmation.**
91
+
92
+ ---
93
+
94
+ ## Step 3 — Route by risk
95
+
96
+ Read the risk field from the Task Card and follow the corresponding route.
97
+
98
+ ### Low-risk route
99
+
100
+ Applies when: the weakness is isolated, not exploitable in the current
101
+ configuration, and no authentication, secret, or dependency boundary is
102
+ involved.
103
+
104
+ Route: `task-coach` → `tester` → `implementer`
105
+
106
+ Proceed directly to Step 4 (tests), then Step 5a.
107
+
108
+ ### Medium or high-risk route
109
+
110
+ Applies when: the work touches authentication, authorization, secrets,
111
+ cryptography, trust-boundary input validation, or a dependency upgrade.
112
+
113
+ Route: `task-coach` → `architect` → `tester` → `implementer` → `reviewer`
114
+
115
+ Invoke `architect` before implementation. architect must:
116
+
117
+ - Identify the weakness and the affected trust boundary
118
+ - Define the hardening approach and affected files
119
+ - Flag any regression risk to adjacent components
120
+ - Produce a Technical Plan
121
+
122
+ On **high** risk, also invoke `security-reviewer` before Reviewer.
123
+
124
+ **STOP here if high-risk. Show the Technical Plan and wait for human approval
125
+ before continuing.**
126
+
127
+ ---
128
+
129
+ ## Step 4 — Tests (tester)
130
+
131
+ Invoke `tester` for all risk levels.
132
+
133
+ tester must:
134
+
135
+ 1. Write a regression test that proves the weakness exists and confirm it fails
136
+ before any change (RED)
137
+ 2. Verify that existing tests still pass
138
+ 3. Produce a Coverage Summary: test added, case covered
139
+
140
+ ---
141
+
142
+ ## Step 5a — Implementation, low-risk (implementer)
143
+
144
+ Invoke `implementer` with the Task Card.
145
+ Implementer creates a Git Worktree before touching any file; all edits happen inside it.
146
+
147
+ implementer must:
148
+
149
+ 1. Apply the minimal hardening change — no unrelated changes
150
+ 2. Run the suite and make the RED regression test pass
151
+ 3. Produce an Implementation Summary: weakness, change applied, files changed
152
+
153
+ ---
154
+
155
+ ## Step 5b — Implementation, medium/high-risk (implementer)
156
+
157
+ Invoke `implementer` with the approved Technical Plan and the Task Card.
158
+ Implementer creates a Git Worktree before touching any file; all edits happen inside it.
159
+
160
+ implementer must follow the plan exactly. Any deviation requires a new Technical
161
+ Plan approval. After implementation, run the full test suite. No exploit code.
162
+
163
+ ---
164
+
165
+ ## Step 6 — Review (Reviewer role) — medium/high-risk only
166
+
167
+ Invoke `reviewer` with the diff and Task Card. The Reviewer must apply the OWASP
168
+ rules in the `security` skill.
169
+
170
+ reviewer produces a Review Report with CRITICAL / WARNING / SUGGESTION findings.
171
+ If any CRITICAL findings exist, **STOP**. Do not close the task until they are
172
+ resolved.
173
+
174
+ ---
175
+
176
+ ## Completion
177
+
178
+ Report: Task Card, Implementation Summary, regression test added, Review Report
179
+ (if applicable). The task is complete only when: the regression test passes, the
180
+ full suite passes, and no CRITICAL review findings remain.
@@ -738,6 +738,10 @@ apply `.claude/skills/php-pro/SKILL.md`.
738
738
  When the active task touches backend security, authorization, or data verification,
739
739
  apply `.claude/skills/security/SKILL.md`.
740
740
 
741
+ When the active task is authorized security work (recon, assessment, IR, hunting,
742
+ or a named domain), apply the matching `.claude/skills/security-*` skill (for example
743
+ `.claude/skills/security-web/SKILL.md`) and run `/cc-security`.
744
+
741
745
  When the active task requires debugging frontend interactions or accessibility (a11y) checks,
742
746
  apply `.claude/skills/a11y-debugging/SKILL.md` and `.claude/skills/modern-web-guidance/SKILL.md`.
743
747
 
@@ -36,10 +36,11 @@ The catalog is only:
36
36
  | `/cc:refactor` | structure, no behavior change |
37
37
  | `/cc:review` | inspect a diff/PR |
38
38
  | `/cc:tdd-cycle` | red → green → refactor |
39
+ | `/cc:backlog` | create or append BACKLOG.md / objectives |
39
40
  | `/cc:openspec` | BACKLOG / BC-xxx delivery |
40
41
 
41
42
  If the CLI is unavailable, apply the same catalog and the same priority:
42
- openspec → tdd-cycle → review → refactor → fix → feature (default).
43
+ backlog (author) vs openspec (deliver) → tdd-cycle → review → refactor → fix → feature (default).
43
44
 
44
45
  ---
45
46