@cleocode/skills 2026.9.21 → 2026.9.23

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 +26 -9
  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 +52 -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
@@ -1,14 +1,4 @@
1
- ---
2
- name: ct-skill-validator
3
- description: Validates an existing skill folder against the full CLEO standard and ecosystem. Use when auditing skills for structural compliance, verifying a skill fits into the CLEO ecosystem and constitution, running quality A/B evals, or preparing a skill for distribution. Runs a 3-phase validation loop — structural, ecosystem fit, and quality eval — then presents all findings as an HTML report opened in the user's browser. Iterates until all required phases pass.
4
- disable-model-invocation: true
5
- allowed-tools: Bash(python *)
6
- metadata:
7
- version: 1.0.0
8
- tier: internal
9
- install: internal
10
- stability: deprecated
11
- ---
1
+ <!-- Merged from the ct-skill-validator skill into ct-skill-author (T12649, D11157). -->
12
2
 
13
3
  # CLEO Skill Validator
14
4
 
@@ -31,7 +21,7 @@ python ${CLAUDE_SKILL_DIR}/scripts/validate.py <skill-dir>
31
21
 
32
22
  # With manifest checks (Tier 4):
33
23
  python ${CLAUDE_SKILL_DIR}/scripts/validate.py <skill-dir> \
34
- --manifest <manifest.json> --dispatch-config <dispatch-config.json>
24
+ --manifest packages/skills/skills/manifest.json
35
25
 
36
26
  # JSON output (for scripting):
37
27
  python ${CLAUDE_SKILL_DIR}/scripts/validate.py <skill-dir> --json
@@ -40,7 +30,10 @@ python ${CLAUDE_SKILL_DIR}/scripts/validate.py <skill-dir> --json
40
30
  python ${CLAUDE_SKILL_DIR}/scripts/audit_body.py <skill-dir>
41
31
 
42
32
  # Manifest alignment check: bundled into validate.py Tier 4. Use:
43
- # python validate.py <skill-dir> --manifest <manifest.json> --dispatch-config <dispatch-config.json>
33
+ # python validate.py <skill-dir> --manifest packages/skills/skills/manifest.json
34
+ # (CLEO's own package ships no dispatch-config.json or provider-skills-map.json
35
+ # since T12649/T12679; --dispatch-config/--provider-map only apply to external
36
+ # libraries that still ship them. For CLEO skills, gates 29-32 are authoritative.)
44
37
 
45
38
  # Progressive-disclosure depth check (T9684 — CI gate):
46
39
  python ${CLAUDE_SKILL_DIR}/scripts/check_depth.py <skill-dir>
@@ -61,7 +54,7 @@ python ${CLAUDE_SKILL_DIR}/scripts/check_depth.py <skill-dir> --audit-allowlist
61
54
 
62
55
  Pre-existing stubs are allowlisted with follow-up task IDs in
63
56
  `scripts/check_depth.py::ALLOWLIST`. Gold-standard skills:
64
- `ct-orchestrator` (9 refs) and `ct-skill-creator` (7 refs).
57
+ `ct-orchestrator` (9 refs) and `ct-skill-author` (7 refs).
65
58
 
66
59
  **Allowlist hygiene:** every entry carries `last_reviewed: YYYY-MM-DD HH:MM:SS`.
67
60
  `check_depth.py` runs a silent background audit on every invocation and emits
@@ -80,8 +73,8 @@ Repeat until errors = 0. Do not proceed to Phase 2 while errors remain.
80
73
  - Tier 1 — Structure: SKILL.md exists, frontmatter parseable, no CLEO-only fields
81
74
  - Tier 2 — Frontmatter Quality: name matches dir, description has trigger indicators
82
75
  - Tier 3 — Body Quality: length, no placeholder text, file references exist on disk
83
- - Tier 4 — CLEO Integration: manifest and dispatch-config alignment (optional)
84
- - Tier 5 — Provider Compatibility: provider-skills-map check (optional)
76
+ - Tier 4 — CLEO Integration: manifest alignment (dispatch-config only for external libraries that ship one)
77
+ - Tier 5 — Provider Compatibility: provider-skills-map check (external libraries only; CLEO removed its map in T12679)
85
78
 
86
79
  See [references/validation-rules.md](references/validation-rules.md) for full rule set.
87
80
 
@@ -135,11 +128,11 @@ Repeat until verdict is `PASS` or `PASS_WITH_WARNINGS`. WARN is acceptable; ERRO
135
128
  ## Phase 3: Quality A/B Eval
136
129
 
137
130
  Tests whether the skill actually improves agent output quality vs. no skill context.
138
- Phase 3 is **delegated** — `ct-skill-validator` does static analysis; runtime
131
+ Phase 3 is **delegated** — `ct-skill-author` does static analysis; runtime
139
132
  quality evals live in a dedicated skill (`skill-evaluator` preferred,
140
- `ct-skill-creator` as legacy fallback).
133
+ `ct-skill-author` as legacy fallback).
141
134
 
142
- > **Scope boundary:** `ct-skill-validator` is *static* — it checks structure,
135
+ > **Scope boundary:** `ct-skill-author` is *static* — it checks structure,
143
136
  > frontmatter, body, manifest, depth, ecosystem fit. For deep runtime A/B
144
137
  > benchmarking, regression detection, and auto-improvement, the dispatcher
145
138
  > below routes to `skill-evaluator`, which owns that workflow end-to-end.
@@ -182,7 +175,7 @@ loop: generate → run → grade → aggregate → analyze → detect-regression
182
175
  propose. See `skill-evaluator/SKILL.md` for the workflow it actually
183
176
  executes.
184
177
 
185
- When `ct-skill-creator` is the resolved fallback, the wrapper invokes its
178
+ When `ct-skill-author` is the resolved fallback, the wrapper invokes its
186
179
  `run_eval.py` with the same arguments translated to its CLI shape.
187
180
 
188
181
  ### Manual A/B (if you want to drive runs yourself)
@@ -233,7 +226,7 @@ Open the report in the browser: omit `--no-open` (default behaviour opens browse
233
226
 
234
227
  ## Self-Validation
235
228
 
236
- This skill validates itself. To validate ct-skill-validator:
229
+ This skill validates itself. To validate ct-skill-author:
237
230
 
238
231
  ```bash
239
232
  python ${CLAUDE_SKILL_DIR}/scripts/validate.py ${CLAUDE_SKILL_DIR}
@@ -9,8 +9,8 @@ The CLEO Skill Validator enforces compliance across five tiers of increasing dep
9
9
  1. **Structure** — Does the skill have the required files and valid frontmatter?
10
10
  2. **Frontmatter Quality** — Are all frontmatter fields correct, well-formed, and non-contradictory?
11
11
  3. **Body Quality** — Is the body content complete, concise, and free of placeholders?
12
- 4. **CLEO Integration** — Does the skill align with manifest.json and dispatch-config.json?
13
- 5. **Provider Compatibility** — Is the skill referenced in the provider-skills-map?
12
+ 4. **CLEO Integration** — Does the skill align with manifest.json (and dispatch-config.json, for external libraries that ship one)?
13
+ 5. **Provider Compatibility** — Is the skill referenced in the provider-skills-map (external libraries only; CLEO's was removed in T12679)?
14
14
 
15
15
  Tiers 1-3 run on every validation. Tiers 4-5 are opt-in via CLI flags.
16
16
 
@@ -109,7 +109,7 @@ def _candidates(name: str, caller_skill_dir: Path) -> Iterator[Path]:
109
109
  # - <child>/skills/<name>
110
110
  # - <child>/packages/skills/skills/<name>
111
111
  # This finds skills under sibling project roots — e.g. when the
112
- # caller is in /mnt/projects/cleocode/.../ct-skill-validator/ and
112
+ # caller is in /mnt/projects/cleocode/.../ct-skill-author/ and
113
113
  # the target is in /mnt/projects/proxmox/skills/<name>/. The walk
114
114
  # eventually reaches the common ancestor /mnt/projects/ where both
115
115
  # cleocode and proxmox are children. Bounded by MAX_SIBLINGS per
@@ -176,7 +176,7 @@ def find_skill(name: str, *, caller: Path | None = None) -> Path | None:
176
176
  def find_first(names: list[str], *, caller: Path | None = None) -> tuple[str, Path] | None:
177
177
  """Return the (name, path) of the first found skill from a preference list.
178
178
 
179
- Lets callers say "prefer skill-evaluator, fall back to ct-skill-creator"
179
+ Lets callers say "prefer skill-evaluator, fall back to ct-skill-author"
180
180
  without hardcoding either path.
181
181
  """
182
182
  for n in names:
@@ -5,7 +5,7 @@ CLEO Skill Depth Check — progressive-disclosure-depth rule (T9684).
5
5
  Fails when a skill's SKILL.md is below the depth threshold AND it has
6
6
  no references/ subdir with at least the manifest-declared reference
7
7
  files. The gold standard is ct-orchestrator (9 references) and
8
- ct-skill-creator (7 references); the rule is calibrated to flag
8
+ ct-skill-author (7 references); the rule is calibrated to flag
9
9
  stubs without forcing every skill to that depth.
10
10
 
11
11
  Rule logic:
@@ -41,7 +41,7 @@ from pathlib import Path
41
41
  # Adjust here, then re-run the audit to verify all 19 active skills pass.
42
42
  MIN_BODY_LINES = 100
43
43
  MIN_REF_FILES = 3
44
- GOLD_STANDARDS = ("ct-orchestrator", "ct-skill-creator")
44
+ GOLD_STANDARDS = ("ct-orchestrator", "ct-skill-author")
45
45
 
46
46
  # Cadence for the allowlist audit — entries older than this are flagged stale.
47
47
  ALLOWLIST_STALE_DAYS = 30
@@ -62,9 +62,6 @@ LAST_REVIEWED_RE = re.compile(r"last_reviewed:\s*(\d{4}-\d{2}-\d{2} \d{2}:\d{2}:
62
62
  # Format: skill-name -> "task-id: rationale | last_reviewed: YYYY-MM-DD HH:MM:SS"
63
63
  ALLOWLIST: dict[str, str] = {
64
64
  "ct-codebase-mapper": "T9567-followup: pre-existing; depth-backfill deferred | last_reviewed: 2026-05-21 14:00:18",
65
- "ct-master-tac": "T9567-followup: pre-existing; depth-backfill deferred | last_reviewed: 2026-05-21 14:00:18",
66
- "ct-memory": "T9567-followup: pre-existing; depth-backfill deferred | last_reviewed: 2026-05-21 14:00:18",
67
- "ct-stickynote": "T9567-followup: ephemeral note skill; minimal-by-design | last_reviewed: 2026-05-21 14:00:18",
68
65
  }
69
66
 
70
67
 
@@ -344,7 +344,7 @@ def generate_html(
344
344
  {grading_html}
345
345
  {comparison_html}
346
346
 
347
- <div class="footer">Generated by ct-skill-validator &mdash; CLEO Full Validation Report</div>
347
+ <div class="footer">Generated by ct-skill-author &mdash; CLEO Full Validation Report</div>
348
348
  </body>
349
349
  </html>
350
350
  """
@@ -31,7 +31,7 @@ from _skill_finder import find_first # noqa: E402
31
31
 
32
32
  # Preference order — first found wins. Lets the user opt-in to a different
33
33
  # eval skill via $SKILL_FINDER_PATH without code changes.
34
- PREFERENCE = ["skill-evaluator", "ct-skill-creator"]
34
+ PREFERENCE = ["skill-evaluator", "ct-skill-author", "ct-skill-creator"]
35
35
 
36
36
 
37
37
  def main() -> int:
@@ -83,7 +83,7 @@ def main() -> int:
83
83
  if args.executor:
84
84
  cmd += ["--executor", args.executor]
85
85
  else:
86
- # ct-skill-creator legacy paths
86
+ # ct-skill-author (formerly ct-skill-creator) eval paths
87
87
  if args.trigger:
88
88
  script = eval_skill_path / "scripts" / "run_eval.py"
89
89
  cmd = ["python3", str(script), "--skill-path", str(target_skill)]
@@ -1,11 +1,8 @@
1
1
  ---
2
2
  name: ct-spec-writer
3
3
  description: Technical specification writing using RFC 2119 language for clear, unambiguous requirements. Creates protocol specifications, technical requirements, API specifications, and architecture documents with testable requirements and compliance criteria. Use when writing specifications, defining protocols, documenting requirements, or creating API contracts. Triggers on specification tasks, protocol definition needs, or requirement documentation.
4
- version: 2.1.0
5
- core: false
6
- category: recommended
4
+ version: 2.1.2
7
5
  protocol: specification
8
- loomStage: specification
9
6
  adrRefs:
10
7
  - ADR-014
11
8
  - ADR-023
@@ -20,9 +17,14 @@ compatibility:
20
17
  - gemini-cli
21
18
  license: MIT
22
19
  metadata:
23
- version: 2.1.0
20
+ version: 2.1.2
24
21
  tier: on-demand
25
22
  install: harness
23
+ covers:
24
+ - packages/core/src/validation/protocols/cant/specification.cant
25
+ - packages/core/src/validation/protocols/protocols-markdown/specification.md
26
+ loomStage: specification
27
+ lastReviewed: 2026-09-28
26
28
  stability: stable
27
29
  ---
28
30
 
@@ -229,7 +231,7 @@ Spec blobs live in the docs SSoT; published copies on disk go in
229
231
  1. Read task: `{{TASK_SHOW_CMD}} {{TASK_ID}}`
230
232
  2. Start task: `{{TASK_START_CMD}} {{TASK_ID}}` (if not already started by orchestrator)
231
233
  3. Write specification to `docs/specs/{{SPEC_NAME}}.md`
232
- 4. Append manifest entry to `{{MANIFEST_PATH}}`
234
+ 4. Record the manifest entry: `cleo manifest append --task {{TASK_ID}} --type specification --content "<one-paragraph summary>"`
233
235
  5. Complete task: `{{TASK_COMPLETE_CMD}} {{TASK_ID}}`
234
236
  6. Return summary message
235
237
 
@@ -242,7 +244,7 @@ Spec blobs live in the docs SSoT; published copies on disk go in
242
244
  ### Output Requirements
243
245
 
244
246
  1. MUST write specification to: `docs/specs/{{SPEC_NAME}}.md`
245
- 2. MUST append ONE line to: `{{MANIFEST_PATH}}`
247
+ 2. MUST record ONE manifest entry: `cleo manifest append --entry '<entry JSON>'` (the flat manifest file is retired, ADR-027)
246
248
  3. MUST return ONLY: "Specification complete. Manifest appended to pipeline_manifest."
247
249
  4. MUST NOT return specification content in response
248
250
 
@@ -1,11 +1,8 @@
1
1
  ---
2
2
  name: ct-task-executor
3
3
  description: General implementation task execution for completing assigned CLEO tasks by following instructions and producing concrete deliverables. Handles coding, configuration, documentation work with quality verification against acceptance criteria and progress reporting. Use when executing implementation tasks, completing assigned work, or producing task deliverables. Triggers on implementation tasks, general execution needs, or task completion work.
4
- version: 2.7.0
5
- core: true
6
- category: core
4
+ version: 2.7.3
7
5
  protocol: implementation
8
- loomStage: implementation
9
6
  adrRefs:
10
7
  - ADR-070
11
8
  - ADR-062
@@ -20,10 +17,16 @@ compatibility:
20
17
  - gemini-cli
21
18
  license: MIT
22
19
  metadata:
23
- version: 2.7.0
20
+ version: 2.7.3
24
21
  tier: core
25
22
  install: harness
26
- lastReviewed: 2026-09-19
23
+ covers:
24
+ - packages/cleo/src/cli/commands/verify.ts
25
+ - packages/cleo/src/cli/commands/complete.ts
26
+ - packages/core/src/validation/protocols/cant/implementation.cant
27
+ - packages/core/src/validation/protocols/protocols-markdown/implementation.md
28
+ loomStage: implementation
29
+ lastReviewed: 2026-09-28
27
30
  stability: stable
28
31
  ---
29
32
 
@@ -96,8 +99,8 @@ Context injection for implementation tasks spawned via cleo-subagent. Provides d
96
99
  2. Focus already set by orchestrator (set if working standalone)
97
100
  3. Execute instructions (see Methodology below)
98
101
  4. Verify deliverables against acceptance criteria
99
- 5. Write output: `{{OUTPUT_DIR}}/{{DATE}}_{{TOPIC_SLUG}}.md`
100
- 6. Append manifest: `{{MANIFEST_PATH}}`
102
+ 5. Record output: `cleo docs add {{TASK_ID}} --content - --type note --slug {{TOPIC_SLUG}}`
103
+ 6. Record the manifest entry: `cleo manifest append --task {{TASK_ID}} --type implementation --content "<one-paragraph summary>"`
101
104
  7. Complete task: `{{TASK_COMPLETE_CMD}} {{TASK_ID}}`
102
105
  8. Return summary message
103
106
 
@@ -156,8 +159,8 @@ The routing prints a one-line info message to stderr (suppress with
156
159
 
157
160
  ### Output Requirements
158
161
 
159
- 1. MUST write findings to: `{{OUTPUT_DIR}}/{{DATE}}_{{TOPIC_SLUG}}.md`
160
- 2. MUST append ONE line to: `{{MANIFEST_PATH}}`
162
+ 1. MUST record findings with `cleo docs add {{TASK_ID}} --content - --type note --slug {{TOPIC_SLUG}}` (never a raw file under `.cleo/agent-outputs/`)
163
+ 2. MUST record ONE manifest entry: `cleo manifest append --entry '<entry JSON>'` (the flat manifest file is retired, ADR-027)
161
164
  3. MUST return ONLY: "Implementation complete. Manifest appended to pipeline_manifest."
162
165
  4. MUST NOT return implementation details in response
163
166
 
@@ -165,7 +168,7 @@ The routing prints a one-line info message to stderr (suppress with
165
168
 
166
169
  ## Output File Format
167
170
 
168
- Write to `{{OUTPUT_DIR}}/{{DATE}}_{{TOPIC_SLUG}}.md`:
171
+ Record it with `cleo docs add {{TASK_ID}} --content - --type note --slug {{TOPIC_SLUG}}`, using this body:
169
172
 
170
173
  ```markdown
171
174
  # {{TASK_NAME}}
@@ -190,7 +193,7 @@ Write to `{{OUTPUT_DIR}}/{{DATE}}_{{TOPIC_SLUG}}.md`:
190
193
 
191
194
  ## Acceptance Criteria Verification
192
195
 
193
- Record each criterion's changed artifacts and actual verification results. A merged PR with green CI provides provenance; it cannot automatically satisfy implementation, testing and review. Use `pr:<number>;files:<changed-path>` for implementation and actual result atoms for test/review gates, with explicit `satisfies:T1234#AC1` links for canonical criteria. The PR must relate to the task; documentation-only changes cannot prove a code fix. Research and documentation tasks may use appropriately scoped documentary evidence. Fetch the merge commit before claiming its artifact bytes were inspected. Criterion edits require fresh evidence. A completed child does not establish that its parent's independent criteria were met.
196
+ Record each criterion's changed artifacts and actual verification results. A merged PR with green CI provides provenance; it cannot automatically satisfy implementation, testing and review. Use `pr:<number>;files:<changed-path>` for implementation (`pr:<component>@<integration>` when your PR merged into an integration branch) and actual result atoms for test/review gates, with explicit `satisfies:T1234#AC1` links for canonical criteria. The PR must relate to the task; documentation-only changes cannot prove a code fix. Research and documentation tasks may use appropriately scoped documentary evidence. Fetch the merge commit before claiming its artifact bytes were inspected. Criterion edits require fresh evidence. A completed child does not establish that its parent's independent criteria were met.
194
197
 
195
198
 
196
199
  | Criterion | Status | Notes |
@@ -213,7 +216,7 @@ Record each criterion's changed artifacts and actual verification results. A mer
213
216
 
214
217
  ## Manifest Entry Format
215
218
 
216
- Append ONE entry via `cleo manifest append <json>` (writes to pipeline_manifest table per ADR-027):
219
+ Append ONE entry via `cleo manifest append --entry '<json>'` (writes to pipeline_manifest table per ADR-027):
217
220
 
218
221
  ```json
219
222
  {"id":"{{TOPIC_SLUG}}-{{DATE}}","file":"{{DATE}}_{{TOPIC_SLUG}}.md","title":"{{TASK_NAME}}","date":"{{DATE}}","status":"complete","agent_type":"implementation","topics":{{TOPICS_JSON}},"key_findings":["Completed: deliverable 1","Completed: deliverable 2","All acceptance criteria passed"],"actionable":false,"needs_followup":[],"linked_tasks":["{{EPIC_ID}}","{{TASK_ID}}"]}
@@ -237,7 +240,7 @@ Append ONE entry via `cleo manifest append <json>` (writes to pipeline_manifest
237
240
  - [ ] All instructions executed
238
241
  - [ ] All deliverables produced
239
242
  - [ ] Acceptance criteria verified
240
- - [ ] Output file written to `{{OUTPUT_DIR}}/`
243
+ - [ ] Output recorded with `cleo docs add` (slug in the return message)
241
244
  - [ ] Manifest entry appended (single line, valid JSON)
242
245
  - [ ] Task completed via `{{TASK_COMPLETE_CMD}}`
243
246
  - [ ] Session ended with summary note (if executor owns session)
@@ -304,8 +307,8 @@ cleo session list --all
304
307
  # Clean up stale sessions (72h+ inactive)
305
308
  cleo session gc
306
309
 
307
- # Force cleanup including active sessions (use cautiously)
308
- cleo session gc --include-active
310
+ # Also end active sessions idle longer than N days (use cautiously)
311
+ cleo session gc --max-age 1
309
312
  ```
310
313
 
311
314
  ### Best Practices
@@ -61,7 +61,7 @@ relate commits to the task.
61
61
  without reading ADR-062. The CLEO contract is that workers commit on
62
62
  their task branch; the integrator MUST use `git merge --no-ff
63
63
  task/<id>` to preserve SHAs, author identity, and the
64
- `cleo find <task-id> --commits` trace.
64
+ `git log --grep <task-id>` trace.
65
65
 
66
66
  **Fix.** Always `git merge --no-ff task/<TID>` for integration. See
67
67
  `feedback_cherry_pick_worktrees.md` for the full pattern.
@@ -1,11 +1,8 @@
1
1
  ---
2
2
  name: ct-validator
3
3
  description: Compliance validation for verifying systems, documents, or code against requirements, schemas, or standards. Performs schema validation, code compliance checks, document validation, and protocol compliance verification with detailed pass/fail reporting. Use when validating compliance, checking schemas, verifying code standards, or auditing protocol implementations. Triggers on validation tasks, compliance checks, or quality verification needs.
4
- version: 2.0.0
5
- core: false
6
- category: recommended
4
+ version: 2.0.4
7
5
  protocol: validation
8
- loomStage: validation
9
6
  adrRefs:
10
7
  - ADR-051
11
8
  - ADR-023
@@ -20,9 +17,14 @@ compatibility:
20
17
  - gemini-cli
21
18
  license: MIT
22
19
  metadata:
23
- version: 2.0.0
20
+ version: 2.0.4
24
21
  tier: on-demand
25
22
  install: harness
23
+ covers:
24
+ - packages/core/src/validation/protocols/cant/validation.cant
25
+ - packages/core/src/validation/protocols/protocols-markdown/validation.md
26
+ loomStage: validation
27
+ lastReviewed: 2026-09-28
26
28
  stability: stable
27
29
  ---
28
30
 
@@ -194,8 +196,8 @@ the Validate-phase Lead prompt, listing the touched packages and the exact
194
196
  1. Read task: `{{TASK_SHOW_CMD}} {{TASK_ID}}`
195
197
  2. Start task: `{{TASK_START_CMD}} {{TASK_ID}}` (if not already started by orchestrator)
196
198
  3. Execute validation checks
197
- 4. Write validation report to `{{OUTPUT_DIR}}/{{DATE}}_{{TOPIC_SLUG}}.md`
198
- 5. Append manifest entry to `{{MANIFEST_PATH}}`
199
+ 4. Record validation report with `cleo docs add {{TASK_ID}} --content - --type note --slug {{TOPIC_SLUG}}`
200
+ 5. Record the manifest entry: `cleo manifest append --task {{TASK_ID}} --type validation --content "<one-paragraph summary>"`
199
201
  6. Complete task: `{{TASK_COMPLETE_CMD}} {{TASK_ID}}`
200
202
  7. Return summary message
201
203
 
@@ -207,8 +209,8 @@ the Validate-phase Lead prompt, listing the touched packages and the exact
207
209
 
208
210
  ### Output Requirements
209
211
 
210
- 1. MUST write validation report to: `{{OUTPUT_DIR}}/{{DATE}}_{{TOPIC_SLUG}}.md`
211
- 2. MUST append ONE line to: `{{MANIFEST_PATH}}`
212
+ 1. MUST record validation report with `cleo docs add {{TASK_ID}} --content - --type note --slug {{TOPIC_SLUG}}` (never a raw file under `.cleo/agent-outputs/`)
213
+ 2. MUST record ONE manifest entry: `cleo manifest append --entry '<entry JSON>'` (the flat manifest file is retired, ADR-027)
212
214
  3. MUST return ONLY: "Validation complete. Manifest appended to pipeline_manifest."
213
215
  4. MUST NOT return validation content in response
214
216
 
@@ -106,7 +106,7 @@ unactionable — the consumer cannot prioritize.
106
106
  ### Warnings
107
107
 
108
108
  **W-001**: `packages/cleo/src/dispatch.ts` is 487 lines (warn at 400).
109
- - Rule: ct-skill-validator audit_body §body-length
109
+ - Rule: ct-skill-author audit_body §body-length
110
110
  - Fix: Extract sub-handlers into sibling files.
111
111
  - Verification: re-run audit_body.py.
112
112
 
@@ -93,9 +93,9 @@ links; scan for placeholder text; verify formatting.
93
93
  **Tool examples.**
94
94
 
95
95
  ```bash
96
- # Use the ct-skill-validator scripts as a model
97
- python packages/skills/skills/ct-skill-validator/scripts/validate.py <skill-dir>
98
- python packages/skills/skills/ct-skill-validator/scripts/audit_body.py <skill-dir>
96
+ # Use the ct-skill-author scripts as a model
97
+ python packages/skills/skills/ct-skill-author/scripts/validate.py <skill-dir>
98
+ python packages/skills/skills/ct-skill-author/scripts/audit_body.py <skill-dir>
99
99
 
100
100
  # Generic markdown link check
101
101
  markdown-link-check docs/specs/*.md