@cleocode/skills 2026.5.113 → 2026.5.120
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/package.json +1 -1
- package/skills/ct-adr-recorder/SKILL.md +20 -1
- package/skills/ct-cleo/SKILL.md +59 -2
- package/skills/ct-docs-write/SKILL.md +14 -3
- package/skills/ct-documentor/SKILL.md +98 -12
- package/skills/ct-spec-writer/SKILL.md +12 -3
- package/skills/ct-validator/SKILL.md +56 -0
- package/skills.json +239 -48
package/package.json
CHANGED
|
@@ -115,7 +115,26 @@ cleo docs add T4798 docs/adr/ADR-0042.md \
|
|
|
115
115
|
`spec | adr | research | handoff | note | llm-readme`.
|
|
116
116
|
- `--slug` MUST follow `adr-<NNNN>-<short-topic>`. The numeric segment
|
|
117
117
|
is the canonical ADR id; the topic segment makes the slug human
|
|
118
|
-
readable. Collisions return `
|
|
118
|
+
readable. Collisions return `E_SLUG_RESERVED` with 3 alternatives
|
|
119
|
+
(legacy `E_SLUG_TAKEN` aliased under `details.aliases` for one release —
|
|
120
|
+
T10386).
|
|
121
|
+
- Near-duplicate slugs trigger `W_SLUG_SIMILAR` (T10361). The CLI
|
|
122
|
+
surfaces the top match and hints `--allow-similar`. Use `--allow-similar`
|
|
123
|
+
only when the new ADR genuinely forks from the existing one (e.g.
|
|
124
|
+
versioned re-issue); every bypass is audited to
|
|
125
|
+
`.cleo/audit/similar-bypass.jsonl`.
|
|
126
|
+
- Unknown flags fail fast with `E_UNKNOWN_FLAG` + did-you-mean
|
|
127
|
+
suggestions (T10359) — `--lbls` becomes "did you mean --labels?".
|
|
128
|
+
- TODO(T10360 · E3.2 pending): when shipped, ADR drafts will accept
|
|
129
|
+
`--title "<human title>"` and CLEO will auto-allocate the next
|
|
130
|
+
`adr-NNN-<kebab-title>` via the E1 slug allocator. Until then,
|
|
131
|
+
you MUST hand-pick the next free `NNNN` by inspecting
|
|
132
|
+
`cleo docs list --type adr --project`. Example future call:
|
|
133
|
+
```bash
|
|
134
|
+
# FUTURE — DO NOT USE until T10360 ships:
|
|
135
|
+
# cleo docs add T4798 docs/drafts/draft.md --type adr \
|
|
136
|
+
# --title "Adopt Drizzle ORM v1 beta"
|
|
137
|
+
```
|
|
119
138
|
- The owner ID is the consensus task whose verdict drives the ADR
|
|
120
139
|
(`T4798` above). This is how downstream supersession cascades find
|
|
121
140
|
the chain — never attach an ADR to an arbitrary task.
|
package/skills/ct-cleo/SKILL.md
CHANGED
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
name: ct-cleo
|
|
3
3
|
description: CLEO task management protocol - session, task, and workflow guidance. Use when managing tasks, sessions, or multi-agent workflows with the CLEO CLI protocol.
|
|
4
4
|
metadata:
|
|
5
|
-
version: 2.
|
|
6
|
-
lastReviewed: 2026-05-
|
|
5
|
+
version: 2.3.0
|
|
6
|
+
lastReviewed: 2026-05-24
|
|
7
7
|
stability: stable
|
|
8
8
|
---
|
|
9
9
|
|
|
@@ -198,3 +198,60 @@ If you see `E_PATH_TRAVERSAL`, `E_FILE_ERROR: Cannot read file`, or
|
|
|
198
198
|
build that ships the T10389 fix-pack (closes T10353 + T10354 + T10294
|
|
199
199
|
+ T10365). Suppress the routing log with `CLEO_QUIET=1` for clean
|
|
200
200
|
stderr in automation.
|
|
201
|
+
|
|
202
|
+
---
|
|
203
|
+
|
|
204
|
+
## CLI Output Contract (ADR-086 / Epic T9927 / E9 of Saga T9855)
|
|
205
|
+
|
|
206
|
+
`cleo` stdout is now **envelope-only**. NEVER pipe `cleo` output through
|
|
207
|
+
`tail`/`jq`/`python` — every common shape has a first-class flag.
|
|
208
|
+
|
|
209
|
+
| Need | Flag | Example |
|
|
210
|
+
|------|------|---------|
|
|
211
|
+
| Scalar extract (no jq) | `--field <jsonpointer>` | `cleo add 'X' --acceptance "..." --field /data/task/id` |
|
|
212
|
+
| ID-only pipeline | `--output id` | `cleo list --parent EPIC --output id \| while read c; do …; done` |
|
|
213
|
+
| Affected count | `--output count` | `cleo list --parent EPIC --status pending --output count` |
|
|
214
|
+
| TSV (no header) | `--output table` | `cleo list --parent EPIC --output table` |
|
|
215
|
+
| Silent (exit code only) | `--output silent` | `cleo update T123 --status done --output silent` |
|
|
216
|
+
| 1-line per record | `--summary` | `cleo list --parent EPIC --summary` |
|
|
217
|
+
| Suppress stderr noise | `--quiet` | `id=$(cleo add 'X' --acceptance "..." --quiet --field /data/task/id)` |
|
|
218
|
+
| Full record (legacy) | `--full` | `cleo show T123 --full` |
|
|
219
|
+
|
|
220
|
+
### Defaults
|
|
221
|
+
|
|
222
|
+
- **Read ops** (`show`, `list`, `find`) — return the full LAFS envelope.
|
|
223
|
+
- **Mutate ops** (`add`, `add-batch`, `update`, `complete`) — return a
|
|
224
|
+
minimal envelope `{success, data: {count, ids[]}}` (T9931). Use `--full`
|
|
225
|
+
to opt back into the full record set.
|
|
226
|
+
- **stdout** carries exactly ONE LAFS envelope terminated by a single
|
|
227
|
+
newline. Sub-step logs/progress/warnings route through Pino → stderr.
|
|
228
|
+
This is regression-locked by CI gates `lint-stdout-discipline` (T10135)
|
|
229
|
+
and `lint-stdout-write-allowlist` (T9924).
|
|
230
|
+
|
|
231
|
+
### Canonical agent patterns
|
|
232
|
+
|
|
233
|
+
```bash
|
|
234
|
+
# Scalar extract — no jq needed.
|
|
235
|
+
id=$(cleo add 'Title' --type task --parent T9927 --acceptance "..." \
|
|
236
|
+
--field /data/task/id)
|
|
237
|
+
|
|
238
|
+
# ID-only pipeline — no JSON parsing.
|
|
239
|
+
cleo list --parent T9927 --output id | while read child; do
|
|
240
|
+
cleo verify "$child" --gate qaPassed --evidence "tool:lint;tool:typecheck"
|
|
241
|
+
done
|
|
242
|
+
|
|
243
|
+
# Count-only check.
|
|
244
|
+
remaining=$(cleo list --parent T9927 --status pending --output count)
|
|
245
|
+
|
|
246
|
+
# Fully clean pipeline — stdout has IDs, stderr is empty unless error.
|
|
247
|
+
cleo add-batch --file /tmp/batch.json --parent T9927 --quiet --output id
|
|
248
|
+
```
|
|
249
|
+
|
|
250
|
+
### Anti-patterns (REJECTED — these are CLI bugs if they appear post-E9)
|
|
251
|
+
|
|
252
|
+
- ❌ `cleo show T123 | tail -1 | jq -r .data.task.id` → use `--field /data/task/id`
|
|
253
|
+
- ❌ `cleo list --parent E1 | jq -r '.data.tasks[].id'` → use `--output id`
|
|
254
|
+
- ❌ `cleo show T123 | python3 -c 'import json,sys; …'` → use `--field`
|
|
255
|
+
- ❌ `cleo add 'X' 2>&1 | grep -oE 'T[0-9]+'` → use `--field /data/task/id`
|
|
256
|
+
|
|
257
|
+
Full contract + RFC 2119 invariants: `cleo docs fetch adr-086-cli-output-contract-e9`.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: ct-docs-write
|
|
3
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.
|
|
4
|
+
version: 1.2.0
|
|
5
5
|
tier: 3
|
|
6
6
|
core: false
|
|
7
7
|
category: composition
|
|
@@ -193,8 +193,19 @@ cleo docs add T1234 docs/drafts/saml-setup.md \
|
|
|
193
193
|
For user-facing prose use `note`; for end-user docs use `note` or `spec`
|
|
194
194
|
depending on whether the doc carries REQ-XXX requirements.
|
|
195
195
|
- `--slug` is the human-friendly handle for retrieval. Use kebab-case. If the
|
|
196
|
-
slug is already taken the CLI returns `
|
|
197
|
-
|
|
196
|
+
slug is already taken the CLI returns `E_SLUG_RESERVED` with 3 alternatives
|
|
197
|
+
(legacy `E_SLUG_TAKEN` aliased under `details.aliases` for one release —
|
|
198
|
+
T10386) — pick one rather than overwriting silently.
|
|
199
|
+
- If the slug is too close to an existing one the CLI surfaces a
|
|
200
|
+
`W_SLUG_SIMILAR` warning with the top match + a `--allow-similar` hint
|
|
201
|
+
(T10361). Pass `--allow-similar` to proceed when the fork is intentional;
|
|
202
|
+
every bypass is logged to `.cleo/audit/similar-bypass.jsonl`.
|
|
203
|
+
- Unknown flags (typos, removed options) fail fast with `E_UNKNOWN_FLAG`
|
|
204
|
+
+ did-you-mean suggestions (T10359). The legacy "silently absorb as
|
|
205
|
+
positional" behaviour from citty's `parseArgs` is rejected.
|
|
206
|
+
- TODO(T10360 · E3.2 pending): when shipped, `--type adr` will accept a
|
|
207
|
+
`--title <human-title>` flag and auto-allocate `adr-NNN-<kebab-title>`
|
|
208
|
+
via the E1 slug allocator — no more manual ADR-079 numbering.
|
|
198
209
|
- The owner ID (`T1234` above) auto-classifies the attachment by prefix:
|
|
199
210
|
`T###` → task, `ses_*` → session, `O-*` → observation.
|
|
200
211
|
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: ct-documentor
|
|
3
3
|
description: Documentation coordinator with CLEO style guide compliance. Routes every canonical-doc write (spec, adr, research, handoff, note, llm-readme) through the docs SSoT via `cleo docs add` / `cleo docs publish` / `cleo docs fetch` — never raw filesystem writes. Coordinates ct-docs-lookup, ct-docs-write, ct-docs-review, ct-spec-writer, and ct-adr-recorder. Use when creating or updating documentation files, consolidating scattered documentation, or validating documentation against style standards. Triggers on documentation tasks, doc update requests, or style guide compliance checks.
|
|
4
|
-
version: 3.
|
|
4
|
+
version: 3.14.0
|
|
5
5
|
tier: 3
|
|
6
6
|
core: false
|
|
7
7
|
category: specialist
|
|
8
8
|
protocol: null
|
|
9
9
|
metadata:
|
|
10
|
-
version: 3.
|
|
10
|
+
version: 3.14.0
|
|
11
11
|
lastReviewed: 2026-05-24
|
|
12
12
|
stability: stable
|
|
13
13
|
dependencies:
|
|
@@ -65,7 +65,7 @@ and every owner writes through `cleo docs add` — not raw filesystem writes.
|
|
|
65
65
|
| Doc Type | Owner Skill | SSoT Command |
|
|
66
66
|
|----------|-------------|--------------|
|
|
67
67
|
| `spec` (REQ-XXX requirements) | `ct-spec-writer` | `cleo docs add <ownerId> <path> --type spec --slug spec-<feature>` |
|
|
68
|
-
| `adr` (architecture decisions) | `ct-adr-recorder` | `cleo docs add <ownerId> <path> --type adr --slug adr-<NNN>-<rest>` |
|
|
68
|
+
| `adr` (architecture decisions) | `ct-adr-recorder` | `cleo docs add <ownerId> <path> --type adr --slug adr-<NNN>-<rest>` (TODO T10360 · E3.2 pending: `--title` + auto-`adr-NNN` allocation) |
|
|
69
69
|
| `research` (multi-source investigation) | `ct-research-agent` | `cleo docs add <ownerId> <path> --type research --slug research-<topic>` |
|
|
70
70
|
| `handoff` (session/agent transition) | `ct-documentor` (this skill) | `cleo docs add <ownerId> <path> --type handoff --slug handoff-<context>` |
|
|
71
71
|
| `note` (conversational prose) | `ct-docs-write` | `cleo docs add <ownerId> <path> --type note --slug <kebab-topic>` |
|
|
@@ -78,6 +78,51 @@ materializing through `cleo docs add` + (optionally) `cleo docs publish`.
|
|
|
78
78
|
|
|
79
79
|
---
|
|
80
80
|
|
|
81
|
+
## Decision: update vs supersede vs create (T10168 · Saga T9855 / E12)
|
|
82
|
+
|
|
83
|
+
Before adding a new doc, ALWAYS ask: is this **a new doc**, **a change to an existing doc**, or **a replacement for an existing doc**?
|
|
84
|
+
|
|
85
|
+
```
|
|
86
|
+
┌─────────────────────────────────────────────────────────────────────┐
|
|
87
|
+
│ Question │ Verb │
|
|
88
|
+
├─────────────────────────────────────────────────────────────────────┤
|
|
89
|
+
│ Same idea, fixing/extending content? │ cleo docs update <slug> │
|
|
90
|
+
│ → typo in ADR-076 │ (T10161 — in-place patch) │
|
|
91
|
+
│ → adding a clarifying paragraph │ │
|
|
92
|
+
│ → refreshing a stale section │ │
|
|
93
|
+
│ │
|
|
94
|
+
│ Replacing the whole canonical model? │ cleo docs supersede │
|
|
95
|
+
│ → "saga model v2" replaces v1 │ <old> <new> (T10162) │
|
|
96
|
+
│ → ADR-080 replaces ADR-073 │ (lifecycle flip + lineage)│
|
|
97
|
+
│ → new architecture supplants old │ │
|
|
98
|
+
│ │
|
|
99
|
+
│ Genuinely new idea? │ cleo docs find --similar │
|
|
100
|
+
│ → drafting a new spec │ <slug> FIRST (T10163) │
|
|
101
|
+
│ → fresh ADR for a new concern │ → if no hit, cleo docs add│
|
|
102
|
+
│ → recording a new investigation │ → if hit, route to update │
|
|
103
|
+
│ │
|
|
104
|
+
│ Tracing the lineage graph? │ cleo docs graph │
|
|
105
|
+
│ → "what does this doc replace?" │ --root <slug> (T10164) │
|
|
106
|
+
│ → "what tasks reference this ADR?" │ │
|
|
107
|
+
└─────────────────────────────────────────────────────────────────────┘
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
### Examples
|
|
111
|
+
|
|
112
|
+
- **"Fix a typo in ADR-076 saga-first-class"** → `cleo docs update adr-076-saga-first-class --body /tmp/fixed.md --message "fix typo in §2"`. NOT a new doc. NOT a supersession. Just patch in place; T10161 squashes patches within a 5-minute window so consecutive typo fixes don't bloat the audit log.
|
|
113
|
+
|
|
114
|
+
- **"Replace the entire saga-orchestration model with v2"** → `cleo docs add T9999 v2.md --type adr --slug adr-080-saga-orchestration-v2` followed by `cleo docs supersede adr-073-above-epic-naming adr-080-saga-orchestration-v2 --reason "v2 canonicalizes the SG- prefix + 4-tier hierarchy"`. Both rows survive in the attachments table; readers see `lifecycle_status=superseded` on v1 and `supersedes=adr-073` on v2.
|
|
115
|
+
|
|
116
|
+
- **"Drafting a new spec for the BRAIN recovery pipeline"** → FIRST run `cleo docs find --similar brain-recovery` (T10163). If similarity > 0.85 against an existing draft, ROUTE the request into `cleo docs update` instead — the existing draft is the canonical surface. If no near-match, proceed with `cleo docs add T#### draft.md --type spec --slug spec-brain-recovery-pipeline`.
|
|
117
|
+
|
|
118
|
+
- **"Auditing the supersession chain for ADR-039"** → `cleo docs graph --root adr-039-lafs-envelope-unification --depth 3`. Returns a DocProvenanceGraph envelope (T10166 contract) with nodes + edges, optionally `--format dot` for graphviz visualization.
|
|
119
|
+
|
|
120
|
+
### Anti-patterns (INSTANT REJECTION)
|
|
121
|
+
|
|
122
|
+
- ❌ Calling `cleo docs add` with a slug that's only a typo-distance away from an existing doc — the auto-warn (T10167) fires `W_SLUG_SIMILAR`; respect it and route to `cleo docs update` instead of bypassing with `--allow-similar`.
|
|
123
|
+
- ❌ Editing a `.cleo/adrs/*.md` file directly with `Write` — bypasses the SSoT writer; T10366 `WriterRegistry` is the chokepoint and the docs SSoT will reconcile auto-emit drift.
|
|
124
|
+
- ❌ Creating a new doc when an existing one needs updating — bloats the attachments table and breaks lineage. The decision tree above resolves this — when in doubt, run `cleo docs find --similar <proposed-slug>` first.
|
|
125
|
+
|
|
81
126
|
## Through SDK (preferred)
|
|
82
127
|
|
|
83
128
|
Documentation work flows through the docs SSoT in three steps —
|
|
@@ -147,11 +192,12 @@ invoking `attachmentStore.put({ slug })`. The allocator:
|
|
|
147
192
|
|
|
148
193
|
The `attachmentStore.put` chokepoint enforces this via a runtime assert
|
|
149
194
|
(`SlugNotReservedByAllocatorError`) when `CLEO_STRICT_SLUG_ALLOCATOR=1`
|
|
150
|
-
is set. Strict mode becomes default
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
195
|
+
is set. Strict mode becomes default in the next release after both
|
|
196
|
+
writers are wired. **BOTH writers are LIVE on the allocator as of T10388**:
|
|
197
|
+
`cleo docs add` (T10386 — `packages/cleo/src/dispatch/domains/docs.ts:add`)
|
|
198
|
+
and `cleo changeset add` (T10388 — `packages/core/src/changesets/writer.ts:writeChangesetEntry`)
|
|
199
|
+
both call `reserveSlug(kind, slug)` BEFORE any filesystem or DB mutation.
|
|
200
|
+
Collisions surface the uniform envelope:
|
|
155
201
|
|
|
156
202
|
```json
|
|
157
203
|
{
|
|
@@ -167,10 +213,10 @@ surface the uniform envelope:
|
|
|
167
213
|
}
|
|
168
214
|
```
|
|
169
215
|
|
|
170
|
-
`details.aliases` retains the legacy `E_SLUG_TAKEN`
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
216
|
+
`details.aliases` retains the legacy `E_SLUG_TAKEN` (docs-add path) /
|
|
217
|
+
`E_SSOT_WRITE_FAILED` (changeset-add path) codes for ONE release of
|
|
218
|
+
back-compat — downstream consumers grepping for the old codes can still match
|
|
219
|
+
via the alias array. Removed after E2 (T10290 — DocKind writer dedup) lands.
|
|
174
220
|
|
|
175
221
|
Slugs share a GLOBAL namespace across all DocKinds — `reserveSlug('changeset',
|
|
176
222
|
'foo')` followed by `reserveSlug('research', 'foo')` collides. The decision
|
|
@@ -484,6 +530,46 @@ observation pollutes the FTS index. Use `cleo memory backfill-docs` (AC4
|
|
|
484
530
|
of T9976) only to repair attachments that pre-date the auto-emit feature
|
|
485
531
|
or were written outside the SSoT.
|
|
486
532
|
|
|
533
|
+
#### System-managed exemptions (T10368)
|
|
534
|
+
|
|
535
|
+
Not every `.md` write inside `packages/core/src/**` is a DocKind authoring
|
|
536
|
+
path. Release composers, RCASD migration tooling, nexus wiki generators, and
|
|
537
|
+
the publish-mirror copier all emit Markdown bytes from inside `core/` but
|
|
538
|
+
SHOULD NOT route through `WriterRegistry.write` — they are deterministic
|
|
539
|
+
derived artifacts, not user-authored canonical documents.
|
|
540
|
+
|
|
541
|
+
These legitimate bypasses live in `SYSTEM_MANAGED_ENTRIES` inside
|
|
542
|
+
`writer-registry.ts`. Every entry cites an ADR pointer:
|
|
543
|
+
|
|
544
|
+
```ts
|
|
545
|
+
WriterRegistry.listSystemManaged();
|
|
546
|
+
// → [
|
|
547
|
+
// { id: 'release.plan-json', adrRef: 'ADR-028 ...' },
|
|
548
|
+
// { id: 'release.changelog', adrRef: 'ADR-028 §2.5 ...' },
|
|
549
|
+
// { id: 'lifecycle.rcasd-migration', adrRef: 'ADR-076 ...' },
|
|
550
|
+
// { id: 'lifecycle.stage-artifact', adrRef: 'ADR-076 ...' },
|
|
551
|
+
// { id: 'sessions.handoff-markdown', adrRef: 'ADR-076 ...' },
|
|
552
|
+
// { id: 'nexus.wiki-overview', adrRef: 'ADR-076 ...' },
|
|
553
|
+
// { id: 'docs.publish-mirror', adrRef: 'ADR-076 ...' },
|
|
554
|
+
// ]
|
|
555
|
+
|
|
556
|
+
// Path-based exemption lookup — used by the writer-audit test + T10369 lint:
|
|
557
|
+
const hit = WriterRegistry.isSystemManaged('.cleo/release/v2026.5.103.plan.json');
|
|
558
|
+
// → { id: 'release.plan-json', kind: null, adrRef: 'ADR-028 ...', ... }
|
|
559
|
+
```
|
|
560
|
+
|
|
561
|
+
When adding a NEW `.md` writer inside `packages/core/src/**`, you MUST
|
|
562
|
+
either:
|
|
563
|
+
|
|
564
|
+
1. Route through `WriterRegistry.write({kind, slug, payload})` (the
|
|
565
|
+
canonical path for DocKind authoring), OR
|
|
566
|
+
2. Append a new entry to `SYSTEM_MANAGED_ENTRIES` with an ADR pointer
|
|
567
|
+
ratifying the bypass.
|
|
568
|
+
|
|
569
|
+
The `writer-audit.test.ts` regression test fails when a new `.md` writer
|
|
570
|
+
appears without either path. T10369 (next in the epic) promotes this from a
|
|
571
|
+
unit test to a full CI lint gate.
|
|
572
|
+
|
|
487
573
|
### Slug similarity warn (T10361 · closes T10167)
|
|
488
574
|
|
|
489
575
|
`cleo docs add` runs a fuzzy-match check against existing slugs for the
|
|
@@ -1,7 +1,7 @@
|
|
|
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.
|
|
4
|
+
version: 2.1.0
|
|
5
5
|
tier: 2
|
|
6
6
|
core: false
|
|
7
7
|
category: recommended
|
|
@@ -161,8 +161,17 @@ cleo docs add T1234 docs/specs/auth-protocol.md \
|
|
|
161
161
|
Other allowed values: `adr | research | handoff | note | llm-readme`.
|
|
162
162
|
- `--slug` is the kebab-case retrieval handle. Use the spec topic +
|
|
163
163
|
version (e.g. `auth-protocol-v2`, `release-pipeline-v3`). The CLI
|
|
164
|
-
returns `
|
|
165
|
-
|
|
164
|
+
returns `E_SLUG_RESERVED` with 3 alternatives on collision (legacy
|
|
165
|
+
`E_SLUG_TAKEN` aliased under `details.aliases` for one release —
|
|
166
|
+
T10386) — pick one rather than silently overwriting.
|
|
167
|
+
- Near-duplicate slugs (e.g. `auth-protocol-v2` vs an existing
|
|
168
|
+
`auth-protocol`) surface a `W_SLUG_SIMILAR` warning with the top
|
|
169
|
+
match (T10361). Pass `--allow-similar` to proceed when the new spec
|
|
170
|
+
intentionally forks; every bypass is audited to
|
|
171
|
+
`.cleo/audit/similar-bypass.jsonl`.
|
|
172
|
+
- Unknown flags fail fast with `E_UNKNOWN_FLAG` + did-you-mean
|
|
173
|
+
suggestions (T10359) — `--titel`/`--lables` become "did you mean
|
|
174
|
+
--type/--labels?". Run `cleo docs add --help` for the canonical surface.
|
|
166
175
|
- The owner ID (`T1234`) auto-attaches the spec to its parent task so
|
|
167
176
|
downstream stages (`ct-validator`, decomposition, implementation)
|
|
168
177
|
can discover the spec via `cleo docs list --task T1234 --type spec`.
|
|
@@ -77,6 +77,62 @@ Governance: see **ADR-051** (programmatic gate integrity) which defines the evid
|
|
|
77
77
|
|
|
78
78
|
---
|
|
79
79
|
|
|
80
|
+
## Blast-Radius Test Scope (MANDATORY · T9842)
|
|
81
|
+
|
|
82
|
+
When acting as the IVTR Lead in the **Validate** phase (R2), the targeted test
|
|
83
|
+
files named in the task spec are NOT sufficient evidence on their own when the
|
|
84
|
+
Implement phase touched an infrastructure file. Targeted-only test review is
|
|
85
|
+
how cross-package regressions slip past the Lead.
|
|
86
|
+
|
|
87
|
+
### Precedent — T9814 R2
|
|
88
|
+
|
|
89
|
+
T9814 swapped `BEGIN IMMEDIATE` for SAVEPOINTs in
|
|
90
|
+
`packages/core/src/store/sqlite-data-accessor.ts` to support nested
|
|
91
|
+
transactions for `add-batch`. Every targeted test passed (6/6 add-batch,
|
|
92
|
+
34/34 add, 9/9 allocate). IVTR Lead R2 approved on the targeted scope. CI
|
|
93
|
+
then surfaced `agent-resolver.test.ts preferTier` failing — the resolver
|
|
94
|
+
depended on the outer `BEGIN IMMEDIATE` semantics that SAVEPOINTs do not
|
|
95
|
+
replicate verbatim. Hotfix commit `baa996d2b` restored the outer-tx case.
|
|
96
|
+
The Lead's targeted-only review missed a regression CI caught seconds later.
|
|
97
|
+
|
|
98
|
+
### Rule
|
|
99
|
+
|
|
100
|
+
If ANY file in the impl-phase evidence bundle's `filesChanged` matches a
|
|
101
|
+
canonical infrastructure path, the Lead MUST run the full per-package vitest
|
|
102
|
+
suite for every touched package — NOT the targeted files alone.
|
|
103
|
+
|
|
104
|
+
### Canonical infrastructure paths
|
|
105
|
+
|
|
106
|
+
- `packages/core/src/store/**` — DB chokepoint, transactions, migrations
|
|
107
|
+
- `packages/core/src/orchestration/**` — spawn-prompt, dispatch resolution, IVTR
|
|
108
|
+
- `packages/core/src/dispatch/**` and `packages/cleo/src/dispatch/**` — typed dispatch
|
|
109
|
+
- `packages/contracts/src/**` — cross-package types (every consumer rebuilds)
|
|
110
|
+
- `packages/worktree/src/**` — worktree-create / git-shim integration
|
|
111
|
+
- `packages/core/src/migration/**` — schema bootstrapping
|
|
112
|
+
- any path whose basename contains `transaction`, `pragma`, or `migration`
|
|
113
|
+
|
|
114
|
+
### Required test commands per touched package
|
|
115
|
+
|
|
116
|
+
```bash
|
|
117
|
+
pnpm --filter @cleocode/<pkg> run test # for each touched package
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
Attach the JSON output of each run as evidence
|
|
121
|
+
(`cleo docs add --labels test-output`) and reference the sha256 set in the
|
|
122
|
+
`--next` call. Approving on targeted-only results when infrastructure paths
|
|
123
|
+
are touched is grounds for loop-back with reason `infra-test-scope-violation`.
|
|
124
|
+
|
|
125
|
+
### Enforcement
|
|
126
|
+
|
|
127
|
+
The IVTR Lead spawn prompt is auto-enriched by `resolvePhasePrompt()` in
|
|
128
|
+
`packages/core/src/lifecycle/ivtr-loop.ts` — when an infrastructure touch is
|
|
129
|
+
detected via `detectInfrastructureTouch()` (`packages/core/src/lifecycle/infra-touch.ts`),
|
|
130
|
+
a `### Blast-Radius Test Scope — MANDATORY (T9842)` block is appended to
|
|
131
|
+
the Validate-phase Lead prompt, listing the touched packages and the exact
|
|
132
|
+
`pnpm --filter` commands the Lead must run.
|
|
133
|
+
|
|
134
|
+
---
|
|
135
|
+
|
|
80
136
|
## Output Format
|
|
81
137
|
|
|
82
138
|
### Validation Report Structure
|
package/skills.json
CHANGED
|
@@ -1,24 +1,34 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": "2.1.0",
|
|
3
|
-
"generated": "2026-
|
|
3
|
+
"generated": "2026-05-24T00:00:00Z",
|
|
4
4
|
"skills": [
|
|
5
5
|
{
|
|
6
6
|
"name": "ct-cleo",
|
|
7
|
-
"description": "CLEO task management protocol - core guidance for session, task, and workflow operations. Provides CLI-based workflow, session protocol, task discovery patterns, RCSD lifecycle overview, error handling,
|
|
8
|
-
"version": "2.
|
|
7
|
+
"description": "CLEO task management protocol - core guidance for session, task, and workflow operations. Provides CLI-based workflow, session protocol, task discovery patterns, RCSD lifecycle overview, error handling, the Human Render Contract (ADR-077), and the CLI Output Contract (ADR-086). Load this skill for detailed CLEO protocol guidance.",
|
|
8
|
+
"version": "2.3.0",
|
|
9
9
|
"path": "skills/ct-cleo/SKILL.md",
|
|
10
|
-
"references": [
|
|
10
|
+
"references": [
|
|
11
|
+
"skills/ct-cleo/references/session-protocol.md",
|
|
12
|
+
"skills/ct-cleo/references/loom-lifecycle.md",
|
|
13
|
+
"skills/ct-cleo/references/anti-patterns.md"
|
|
14
|
+
],
|
|
11
15
|
"core": true,
|
|
12
16
|
"category": "core",
|
|
13
17
|
"tier": 0,
|
|
14
18
|
"protocol": null,
|
|
15
19
|
"dependencies": [],
|
|
16
|
-
"sharedResources": [
|
|
17
|
-
|
|
20
|
+
"sharedResources": [
|
|
21
|
+
"task-system-integration"
|
|
22
|
+
],
|
|
23
|
+
"compatibility": [
|
|
24
|
+
"claude-code",
|
|
25
|
+
"gemini-cli",
|
|
26
|
+
"codex-cli"
|
|
27
|
+
],
|
|
18
28
|
"license": "MIT",
|
|
19
29
|
"metadata": {
|
|
20
|
-
"version": "2.
|
|
21
|
-
"lastReviewed": "2026-05-
|
|
30
|
+
"version": "2.3.0",
|
|
31
|
+
"lastReviewed": "2026-05-24",
|
|
22
32
|
"stability": "stable"
|
|
23
33
|
}
|
|
24
34
|
},
|
|
@@ -27,14 +37,32 @@
|
|
|
27
37
|
"description": "Pipeline-aware orchestration for multi-agent workflows. Manages RCASD-IVTR+C pipeline progression for epics, delegates all work to subagents via provider-neutral spawning, enforces lifecycle gates before spawning, and reads only manifests. Use when orchestrating complex workflows, delegating to subagents, or managing epic pipeline progression.",
|
|
28
38
|
"version": "4.0.0",
|
|
29
39
|
"path": "skills/ct-orchestrator/SKILL.md",
|
|
30
|
-
"references": [
|
|
40
|
+
"references": [
|
|
41
|
+
"skills/ct-orchestrator/references/autonomous-operation.md",
|
|
42
|
+
"skills/ct-orchestrator/references/lifecycle-gates.md",
|
|
43
|
+
"skills/ct-orchestrator/references/orchestrator-compliance.md",
|
|
44
|
+
"skills/ct-orchestrator/references/orchestrator-handoffs.md",
|
|
45
|
+
"skills/ct-orchestrator/references/orchestrator-patterns.md",
|
|
46
|
+
"skills/ct-orchestrator/references/orchestrator-recovery.md",
|
|
47
|
+
"skills/ct-orchestrator/references/orchestrator-spawning.md",
|
|
48
|
+
"skills/ct-orchestrator/references/orchestrator-tokens.md",
|
|
49
|
+
"skills/ct-orchestrator/references/SUBAGENT-PROTOCOL-BLOCK.md"
|
|
50
|
+
],
|
|
31
51
|
"core": true,
|
|
32
52
|
"category": "core",
|
|
33
53
|
"tier": 0,
|
|
34
54
|
"protocol": "agent-protocol",
|
|
35
55
|
"dependencies": [],
|
|
36
|
-
"sharedResources": [
|
|
37
|
-
|
|
56
|
+
"sharedResources": [
|
|
57
|
+
"subagent-protocol-base",
|
|
58
|
+
"task-system-integration"
|
|
59
|
+
],
|
|
60
|
+
"compatibility": [
|
|
61
|
+
"claude-code",
|
|
62
|
+
"cursor",
|
|
63
|
+
"windsurf",
|
|
64
|
+
"gemini-cli"
|
|
65
|
+
],
|
|
38
66
|
"license": "MIT",
|
|
39
67
|
"metadata": {}
|
|
40
68
|
},
|
|
@@ -49,8 +77,16 @@
|
|
|
49
77
|
"tier": 0,
|
|
50
78
|
"protocol": "implementation",
|
|
51
79
|
"dependencies": [],
|
|
52
|
-
"sharedResources": [
|
|
53
|
-
|
|
80
|
+
"sharedResources": [
|
|
81
|
+
"subagent-protocol-base",
|
|
82
|
+
"task-system-integration"
|
|
83
|
+
],
|
|
84
|
+
"compatibility": [
|
|
85
|
+
"claude-code",
|
|
86
|
+
"cursor",
|
|
87
|
+
"windsurf",
|
|
88
|
+
"gemini-cli"
|
|
89
|
+
],
|
|
54
90
|
"license": "MIT",
|
|
55
91
|
"metadata": {}
|
|
56
92
|
},
|
|
@@ -59,14 +95,33 @@
|
|
|
59
95
|
"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.",
|
|
60
96
|
"version": "3.0.0",
|
|
61
97
|
"path": "skills/ct-epic-architect/SKILL.md",
|
|
62
|
-
"references": [
|
|
98
|
+
"references": [
|
|
99
|
+
"skills/ct-epic-architect/references/bug-epic-example.md",
|
|
100
|
+
"skills/ct-epic-architect/references/commands.md",
|
|
101
|
+
"skills/ct-epic-architect/references/feature-epic-example.md",
|
|
102
|
+
"skills/ct-epic-architect/references/migration-epic-example.md",
|
|
103
|
+
"skills/ct-epic-architect/references/output-format.md",
|
|
104
|
+
"skills/ct-epic-architect/references/patterns.md",
|
|
105
|
+
"skills/ct-epic-architect/references/refactor-epic-example.md",
|
|
106
|
+
"skills/ct-epic-architect/references/research-epic-example.md",
|
|
107
|
+
"skills/ct-epic-architect/references/shell-escaping.md",
|
|
108
|
+
"skills/ct-epic-architect/references/skill-aware-execution.md"
|
|
109
|
+
],
|
|
63
110
|
"core": false,
|
|
64
111
|
"category": "recommended",
|
|
65
112
|
"tier": 1,
|
|
66
113
|
"protocol": "decomposition",
|
|
67
114
|
"dependencies": [],
|
|
68
|
-
"sharedResources": [
|
|
69
|
-
|
|
115
|
+
"sharedResources": [
|
|
116
|
+
"subagent-protocol-base",
|
|
117
|
+
"task-system-integration"
|
|
118
|
+
],
|
|
119
|
+
"compatibility": [
|
|
120
|
+
"claude-code",
|
|
121
|
+
"cursor",
|
|
122
|
+
"windsurf",
|
|
123
|
+
"gemini-cli"
|
|
124
|
+
],
|
|
70
125
|
"license": "MIT",
|
|
71
126
|
"metadata": {}
|
|
72
127
|
},
|
|
@@ -81,15 +136,23 @@
|
|
|
81
136
|
"tier": 1,
|
|
82
137
|
"protocol": "research",
|
|
83
138
|
"dependencies": [],
|
|
84
|
-
"sharedResources": [
|
|
85
|
-
|
|
139
|
+
"sharedResources": [
|
|
140
|
+
"subagent-protocol-base",
|
|
141
|
+
"task-system-integration"
|
|
142
|
+
],
|
|
143
|
+
"compatibility": [
|
|
144
|
+
"claude-code",
|
|
145
|
+
"cursor",
|
|
146
|
+
"windsurf",
|
|
147
|
+
"gemini-cli"
|
|
148
|
+
],
|
|
86
149
|
"license": "MIT",
|
|
87
150
|
"metadata": {}
|
|
88
151
|
},
|
|
89
152
|
{
|
|
90
153
|
"name": "ct-spec-writer",
|
|
91
154
|
"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.",
|
|
92
|
-
"version": "2.
|
|
155
|
+
"version": "2.1.0",
|
|
93
156
|
"path": "skills/ct-spec-writer/SKILL.md",
|
|
94
157
|
"references": [],
|
|
95
158
|
"core": false,
|
|
@@ -97,8 +160,16 @@
|
|
|
97
160
|
"tier": 1,
|
|
98
161
|
"protocol": "specification",
|
|
99
162
|
"dependencies": [],
|
|
100
|
-
"sharedResources": [
|
|
101
|
-
|
|
163
|
+
"sharedResources": [
|
|
164
|
+
"subagent-protocol-base",
|
|
165
|
+
"task-system-integration"
|
|
166
|
+
],
|
|
167
|
+
"compatibility": [
|
|
168
|
+
"claude-code",
|
|
169
|
+
"cursor",
|
|
170
|
+
"windsurf",
|
|
171
|
+
"gemini-cli"
|
|
172
|
+
],
|
|
102
173
|
"license": "MIT",
|
|
103
174
|
"metadata": {}
|
|
104
175
|
},
|
|
@@ -113,8 +184,16 @@
|
|
|
113
184
|
"tier": 1,
|
|
114
185
|
"protocol": "validation",
|
|
115
186
|
"dependencies": [],
|
|
116
|
-
"sharedResources": [
|
|
117
|
-
|
|
187
|
+
"sharedResources": [
|
|
188
|
+
"subagent-protocol-base",
|
|
189
|
+
"task-system-integration"
|
|
190
|
+
],
|
|
191
|
+
"compatibility": [
|
|
192
|
+
"claude-code",
|
|
193
|
+
"cursor",
|
|
194
|
+
"windsurf",
|
|
195
|
+
"gemini-cli"
|
|
196
|
+
],
|
|
118
197
|
"license": "MIT",
|
|
119
198
|
"metadata": {}
|
|
120
199
|
},
|
|
@@ -129,24 +208,44 @@
|
|
|
129
208
|
"tier": 2,
|
|
130
209
|
"protocol": "contribution",
|
|
131
210
|
"dependencies": [],
|
|
132
|
-
"sharedResources": [
|
|
133
|
-
|
|
211
|
+
"sharedResources": [
|
|
212
|
+
"subagent-protocol-base",
|
|
213
|
+
"task-system-integration"
|
|
214
|
+
],
|
|
215
|
+
"compatibility": [
|
|
216
|
+
"claude-code",
|
|
217
|
+
"cursor",
|
|
218
|
+
"windsurf",
|
|
219
|
+
"gemini-cli"
|
|
220
|
+
],
|
|
134
221
|
"license": "MIT",
|
|
135
222
|
"metadata": {}
|
|
136
223
|
},
|
|
137
224
|
{
|
|
138
225
|
"name": "ct-documentor",
|
|
139
226
|
"description": "Documentation creation, editing, and review with CLEO style guide compliance. Coordinates specialized skills for lookup, writing, and review.",
|
|
140
|
-
"version": "3.
|
|
227
|
+
"version": "3.12.0",
|
|
141
228
|
"path": "skills/ct-documentor/SKILL.md",
|
|
142
229
|
"references": [],
|
|
143
230
|
"core": false,
|
|
144
231
|
"category": "specialist",
|
|
145
232
|
"tier": 2,
|
|
146
233
|
"protocol": null,
|
|
147
|
-
"dependencies": [
|
|
148
|
-
|
|
149
|
-
|
|
234
|
+
"dependencies": [
|
|
235
|
+
"ct-docs-lookup",
|
|
236
|
+
"ct-docs-write",
|
|
237
|
+
"ct-docs-review"
|
|
238
|
+
],
|
|
239
|
+
"sharedResources": [
|
|
240
|
+
"subagent-protocol-base",
|
|
241
|
+
"task-system-integration"
|
|
242
|
+
],
|
|
243
|
+
"compatibility": [
|
|
244
|
+
"claude-code",
|
|
245
|
+
"cursor",
|
|
246
|
+
"windsurf",
|
|
247
|
+
"gemini-cli"
|
|
248
|
+
],
|
|
150
249
|
"license": "MIT",
|
|
151
250
|
"metadata": {}
|
|
152
251
|
},
|
|
@@ -162,14 +261,19 @@
|
|
|
162
261
|
"protocol": null,
|
|
163
262
|
"dependencies": [],
|
|
164
263
|
"sharedResources": [],
|
|
165
|
-
"compatibility": [
|
|
264
|
+
"compatibility": [
|
|
265
|
+
"claude-code",
|
|
266
|
+
"cursor",
|
|
267
|
+
"windsurf",
|
|
268
|
+
"gemini-cli"
|
|
269
|
+
],
|
|
166
270
|
"license": "MIT",
|
|
167
271
|
"metadata": {}
|
|
168
272
|
},
|
|
169
273
|
{
|
|
170
274
|
"name": "ct-docs-write",
|
|
171
275
|
"description": "Documentation writing with CLEO's conversational, clear, user-focused style. Use when creating, editing, or improving documentation files.",
|
|
172
|
-
"version": "1.
|
|
276
|
+
"version": "1.2.0",
|
|
173
277
|
"path": "skills/ct-docs-write/SKILL.md",
|
|
174
278
|
"references": [],
|
|
175
279
|
"core": false,
|
|
@@ -178,7 +282,12 @@
|
|
|
178
282
|
"protocol": null,
|
|
179
283
|
"dependencies": [],
|
|
180
284
|
"sharedResources": [],
|
|
181
|
-
"compatibility": [
|
|
285
|
+
"compatibility": [
|
|
286
|
+
"claude-code",
|
|
287
|
+
"cursor",
|
|
288
|
+
"windsurf",
|
|
289
|
+
"gemini-cli"
|
|
290
|
+
],
|
|
182
291
|
"license": "MIT",
|
|
183
292
|
"metadata": {}
|
|
184
293
|
},
|
|
@@ -194,7 +303,12 @@
|
|
|
194
303
|
"protocol": null,
|
|
195
304
|
"dependencies": [],
|
|
196
305
|
"sharedResources": [],
|
|
197
|
-
"compatibility": [
|
|
306
|
+
"compatibility": [
|
|
307
|
+
"claude-code",
|
|
308
|
+
"cursor",
|
|
309
|
+
"windsurf",
|
|
310
|
+
"gemini-cli"
|
|
311
|
+
],
|
|
198
312
|
"license": "MIT",
|
|
199
313
|
"metadata": {}
|
|
200
314
|
},
|
|
@@ -209,8 +323,15 @@
|
|
|
209
323
|
"tier": 2,
|
|
210
324
|
"protocol": "contribution",
|
|
211
325
|
"dependencies": [],
|
|
212
|
-
"sharedResources": [
|
|
213
|
-
|
|
326
|
+
"sharedResources": [
|
|
327
|
+
"subagent-protocol-base"
|
|
328
|
+
],
|
|
329
|
+
"compatibility": [
|
|
330
|
+
"claude-code",
|
|
331
|
+
"cursor",
|
|
332
|
+
"windsurf",
|
|
333
|
+
"gemini-cli"
|
|
334
|
+
],
|
|
214
335
|
"license": "MIT",
|
|
215
336
|
"metadata": {}
|
|
216
337
|
},
|
|
@@ -226,27 +347,59 @@
|
|
|
226
347
|
"protocol": null,
|
|
227
348
|
"dependencies": [],
|
|
228
349
|
"sharedResources": [],
|
|
229
|
-
"compatibility": [
|
|
350
|
+
"compatibility": [
|
|
351
|
+
"claude-code",
|
|
352
|
+
"cursor",
|
|
353
|
+
"windsurf",
|
|
354
|
+
"gemini-cli"
|
|
355
|
+
],
|
|
230
356
|
"license": "MIT",
|
|
231
357
|
"metadata": {}
|
|
232
358
|
},
|
|
233
359
|
{
|
|
234
360
|
"name": "ct-council",
|
|
235
|
-
"description": "Convene \"The Council\"
|
|
361
|
+
"description": "Convene \"The Council\" \u2014 a 5-advisor, shuffled gate-based peer-review, chairman-synthesis workflow for reviewing a plan, decision, architecture, or piece of work inside the current project. Use when the user says \"convene the council\" (or \"counsel\"), \"get the council on this\", \"council review\", \"run the five advisors\", \"stress-test this\", \"get multiple perspectives\", or asks for a rigorous multi-angle challenge of a proposal (Contrarian, First Principles, Expansionist, Outsider, Executor \u2192 shuffled peer review with pass/fail gates \u2192 convergence detector \u2192 Chairman verdict). Operates on the current codebase \u2014 each advisor grounds their analysis in actual files/commits before opining. Output is validated by scripts/validate.py.",
|
|
236
362
|
"version": "1.0.0",
|
|
237
363
|
"path": "skills/ct-council/SKILL.md",
|
|
238
|
-
"references": [
|
|
364
|
+
"references": [
|
|
365
|
+
"skills/ct-council/references/chairman.md",
|
|
366
|
+
"skills/ct-council/references/contrarian.md",
|
|
367
|
+
"skills/ct-council/references/evidence-pack.md",
|
|
368
|
+
"skills/ct-council/references/examples.md",
|
|
369
|
+
"skills/ct-council/references/executor.md",
|
|
370
|
+
"skills/ct-council/references/expansionist.md",
|
|
371
|
+
"skills/ct-council/references/first-principles.md",
|
|
372
|
+
"skills/ct-council/references/outsider.md",
|
|
373
|
+
"skills/ct-council/references/peer-review.md"
|
|
374
|
+
],
|
|
239
375
|
"core": false,
|
|
240
376
|
"category": "specialist",
|
|
241
377
|
"tier": 2,
|
|
242
378
|
"protocol": null,
|
|
243
379
|
"dependencies": [],
|
|
244
380
|
"sharedResources": [],
|
|
245
|
-
"compatibility": [
|
|
381
|
+
"compatibility": [
|
|
382
|
+
"claude-code",
|
|
383
|
+
"cursor",
|
|
384
|
+
"windsurf",
|
|
385
|
+
"gemini-cli"
|
|
386
|
+
],
|
|
246
387
|
"license": "MIT",
|
|
247
388
|
"metadata": {
|
|
248
|
-
"triggers": [
|
|
249
|
-
|
|
389
|
+
"triggers": [
|
|
390
|
+
"convene the council",
|
|
391
|
+
"council review",
|
|
392
|
+
"run the five advisors",
|
|
393
|
+
"stress-test this",
|
|
394
|
+
"get multiple perspectives"
|
|
395
|
+
],
|
|
396
|
+
"advisors": [
|
|
397
|
+
"Contrarian",
|
|
398
|
+
"First Principles",
|
|
399
|
+
"Expansionist",
|
|
400
|
+
"Outsider",
|
|
401
|
+
"Executor"
|
|
402
|
+
]
|
|
250
403
|
}
|
|
251
404
|
},
|
|
252
405
|
{
|
|
@@ -254,14 +407,22 @@
|
|
|
254
407
|
"description": "Guide for creating effective skills. Use when creating a new skill or updating an existing skill that extends agent capabilities.",
|
|
255
408
|
"version": "1.0.0",
|
|
256
409
|
"path": "skills/ct-skill-creator/SKILL.md",
|
|
257
|
-
"references": [
|
|
410
|
+
"references": [
|
|
411
|
+
"skills/ct-skill-creator/references/output-patterns.md",
|
|
412
|
+
"skills/ct-skill-creator/references/workflows.md"
|
|
413
|
+
],
|
|
258
414
|
"core": false,
|
|
259
415
|
"category": "meta",
|
|
260
416
|
"tier": 3,
|
|
261
417
|
"protocol": null,
|
|
262
418
|
"dependencies": [],
|
|
263
419
|
"sharedResources": [],
|
|
264
|
-
"compatibility": [
|
|
420
|
+
"compatibility": [
|
|
421
|
+
"claude-code",
|
|
422
|
+
"cursor",
|
|
423
|
+
"windsurf",
|
|
424
|
+
"gemini-cli"
|
|
425
|
+
],
|
|
265
426
|
"license": "MIT",
|
|
266
427
|
"metadata": {}
|
|
267
428
|
},
|
|
@@ -277,7 +438,12 @@
|
|
|
277
438
|
"protocol": null,
|
|
278
439
|
"dependencies": [],
|
|
279
440
|
"sharedResources": [],
|
|
280
|
-
"compatibility": [
|
|
441
|
+
"compatibility": [
|
|
442
|
+
"claude-code",
|
|
443
|
+
"cursor",
|
|
444
|
+
"windsurf",
|
|
445
|
+
"gemini-cli"
|
|
446
|
+
],
|
|
281
447
|
"license": "MIT",
|
|
282
448
|
"metadata": {}
|
|
283
449
|
},
|
|
@@ -286,18 +452,43 @@
|
|
|
286
452
|
"description": "LOOM (Logical Order of Operations Methodology) - the systematic framework for how CLEO processes project threads through the RCASD-IVTR+C pipeline. LOOM encompasses the full lifecycle methodology that transforms raw ideas into delivered artifacts, from Research through Release with the Contribution protocol (+C) running across all stages. References docs/concepts/CLEO-VISION.md for the complete LOOM framework, neural hierarchy model, and brain metaphor mapping.",
|
|
287
453
|
"version": "1.0.0",
|
|
288
454
|
"path": "docs/concepts/CLEO-VISION.md",
|
|
289
|
-
"references": [
|
|
455
|
+
"references": [
|
|
456
|
+
".cleo/adrs/ADR-007-domain-consolidation.md",
|
|
457
|
+
".cleo/adrs/ADR-009-BRAIN-cognitive-architecture.md"
|
|
458
|
+
],
|
|
290
459
|
"core": false,
|
|
291
460
|
"category": "core",
|
|
292
461
|
"tier": 0,
|
|
293
462
|
"protocol": null,
|
|
294
463
|
"dependencies": [],
|
|
295
464
|
"sharedResources": [],
|
|
296
|
-
"compatibility": [
|
|
465
|
+
"compatibility": [
|
|
466
|
+
"claude-code",
|
|
467
|
+
"cursor",
|
|
468
|
+
"windsurf",
|
|
469
|
+
"gemini-cli"
|
|
470
|
+
],
|
|
297
471
|
"license": "MIT",
|
|
298
472
|
"metadata": {
|
|
299
|
-
"concepts": [
|
|
300
|
-
|
|
473
|
+
"concepts": [
|
|
474
|
+
"LOOM",
|
|
475
|
+
"RCASD-IVTR+C",
|
|
476
|
+
"lifecycle pipeline",
|
|
477
|
+
"neural hierarchy",
|
|
478
|
+
"brain metaphor"
|
|
479
|
+
],
|
|
480
|
+
"domains": [
|
|
481
|
+
"tasks",
|
|
482
|
+
"session",
|
|
483
|
+
"memory",
|
|
484
|
+
"check",
|
|
485
|
+
"pipeline",
|
|
486
|
+
"orchestrate",
|
|
487
|
+
"tools",
|
|
488
|
+
"admin",
|
|
489
|
+
"nexus",
|
|
490
|
+
"sticky"
|
|
491
|
+
]
|
|
301
492
|
}
|
|
302
493
|
}
|
|
303
494
|
]
|