@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.
- package/README.md +46 -63
- package/frontmatter.d.mts +60 -0
- package/frontmatter.mjs +277 -0
- package/index.d.ts +3 -3
- package/index.js +34 -9
- package/package.json +4 -2
- package/profiles/core.json +10 -3
- package/profiles/full.json +10 -6
- package/profiles/recommended.json +29 -3
- package/skills/_shared/manifest-operations.md +19 -40
- package/skills/_shared/skill-chaining-patterns.md +5 -9
- package/skills/_shared/subagent-protocol-base.md +6 -6
- package/skills/_shared/task-system-integration.md +5 -5
- package/skills/ct-adr-recorder/SKILL.md +18 -17
- package/skills/ct-artifact-publisher/SKILL.md +10 -7
- package/skills/ct-cleo/SKILL.md +26 -9
- package/skills/ct-cleo/references/loom-lifecycle.md +1 -1
- package/skills/{ct-memory/SKILL.md → ct-cleo/references/memory.md} +10 -23
- package/skills/ct-cleo/references/orchestrator-constraints.md +5 -5
- package/skills/ct-cleo/references/session-protocol.md +11 -8
- package/skills/{ct-stickynote/SKILL.md → ct-cleo/references/sticky-notes.md} +7 -29
- package/skills/ct-codebase-mapper/SKILL.md +62 -38
- package/skills/ct-consensus-voter/SKILL.md +10 -7
- package/skills/ct-contribution/SKILL.md +7 -5
- package/skills/ct-dev-workflow/SKILL.md +7 -7
- package/skills/ct-documentor/SKILL.md +29 -29
- package/skills/{ct-docs-review/__tests__/skill-docs-review.test.ts → ct-documentor/__tests__/reviewing-reference.test.ts} +4 -3
- package/skills/{ct-docs-write/__tests__/skill-docs-write.test.ts → ct-documentor/__tests__/writing-reference.test.ts} +4 -3
- package/skills/ct-documentor/references/anti-patterns.md +8 -8
- package/skills/{ct-docs-write → ct-documentor}/references/audience-targeting.md +5 -5
- package/skills/ct-documentor/references/chain-orchestration.md +19 -19
- package/skills/{ct-docs-write → ct-documentor}/references/cleo-style-guide.md +1 -1
- package/skills/ct-documentor/references/doc-types-and-templates.md +1 -1
- package/skills/{ct-docs-review → ct-documentor}/references/pr-review-mode.md +1 -1
- package/skills/{ct-docs-review/SKILL.md → ct-documentor/references/reviewing.md} +6 -26
- package/skills/ct-documentor/references/style-coordination.md +5 -5
- package/skills/{ct-docs-review → ct-documentor}/references/style-violations.md +1 -1
- package/skills/{ct-docs-write/SKILL.md → ct-documentor/references/writing.md} +5 -25
- package/skills/ct-epic-architect/SKILL.md +12 -9
- package/skills/ct-epic-architect/references/commands.md +5 -5
- package/skills/ct-epic-architect/references/output-format.md +2 -2
- package/skills/ct-epic-architect/references/patterns.md +2 -2
- package/skills/ct-epic-architect/references/skill-aware-execution.md +3 -3
- package/skills/ct-grade/SKILL.md +3 -4
- package/skills/ct-grade/agents/scenario-runner.md +1 -1
- package/skills/ct-ivt-looper/SKILL.md +23 -22
- package/skills/ct-lead/SKILL.md +52 -13
- package/skills/ct-lead/references/aggregation-protocol.md +44 -21
- package/skills/ct-lead/references/spawn-pattern.md +12 -11
- package/skills/ct-orchestrator/README.md +2 -2
- package/skills/ct-orchestrator/SKILL.md +14 -10
- package/skills/ct-orchestrator/references/SUBAGENT-PROTOCOL-BLOCK.md +4 -4
- package/skills/ct-orchestrator/references/autonomous-operation.md +4 -4
- package/skills/ct-orchestrator/references/orchestrator-compliance.md +3 -3
- package/skills/ct-orchestrator/references/orchestrator-patterns.md +20 -19
- package/skills/ct-orchestrator/references/orchestrator-recovery.md +13 -23
- package/skills/ct-orchestrator/references/orchestrator-spawning.md +9 -10
- package/skills/ct-orchestrator/references/orchestrator-tokens.md +9 -9
- package/skills/ct-provenance-keeper/SKILL.md +10 -7
- package/skills/ct-release-orchestrator/SKILL.md +21 -13
- package/skills/ct-release-orchestrator/references/composition.md +1 -1
- package/skills/ct-release-orchestrator/references/release-types.md +33 -15
- package/skills/ct-research-agent/SKILL.md +14 -12
- package/skills/ct-research-agent/references/triggers-and-routing.md +4 -4
- package/skills/{ct-skill-creator → ct-skill-author}/SKILL.md +9 -6
- package/skills/{ct-skill-validator → ct-skill-author}/agents/ecosystem-checker.md +1 -1
- package/skills/{ct-skill-validator → ct-skill-author}/evals/quality_evals.json +10 -10
- package/skills/{ct-skill-validator → ct-skill-author}/evals/trigger_queries.json +1 -1
- package/skills/{ct-skill-validator → ct-skill-author}/references/cleo-ecosystem-rules.md +8 -4
- package/skills/{ct-skill-creator → ct-skill-author}/references/provider-deployment.md +10 -6
- package/skills/{ct-skill-validator/SKILL.md → ct-skill-author/references/validating.md} +14 -21
- package/skills/{ct-skill-validator → ct-skill-author}/references/validation-rules.md +2 -2
- package/skills/{ct-skill-validator → ct-skill-author}/scripts/_skill_finder.py +2 -2
- package/skills/{ct-skill-validator → ct-skill-author}/scripts/check_depth.py +2 -5
- package/skills/{ct-skill-validator → ct-skill-author}/scripts/generate_validation_report.py +1 -1
- package/skills/{ct-skill-validator → ct-skill-author}/scripts/run_quality_eval.py +2 -2
- package/skills/ct-spec-writer/SKILL.md +9 -7
- package/skills/ct-task-executor/SKILL.md +19 -16
- package/skills/ct-task-executor/references/common-failures.md +1 -1
- package/skills/ct-validator/SKILL.md +11 -9
- package/skills/ct-validator/references/compliance-reports.md +1 -1
- package/skills/ct-validator/references/validation-modes.md +3 -3
- package/skills/manifest.json +381 -365
- package/dispatch-config.json +0 -983
- package/provider-skills-map.json +0 -97
- package/skills/ct-docs-lookup/SKILL.md +0 -185
- package/skills/ct-docs-lookup/references/ctx7-workflow.md +0 -198
- package/skills/ct-docs-lookup/references/library-id-resolution.md +0 -217
- package/skills/ct-docs-lookup/references/version-specific-docs.md +0 -220
- package/skills/ct-master-tac/SKILL.md +0 -120
- package/skills/ct-master-tac/__tests__/install.test.ts +0 -304
- package/skills/ct-master-tac/bundled/README.md +0 -40
- package/skills/ct-master-tac/bundled/protocols/architecture-decision.cant +0 -90
- package/skills/ct-master-tac/bundled/protocols/artifact-publish.cant +0 -105
- package/skills/ct-master-tac/bundled/protocols/consensus.cant +0 -85
- package/skills/ct-master-tac/bundled/protocols/contribution.cant +0 -92
- package/skills/ct-master-tac/bundled/protocols/decomposition.cant +0 -102
- package/skills/ct-master-tac/bundled/protocols/implementation.cant +0 -77
- package/skills/ct-master-tac/bundled/protocols/provenance.cant +0 -100
- package/skills/ct-master-tac/bundled/protocols/release.cant +0 -107
- package/skills/ct-master-tac/bundled/protocols/research.cant +0 -77
- package/skills/ct-master-tac/bundled/protocols/specification.cant +0 -77
- package/skills/ct-master-tac/bundled/protocols/testing.cant +0 -99
- package/skills/ct-master-tac/bundled/protocols/validation.cant +0 -75
- package/skills/ct-master-tac/bundled/teams/platform.cant +0 -115
- package/skills/ct-master-tac/manifest.json +0 -55
- package/skills/ct-skill-creator/eval-viewer/__pycache__/generate_review.cpython-314.pyc +0 -0
- package/skills/ct-skill-creator/manifest-entry.json +0 -17
- package/skills/ct-skill-creator/scripts/__pycache__/__init__.cpython-314.pyc +0 -0
- package/skills/ct-skill-creator/scripts/__pycache__/aggregate_benchmark.cpython-314.pyc +0 -0
- package/skills/ct-skill-creator/scripts/__pycache__/generate_report.cpython-314.pyc +0 -0
- package/skills/ct-skill-creator/scripts/__pycache__/improve_description.cpython-314.pyc +0 -0
- package/skills/ct-skill-creator/scripts/__pycache__/init_skill.cpython-314.pyc +0 -0
- package/skills/ct-skill-creator/scripts/__pycache__/quick_validate.cpython-314.pyc +0 -0
- package/skills/ct-skill-creator/scripts/__pycache__/run_eval.cpython-314.pyc +0 -0
- package/skills/ct-skill-creator/scripts/__pycache__/run_loop.cpython-314.pyc +0 -0
- package/skills/ct-skill-creator/scripts/__pycache__/utils.cpython-314.pyc +0 -0
- package/skills/ct-skill-validator/manifest-entry.json +0 -20
- package/skills/ct-stickynote/README.md +0 -14
- package/skills/signaldock-connect/SKILL.md +0 -137
- package/skills/signaldock-connect/assets/agent-card.json +0 -48
- package/skills/signaldock-connect/references/api-endpoints.md +0 -131
- package/skills.json +0 -495
- /package/skills/{ct-docs-review → ct-documentor}/references/inline-comment-patterns.md +0 -0
- /package/skills/{ct-docs-write → ct-documentor}/references/markdown-patterns.md +0 -0
- /package/skills/{ct-skill-creator → ct-skill-author}/agents/analyzer.md +0 -0
- /package/skills/{ct-skill-creator → ct-skill-author}/agents/comparator.md +0 -0
- /package/skills/{ct-skill-creator → ct-skill-author}/agents/grader.md +0 -0
- /package/skills/{ct-skill-creator → ct-skill-author}/assets/eval_review.html +0 -0
- /package/skills/{ct-skill-validator → ct-skill-author}/assets/valid-skill-example.md +0 -0
- /package/skills/{ct-skill-creator → ct-skill-author}/eval-viewer/generate_review.py +0 -0
- /package/skills/{ct-skill-creator → ct-skill-author}/eval-viewer/viewer.html +0 -0
- /package/skills/{ct-skill-creator → ct-skill-author}/references/dynamic-context.md +0 -0
- /package/skills/{ct-skill-creator → ct-skill-author}/references/frontmatter.md +0 -0
- /package/skills/{ct-skill-creator → ct-skill-author}/references/invocation-control.md +0 -0
- /package/skills/{ct-skill-creator → ct-skill-author}/references/output-patterns.md +0 -0
- /package/skills/{ct-skill-creator → ct-skill-author}/references/schemas.md +0 -0
- /package/skills/{ct-skill-creator → ct-skill-author}/references/workflows.md +0 -0
- /package/skills/{ct-skill-creator → ct-skill-author}/scripts/__init__.py +0 -0
- /package/skills/{ct-skill-creator → ct-skill-author}/scripts/aggregate_benchmark.py +0 -0
- /package/skills/{ct-skill-validator → ct-skill-author}/scripts/audit_body.py +0 -0
- /package/skills/{ct-skill-validator → ct-skill-author}/scripts/check_ecosystem.py +0 -0
- /package/skills/{ct-skill-creator → ct-skill-author}/scripts/generate_report.py +0 -0
- /package/skills/{ct-skill-creator → ct-skill-author}/scripts/improve_description.py +0 -0
- /package/skills/{ct-skill-creator → ct-skill-author}/scripts/init_skill.py +0 -0
- /package/skills/{ct-skill-creator → ct-skill-author}/scripts/package_skill.py +0 -0
- /package/skills/{ct-skill-creator → ct-skill-author}/scripts/quick_validate.py +0 -0
- /package/skills/{ct-skill-creator → ct-skill-author}/scripts/run_eval.py +0 -0
- /package/skills/{ct-skill-creator → ct-skill-author}/scripts/run_loop.py +0 -0
- /package/skills/{ct-skill-creator → ct-skill-author}/scripts/utils.py +0 -0
- /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
|
|
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
|
|
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-
|
|
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
|
|
84
|
-
- Tier 5 — Provider Compatibility: provider-skills-map check (
|
|
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-
|
|
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-
|
|
133
|
+
`ct-skill-author` as legacy fallback).
|
|
141
134
|
|
|
142
|
-
> **Scope boundary:** `ct-skill-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
347
|
+
<div class="footer">Generated by ct-skill-author — 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
|
|
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.
|
|
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.
|
|
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.
|
|
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
|
|
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.
|
|
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.
|
|
20
|
+
version: 2.7.3
|
|
24
21
|
tier: core
|
|
25
22
|
install: harness
|
|
26
|
-
|
|
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.
|
|
100
|
-
6.
|
|
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
|
|
160
|
-
2. MUST
|
|
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
|
-
|
|
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
|
|
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
|
|
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
|
-
#
|
|
308
|
-
cleo session gc --
|
|
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
|
-
`
|
|
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.
|
|
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.
|
|
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.
|
|
198
|
-
5.
|
|
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
|
|
211
|
-
2. MUST
|
|
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-
|
|
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-
|
|
97
|
-
python packages/skills/skills/ct-skill-
|
|
98
|
-
python packages/skills/skills/ct-skill-
|
|
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
|