@cleocode/skills 2026.9.21 → 2026.9.22

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 (151) hide show
  1. package/README.md +46 -63
  2. package/frontmatter.d.mts +60 -0
  3. package/frontmatter.mjs +277 -0
  4. package/index.d.ts +3 -3
  5. package/index.js +34 -9
  6. package/package.json +4 -2
  7. package/profiles/core.json +10 -3
  8. package/profiles/full.json +10 -6
  9. package/profiles/recommended.json +29 -3
  10. package/skills/_shared/manifest-operations.md +19 -40
  11. package/skills/_shared/skill-chaining-patterns.md +5 -9
  12. package/skills/_shared/subagent-protocol-base.md +6 -6
  13. package/skills/_shared/task-system-integration.md +5 -5
  14. package/skills/ct-adr-recorder/SKILL.md +18 -17
  15. package/skills/ct-artifact-publisher/SKILL.md +10 -7
  16. package/skills/ct-cleo/SKILL.md +25 -8
  17. package/skills/ct-cleo/references/loom-lifecycle.md +1 -1
  18. package/skills/{ct-memory/SKILL.md → ct-cleo/references/memory.md} +10 -23
  19. package/skills/ct-cleo/references/orchestrator-constraints.md +5 -5
  20. package/skills/ct-cleo/references/session-protocol.md +11 -8
  21. package/skills/{ct-stickynote/SKILL.md → ct-cleo/references/sticky-notes.md} +7 -29
  22. package/skills/ct-codebase-mapper/SKILL.md +62 -38
  23. package/skills/ct-consensus-voter/SKILL.md +10 -7
  24. package/skills/ct-contribution/SKILL.md +7 -5
  25. package/skills/ct-dev-workflow/SKILL.md +7 -7
  26. package/skills/ct-documentor/SKILL.md +29 -29
  27. package/skills/{ct-docs-review/__tests__/skill-docs-review.test.ts → ct-documentor/__tests__/reviewing-reference.test.ts} +4 -3
  28. package/skills/{ct-docs-write/__tests__/skill-docs-write.test.ts → ct-documentor/__tests__/writing-reference.test.ts} +4 -3
  29. package/skills/ct-documentor/references/anti-patterns.md +8 -8
  30. package/skills/{ct-docs-write → ct-documentor}/references/audience-targeting.md +5 -5
  31. package/skills/ct-documentor/references/chain-orchestration.md +19 -19
  32. package/skills/{ct-docs-write → ct-documentor}/references/cleo-style-guide.md +1 -1
  33. package/skills/ct-documentor/references/doc-types-and-templates.md +1 -1
  34. package/skills/{ct-docs-review → ct-documentor}/references/pr-review-mode.md +1 -1
  35. package/skills/{ct-docs-review/SKILL.md → ct-documentor/references/reviewing.md} +6 -26
  36. package/skills/ct-documentor/references/style-coordination.md +5 -5
  37. package/skills/{ct-docs-review → ct-documentor}/references/style-violations.md +1 -1
  38. package/skills/{ct-docs-write/SKILL.md → ct-documentor/references/writing.md} +5 -25
  39. package/skills/ct-epic-architect/SKILL.md +12 -9
  40. package/skills/ct-epic-architect/references/commands.md +5 -5
  41. package/skills/ct-epic-architect/references/output-format.md +2 -2
  42. package/skills/ct-epic-architect/references/patterns.md +2 -2
  43. package/skills/ct-epic-architect/references/skill-aware-execution.md +3 -3
  44. package/skills/ct-grade/SKILL.md +3 -4
  45. package/skills/ct-grade/agents/scenario-runner.md +1 -1
  46. package/skills/ct-ivt-looper/SKILL.md +23 -22
  47. package/skills/ct-lead/SKILL.md +45 -13
  48. package/skills/ct-lead/references/aggregation-protocol.md +44 -21
  49. package/skills/ct-lead/references/spawn-pattern.md +12 -11
  50. package/skills/ct-orchestrator/README.md +2 -2
  51. package/skills/ct-orchestrator/SKILL.md +14 -10
  52. package/skills/ct-orchestrator/references/SUBAGENT-PROTOCOL-BLOCK.md +4 -4
  53. package/skills/ct-orchestrator/references/autonomous-operation.md +4 -4
  54. package/skills/ct-orchestrator/references/orchestrator-compliance.md +3 -3
  55. package/skills/ct-orchestrator/references/orchestrator-patterns.md +20 -19
  56. package/skills/ct-orchestrator/references/orchestrator-recovery.md +13 -23
  57. package/skills/ct-orchestrator/references/orchestrator-spawning.md +9 -10
  58. package/skills/ct-orchestrator/references/orchestrator-tokens.md +9 -9
  59. package/skills/ct-provenance-keeper/SKILL.md +10 -7
  60. package/skills/ct-release-orchestrator/SKILL.md +21 -13
  61. package/skills/ct-release-orchestrator/references/composition.md +1 -1
  62. package/skills/ct-release-orchestrator/references/release-types.md +33 -15
  63. package/skills/ct-research-agent/SKILL.md +14 -12
  64. package/skills/ct-research-agent/references/triggers-and-routing.md +4 -4
  65. package/skills/{ct-skill-creator → ct-skill-author}/SKILL.md +9 -6
  66. package/skills/{ct-skill-validator → ct-skill-author}/agents/ecosystem-checker.md +1 -1
  67. package/skills/{ct-skill-validator → ct-skill-author}/evals/quality_evals.json +10 -10
  68. package/skills/{ct-skill-validator → ct-skill-author}/evals/trigger_queries.json +1 -1
  69. package/skills/{ct-skill-validator → ct-skill-author}/references/cleo-ecosystem-rules.md +8 -4
  70. package/skills/{ct-skill-creator → ct-skill-author}/references/provider-deployment.md +10 -6
  71. package/skills/{ct-skill-validator/SKILL.md → ct-skill-author/references/validating.md} +14 -21
  72. package/skills/{ct-skill-validator → ct-skill-author}/references/validation-rules.md +2 -2
  73. package/skills/{ct-skill-validator → ct-skill-author}/scripts/_skill_finder.py +2 -2
  74. package/skills/{ct-skill-validator → ct-skill-author}/scripts/check_depth.py +2 -5
  75. package/skills/{ct-skill-validator → ct-skill-author}/scripts/generate_validation_report.py +1 -1
  76. package/skills/{ct-skill-validator → ct-skill-author}/scripts/run_quality_eval.py +2 -2
  77. package/skills/ct-spec-writer/SKILL.md +9 -7
  78. package/skills/ct-task-executor/SKILL.md +19 -16
  79. package/skills/ct-task-executor/references/common-failures.md +1 -1
  80. package/skills/ct-validator/SKILL.md +11 -9
  81. package/skills/ct-validator/references/compliance-reports.md +1 -1
  82. package/skills/ct-validator/references/validation-modes.md +3 -3
  83. package/skills/manifest.json +381 -365
  84. package/dispatch-config.json +0 -983
  85. package/provider-skills-map.json +0 -97
  86. package/skills/ct-docs-lookup/SKILL.md +0 -185
  87. package/skills/ct-docs-lookup/references/ctx7-workflow.md +0 -198
  88. package/skills/ct-docs-lookup/references/library-id-resolution.md +0 -217
  89. package/skills/ct-docs-lookup/references/version-specific-docs.md +0 -220
  90. package/skills/ct-master-tac/SKILL.md +0 -120
  91. package/skills/ct-master-tac/__tests__/install.test.ts +0 -304
  92. package/skills/ct-master-tac/bundled/README.md +0 -40
  93. package/skills/ct-master-tac/bundled/protocols/architecture-decision.cant +0 -90
  94. package/skills/ct-master-tac/bundled/protocols/artifact-publish.cant +0 -105
  95. package/skills/ct-master-tac/bundled/protocols/consensus.cant +0 -85
  96. package/skills/ct-master-tac/bundled/protocols/contribution.cant +0 -92
  97. package/skills/ct-master-tac/bundled/protocols/decomposition.cant +0 -102
  98. package/skills/ct-master-tac/bundled/protocols/implementation.cant +0 -77
  99. package/skills/ct-master-tac/bundled/protocols/provenance.cant +0 -100
  100. package/skills/ct-master-tac/bundled/protocols/release.cant +0 -107
  101. package/skills/ct-master-tac/bundled/protocols/research.cant +0 -77
  102. package/skills/ct-master-tac/bundled/protocols/specification.cant +0 -77
  103. package/skills/ct-master-tac/bundled/protocols/testing.cant +0 -99
  104. package/skills/ct-master-tac/bundled/protocols/validation.cant +0 -75
  105. package/skills/ct-master-tac/bundled/teams/platform.cant +0 -115
  106. package/skills/ct-master-tac/manifest.json +0 -55
  107. package/skills/ct-skill-creator/eval-viewer/__pycache__/generate_review.cpython-314.pyc +0 -0
  108. package/skills/ct-skill-creator/manifest-entry.json +0 -17
  109. package/skills/ct-skill-creator/scripts/__pycache__/__init__.cpython-314.pyc +0 -0
  110. package/skills/ct-skill-creator/scripts/__pycache__/aggregate_benchmark.cpython-314.pyc +0 -0
  111. package/skills/ct-skill-creator/scripts/__pycache__/generate_report.cpython-314.pyc +0 -0
  112. package/skills/ct-skill-creator/scripts/__pycache__/improve_description.cpython-314.pyc +0 -0
  113. package/skills/ct-skill-creator/scripts/__pycache__/init_skill.cpython-314.pyc +0 -0
  114. package/skills/ct-skill-creator/scripts/__pycache__/quick_validate.cpython-314.pyc +0 -0
  115. package/skills/ct-skill-creator/scripts/__pycache__/run_eval.cpython-314.pyc +0 -0
  116. package/skills/ct-skill-creator/scripts/__pycache__/run_loop.cpython-314.pyc +0 -0
  117. package/skills/ct-skill-creator/scripts/__pycache__/utils.cpython-314.pyc +0 -0
  118. package/skills/ct-skill-validator/manifest-entry.json +0 -20
  119. package/skills/ct-stickynote/README.md +0 -14
  120. package/skills/signaldock-connect/SKILL.md +0 -137
  121. package/skills/signaldock-connect/assets/agent-card.json +0 -48
  122. package/skills/signaldock-connect/references/api-endpoints.md +0 -131
  123. package/skills.json +0 -495
  124. /package/skills/{ct-docs-review → ct-documentor}/references/inline-comment-patterns.md +0 -0
  125. /package/skills/{ct-docs-write → ct-documentor}/references/markdown-patterns.md +0 -0
  126. /package/skills/{ct-skill-creator → ct-skill-author}/agents/analyzer.md +0 -0
  127. /package/skills/{ct-skill-creator → ct-skill-author}/agents/comparator.md +0 -0
  128. /package/skills/{ct-skill-creator → ct-skill-author}/agents/grader.md +0 -0
  129. /package/skills/{ct-skill-creator → ct-skill-author}/assets/eval_review.html +0 -0
  130. /package/skills/{ct-skill-validator → ct-skill-author}/assets/valid-skill-example.md +0 -0
  131. /package/skills/{ct-skill-creator → ct-skill-author}/eval-viewer/generate_review.py +0 -0
  132. /package/skills/{ct-skill-creator → ct-skill-author}/eval-viewer/viewer.html +0 -0
  133. /package/skills/{ct-skill-creator → ct-skill-author}/references/dynamic-context.md +0 -0
  134. /package/skills/{ct-skill-creator → ct-skill-author}/references/frontmatter.md +0 -0
  135. /package/skills/{ct-skill-creator → ct-skill-author}/references/invocation-control.md +0 -0
  136. /package/skills/{ct-skill-creator → ct-skill-author}/references/output-patterns.md +0 -0
  137. /package/skills/{ct-skill-creator → ct-skill-author}/references/schemas.md +0 -0
  138. /package/skills/{ct-skill-creator → ct-skill-author}/references/workflows.md +0 -0
  139. /package/skills/{ct-skill-creator → ct-skill-author}/scripts/__init__.py +0 -0
  140. /package/skills/{ct-skill-creator → ct-skill-author}/scripts/aggregate_benchmark.py +0 -0
  141. /package/skills/{ct-skill-validator → ct-skill-author}/scripts/audit_body.py +0 -0
  142. /package/skills/{ct-skill-validator → ct-skill-author}/scripts/check_ecosystem.py +0 -0
  143. /package/skills/{ct-skill-creator → ct-skill-author}/scripts/generate_report.py +0 -0
  144. /package/skills/{ct-skill-creator → ct-skill-author}/scripts/improve_description.py +0 -0
  145. /package/skills/{ct-skill-creator → ct-skill-author}/scripts/init_skill.py +0 -0
  146. /package/skills/{ct-skill-creator → ct-skill-author}/scripts/package_skill.py +0 -0
  147. /package/skills/{ct-skill-creator → ct-skill-author}/scripts/quick_validate.py +0 -0
  148. /package/skills/{ct-skill-creator → ct-skill-author}/scripts/run_eval.py +0 -0
  149. /package/skills/{ct-skill-creator → ct-skill-author}/scripts/run_loop.py +0 -0
  150. /package/skills/{ct-skill-creator → ct-skill-author}/scripts/utils.py +0 -0
  151. /package/skills/{ct-skill-validator → ct-skill-author}/scripts/validate.py +0 -0
@@ -15,7 +15,7 @@ The manifest system provides O(1) append operations and race-condition-free conc
15
15
  **Default Paths**:
16
16
  - Output directory: `.cleo/agent-outputs/` (configurable via `agentOutputs.directory`)
17
17
  - Manifest store: `pipeline_manifest` SQLite table (canonical per ADR-027)
18
- - CLI: `cleo manifest append <json>` — the only supported write path
18
+ - CLI: `cleo manifest append --entry '<json>'` — the only supported write path
19
19
 
20
20
  **Design Principles**:
21
21
  - Append-only writes preserve audit trail
@@ -239,12 +239,9 @@ cleo research show jwt-auth-2026-02-07 # Check linked_tasks
239
239
 
240
240
  ---
241
241
 
242
- ### cleo research unlink
242
+ ### research unlink (retired)
243
243
 
244
- > **Note**: Not currently implemented in the CLI. To disassociate research from a task, use
245
- > `cleo research update <id>` to change status, or remove the link manually from the task record.
246
-
247
- ---
244
+ Retired. Link edits go through `cleo research link`; there is no unlink verb.
248
245
 
249
246
  ### cleo research links
250
247
 
@@ -322,19 +319,13 @@ cleo research archive --before-date 2026-01-01
322
319
 
323
320
  ---
324
321
 
325
- ### cleo research archive-list
322
+ ### research archive-list (retired)
326
323
 
327
- > **Note**: Not currently implemented in the CLI. To list archived entries, use
328
- > `cleo research list --status archived` or query the archive file directly.
329
-
330
- ---
324
+ Retired. List archived entries with `cleo manifest list --filter archived`.
331
325
 
332
- ### cleo research status
326
+ ### research status (retired)
333
327
 
334
- > **Note**: Not currently implemented as a separate CLI command. Use `cleo research stats`
335
- > for manifest statistics.
336
-
337
- ---
328
+ Retired. Use `cleo research stats` or `cleo manifest stats`.
338
329
 
339
330
  ### cleo research stats
340
331
 
@@ -369,33 +360,21 @@ cleo research stats
369
360
 
370
361
  ---
371
362
 
372
- ### cleo research validate
373
-
374
- > **Note**: Not currently implemented in the CLI. Manifest validation occurs automatically
375
- > when entries are created via `cleo research add`.
376
-
377
- ---
378
-
379
- ### cleo research compact
363
+ ### research validate (retired)
380
364
 
381
- > **Note**: Not currently implemented in the CLI. Use `cleo research archive` to manage
382
- > manifest size.
365
+ Retired. Validate a subagent's output with `cleo orchestrate validate <taskId>` or `cleo check output`.
383
366
 
384
- ---
367
+ ### research compact (retired)
385
368
 
386
- ### cleo research get
369
+ Retired. The pipeline_manifest table needs no compaction (ADR-027).
387
370
 
388
- > **Note**: Not currently implemented as a separate CLI command. Use `cleo research show <id>`
389
- > for entry details.
371
+ ### research get (retired)
390
372
 
391
- ---
392
-
393
- ### cleo research inject
373
+ Retired. Use `cleo research show <id>` or `cleo manifest show <id>`.
394
374
 
395
- > **Note**: Not currently implemented in the CLI. The orchestrator generates fully-resolved
396
- > subagent prompts via `cleo orchestrator spawn <taskId>`.
375
+ ### research inject (retired)
397
376
 
398
- ---
377
+ Retired. `cleo orchestrate spawn <taskId>` embeds the subagent protocol in the prompt it returns.
399
378
 
400
379
  ## Manifest Entry Schema
401
380
 
@@ -454,7 +433,7 @@ When present, the `audit` field provides operational metadata:
454
433
  | `{{EPIC_ID}}` | Parent epic identifier | `T3147` |
455
434
  | `{{DATE}}` | Current date | `2026-02-07` |
456
435
  | `{{TOPIC_SLUG}}` | URL-safe topic name | `jwt-authentication` |
457
- | `{{OUTPUT_DIR}}` | Output directory | `.cleo/agent-outputs` |
436
+ | `{{OUTPUT_DIR}}` | Output directory | `.cleo/agent-outputs` (legacy token — do not write there; record output with `cleo docs add`) |
458
437
 
459
438
 
460
439
  ### Command Tokens (CLEO Defaults)
@@ -477,7 +456,7 @@ When present, the `audit` field provides operational metadata:
477
456
  ```markdown
478
457
  ## Output Requirements
479
458
 
480
- 1. Write findings to `{{OUTPUT_DIR}}/{{DATE}}_{{TOPIC_SLUG}}.md`
459
+ 1. Record findings with `cleo docs add {{TASK_ID}} --content - --type <kind> --slug {{TOPIC_SLUG}}`
481
460
  2. Create manifest entry:
482
461
 
483
462
  ```bash
@@ -526,7 +505,7 @@ echo '{"id": "test", "title": "Test"}' >> .cleo/agent-outputs/legacy-manifest.js
526
505
 
527
506
  **Solution**: Use `cleo manifest append`
528
507
  ```bash
529
- cleo manifest append '{"id":"test","task_id":"T###","type":"research","status":"complete","output":"path/to/output.md","summary":"brief","key_findings":["..."]}'
508
+ cleo manifest append --entry '{"id":"test","task_id":"T###","type":"research","status":"complete","output":"path/to/output.md","summary":"brief","key_findings":["..."]}'
530
509
  ```
531
510
 
532
511
  ---
@@ -542,7 +521,7 @@ echo "$json" >> .cleo/agent-outputs/legacy-manifest.jsonl
542
521
 
543
522
  **Solution**: Use `cleo manifest append`
544
523
  ```bash
545
- cleo manifest append '{"id":"...","task_id":"T####","type":"...","status":"complete","output":"...","summary":"...","key_findings":["..."]}'
524
+ cleo manifest append --entry '{"id":"...","task_id":"T####","type":"...","status":"complete","output":"...","summary":"...","key_findings":["..."]}'
546
525
  ```
547
526
 
548
527
  ---
@@ -41,7 +41,7 @@ The orchestrator delegates work to a subagent via `orchestrate.spawn` with skill
41
41
 
42
42
  ```bash
43
43
  # Generate fully-resolved spawn prompt
44
- cleo orchestrator spawn T1234 --json
44
+ cleo orchestrate spawn T1234 --json
45
45
 
46
46
  # Provider adapter executes the prompt using its native mechanism
47
47
  # - Claude Code: Task tool with cleo-subagent type
@@ -84,14 +84,10 @@ A skill invokes other skills to complete workflow phases. The loaded skill maint
84
84
 
85
85
  ```markdown
86
86
  # Via Skill tool (programmatic)
87
- Skill(skill="ct-docs-lookup")
88
- Skill(skill="ct-docs-write")
89
- Skill(skill="ct-docs-review")
87
+ Skill(skill="ct-documentor") # writing + review references
90
88
 
91
89
  # Via slash command (user-facing)
92
- /ct-docs-lookup
93
- /ct-docs-write
94
- /ct-docs-review
90
+ /ct-documentor
95
91
  ```
96
92
 
97
93
  ### When to Use Skill Chaining
@@ -180,7 +176,7 @@ Subagent MUST NOT return output content in response.
180
176
  ### Rule 3: File-Based Details (MUST)
181
177
 
182
178
  Detailed findings go to output files, not manifest or response:
183
- - Full analysis → `{{OUTPUT_DIR}}/YYYY-MM-DD_topic.md`
179
+ - Full analysis → `cleo docs add <taskId> --content - --type research --slug <topic>`
184
180
  - Summary only → pipeline_manifest key_findings (via `cleo manifest append`)
185
181
 
186
182
  ### Rule 4: Token Injection (SHOULD)
@@ -213,7 +209,7 @@ TOPIC_SLUG # URL-safe topic name
213
209
  Before spawning subagent:
214
210
  - [ ] Identify appropriate skill for task type
215
211
  - [ ] Prepare token context (TASK_ID, DATE, TOPIC_SLUG)
216
- - [ ] `cleo orchestrator spawn <taskId> --json`
212
+ - [ ] `cleo orchestrate spawn <taskId> --json`
217
213
  - [ ] Verify token resolution is complete (`tokenResolution.fullyResolved`)
218
214
 
219
215
  Before chaining to another skill:
@@ -15,8 +15,8 @@ All subagents operating under an orchestrator MUST follow this protocol.
15
15
 
16
16
  | ID | Rule | Compliance |
17
17
  |----|------|------------|
18
- | OUT-001 | MUST write findings to `{{OUTPUT_DIR}}/{{DATE}}_{{TOPIC_SLUG}}.md` | Required |
19
- | OUT-002 | MUST append ONE entry via `cleo manifest append <json>` (writes to pipeline_manifest table per ADR-027/T1093) | Required |
18
+ | OUT-001 | MUST record findings with `cleo docs add {{TASK_ID}} --content - --type <kind> --slug {{TOPIC_SLUG}}` (never a raw file under `.cleo/agent-outputs/`) | Required |
19
+ | OUT-002 | MUST append ONE entry via `cleo manifest append --entry '<json>'` (writes to pipeline_manifest table per ADR-027/T1093) | Required |
20
20
  | OUT-003 | MUST return ONLY: "[Type] complete. Manifest appended to pipeline_manifest." | Required |
21
21
  | OUT-004 | MUST NOT return output content in response | Required |
22
22
 
@@ -36,7 +36,7 @@ Valid return messages:
36
36
 
37
37
  ## Output File Format
38
38
 
39
- Write to `{{OUTPUT_DIR}}/{{DATE}}_{{TOPIC_SLUG}}.md`:
39
+ Record it with `cleo docs add {{TASK_ID}} --content - --type <kind> --slug {{TOPIC_SLUG}}`, using this body:
40
40
 
41
41
  ```markdown
42
42
  # {{TITLE}}
@@ -107,7 +107,7 @@ Reference: @skills/_shared/task-system-integration.md
107
107
  1. Read task: {{TASK_SHOW_CMD}} {{TASK_ID}}
108
108
  2. Start task: {{TASK_START_CMD}} {{TASK_ID}}
109
109
  3. Do work: [skill-specific execution]
110
- 4. Write output: {{OUTPUT_DIR}}/{{DATE}}_{{TOPIC_SLUG}}.md
110
+ 4. Record output: `cleo docs add {{TASK_ID}} --content - --type <kind> --slug {{TOPIC_SLUG}}`
111
111
  5. Create manifest entry: cleo research add [flags]
112
112
  6. Complete: {{TASK_COMPLETE_CMD}} {{TASK_ID}}
113
113
  7. Return: "[Type] complete. Manifest appended to pipeline_manifest."
@@ -154,7 +154,7 @@ Reference: @skills/_shared/task-system-integration.md
154
154
  Before returning, verify:
155
155
 
156
156
  - [ ] Task started via `{{TASK_START_CMD}}`
157
- - [ ] Output file written to `{{OUTPUT_DIR}}/`
157
+ - [ ] Output recorded with `cleo docs add` (slug in the return message)
158
158
  - [ ] Manifest entry created via `cleo research add`
159
159
  - [ ] Task completed via `{{TASK_COMPLETE_CMD}}`
160
160
  - [ ] Response is ONLY the summary message
@@ -177,7 +177,7 @@ Before returning, verify:
177
177
  |-------|---------|-------------|
178
178
  | `{{EPIC_ID}}` | `""` | Parent epic ID |
179
179
  | `{{SESSION_ID}}` | `""` | Session identifier |
180
- | `{{OUTPUT_DIR}}` | `.cleo/agent-outputs` | Output directory |
180
+ | `{{OUTPUT_DIR}}` | `.cleo/agent-outputs` | Output directory (legacy token — do not write there; record output with `cleo docs add`) |
181
181
 
182
182
  ### Task System Tokens (CLEO defaults)
183
183
 
@@ -133,24 +133,24 @@ Sessions persist across Claude conversations and support long-running work.
133
133
  - Sessions receive timeout warning after **72 hours** of inactivity
134
134
  - Active sessions are auto-ended after **7 days** (configurable via `retention.autoEndActiveAfterDays`)
135
135
  - Ended/suspended sessions can be cleaned up with `cleo session gc`
136
- - Stale active sessions (72h+) cleaned with `cleo session gc --include-active`
136
+ - Stale active sessions cleaned with `cleo session gc --max-age <days>`
137
137
 
138
138
  **Session Commands**:
139
139
 
140
140
  | Command | Purpose |
141
141
  |---------|---------|
142
- | `cleo session start --scope epic:{{EPIC_ID}}` | Begin scoped session |
142
+ | `cleo session start --scope epic:{{EPIC_ID}} --name "..."` | Begin scoped session (`--name` is required) |
143
143
  | `cleo session end --note "summary"` | End session properly |
144
144
  | `cleo session list` | Check existing sessions |
145
145
  | `cleo session resume <id>` | Resume previous session |
146
146
  | `cleo session gc` | Clean up ended/suspended sessions |
147
- | `cleo session gc --include-active` | Also clean stale active sessions |
147
+ | `cleo session gc --max-age <days>` | Also end active sessions older than N days |
148
148
 
149
149
  **Best Practices**:
150
150
  - **MUST** check `cleo session list` before starting new sessions
151
151
  - **SHOULD** end sessions properly with `cleo session end --note "summary"` to avoid accumulation
152
152
  - **SHOULD** use `cleo session gc` periodically to clean up old ended/suspended sessions
153
- - **MAY** use `cleo session gc --include-active` to clean stale active sessions (72h+ inactive)
153
+ - **MAY** use `cleo session gc --max-age <days>` to end stale active sessions
154
154
  - Long-running sessions (multi-day work) are expected and supported
155
155
 
156
156
  ---
@@ -168,7 +168,7 @@ When tokens are not explicitly configured, assume CLEO defaults:
168
168
  | `{{TASK_LIST_CMD}}` | `cleo list` |
169
169
  | `{{TASK_FIND_CMD}}` | `cleo find` |
170
170
  | `{{TASK_ADD_CMD}}` | `cleo add` |
171
- | `{{OUTPUT_DIR}}` | `.cleo/agent-outputs` |
171
+ | `{{OUTPUT_DIR}}` | `.cleo/agent-outputs` (legacy token — do not write there; record output with `cleo docs add`) |
172
172
 
173
173
 
174
174
  ---
@@ -2,14 +2,18 @@
2
2
  name: ct-adr-recorder
3
3
  description: "Records Architecture Decision Records from accepted consensus verdicts. Use when promoting a consensus outcome to a formal ADR: drafts the document in the proposed-then-accepted HITL lifecycle, links to the originating consensus manifest, persists the decision to the canonical SQLite decisions table, and triggers downstream invalidation when an accepted ADR is later superseded. Triggers on phrases like 'write ADR', 'record architecture decision', 'formalize this decision', 'lock in the choice', 'create ADR-XXX', or when a consensus task reaches completed status and needs formalization."
4
4
  protocol: architecture_decision
5
- loomStage: architecture_decision
6
5
  adrRefs:
7
6
  - ADR-053
8
7
  - ADR-070
9
8
  metadata:
10
- version: 1.0.0
9
+ version: 1.0.2
11
10
  tier: on-demand
12
11
  install: harness
12
+ covers:
13
+ - packages/core/src/validation/protocols/cant/architecture-decision.cant
14
+ - packages/core/src/validation/protocols/protocols-markdown/architecture-decision.md
15
+ loomStage: architecture_decision
16
+ lastReviewed: 2026-09-28
13
17
  stability: stable
14
18
  ---
15
19
 
@@ -229,27 +233,24 @@ Validate every ADR manifest entry through `cleo check protocol`:
229
233
 
230
234
  ```bash
231
235
  # Draft reaches proposed: runs inside the skill, before HITL hand-off.
232
- cleo check protocol \
233
- --protocolType architecture-decision \
234
- --taskId T4798 \
236
+ cleo check protocol architecture-decision \
237
+ --task-id T4798 \
235
238
  --status proposed \
236
- --persistedInDb true \
237
- --adrContent "$(cat docs/adr/ADR-0042.md)"
239
+ --persisted-in-db true \
240
+ --adr-content "$(cat docs/adr/ADR-0042.md)"
238
241
 
239
242
  # HITL accepts the ADR: rerun with the review flag.
240
- cleo check protocol \
241
- --protocolType architecture-decision \
242
- --taskId T4798 \
243
+ cleo check protocol architecture-decision \
244
+ --task-id T4798 \
243
245
  --status accepted \
244
- --hitlReviewed true \
245
- --persistedInDb true
246
+ --hitl-reviewed true \
247
+ --persisted-in-db true
246
248
 
247
249
  # Later supersession: include the cascade flag.
248
- cleo check protocol \
249
- --protocolType architecture-decision \
250
- --taskId T4798 \
250
+ cleo check protocol architecture-decision \
251
+ --task-id T4798 \
251
252
  --status superseded \
252
- --downstreamFlagged true
253
+ --downstream-flagged true
253
254
  ```
254
255
 
255
256
  Exit code 0 = valid. Exit code 65 = `HANDOFF_REQUIRED`. Exit code 18 = `CASCADE_FAILED`. Exit code 84 = `PROVENANCE_REQUIRED` (attempted ADR without a linked consensus).
@@ -275,7 +276,7 @@ Exit code 0 = valid. Exit code 65 = `HANDOFF_REQUIRED`. Exit code 18 = `CASCADE_
275
276
  5. The manifest entry MUST set `agent_type: "decision"` and reference the output markdown file.
276
277
  6. Superseding an accepted ADR MUST trigger the downstream cascade over linked specs, decomps, and impls.
277
278
  7. Agents MUST NOT retry the HITL handoff on a loop; wait for the human reviewer.
278
- 8. Always validate via `cleo check protocol --protocolType architecture-decision` before exiting.
279
+ 8. Always validate via `cleo check protocol architecture-decision` before exiting.
279
280
 
280
281
  ## See also / References
281
282
 
@@ -2,9 +2,13 @@
2
2
  name: ct-artifact-publisher
3
3
  description: "Builds and publishes artifacts to registries (npm, PyPI, cargo, docker, GitHub releases, generic tarballs) following the validate, then dry-run, then build, then publish, then record-provenance pipeline. Invoked by ct-release-orchestrator as a sub-skill when a release has artifact config. Never stores credentials in output or manifest (ARTP-008), always dry-runs first (ARTP-002), halts and attempts rollback on failure (ARTP-009). Triggers when a release config has at least one enabled artifact handler."
4
4
  metadata:
5
- version: 1.0.0
5
+ version: 1.0.2
6
6
  tier: on-demand
7
7
  install: harness
8
+ covers:
9
+ - packages/core/src/validation/protocols/cant/artifact-publish.cant
10
+ - packages/core/src/validation/protocols/protocols-markdown/artifact-publish.md
11
+ lastReviewed: 2026-09-28
8
12
  stability: stable
9
13
  ---
10
14
 
@@ -114,11 +118,10 @@ Missing credentials exit 90 (`E_PROVENANCE_CONFIG_INVALID` bubbled from provenan
114
118
  Validate the sub-protocol entry through `cleo check protocol`:
115
119
 
116
120
  ```bash
117
- cleo check protocol \
118
- --protocolType artifact-publish \
119
- --taskId T4901 \
120
- --artifactType npm-package \
121
- --buildPassed true
121
+ cleo check protocol artifact-publish \
122
+ --task-id T4901 \
123
+ --artifact-type npm-package \
124
+ --build-passed true
122
125
  ```
123
126
 
124
127
  Exit code 0 = artifact published successfully. Exit code 85 = unknown artifact type. Exit code 86 = validation failed. Exit code 87 = build failed. Exit code 88 = publish failed, rollback attempted. Exit code 89 = rollback failed, dirty state.
@@ -148,4 +151,4 @@ This skill always hands off to ct-provenance-keeper after publish, before writin
148
151
  5. SHA-256 checksums are mandatory for every build output.
149
152
  6. Provenance MUST be recorded via `record_release()` after publish, via ct-provenance-keeper.
150
153
  7. On first publish failure, halt and attempt rollback; exit 88 on clean rollback, 89 on dirty.
151
- 8. Validate every run via `cleo check protocol --protocolType artifact-publish`.
154
+ 8. Validate every run via `cleo check protocol artifact-publish`.
@@ -2,9 +2,13 @@
2
2
  name: ct-cleo
3
3
  description: CLEO task management protocol - session, task, and workflow guidance. Use when managing tasks, sessions, or multi-agent workflows with the CLEO CLI protocol.
4
4
  metadata:
5
- version: 2.21.0
5
+ version: 2.22.2
6
6
  tier: core
7
7
  install: harness
8
+ covers:
9
+ - packages/cleo/src/cli/commands/session.ts
10
+ - packages/cleo/src/cli/commands/focus.ts
11
+ - packages/cleo/src/cli/commands/sticky.ts
8
12
  lastReviewed: 2026-09-28
9
13
  stability: stable
10
14
  ---
@@ -225,6 +229,17 @@ This internal budget contract does not add a `--token-budget` flag to add/update
225
229
 
226
230
  ## Skill-Specific Extensions
227
231
 
232
+ ### Reference files
233
+
234
+ | File | Load it when you |
235
+ |------|------------------|
236
+ | `references/session-protocol.md` | start, resume or end sessions; pick skills |
237
+ | `references/orchestrator-constraints.md` | spawn subagents from an orchestrator |
238
+ | `references/loom-lifecycle.md` | move an epic through the LOOM stages |
239
+ | `references/anti-patterns.md` | check a plan against known mistakes |
240
+ | `references/memory.md` | recall or record BRAIN memory (progressive disclosure) |
241
+ | `references/sticky-notes.md` | capture a thought before it is a task: `cleo sticky jot "..."`, then `cleo sticky convert <id> --to-task` |
242
+
228
243
  - Task hierarchy, Saga commands, add-batch decomposition, docs policy, and evidence detail live in the on-demand reference; emit `task-creation`, `documents`, and `evidence` when needed.
229
244
  - For add-batch input, The top-level JSON MUST be an array of task objects, not an object wrapper like `{ "tasks": [...] }`.
230
245
  - Dry-run count semantics: `/data/count` and `/data/wouldCreate` predict writes; `/data/insertedCount` must be `0` for dry-run.
@@ -390,11 +405,12 @@ and planning document generation (T10634):
390
405
 
391
406
  Example — dry-run a scaffold before applying:
392
407
  ```bash
393
- # Validate scaffold payload
394
- cleo workgraph validate --file scaffold.json --dry-run
408
+ # Validate scaffold payload (read-only)
409
+ cleo workgraph validate scaffold.json
395
410
 
396
- # Apply validated scaffold atomically
397
- cleo workgraph apply --file scaffold.json
411
+ # Preview, then apply the validated scaffold atomically
412
+ cleo workgraph apply scaffold.json --dry-run
413
+ cleo workgraph apply scaffold.json
398
414
  ```
399
415
 
400
416
  ## Task Context (PM-Core V2 — T10629/T10630/T10631)
@@ -428,11 +444,11 @@ cite decisions by durable BRAIN decision IDs.
428
444
 
429
445
  | Need | Command |
430
446
  |------|---------|
431
- | Store a decision | `cleo memory store --type decision --content "..." --title "..."` |
447
+ | Store a decision | `cleo memory decision-store --decision "..." --rationale "..."` |
432
448
  | Search decisions | `cleo memory decision-find --query <term>` |
433
449
  | Find by type | `cleo memory find <term> --type decision` |
434
450
  | Fetch full record | `cleo memory fetch <decisionId>` |
435
- | List by epic | `cleo memory decision-find --epic <epicId>` |
451
+ | Find by epic | `cleo memory decision-find "<epicId>"` (no epic filter — query text, then verify `source_table`/`source_rowid`) |
436
452
  | Check status | `cleo memory fetch <id>` → check `confirmation_state` field |
437
453
 
438
454
  **Why BRAIN decisions over markdown ledgers:**
@@ -443,7 +459,8 @@ cite decisions by durable BRAIN decision IDs.
443
459
 
444
460
  **Migration rule:** When you encounter a decision ONLY in a markdown ledger
445
461
  (`.cleo/adrs/`, `.cleo/agent-outputs/`), store it in the BRAIN with
446
- `cleo memory store --type decision` and cite the BRAIN ID going forward.
462
+ `cleo memory decision-store --decision "..." --rationale "..."` and cite the
463
+ BRAIN ID going forward.
447
464
 
448
465
  ## Evidence must prove task criteria
449
466
 
@@ -107,7 +107,7 @@ Every spawn combines two layers:
107
107
 
108
108
  | ID | Rule | Enforcement |
109
109
  |----|------|-------------|
110
- | BASE-001 | MUST append ONE entry via `cleo manifest append <json>` (writes to pipeline_manifest table per ADR-027/T1093) | Required |
110
+ | BASE-001 | MUST append ONE entry via `cleo manifest append --entry '<json>'` (writes to pipeline_manifest table per ADR-027/T1093) | Required |
111
111
  | BASE-002 | MUST NOT return content in response | Required |
112
112
  | BASE-003 | MUST complete task via `cleo complete` | Required |
113
113
  | BASE-004 | MUST write output file before manifest | Required |
@@ -1,21 +1,6 @@
1
- ---
2
- name: ct-memory
3
- version: 1.0.0
4
- description: Brain memory protocol with progressive disclosure for anti-hallucination and context recall
5
- triggers:
6
- - memory
7
- - brain
8
- - recall
9
- - remember
10
- - anti-hallucination
11
- metadata:
12
- version: 1.0.0
13
- tier: internal
14
- install: internal
15
- stability: deprecated
16
- ---
17
-
18
- # ct-memory -- Brain Memory Protocol
1
+ <!-- Merged from the ct-memory skill into ct-cleo (T12649, D11157). -->
2
+
3
+ # Memory (BRAIN) — progressive recall
19
4
 
20
5
  ## Purpose
21
6
 
@@ -25,8 +10,10 @@ Ensures LLM agents never start conversations with amnesia. Provides structured m
25
10
 
26
11
  Use CLI (`cleo`) for all memory operations.
27
12
 
28
- 1. The memory bridge (.cleo/memory-bridge.md) is already loaded via CLEO-INJECTION.md @-reference
29
- 2. If the bridge content feels stale (>2 hours old), refresh:
13
+ 1. `cleo briefing` (or `cleo memory digest`) gives the live project memory summary.
14
+ The file bridge (`.cleo/memory-bridge.md`) is a legacy opt-in
15
+ (`brain.memoryBridge.mode = "file"`); do not assume it was loaded.
16
+ 2. For the task at hand, search:
30
17
  - `cleo memory find "session task decision" --limit 10`
31
18
  3. Check for anti-patterns to avoid:
32
19
  - `cleo memory find "mistake error avoid warning" --limit 5`
@@ -67,14 +54,14 @@ Before stating facts about the codebase or project:
67
54
 
68
55
  ### Cross-Project Knowledge (via NEXUS)
69
56
 
70
- - `cleo nexus search "pattern" --scope global`
71
- - Search across all CLEO-managed projects
57
+ - `cleo nexus search "pattern"` (add `--project <id>` to narrow to one project)
58
+ - Search the symbol graph across CLEO-managed projects
72
59
 
73
60
  ## Token Budget Guidelines
74
61
 
75
62
  | Operation | ~Tokens | When |
76
63
  |-----------|---------|------|
77
- | memory-bridge.md (auto-loaded) | 200-400 | Always (free) |
64
+ | `cleo memory digest` | 200-400 | Session start |
78
65
  | `cleo memory find` | 50/hit | Discovery |
79
66
  | `cleo memory fetch` | 500/entry | Details |
80
67
  | `cleo memory timeline` | 200-500 | Context |
@@ -18,11 +18,11 @@
18
18
  ### CLI Spawn Operations
19
19
 
20
20
  ```bash
21
- cleo orchestrator start --epic T001
22
- cleo orchestrator analyze T001
23
- cleo orchestrator ready --epic T001
24
- cleo orchestrator next --epic T001
25
- cleo orchestrator spawn T002
21
+ cleo orchestrate start T001
22
+ cleo orchestrate analyze T001
23
+ cleo orchestrate ready T001
24
+ cleo orchestrate next T001
25
+ cleo orchestrate spawn T002
26
26
  ```
27
27
 
28
28
  ### Spawn Workflow
@@ -97,8 +97,7 @@ Orchestrators resolve ALL tokens before spawning subagents. Subagents CANNOT res
97
97
  | `{{EPIC_ID}}` | Parent epic identifier |
98
98
  | `{{DATE}}` | Current date (ISO) |
99
99
  | `{{TOPIC_SLUG}}` | URL-safe topic name |
100
- | `{{OUTPUT_DIR}}` | Output directory |
101
- | `{{MANIFEST_PATH}}` | Manifest file path |
100
+ | `{{OUTPUT_DIR}}` | Legacy output directory — record output with `cleo docs add` instead |
102
101
  | `{{TASK_TITLE}}` | Task title |
103
102
  | `{{TASK_DESCRIPTION}}` | Task description |
104
103
 
@@ -118,8 +117,8 @@ Skills are **context injections, NOT agents**. The orchestrator selects and inje
118
117
  ### Discovery
119
118
 
120
119
  ```bash
121
- cleo skill list
122
- cleo skill show ct-orchestrator
120
+ cleo skills list
121
+ cleo skills info ct-orchestrator
123
122
  ```
124
123
 
125
124
  ### Key Skills
@@ -145,12 +144,16 @@ cleo skill show ct-orchestrator
145
144
 
146
145
  ## Release Workflow
147
146
 
148
- **CRITICAL**: `release ship` only commits version metadata. All code changes MUST be committed BEFORE running `release ship`.
147
+ Releases are PR-gated (ADR-065). Commit and merge all code through PRs first; the
148
+ release verbs are `plan` → `open` → `reconcile`. The legacy `create`/`ship`
149
+ verbs were removed (T9540, T10103).
149
150
 
150
151
  ```bash
151
- git add <files> && git commit -m "feat(T####): description"
152
- cleo release create v1.0.0
153
- cleo release ship v1.0.0 --bump-version --create-tag --push
152
+ cleo release plan v2026.MM.N --epic T#### # or --tasks T1,T2
153
+ cleo release open v2026.MM.N # dispatches release-prepare
154
+ cleo release pr-status v2026.MM.N # poll the release PR + CI
155
+ git tag -a v2026.MM.N -m "Release v2026.MM.N" && git push origin v2026.MM.N
156
+ cleo release reconcile v2026.MM.N # backfill provenance
154
157
  ```
155
158
 
156
159
  ## Project Context
@@ -1,23 +1,6 @@
1
- ---
2
- name: ct-stickynote
3
- description: Quick ephemeral sticky notes for project-wide capture before formal classification
4
- version: 1.0.0
5
- category: productivity
6
- protocol: null
7
- tags: [sticky, notes, capture, quick, ephemeral]
8
- triggers: [note, sticky, jot, capture]
9
- compatibility: [claude-code, gemini-cli, codex-cli, opencode]
10
- dependencies: []
11
- sharedResources: []
12
- license: MIT
13
- metadata:
14
- version: 1.0.0
15
- tier: internal
16
- install: internal
17
- stability: deprecated
18
- ---
19
-
20
- # Sticky Notes Skill
1
+ <!-- Merged from the ct-stickynote skill into ct-cleo (T12649, D11157). -->
2
+
3
+ # Sticky notes — capture before you classify
21
4
 
22
5
  Quick capture ephemeral notes that fill the gap between session notes and formal tasks.
23
6
 
@@ -36,15 +19,10 @@ Use sticky notes for:
36
19
  | `sticky.add` | Create sticky | `cleo sticky add "Refactor auth middleware" --tag bug --color red` |
37
20
  | `sticky.list` | List active | `cleo sticky list --tag bug` |
38
21
  | `sticky.show` | Show details | `cleo sticky show SN-001` |
39
- | `sticky.convert` | Promote to task/memory | `cleo sticky convert SN-001 --to-task` |
22
+ | `sticky.convert` | Promote to task/memory | `cleo sticky convert SN-001 --to-task --title "..."` or `--to-memory --type learning` |
40
23
  | `sticky.archive` | Archive | `cleo sticky archive SN-001` |
41
24
 
42
- ## Installation
43
-
44
- ```bash
45
- cleo skill install library:ct-stickynote
46
- ```
47
-
48
- ## Auto-Archive
49
25
 
50
- Stickies auto-archive after 30 days if not converted.
26
+ Also: `cleo sticky jot "..."` (alias of add), `cleo sticky ls`, and
27
+ `cleo sticky purge <id>` (permanent). Sticky notes are a core CLEO feature, so
28
+ this guide ships inside ct-cleo rather than as a separate skill.