@cleocode/skills 2026.9.20 → 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.
- 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 +6 -6
- package/skills/ct-adr-recorder/SKILL.md +22 -16
- package/skills/ct-artifact-publisher/SKILL.md +14 -6
- package/skills/ct-cleo/SKILL.md +97 -16
- package/skills/ct-cleo/__tests__/injection-content.test.ts +62 -13
- package/skills/ct-cleo/references/loom-lifecycle.md +1 -1
- package/skills/{ct-memory/SKILL.md → ct-cleo/references/memory.md} +10 -18
- package/skills/ct-cleo/references/orchestrator-constraints.md +5 -5
- package/skills/ct-cleo/references/session-protocol.md +17 -9
- package/skills/{ct-stickynote/SKILL.md → ct-cleo/references/sticky-notes.md} +7 -25
- package/skills/ct-codebase-mapper/SKILL.md +66 -38
- package/skills/ct-consensus-voter/SKILL.md +14 -6
- package/skills/ct-contribution/SKILL.md +11 -5
- package/skills/ct-council/SKILL.md +5 -0
- package/skills/ct-dev-workflow/SKILL.md +9 -8
- package/skills/ct-documentor/SKILL.md +37 -34
- 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 -22
- 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 -21
- package/skills/ct-epic-architect/SKILL.md +16 -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 +7 -4
- package/skills/ct-grade/agents/scenario-runner.md +1 -1
- package/skills/ct-ivt-looper/SKILL.md +27 -21
- package/skills/ct-lead/SKILL.md +49 -12
- 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 +34 -11
- 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 +14 -6
- package/skills/ct-release-orchestrator/SKILL.md +23 -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 +18 -12
- package/skills/ct-research-agent/references/triggers-and-routing.md +4 -4
- package/skills/{ct-skill-creator → ct-skill-author}/SKILL.md +12 -4
- 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 -16
- 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 +13 -7
- package/skills/ct-task-executor/SKILL.md +21 -21
- package/skills/ct-task-executor/references/common-failures.md +3 -3
- package/skills/ct-task-executor/references/evidence-and-gates.md +1 -0
- package/skills/ct-validator/SKILL.md +15 -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 +1313 -481
- package/dispatch-config.json +0 -983
- package/provider-skills-map.json +0 -97
- package/skills/ct-docs-lookup/SKILL.md +0 -181
- 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 -116
- package/skills/ct-master-tac/__tests__/install.test.ts +0 -283
- 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 -132
- 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,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Regression test for ct-docs-review/
|
|
2
|
+
* Regression test for the ct-docs-review content, now ct-documentor/references/reviewing.md (T9642 / Epic T9629 / Saga T9625).
|
|
3
3
|
*
|
|
4
4
|
* Pins the SDK-first review contract: reviewers MUST read docs through
|
|
5
5
|
* `cleo docs fetch <slug>` rather than the working-tree file. Documents
|
|
@@ -19,10 +19,11 @@ import { describe, expect, it } from 'vitest';
|
|
|
19
19
|
|
|
20
20
|
const thisFile = fileURLToPath(import.meta.url);
|
|
21
21
|
const skillRoot = resolve(dirname(thisFile), '..');
|
|
22
|
-
|
|
22
|
+
// T12649: ct-docs-review merged into ct-documentor/references/reviewing.md (D11157).
|
|
23
|
+
const skillPath = join(skillRoot, 'references', 'reviewing.md');
|
|
23
24
|
const skillContent = readFileSync(skillPath, 'utf-8');
|
|
24
25
|
|
|
25
|
-
describe('ct-docs-review
|
|
26
|
+
describe('ct-documentor references/reviewing.md (was ct-docs-review) — SDK-first contract (T9642)', () => {
|
|
26
27
|
it('teaches `cleo docs fetch` as the canonical read path', () => {
|
|
27
28
|
expect(skillContent).toContain('cleo docs fetch');
|
|
28
29
|
});
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Regression test for ct-docs-write/
|
|
2
|
+
* Regression test for the ct-docs-write content, now ct-documentor/references/writing.md (T9641 / Epic T9629 / Saga T9625).
|
|
3
3
|
*
|
|
4
4
|
* Pins the SDK-first writing contract: every new doc MUST flow through
|
|
5
5
|
* `cleo docs add --type X --slug Y` rather than direct filesystem writes.
|
|
@@ -18,10 +18,11 @@ import { describe, expect, it } from 'vitest';
|
|
|
18
18
|
|
|
19
19
|
const thisFile = fileURLToPath(import.meta.url);
|
|
20
20
|
const skillRoot = resolve(dirname(thisFile), '..');
|
|
21
|
-
|
|
21
|
+
// T12649: ct-docs-write merged into ct-documentor/references/writing.md (D11157).
|
|
22
|
+
const skillPath = join(skillRoot, 'references', 'writing.md');
|
|
22
23
|
const skillContent = readFileSync(skillPath, 'utf-8');
|
|
23
24
|
|
|
24
|
-
describe('ct-docs-write
|
|
25
|
+
describe('ct-documentor references/writing.md (was ct-docs-write) — SDK-first contract (T9641)', () => {
|
|
25
26
|
it('teaches `cleo docs add` as the canonical write path', () => {
|
|
26
27
|
expect(skillContent).toContain('cleo docs add');
|
|
27
28
|
});
|
|
@@ -42,12 +42,12 @@ existing page; do not create a sibling.
|
|
|
42
42
|
**Symptom.** A how-to or reference cites a library API that has been
|
|
43
43
|
renamed, deprecated, or removed.
|
|
44
44
|
|
|
45
|
-
**Detection cue.**
|
|
45
|
+
**Detection cue.** the Context7 MCP was NOT invoked for the topic.
|
|
46
46
|
|
|
47
47
|
**Root cause.** Documentor coordinator skipped lookup because "I know
|
|
48
48
|
the API" or assumed training data was current.
|
|
49
49
|
|
|
50
|
-
**Fix.** Always invoke
|
|
50
|
+
**Fix.** Always invoke the Context7 MCP when documenting external
|
|
51
51
|
library behavior. Training data is stale by definition — Context7 is
|
|
52
52
|
the current source.
|
|
53
53
|
|
|
@@ -118,7 +118,7 @@ was assembled from multiple sources without normalization.
|
|
|
118
118
|
|
|
119
119
|
**Fix.** CLEO style is "you" (second person) for how-tos and tutorials;
|
|
120
120
|
"CLEO" (third person) for explanations and references. Apply
|
|
121
|
-
consistently. Pass the choice explicitly to ct-
|
|
121
|
+
consistently. Pass the choice explicitly to the writing guide (`ct-documentor/references/writing.md`) as input.
|
|
122
122
|
|
|
123
123
|
## 8. The Forbidden Word Sneak-In
|
|
124
124
|
|
|
@@ -154,7 +154,7 @@ step bodies.
|
|
|
154
154
|
|
|
155
155
|
**Fix.** Tutorials and how-tos use imperative voice — "Run the
|
|
156
156
|
command", "Open the file", "Set the value". Pass that constraint
|
|
157
|
-
explicitly to ct-
|
|
157
|
+
explicitly to the writing guide (`ct-documentor/references/writing.md`).
|
|
158
158
|
|
|
159
159
|
## 10. The Lost Manifest
|
|
160
160
|
|
|
@@ -172,10 +172,10 @@ of the children appended in a wrong format).
|
|
|
172
172
|
children — owns the entry. Run:
|
|
173
173
|
|
|
174
174
|
```bash
|
|
175
|
-
cleo manifest append
|
|
175
|
+
cleo manifest append --entry "$(cat <<'JSON'
|
|
176
176
|
{"id":"docs-<topic>-<date>", "file":"<path>", "title":"...", ...}
|
|
177
|
-
|
|
178
|
-
)
|
|
177
|
+
JSON
|
|
178
|
+
)"
|
|
179
179
|
```
|
|
180
180
|
|
|
181
181
|
After append, verify with:
|
|
@@ -211,6 +211,6 @@ violations the local review didn't catch.
|
|
|
211
211
|
**Root cause.** Documentor ran review on the draft, but not on the
|
|
212
212
|
PR diff. Integration introduced drift (rebase fixups, merge prose).
|
|
213
213
|
|
|
214
|
-
**Fix.** Always run `
|
|
214
|
+
**Fix.** Always run `references/reviewing.md` in PR mode on the PR's diff
|
|
215
215
|
before requesting merge. Catches drift that slipped through during
|
|
216
216
|
integration.
|
|
@@ -28,8 +28,8 @@ exploring.
|
|
|
28
28
|
Conversational, practical, second-person.
|
|
29
29
|
|
|
30
30
|
```markdown
|
|
31
|
-
You can run the release pipeline manually with `cleo release
|
|
32
|
-
Just kidding — never use "just". Run it with `cleo release
|
|
31
|
+
You can run the release pipeline manually with `cleo release plan`.
|
|
32
|
+
Just kidding — never use "just". Run it with `cleo release plan`,
|
|
33
33
|
and CLEO walks through the gates one by one.
|
|
34
34
|
```
|
|
35
35
|
|
|
@@ -40,7 +40,7 @@ Do not explain why unless the why directly affects behavior.
|
|
|
40
40
|
|
|
41
41
|
```markdown
|
|
42
42
|
GOOD (end-user):
|
|
43
|
-
Run `cleo release
|
|
43
|
+
Run `cleo release plan v2026.5.82 --epic T9567`.
|
|
44
44
|
|
|
45
45
|
You see:
|
|
46
46
|
- The 12 release steps run in order.
|
|
@@ -51,7 +51,7 @@ If a step fails, CLEO stops and prints the failing gate. Fix the issue
|
|
|
51
51
|
and re-run.
|
|
52
52
|
|
|
53
53
|
BAD (end-user, too deep):
|
|
54
|
-
The `cleo release
|
|
54
|
+
The `cleo release plan` command dispatches through `dispatch.ts`,
|
|
55
55
|
loading the `release` handler from the registry built at module
|
|
56
56
|
init. The handler then constructs a release plan using the 12-stage
|
|
57
57
|
state machine defined in `packages/cleo/src/commands/release/...`
|
|
@@ -198,7 +198,7 @@ The most common style failure is mixing audiences within a single doc.
|
|
|
198
198
|
|
|
199
199
|
```markdown
|
|
200
200
|
BAD:
|
|
201
|
-
Run `cleo release
|
|
201
|
+
Run `cleo release plan`.
|
|
202
202
|
|
|
203
203
|
(Internally, this dispatches through `dispatch.ts` to the release
|
|
204
204
|
handler registered via the registry pattern...)
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# Chain Orchestration
|
|
2
2
|
|
|
3
3
|
`ct-documentor` is a coordinator skill — it does not produce documentation
|
|
4
|
-
directly. Its job is to
|
|
5
|
-
`
|
|
4
|
+
directly. Its job is to run three phases (a Context7 MCP lookup, the writing
|
|
5
|
+
guide in `references/writing.md`, the review guide in `references/reviewing.md`) in the right sequence with the right
|
|
6
6
|
inputs. This reference defines when to invoke each child, what to pass,
|
|
7
7
|
and how to handle returns.
|
|
8
8
|
|
|
@@ -10,9 +10,9 @@ and how to handle returns.
|
|
|
10
10
|
|
|
11
11
|
| Child | Purpose | Owns |
|
|
12
12
|
|-------|---------|------|
|
|
13
|
-
|
|
|
14
|
-
| `ct-
|
|
15
|
-
| `ct-
|
|
13
|
+
| the Context7 MCP | Library/framework API lookup via Context7 | Current external docs |
|
|
14
|
+
| `ct-documentor` (`references/writing.md`) | Drafts content following CLEO style guide | New content |
|
|
15
|
+
| `ct-documentor` (`references/reviewing.md`) | Reviews against style guide; supports PR mode | Quality validation |
|
|
16
16
|
|
|
17
17
|
A complete documentation task usually invokes write + review. Lookup is
|
|
18
18
|
optional — only when the doc must cite a library's actual current API.
|
|
@@ -33,9 +33,9 @@ For every documentation task, run this sequence before invoking any child.
|
|
|
33
33
|
- Lifecycle: new file | update existing | consolidate scattered
|
|
34
34
|
|
|
35
35
|
3. CHAIN
|
|
36
|
-
- If type touches library APIs →
|
|
37
|
-
- Always → ct-
|
|
38
|
-
- Always → ct-
|
|
36
|
+
- If type touches library APIs → the Context7 MCP first
|
|
37
|
+
- Always → the writing guide (`ct-documentor/references/writing.md`)
|
|
38
|
+
- Always → the review guide (`ct-documentor/references/reviewing.md`)
|
|
39
39
|
|
|
40
40
|
4. REPORT
|
|
41
41
|
- Manifest entry with "Files NOT Created (Avoided Duplication)" section
|
|
@@ -45,7 +45,7 @@ For every documentation task, run this sequence before invoking any child.
|
|
|
45
45
|
The Discovery step is mandatory. Skipping it produces duplicate
|
|
46
46
|
documentation — the dominant failure mode of past documentation tasks.
|
|
47
47
|
|
|
48
|
-
##
|
|
48
|
+
## Lookup phase (Context7 MCP)
|
|
49
49
|
|
|
50
50
|
Use when the task touches a specific library, framework, or external
|
|
51
51
|
API. Pass the library name, the user's actual question (full sentence,
|
|
@@ -77,10 +77,10 @@ not a single word), and any version qualifier.
|
|
|
77
77
|
**Return.** Documentation excerpts with citations. Do not paste blindly —
|
|
78
78
|
synthesize into the doc body, citing the library version.
|
|
79
79
|
|
|
80
|
-
##
|
|
80
|
+
## Writing phase (`references/writing.md`)
|
|
81
81
|
|
|
82
82
|
The write child owns content production. Its frontmatter (under
|
|
83
|
-
`packages/skills/skills/ct-
|
|
83
|
+
`packages/skills/skills/ct-documentor/references/writing.md`) describes the style
|
|
84
84
|
guide it enforces. Always invoke for any new or updated content.
|
|
85
85
|
|
|
86
86
|
**Input shape:**
|
|
@@ -105,7 +105,7 @@ into tutorial mode when reference was needed (and vice versa).
|
|
|
105
105
|
**Return.** A drafted markdown file. The documentor does not edit it
|
|
106
106
|
directly — the next step is review.
|
|
107
107
|
|
|
108
|
-
##
|
|
108
|
+
## Review phase (`references/reviewing.md`)
|
|
109
109
|
|
|
110
110
|
The review child owns quality validation. It checks against the CLEO
|
|
111
111
|
style guide and is the gate before the documentation task can complete.
|
|
@@ -131,7 +131,7 @@ file):
|
|
|
131
131
|
|
|
132
132
|
**Return.** A numbered list of issues with line refs and suggested
|
|
133
133
|
fixes. If the issue count is 0, the doc passes. If non-zero, the
|
|
134
|
-
documentor MUST loop — pass the issues back to `ct-
|
|
134
|
+
documentor MUST loop — pass the issues back to `ct-documentor` (`references/writing.md`) for
|
|
135
135
|
revision, then re-review.
|
|
136
136
|
|
|
137
137
|
## The Review Loop
|
|
@@ -141,11 +141,11 @@ The documentor MUST loop until review returns zero issues OR escalates
|
|
|
141
141
|
to HITL.
|
|
142
142
|
|
|
143
143
|
```text
|
|
144
|
-
draft =
|
|
145
|
-
issues =
|
|
144
|
+
draft = write_phase(input)
|
|
145
|
+
issues = review_phase(draft)
|
|
146
146
|
while issues != [] and iteration < 3:
|
|
147
|
-
draft =
|
|
148
|
-
issues =
|
|
147
|
+
draft = write_phase(input + issues)
|
|
148
|
+
issues = review_phase(draft)
|
|
149
149
|
if issues != []:
|
|
150
150
|
escalate_to_HITL("3 review iterations did not converge")
|
|
151
151
|
```
|
|
@@ -170,7 +170,7 @@ would inflate the manifest.
|
|
|
170
170
|
"topics": ["documentation", "auth", "saml"],
|
|
171
171
|
"key_findings": [
|
|
172
172
|
"Created docs/guides/auth-setup.md (how-to, end-user audience)",
|
|
173
|
-
"Cited Next.js 15 middleware API via
|
|
173
|
+
"Cited Next.js 15 middleware API via the Context7 MCP",
|
|
174
174
|
"Review converged in 2 iterations (8 issues → 3 → 0)",
|
|
175
175
|
"Updated docs/index.md to reference new guide"
|
|
176
176
|
],
|
|
@@ -188,7 +188,7 @@ ran. This lets the orchestrator confirm the contract was honored.
|
|
|
188
188
|
| Symptom | Cause | Fix |
|
|
189
189
|
|---------|-------|-----|
|
|
190
190
|
| Doc duplicates existing content | Skipped Discovery | Always Glob + Grep before write |
|
|
191
|
-
| Doc cites stale API | Skipped
|
|
191
|
+
| Doc cites stale API | Skipped the Context7 MCP | Invoke lookup for any library API claim |
|
|
192
192
|
| Doc fails review repeatedly | Audience or type mismatch | Re-classify; pass corrected to write |
|
|
193
193
|
| Review iteration count >3 | Mis-scoped task | Escalate to HITL with summary |
|
|
194
194
|
| Manifest missing iteration data | Children appended their own entries | Children MUST return to documentor; one entry only |
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
The canonical style guide lives at
|
|
4
4
|
`packages/skills/skills/_shared/cleo-style-guide.md` and is consumed
|
|
5
|
-
by both ct-
|
|
5
|
+
by both the writing guide (`ct-documentor/references/writing.md`) and the review guide (`ct-documentor/references/reviewing.md`). This reference makes the
|
|
6
6
|
guide's most-violated rules concrete with positive/negative examples
|
|
7
7
|
and the rationale for each.
|
|
8
8
|
|
|
@@ -282,7 +282,7 @@ or that wasn't registered via `cleo docs add` / `cleo memory observe`.
|
|
|
282
282
|
|
|
283
283
|
## CLEO-Native: Skill
|
|
284
284
|
|
|
285
|
-
Lives in `packages/skills/skills/<name>/SKILL.md`. The ct-skill-
|
|
285
|
+
Lives in `packages/skills/skills/<name>/SKILL.md`. The ct-skill-author
|
|
286
286
|
skill is the canonical template — see its references/.
|
|
287
287
|
|
|
288
288
|
## When to Pick Which Type
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# PR Review Mode
|
|
2
2
|
|
|
3
|
-
When the GitHub MCP tools are available, ct-
|
|
3
|
+
When the GitHub MCP tools are available, the review guide (`ct-documentor/references/reviewing.md`) uses the
|
|
4
4
|
pending-review workflow to post all findings as one cohesive GitHub
|
|
5
5
|
review. This reference codifies the workflow, the comment format,
|
|
6
6
|
and the integration with `gh` CLI for the cases where MCP tools are
|
|
@@ -1,20 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
name: ct-docs-review
|
|
3
|
-
description: This skill should be used when the user asks to "review documentation", "check docs style", "review this markdown file", "check style guide compliance", "review PR documentation", or needs documentation reviewed against the CLEO writing style guide. Supports both local file review and GitHub PR review modes with inline comments.
|
|
4
|
-
version: 1.0.0
|
|
5
|
-
tier: 3
|
|
6
|
-
core: false
|
|
7
|
-
category: composition
|
|
8
|
-
protocol: null
|
|
9
|
-
dependencies: []
|
|
10
|
-
sharedResources: []
|
|
11
|
-
compatibility:
|
|
12
|
-
- claude-code
|
|
13
|
-
- cursor
|
|
14
|
-
- windsurf
|
|
15
|
-
- gemini-cli
|
|
16
|
-
license: MIT
|
|
17
|
-
---
|
|
1
|
+
<!-- Merged from the ct-docs-review skill into ct-documentor (T12649, D11157). Load it from the documentor skill's writing/review phase. -->
|
|
18
2
|
|
|
19
3
|
# Documentation Review Skill
|
|
20
4
|
|
|
@@ -45,7 +29,7 @@ storage path for larger blobs).
|
|
|
45
29
|
|
|
46
30
|
### Diff two versions of the same doc
|
|
47
31
|
|
|
48
|
-
CLEO doesn't ship a dedicated
|
|
32
|
+
CLEO doesn't ship a dedicated docs diff verb. Use version listing
|
|
49
33
|
plus two fetches to compose the diff:
|
|
50
34
|
|
|
51
35
|
```bash
|
|
@@ -298,10 +282,10 @@ The "(UPDATED)" tag signals iteration, not a brand-new flag.
|
|
|
298
282
|
|
|
299
283
|
---
|
|
300
284
|
|
|
301
|
-
## See
|
|
285
|
+
## See also
|
|
302
286
|
|
|
303
287
|
Progressive disclosure — load on demand only:
|
|
304
288
|
|
|
305
|
-
- `
|
|
306
|
-
- `
|
|
307
|
-
- `
|
|
289
|
+
- `style-violations.md` — taxonomy of violations with detection patterns, issue titles, and remediation messages
|
|
290
|
+
- `pr-review-mode.md` — pending-review workflow, comment format, gh CLI fallback, materiality filter
|
|
291
|
+
- `inline-comment-patterns.md` — comment anatomy, single-line/multi-line/pattern fixes, anti-patterns
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
The CLEO documentation style guide lives at
|
|
4
4
|
`packages/skills/skills/_shared/cleo-style-guide.md` and is referenced
|
|
5
|
-
by both `ct-
|
|
5
|
+
by both `ct-documentor` (`references/writing.md`) and `ct-documentor` (`references/reviewing.md`). As coordinator, the
|
|
6
6
|
documentor's role is to ensure the style guide is enforced consistently
|
|
7
7
|
across the chain — write applies it; review verifies it. This reference
|
|
8
8
|
covers the parts of the style guide most commonly violated and how the
|
|
@@ -73,7 +73,7 @@ These never appear in CLEO docs. The review child rejects them on sight.
|
|
|
73
73
|
- "as mentioned above" — use a stable cross-reference
|
|
74
74
|
|
|
75
75
|
The forbidden list is the most common reason a draft fails review.
|
|
76
|
-
Pass the list to ct-
|
|
76
|
+
Pass the list to the writing guide (`ct-documentor/references/writing.md`) as part of the input contract so it
|
|
77
77
|
knows what to avoid.
|
|
78
78
|
|
|
79
79
|
## Link Discipline
|
|
@@ -162,8 +162,8 @@ Documentor MUST check that write's output and review's checks agree.
|
|
|
162
162
|
If they disagree, the style guide reference is the tiebreaker.
|
|
163
163
|
|
|
164
164
|
```text
|
|
165
|
-
write_output =
|
|
166
|
-
review_findings =
|
|
165
|
+
write_output = write_phase(input)
|
|
166
|
+
review_findings = review_phase(write_output)
|
|
167
167
|
|
|
168
168
|
# Possible drift case:
|
|
169
169
|
# write produced "users" (it should have used "people")
|
|
@@ -187,7 +187,7 @@ run review one more time on the diff:
|
|
|
187
187
|
|
|
188
188
|
```bash
|
|
189
189
|
# Review the diff for style violations
|
|
190
|
-
gh pr diff <PR_NUMBER> |
|
|
190
|
+
gh pr diff <PR_NUMBER> | review_phase --mode=diff # references/reviewing.md, diff mode
|
|
191
191
|
```
|
|
192
192
|
|
|
193
193
|
PR-mode review uses the `mcp__github__*` tools when available;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Style Violations
|
|
2
2
|
|
|
3
|
-
The taxonomy of style violations that ct-
|
|
3
|
+
The taxonomy of style violations that the review guide (`ct-documentor/references/reviewing.md`) catches. Each
|
|
4
4
|
violation type carries a detection pattern, an issue title format,
|
|
5
5
|
and a remediation message. The numbering scheme below (V-NNN) is
|
|
6
6
|
informational — issues in reviews are numbered sequentially per
|
|
@@ -1,20 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
name: ct-docs-write
|
|
3
|
-
description: This skill should be used when creating, editing, or reviewing documentation files (markdown, MDX, README, guides). Use when the user asks to "write docs", "create documentation", "edit the README", "improve doc clarity", "make docs more readable", "follow the style guide", or "write user-facing content". Applies CLEO's conversational, clear, and user-focused writing style.
|
|
4
|
-
version: 1.2.0
|
|
5
|
-
tier: 3
|
|
6
|
-
core: false
|
|
7
|
-
category: composition
|
|
8
|
-
protocol: null
|
|
9
|
-
dependencies: []
|
|
10
|
-
sharedResources: []
|
|
11
|
-
compatibility:
|
|
12
|
-
- claude-code
|
|
13
|
-
- cursor
|
|
14
|
-
- windsurf
|
|
15
|
-
- gemini-cli
|
|
16
|
-
license: MIT
|
|
17
|
-
---
|
|
1
|
+
<!-- Merged from the ct-docs-write skill into ct-documentor (T12649, D11157). Load it from the documentor skill's writing/review phase. -->
|
|
18
2
|
|
|
19
3
|
# Documentation Writing Skill
|
|
20
4
|
|
|
@@ -292,10 +276,10 @@ done
|
|
|
292
276
|
|
|
293
277
|
---
|
|
294
278
|
|
|
295
|
-
## See
|
|
279
|
+
## See also
|
|
296
280
|
|
|
297
281
|
Progressive disclosure — load on demand only:
|
|
298
282
|
|
|
299
|
-
- `
|
|
300
|
-
- `
|
|
301
|
-
- `
|
|
283
|
+
- `cleo-style-guide.md` — the three pillars, forbidden phrases, format conventions, hidden drift
|
|
284
|
+
- `markdown-patterns.md` — code-block / table / list / link / callout patterns with positive/negative examples
|
|
285
|
+
- `audience-targeting.md` — end-user / agent / maintainer profiles, mixed-audience pitfalls, re-targeting
|
|
@@ -1,12 +1,8 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: ct-epic-architect
|
|
3
3
|
description: Epic planning and task decomposition for breaking down large initiatives into atomic, executable tasks. Provides dependency analysis, wave-based parallel execution planning, hierarchy management, and research linking. Use when creating epics, decomposing initiatives into task trees, planning parallel workflows, or analyzing task dependencies. Triggers on epic creation, task decomposition requests, or planning phase work.
|
|
4
|
-
version: 3.0.
|
|
5
|
-
tier: 1
|
|
6
|
-
core: false
|
|
7
|
-
category: recommended
|
|
4
|
+
version: 3.0.3
|
|
8
5
|
protocol: decomposition
|
|
9
|
-
loomStage: decomposition
|
|
10
6
|
adrRefs:
|
|
11
7
|
- ADR-066
|
|
12
8
|
- ADR-073
|
|
@@ -20,6 +16,16 @@ compatibility:
|
|
|
20
16
|
- windsurf
|
|
21
17
|
- gemini-cli
|
|
22
18
|
license: MIT
|
|
19
|
+
metadata:
|
|
20
|
+
version: 3.0.3
|
|
21
|
+
tier: on-demand
|
|
22
|
+
install: harness
|
|
23
|
+
covers:
|
|
24
|
+
- packages/core/src/validation/protocols/cant/decomposition.cant
|
|
25
|
+
- packages/core/src/validation/protocols/protocols-markdown/decomposition.md
|
|
26
|
+
loomStage: decomposition
|
|
27
|
+
lastReviewed: 2026-09-28
|
|
28
|
+
stability: stable
|
|
23
29
|
---
|
|
24
30
|
|
|
25
31
|
# Epic Architect Context Injection
|
|
@@ -57,7 +63,7 @@ Context injection for epic planning and task decomposition tasks spawned via cle
|
|
|
57
63
|
3. Check existing work: `cleo find "keyword"`, `cleo list --type epic`
|
|
58
64
|
4. Create epic and child tasks
|
|
59
65
|
5. Attach files and link research
|
|
60
|
-
6. Start session: `cleo session start --scope epic:{{EPIC_ID}} --
|
|
66
|
+
6. Start session: `cleo session start --scope epic:{{EPIC_ID}} --name "<what you are doing>"`
|
|
61
67
|
7. Complete task: `cleo complete {{TASK_ID}}`
|
|
62
68
|
|
|
63
69
|
---
|
|
@@ -244,7 +250,8 @@ cleo list --parent T001 --status pending,active | jq '.tasks | length'
|
|
|
244
250
|
|
|
245
251
|
```bash
|
|
246
252
|
cleo phase show # Current phase
|
|
247
|
-
cleo
|
|
253
|
+
cleo phase show # Current phase (slug)
|
|
254
|
+
cleo list --phase <slug> # Tasks in that phase
|
|
248
255
|
```
|
|
249
256
|
|
|
250
257
|
---
|
|
@@ -278,8 +285,8 @@ Recommendation: [Your recommendation]
|
|
|
278
285
|
|
|
279
286
|
### Output Requirements
|
|
280
287
|
|
|
281
|
-
1. MUST
|
|
282
|
-
2. MUST
|
|
288
|
+
1. MUST record decomposition with `cleo docs add {{TASK_ID}} --content - --type plan --slug {{TOPIC_SLUG}}` (never a raw file under `.cleo/agent-outputs/`)
|
|
289
|
+
2. MUST record ONE manifest entry: `cleo manifest append --entry '<entry JSON>'` (the flat manifest file is retired, ADR-027)
|
|
283
290
|
3. MUST return ONLY: "Decomposition complete. Manifest appended to pipeline_manifest."
|
|
284
291
|
4. MUST NOT return full decomposition in response
|
|
285
292
|
|
|
@@ -156,7 +156,7 @@ cleo list --tree --parent {{EPIC_ID}} # Show epic subtree
|
|
|
156
156
|
| `{{TASK_TREE_CMD}}` | `cleo list --tree` |
|
|
157
157
|
| `{{TASK_ANALYZE_CMD}}` | `cleo analyze` |
|
|
158
158
|
| `{{TASK_ARCHIVE_CMD}}` | `cleo archive` |
|
|
159
|
-
| `{{TASK_VALIDATE_CMD}}` | `cleo
|
|
159
|
+
| `{{TASK_VALIDATE_CMD}}` | `cleo check task <id>` |
|
|
160
160
|
|
|
161
161
|
### Session Tokens
|
|
162
162
|
|
|
@@ -174,7 +174,7 @@ cleo list --tree --parent {{EPIC_ID}} # Show epic subtree
|
|
|
174
174
|
| Token | CLEO Default |
|
|
175
175
|
|-------|--------------|
|
|
176
176
|
| `{{TASK_CURRENT_CMD}}` | `cleo current` |
|
|
177
|
-
| `{{TASK_NOTE_CMD}}` | `cleo
|
|
177
|
+
| `{{TASK_NOTE_CMD}}` | `cleo update <id> --notes "..."` |
|
|
178
178
|
| `{{TASK_STOP_CMD}}` | `cleo stop` |
|
|
179
179
|
|
|
180
180
|
### Verification Tokens
|
|
@@ -187,15 +187,15 @@ cleo list --tree --parent {{EPIC_ID}} # Show epic subtree
|
|
|
187
187
|
|
|
188
188
|
| Token | CLEO Default |
|
|
189
189
|
|-------|--------------|
|
|
190
|
-
| `{{TASK_RESEARCH_INIT_CMD}}` | `cleo research
|
|
190
|
+
| `{{TASK_RESEARCH_INIT_CMD}}` | `cleo research add` |
|
|
191
191
|
| `{{TASK_RESEARCH_LIST_CMD}}` | `cleo research list` |
|
|
192
192
|
| `{{TASK_RESEARCH_SHOW_CMD}}` | `cleo research show` |
|
|
193
193
|
| `{{TASK_RESEARCH_PENDING_CMD}}` | `cleo research pending` |
|
|
194
|
-
| `{{TASK_RESEARCH_INJECT_CMD}}` | `cleo
|
|
194
|
+
| `{{TASK_RESEARCH_INJECT_CMD}}` | `cleo orchestrate spawn <taskId>` (embeds the protocol; there is no inject verb) |
|
|
195
195
|
|
|
196
196
|
### Output Tokens
|
|
197
197
|
|
|
198
198
|
| Token | Default |
|
|
199
199
|
|-------|---------|
|
|
200
|
-
| `{{OUTPUT_DIR}}` | `.cleo/agent-outputs` |
|
|
200
|
+
| `{{OUTPUT_DIR}}` | `.cleo/agent-outputs` (legacy token — do not write there; record output with `cleo docs add`) |
|
|
201
201
|
|
|
@@ -6,7 +6,7 @@ Template for epic creation output files.
|
|
|
6
6
|
|
|
7
7
|
## Output File Location
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
Record it with `cleo docs add {{TASK_ID}} --content - --type plan --slug epic-{{FEATURE_SLUG}}` (never a raw file under `.cleo/agent-outputs/`)
|
|
10
10
|
|
|
11
11
|
---
|
|
12
12
|
|
|
@@ -85,7 +85,7 @@ Write to `{{OUTPUT_DIR}}/{{DATE}}_epic-{{FEATURE_SLUG}}.md`
|
|
|
85
85
|
|
|
86
86
|
## Manifest Entry Format
|
|
87
87
|
|
|
88
|
-
|
|
88
|
+
Record it with `cleo manifest append --entry '<entry JSON>'` (the flat manifest file is retired, ADR-027):
|
|
89
89
|
|
|
90
90
|
```json
|
|
91
91
|
{"id":"epic-{{FEATURE_SLUG}}-{{DATE}}","file":"{{DATE}}_epic-{{FEATURE_SLUG}}.md","title":"Epic Created: {{FEATURE_NAME}}","date":"{{DATE}}","status":"complete","topics":["epic","planning","{{DOMAIN}}"],"key_findings":["Created Epic {{EPIC_ID}} with {{N}} child tasks","Dependency chain: {{T1}} -> {{T2}}/{{T3}} -> {{T4}} -> {{T5}}","Wave 0 (parallel start): [{{T1_ID}}]","Wave 1 (parallel): [{{T2_ID}}, {{T3_ID}}]","Critical path: {{T1}} -> {{T2}} -> {{T4}} -> {{T5}}","Session started: {{SESSION_ID}}"],"actionable":true,"needs_followup":["{{FIRST_READY_TASK_ID}}"],"linked_tasks":["{{EPIC_ID}}","{{ALL_TASK_IDS}}"]}
|
|
@@ -56,8 +56,8 @@ Each research task SHOULD address exactly ONE research question:
|
|
|
56
56
|
|
|
57
57
|
### Research Output Integration
|
|
58
58
|
|
|
59
|
-
- Subagents
|
|
60
|
-
- Subagents
|
|
59
|
+
- Subagents record findings with `cleo docs add` (never raw files under `.cleo/agent-outputs/`)
|
|
60
|
+
- Subagents record an entry with `cleo manifest append --task {{TASK_ID}}` (its `linked_tasks` starts with the task)
|
|
61
61
|
- Orchestrator reads only manifest summaries (key_findings) for context efficiency
|
|
62
62
|
- Use `{{TASK_RESEARCH_INJECT_CMD}}` to get subagent protocol block
|
|
63
63
|
|
|
@@ -117,8 +117,8 @@ Before creating epics, ct-epic-architect SHOULD check existing research:
|
|
|
117
117
|
|
|
118
118
|
When ct-epic-architect creates an epic, it follows the subagent protocol:
|
|
119
119
|
|
|
120
|
-
1. **
|
|
121
|
-
2. **
|
|
120
|
+
1. **Record output**: `cleo docs add {{TASK_ID}} --content - --type plan --slug {{TOPIC_SLUG}}`
|
|
121
|
+
2. **Record manifest entry**: `cleo manifest append --entry '<entry JSON>'` (the flat manifest file is retired, ADR-027)
|
|
122
122
|
3. **Return summary only**: "Epic created. Manifest appended to pipeline_manifest."
|
|
123
123
|
|
|
124
124
|
### Querying Prior Research
|
|
@@ -170,7 +170,7 @@ The orchestrator skill enforces context budget (ORC-005). When spawning ct-epic-
|
|
|
170
170
|
|
|
171
171
|
```bash
|
|
172
172
|
# Orchestrator queries manifest for epic details
|
|
173
|
-
|
|
173
|
+
cleo manifest list --task {{TASK_ID}} --json
|
|
174
174
|
```
|
|
175
175
|
|
|
176
176
|
---
|
package/skills/ct-grade/SKILL.md
CHANGED
|
@@ -13,12 +13,9 @@ description: >-
|
|
|
13
13
|
analysis and comparative report. Triggers on: grade session, evaluate agent behavior,
|
|
14
14
|
A/B test CLEO configurations, run grade scenario, token usage analysis, behavioral rubric,
|
|
15
15
|
protocol compliance scoring.
|
|
16
|
-
version: 2.1.
|
|
16
|
+
version: 2.1.1
|
|
17
17
|
argument-hint: "[mode=scenario|ab|blind] [scenario=s1-s5|all] [runs=N] [session-id=<id>]"
|
|
18
18
|
allowed-tools: ["Bash(python *)", "Bash(cleo-dev *)", "Bash(cleo *)", "Bash(kill *)", "Bash(lsof *)", "Agent", "Read", "Write", "Glob"]
|
|
19
|
-
tier: 2
|
|
20
|
-
core: false
|
|
21
|
-
category: quality
|
|
22
19
|
protocol: null
|
|
23
20
|
dependencies: []
|
|
24
21
|
sharedResources: []
|
|
@@ -28,6 +25,12 @@ compatibility:
|
|
|
28
25
|
- windsurf
|
|
29
26
|
- gemini-cli
|
|
30
27
|
license: MIT
|
|
28
|
+
metadata:
|
|
29
|
+
version: 2.1.1
|
|
30
|
+
tier: internal
|
|
31
|
+
install: internal
|
|
32
|
+
lastReviewed: 2026-09-28
|
|
33
|
+
stability: stable
|
|
31
34
|
---
|
|
32
35
|
|
|
33
36
|
# Session Grading Guide
|