@cleocode/cleo 2026.3.2 → 2026.3.6
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 +1 -3
- package/dist/cli/index.js +7381 -3507
- package/dist/cli/index.js.map +4 -4
- package/dist/mcp/index.js +5792 -2097
- package/dist/mcp/index.js.map +4 -4
- package/package.json +4 -4
- package/packages/ct-skills/index.js +1 -1
- package/packages/ct-skills/package.json +0 -2
- package/packages/ct-skills/profiles/core.json +1 -1
- package/packages/ct-skills/profiles/full.json +4 -5
- package/packages/ct-skills/profiles/minimal.json +3 -3
- package/packages/ct-skills/profiles/recommended.json +2 -2
- package/packages/ct-skills/provider-skills-map.json +97 -0
- package/packages/ct-skills/skills/_shared/skill-chaining-patterns.md +23 -26
- package/packages/ct-skills/skills/_shared/testing-framework-config.md +9 -9
- package/packages/ct-skills/skills/ct-cleo/SKILL.md +21 -1
- package/packages/ct-skills/skills/ct-dev-workflow/SKILL.md +1 -1
- package/packages/ct-skills/skills/ct-documentor/SKILL.md +1 -1
- package/packages/ct-skills/skills/ct-epic-architect/SKILL.md +1 -1
- package/packages/ct-skills/skills/ct-grade/SKILL.md +214 -0
- package/packages/ct-skills/skills/ct-orchestrator/SKILL.md +119 -43
- package/packages/ct-skills/skills/ct-orchestrator/orchestrator-prompt.txt +17 -0
- package/packages/ct-skills/skills/ct-orchestrator/references/orchestrator-patterns.md +1 -1
- package/packages/ct-skills/skills/ct-research-agent/SKILL.md +1 -1
- package/packages/ct-skills/skills/ct-spec-writer/SKILL.md +1 -1
- package/packages/ct-skills/skills/ct-task-executor/SKILL.md +1 -1
- package/packages/ct-skills/skills/ct-validator/SKILL.md +1 -1
- package/packages/ct-skills/skills/manifest.json +217 -947
- package/packages/ct-skills/skills.json +244 -3
- package/templates/CLEO-INJECTION.md +37 -0
- package/templates/README.md +4 -4
- package/templates/cleo-gitignore +3 -11
- package/templates/git-hooks/pre-commit +1 -1
- package/packages/ct-skills/protocols/agent-protocol.md +0 -260
- package/packages/ct-skills/protocols/artifact-publish.md +0 -587
- package/packages/ct-skills/protocols/consensus.md +0 -309
- package/packages/ct-skills/protocols/contribution.md +0 -375
- package/packages/ct-skills/protocols/decomposition.md +0 -352
- package/packages/ct-skills/protocols/implementation.md +0 -344
- package/packages/ct-skills/protocols/provenance.md +0 -600
- package/packages/ct-skills/protocols/release.md +0 -635
- package/packages/ct-skills/protocols/research.md +0 -248
- package/packages/ct-skills/protocols/specification.md +0 -287
- package/packages/ct-skills/protocols/testing.md +0 -346
- package/packages/ct-skills/protocols/validation.md +0 -229
- package/packages/ct-skills/skills/ct-gitbook/SKILL.md +0 -516
- package/packages/ct-skills/skills/ct-gitbook/assets/SUMMARY.md +0 -28
- package/packages/ct-skills/skills/ct-gitbook/assets/gitbook.yaml +0 -14
- package/packages/ct-skills/skills/ct-gitbook/references/api-sdk.md +0 -318
- package/packages/ct-skills/skills/ct-gitbook/references/auth-sso.md +0 -208
- package/packages/ct-skills/skills/ct-gitbook/references/change-requests.md +0 -169
- package/packages/ct-skills/skills/ct-gitbook/references/content-blocks.md +0 -230
- package/packages/ct-skills/skills/ct-gitbook/references/docs-sites.md +0 -202
- package/packages/ct-skills/skills/ct-gitbook/references/git-sync.md +0 -175
- package/packages/ct-skills/skills/ct-gitbook/references/llm-ready.md +0 -178
- package/packages/ct-skills/skills/ct-gitbook/references/migration.md +0 -263
- package/packages/ct-skills/skills/ct-library-implementer-bash/SKILL.md +0 -316
- package/packages/ct-skills/skills/ct-skill-lookup/SKILL.md +0 -179
- package/packages/ct-skills/skills/ct-test-writer-bats/SKILL.md +0 -347
- package/packages/ct-skills/skills/railway-platform/SKILL.md +0 -506
- package/packages/ct-skills/skills/railway-platform/_shared/scripts/railway-api.sh +0 -180
- package/packages/ct-skills/skills/railway-platform/_shared/scripts/railway-common.sh +0 -262
- package/packages/ct-skills/skills/railway-platform/references/01-getting-started.md +0 -149
- package/packages/ct-skills/skills/railway-platform/references/02-projects.md +0 -116
- package/packages/ct-skills/skills/railway-platform/references/03-services.md +0 -147
- package/packages/ct-skills/skills/railway-platform/references/04-deployments.md +0 -210
- package/packages/ct-skills/skills/railway-platform/references/05-databases.md +0 -142
- package/packages/ct-skills/skills/railway-platform/references/06-environments.md +0 -261
- package/packages/ct-skills/skills/railway-platform/references/07-domains.md +0 -139
- package/packages/ct-skills/skills/railway-platform/references/08-volumes.md +0 -533
- package/packages/ct-skills/skills/railway-platform/references/09-networking.md +0 -592
- package/packages/ct-skills/skills/railway-platform/references/10-cron.md +0 -488
- package/packages/ct-skills/skills/railway-platform/references/11-functions.md +0 -170
- package/packages/ct-skills/skills/railway-platform/references/12-monorepo.md +0 -294
- package/packages/ct-skills/skills/railway-platform/references/13-troubleshooting.md +0 -335
- package/packages/ct-skills/skills/railway-platform/references/14-railway-metal.md +0 -197
|
@@ -1,248 +0,0 @@
|
|
|
1
|
-
# Research Protocol
|
|
2
|
-
|
|
3
|
-
**Provenance**: @task T3155, @epic T3147
|
|
4
|
-
**Version**: 1.0.1
|
|
5
|
-
**Type**: Conditional Protocol
|
|
6
|
-
**Max Active**: 3 protocols (including base)
|
|
7
|
-
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
## Trigger Conditions
|
|
11
|
-
|
|
12
|
-
This protocol activates when the task involves:
|
|
13
|
-
|
|
14
|
-
| Trigger | Keywords | Context |
|
|
15
|
-
|---------|----------|---------|
|
|
16
|
-
| Investigation | "research", "investigate", "explore", "study" | Information gathering |
|
|
17
|
-
| Analysis | "analyze", "compare", "evaluate", "assess" | Data synthesis |
|
|
18
|
-
| Discovery | "find out", "discover", "learn about" | New information |
|
|
19
|
-
| Documentation | "document findings", "report on" | Structured output |
|
|
20
|
-
|
|
21
|
-
**Explicit Override**: `--protocol research` flag on task creation.
|
|
22
|
-
|
|
23
|
-
---
|
|
24
|
-
|
|
25
|
-
## Requirements (RFC 2119)
|
|
26
|
-
|
|
27
|
-
### MUST
|
|
28
|
-
|
|
29
|
-
| Requirement | Description |
|
|
30
|
-
|-------------|-------------|
|
|
31
|
-
| RSCH-001 | MUST NOT implement code or make changes to codebase |
|
|
32
|
-
| RSCH-002 | MUST document all sources with citations |
|
|
33
|
-
| RSCH-003 | MUST write findings to `claudedocs/agent-outputs/` |
|
|
34
|
-
| RSCH-004 | MUST append entry to `MANIFEST.jsonl` |
|
|
35
|
-
| RSCH-005 | MUST return only completion message (no content in response) |
|
|
36
|
-
| RSCH-006 | MUST include 3-7 key findings in manifest entry |
|
|
37
|
-
| RSCH-007 | MUST set `agent_type: "research"` in manifest |
|
|
38
|
-
|
|
39
|
-
### SHOULD
|
|
40
|
-
|
|
41
|
-
| Requirement | Description |
|
|
42
|
-
|-------------|-------------|
|
|
43
|
-
| RSCH-010 | SHOULD use multiple independent sources |
|
|
44
|
-
| RSCH-011 | SHOULD cross-reference findings for accuracy |
|
|
45
|
-
| RSCH-012 | SHOULD include confidence levels for claims |
|
|
46
|
-
| RSCH-013 | SHOULD identify gaps or areas needing further research |
|
|
47
|
-
| RSCH-014 | SHOULD link research to relevant tasks |
|
|
48
|
-
|
|
49
|
-
### MAY
|
|
50
|
-
|
|
51
|
-
| Requirement | Description |
|
|
52
|
-
|-------------|-------------|
|
|
53
|
-
| RSCH-020 | MAY propose follow-up research tasks |
|
|
54
|
-
| RSCH-021 | MAY include visual diagrams or tables |
|
|
55
|
-
| RSCH-022 | MAY compare multiple approaches or solutions |
|
|
56
|
-
|
|
57
|
-
---
|
|
58
|
-
|
|
59
|
-
## Output Format
|
|
60
|
-
|
|
61
|
-
### File Output
|
|
62
|
-
|
|
63
|
-
```markdown
|
|
64
|
-
# {Research Title}
|
|
65
|
-
|
|
66
|
-
**Task**: T####
|
|
67
|
-
**Date**: YYYY-MM-DD
|
|
68
|
-
**Status**: complete|partial|blocked
|
|
69
|
-
**Agent Type**: research
|
|
70
|
-
|
|
71
|
-
---
|
|
72
|
-
|
|
73
|
-
## Executive Summary
|
|
74
|
-
|
|
75
|
-
{2-3 sentence summary of findings}
|
|
76
|
-
|
|
77
|
-
## Research Questions
|
|
78
|
-
|
|
79
|
-
1. {Question 1}
|
|
80
|
-
2. {Question 2}
|
|
81
|
-
|
|
82
|
-
## Findings
|
|
83
|
-
|
|
84
|
-
### {Topic 1}
|
|
85
|
-
|
|
86
|
-
{Detailed findings with citations}
|
|
87
|
-
|
|
88
|
-
### {Topic 2}
|
|
89
|
-
|
|
90
|
-
{Detailed findings with citations}
|
|
91
|
-
|
|
92
|
-
## Sources
|
|
93
|
-
|
|
94
|
-
| Source | Type | Relevance |
|
|
95
|
-
|--------|------|-----------|
|
|
96
|
-
| {Source 1} | {documentation|code|external} | {High|Medium|Low} |
|
|
97
|
-
|
|
98
|
-
## Recommendations
|
|
99
|
-
|
|
100
|
-
1. {Actionable recommendation 1}
|
|
101
|
-
2. {Actionable recommendation 2}
|
|
102
|
-
|
|
103
|
-
## Open Questions
|
|
104
|
-
|
|
105
|
-
- {Unresolved question or gap}
|
|
106
|
-
```
|
|
107
|
-
|
|
108
|
-
### Manifest Entry
|
|
109
|
-
|
|
110
|
-
@skills/_shared/manifest-operations.md
|
|
111
|
-
|
|
112
|
-
Use `cleo research add` to create the manifest entry:
|
|
113
|
-
|
|
114
|
-
```bash
|
|
115
|
-
cleo research add \
|
|
116
|
-
--title "Research Title" \
|
|
117
|
-
--file "YYYY-MM-DD_topic.md" \
|
|
118
|
-
--topics "topic1,topic2,topic3" \
|
|
119
|
-
--findings "Finding 1,Finding 2,Finding 3" \
|
|
120
|
-
--status complete \
|
|
121
|
-
--task T#### \
|
|
122
|
-
--agent-type research
|
|
123
|
-
```
|
|
124
|
-
|
|
125
|
-
---
|
|
126
|
-
|
|
127
|
-
## Integration Points
|
|
128
|
-
|
|
129
|
-
### Base Protocol
|
|
130
|
-
|
|
131
|
-
- Inherits task lifecycle (start, execute, complete)
|
|
132
|
-
- Inherits manifest append requirement
|
|
133
|
-
- Inherits error handling patterns
|
|
134
|
-
|
|
135
|
-
### Protocol Interactions
|
|
136
|
-
|
|
137
|
-
| Combined With | Behavior |
|
|
138
|
-
|---------------|----------|
|
|
139
|
-
| specification | Research informs spec decisions |
|
|
140
|
-
| decomposition | Research identifies task structure |
|
|
141
|
-
| consensus | Research provides evidence for voting |
|
|
142
|
-
|
|
143
|
-
### Handoff Patterns
|
|
144
|
-
|
|
145
|
-
| Scenario | Handoff Target |
|
|
146
|
-
|----------|----------------|
|
|
147
|
-
| Research identifies implementation need | implementation protocol |
|
|
148
|
-
| Research reveals design decisions needed | specification protocol |
|
|
149
|
-
| Research requires expert validation | consensus protocol |
|
|
150
|
-
|
|
151
|
-
---
|
|
152
|
-
|
|
153
|
-
## Example
|
|
154
|
-
|
|
155
|
-
**Task**: Research authentication patterns for CLEO plugin system
|
|
156
|
-
|
|
157
|
-
**Manifest Entry Command**:
|
|
158
|
-
```bash
|
|
159
|
-
cleo research add \
|
|
160
|
-
--title "Authentication Patterns Research" \
|
|
161
|
-
--file "2026-01-26_auth-patterns.md" \
|
|
162
|
-
--topics "authentication,plugins,security" \
|
|
163
|
-
--findings "OAuth2 is standard for plugin auth,Token refresh needed for long sessions,Rate limiting prevents abuse" \
|
|
164
|
-
--status complete \
|
|
165
|
-
--task T2398 \
|
|
166
|
-
--epic T2392 \
|
|
167
|
-
--actionable \
|
|
168
|
-
--needs-followup T2400 \
|
|
169
|
-
--agent-type research
|
|
170
|
-
```
|
|
171
|
-
|
|
172
|
-
**Return Message**:
|
|
173
|
-
```
|
|
174
|
-
Research complete. See MANIFEST.jsonl for summary.
|
|
175
|
-
```
|
|
176
|
-
|
|
177
|
-
---
|
|
178
|
-
|
|
179
|
-
## Enforcement
|
|
180
|
-
|
|
181
|
-
### Tool Allowlist
|
|
182
|
-
|
|
183
|
-
**Allowed Tools** (Read-only operations):
|
|
184
|
-
- `Read` - File reading
|
|
185
|
-
- `Grep` - Content search
|
|
186
|
-
- `Glob` - File pattern matching
|
|
187
|
-
- `Bash` - **Read-only commands only** (ls, cat, grep, find, etc.)
|
|
188
|
-
|
|
189
|
-
**Prohibited Tools**:
|
|
190
|
-
- `Write` - File writing
|
|
191
|
-
- `Edit` - File modification
|
|
192
|
-
- **Any** code compilation or execution
|
|
193
|
-
|
|
194
|
-
**Rationale**: Research must remain read-only to prevent contamination of implementation tasks.
|
|
195
|
-
|
|
196
|
-
### Validation Command
|
|
197
|
-
|
|
198
|
-
**Command** (planned): `cleo research validate [--task TASK_ID]`
|
|
199
|
-
|
|
200
|
-
**Current State**: Available via `validate_research_protocol()` in `lib/protocol-validation.sh`
|
|
201
|
-
|
|
202
|
-
```bash
|
|
203
|
-
# Programmatic validation
|
|
204
|
-
source lib/protocol-validation.sh
|
|
205
|
-
result=$(validate_research_protocol "T1234" "$manifest_entry" "false")
|
|
206
|
-
```
|
|
207
|
-
|
|
208
|
-
**Checks**:
|
|
209
|
-
- RSCH-001: No code changes in git diff
|
|
210
|
-
- RSCH-004: Manifest entry appended
|
|
211
|
-
- RSCH-006: 3-7 key findings
|
|
212
|
-
- RSCH-007: agent_type = "research"
|
|
213
|
-
|
|
214
|
-
### Orchestrator Integration
|
|
215
|
-
|
|
216
|
-
**Pre-Spawn Validation**:
|
|
217
|
-
```bash
|
|
218
|
-
# In lib/orchestrator-spawn.sh Step 6.5
|
|
219
|
-
protocol_type=$(_osp_skill_to_protocol "ct-research-agent") # Returns "research"
|
|
220
|
-
validate_research_protocol "$task_id" "$manifest_entry" "false"
|
|
221
|
-
# Blocks spawn on MUST violations with EXIT_PROTOCOL_RESEARCH (60)
|
|
222
|
-
```
|
|
223
|
-
|
|
224
|
-
**Post-Completion Verification**:
|
|
225
|
-
- Git diff analysis detects code modifications
|
|
226
|
-
- Manifest parsing validates key_findings count
|
|
227
|
-
- Agent type verification
|
|
228
|
-
|
|
229
|
-
### Exit Codes
|
|
230
|
-
|
|
231
|
-
- `EXIT_PROTOCOL_RESEARCH` (60) - Research protocol violation
|
|
232
|
-
- Common violations: Code changes detected, wrong agent_type, insufficient findings
|
|
233
|
-
|
|
234
|
-
---
|
|
235
|
-
|
|
236
|
-
## Anti-Patterns
|
|
237
|
-
|
|
238
|
-
| Pattern | Why Avoid |
|
|
239
|
-
|---------|-----------|
|
|
240
|
-
| Implementing code during research | Pollutes research context, mixes concerns |
|
|
241
|
-
| Returning findings in response | Wastes orchestrator context |
|
|
242
|
-
| Single-source conclusions | Risk of bias or error |
|
|
243
|
-
| Vague findings without evidence | Not actionable |
|
|
244
|
-
| Skipping manifest entry | Breaks orchestrator workflow |
|
|
245
|
-
|
|
246
|
-
---
|
|
247
|
-
|
|
248
|
-
*Protocol Version 1.0.0 - Research Protocol*
|
|
@@ -1,287 +0,0 @@
|
|
|
1
|
-
# Specification Protocol
|
|
2
|
-
|
|
3
|
-
**Provenance**: @task T3155, @epic T3147
|
|
4
|
-
**Version**: 1.0.1
|
|
5
|
-
**Type**: Conditional Protocol
|
|
6
|
-
**Max Active**: 3 protocols (including base)
|
|
7
|
-
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
## Trigger Conditions
|
|
11
|
-
|
|
12
|
-
This protocol activates when the task involves:
|
|
13
|
-
|
|
14
|
-
| Trigger | Keywords | Context |
|
|
15
|
-
|---------|----------|---------|
|
|
16
|
-
| Design | "spec", "specification", "design", "architect" | System design |
|
|
17
|
-
| Contract | "contract", "interface", "API", "schema" | Interface definition |
|
|
18
|
-
| Definition | "define", "formalize", "standardize" | Precise semantics |
|
|
19
|
-
| Protocol | "protocol", "workflow", "process" | Behavioral rules |
|
|
20
|
-
|
|
21
|
-
**Explicit Override**: `--protocol specification` flag on task creation.
|
|
22
|
-
|
|
23
|
-
---
|
|
24
|
-
|
|
25
|
-
## Requirements (RFC 2119)
|
|
26
|
-
|
|
27
|
-
### MUST
|
|
28
|
-
|
|
29
|
-
| Requirement | Description |
|
|
30
|
-
|-------------|-------------|
|
|
31
|
-
| SPEC-001 | MUST use RFC 2119 keywords for requirements |
|
|
32
|
-
| SPEC-002 | MUST include version number and status |
|
|
33
|
-
| SPEC-003 | MUST define scope and authority |
|
|
34
|
-
| SPEC-004 | MUST include conformance criteria |
|
|
35
|
-
| SPEC-005 | MUST document related specifications |
|
|
36
|
-
| SPEC-006 | MUST use structured format (tables, schemas) |
|
|
37
|
-
| SPEC-007 | MUST set `agent_type: "specification"` in manifest |
|
|
38
|
-
|
|
39
|
-
### SHOULD
|
|
40
|
-
|
|
41
|
-
| Requirement | Description |
|
|
42
|
-
|-------------|-------------|
|
|
43
|
-
| SPEC-010 | SHOULD include examples for each requirement |
|
|
44
|
-
| SPEC-011 | SHOULD document failure modes |
|
|
45
|
-
| SPEC-012 | SHOULD specify error handling |
|
|
46
|
-
| SPEC-013 | SHOULD include changelog |
|
|
47
|
-
|
|
48
|
-
### MAY
|
|
49
|
-
|
|
50
|
-
| Requirement | Description |
|
|
51
|
-
|-------------|-------------|
|
|
52
|
-
| SPEC-020 | MAY include implementation guidance |
|
|
53
|
-
| SPEC-021 | MAY reference external standards |
|
|
54
|
-
| SPEC-022 | MAY define extension points |
|
|
55
|
-
|
|
56
|
-
---
|
|
57
|
-
|
|
58
|
-
## Output Format
|
|
59
|
-
|
|
60
|
-
### Specification Structure
|
|
61
|
-
|
|
62
|
-
```markdown
|
|
63
|
-
# {Specification Title}
|
|
64
|
-
|
|
65
|
-
**Version**: X.Y.Z
|
|
66
|
-
**Status**: DRAFT|ACTIVE|DEPRECATED
|
|
67
|
-
**Created**: YYYY-MM-DD
|
|
68
|
-
**Updated**: YYYY-MM-DD
|
|
69
|
-
**Epic**: T####
|
|
70
|
-
|
|
71
|
-
---
|
|
72
|
-
|
|
73
|
-
## RFC 2119 Conformance
|
|
74
|
-
|
|
75
|
-
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
|
|
76
|
-
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
|
|
77
|
-
document are to be interpreted as described in BCP 14 [RFC 2119] [RFC 8174].
|
|
78
|
-
|
|
79
|
-
---
|
|
80
|
-
|
|
81
|
-
## Part 1: Preamble
|
|
82
|
-
|
|
83
|
-
### 1.1 Purpose
|
|
84
|
-
|
|
85
|
-
{Why this specification exists}
|
|
86
|
-
|
|
87
|
-
### 1.2 Scope
|
|
88
|
-
|
|
89
|
-
{What this specification covers and excludes}
|
|
90
|
-
|
|
91
|
-
### 1.3 Authority
|
|
92
|
-
|
|
93
|
-
This specification is **AUTHORITATIVE** for:
|
|
94
|
-
- {Area 1}
|
|
95
|
-
- {Area 2}
|
|
96
|
-
|
|
97
|
-
This specification **DEFERS TO**:
|
|
98
|
-
- {Related spec 1}
|
|
99
|
-
- {Related spec 2}
|
|
100
|
-
|
|
101
|
-
---
|
|
102
|
-
|
|
103
|
-
## Part 2: {Main Content}
|
|
104
|
-
|
|
105
|
-
### 2.1 {Section}
|
|
106
|
-
|
|
107
|
-
{Content with RFC 2119 requirements}
|
|
108
|
-
|
|
109
|
-
| Requirement | Description |
|
|
110
|
-
|-------------|-------------|
|
|
111
|
-
| REQ-001 | {MUST/SHOULD/MAY} {requirement} |
|
|
112
|
-
|
|
113
|
-
### 2.2 Schema
|
|
114
|
-
|
|
115
|
-
```json
|
|
116
|
-
{
|
|
117
|
-
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
118
|
-
"$id": "https://example.com/schema.json",
|
|
119
|
-
"type": "object",
|
|
120
|
-
"properties": {}
|
|
121
|
-
}
|
|
122
|
-
```
|
|
123
|
-
|
|
124
|
-
---
|
|
125
|
-
|
|
126
|
-
## Part 3: Conformance
|
|
127
|
-
|
|
128
|
-
### 3.1 Conformance Classes
|
|
129
|
-
|
|
130
|
-
A conforming implementation MUST:
|
|
131
|
-
- {Requirement 1}
|
|
132
|
-
- {Requirement 2}
|
|
133
|
-
|
|
134
|
-
A conforming implementation MAY:
|
|
135
|
-
- {Optional extension}
|
|
136
|
-
|
|
137
|
-
---
|
|
138
|
-
|
|
139
|
-
## Part 4: Related Specifications
|
|
140
|
-
|
|
141
|
-
| Document | Relationship |
|
|
142
|
-
|----------|--------------|
|
|
143
|
-
| {Spec Name} | {AUTHORITATIVE|DEFERS TO|Related} |
|
|
144
|
-
|
|
145
|
-
---
|
|
146
|
-
|
|
147
|
-
## Appendix A: Changelog
|
|
148
|
-
|
|
149
|
-
| Version | Date | Changes |
|
|
150
|
-
|---------|------|---------|
|
|
151
|
-
| 1.0.0 | YYYY-MM-DD | Initial specification |
|
|
152
|
-
|
|
153
|
-
---
|
|
154
|
-
|
|
155
|
-
*End of Specification*
|
|
156
|
-
```
|
|
157
|
-
|
|
158
|
-
### Version Semantics
|
|
159
|
-
|
|
160
|
-
| Version Change | When |
|
|
161
|
-
|----------------|------|
|
|
162
|
-
| Major (X.0.0) | Breaking changes to requirements |
|
|
163
|
-
| Minor (X.Y.0) | New requirements, backward compatible |
|
|
164
|
-
| Patch (X.Y.Z) | Clarifications, typo fixes |
|
|
165
|
-
|
|
166
|
-
### Status Lifecycle
|
|
167
|
-
|
|
168
|
-
```
|
|
169
|
-
DRAFT -> ACTIVE -> DEPRECATED
|
|
170
|
-
|
|
|
171
|
-
+-> SUPERSEDED (by new spec)
|
|
172
|
-
```
|
|
173
|
-
|
|
174
|
-
### File Output
|
|
175
|
-
|
|
176
|
-
```markdown
|
|
177
|
-
# {Specification Title}
|
|
178
|
-
|
|
179
|
-
**Task**: T####
|
|
180
|
-
**Date**: YYYY-MM-DD
|
|
181
|
-
**Status**: complete|partial|blocked
|
|
182
|
-
**Agent Type**: specification
|
|
183
|
-
|
|
184
|
-
---
|
|
185
|
-
|
|
186
|
-
## Summary
|
|
187
|
-
|
|
188
|
-
{2-3 sentence summary of what this spec defines}
|
|
189
|
-
|
|
190
|
-
## Key Definitions
|
|
191
|
-
|
|
192
|
-
| Term | Definition |
|
|
193
|
-
|------|------------|
|
|
194
|
-
| {Term} | {Definition} |
|
|
195
|
-
|
|
196
|
-
## Requirements Summary
|
|
197
|
-
|
|
198
|
-
| ID | Level | Requirement |
|
|
199
|
-
|----|-------|-------------|
|
|
200
|
-
| REQ-001 | MUST | {Requirement} |
|
|
201
|
-
|
|
202
|
-
## Open Questions
|
|
203
|
-
|
|
204
|
-
- {Questions needing resolution}
|
|
205
|
-
```
|
|
206
|
-
|
|
207
|
-
### Manifest Entry
|
|
208
|
-
|
|
209
|
-
@skills/_shared/manifest-operations.md
|
|
210
|
-
|
|
211
|
-
Use `cleo research add` to create the manifest entry:
|
|
212
|
-
|
|
213
|
-
```bash
|
|
214
|
-
cleo research add \
|
|
215
|
-
--title "Specification: Title" \
|
|
216
|
-
--file "YYYY-MM-DD_specification.md" \
|
|
217
|
-
--topics "specification,design" \
|
|
218
|
-
--findings "12 MUST requirements,5 SHOULD requirements,Schema defined" \
|
|
219
|
-
--status complete \
|
|
220
|
-
--task T#### \
|
|
221
|
-
--actionable \
|
|
222
|
-
--agent-type specification
|
|
223
|
-
```
|
|
224
|
-
|
|
225
|
-
---
|
|
226
|
-
|
|
227
|
-
## Integration Points
|
|
228
|
-
|
|
229
|
-
### Base Protocol
|
|
230
|
-
|
|
231
|
-
- Inherits task lifecycle (start, execute, complete)
|
|
232
|
-
- Inherits manifest append requirement
|
|
233
|
-
- Inherits error handling patterns
|
|
234
|
-
|
|
235
|
-
### Protocol Interactions
|
|
236
|
-
|
|
237
|
-
| Combined With | Behavior |
|
|
238
|
-
|---------------|----------|
|
|
239
|
-
| research | Research informs spec decisions |
|
|
240
|
-
| consensus | Consensus resolves spec ambiguities |
|
|
241
|
-
| implementation | Spec guides implementation |
|
|
242
|
-
|
|
243
|
-
### Review Patterns
|
|
244
|
-
|
|
245
|
-
| Aspect | Review Focus |
|
|
246
|
-
|--------|--------------|
|
|
247
|
-
| Completeness | All requirements have RFC 2119 level |
|
|
248
|
-
| Testability | Requirements can be verified |
|
|
249
|
-
| Consistency | No contradicting requirements |
|
|
250
|
-
| Scope | Authority boundaries clear |
|
|
251
|
-
|
|
252
|
-
---
|
|
253
|
-
|
|
254
|
-
## Example
|
|
255
|
-
|
|
256
|
-
**Task**: Define protocol stack architecture
|
|
257
|
-
|
|
258
|
-
**Manifest Entry Command**:
|
|
259
|
-
```bash
|
|
260
|
-
cleo research add \
|
|
261
|
-
--title "Specification: Protocol Stack Architecture" \
|
|
262
|
-
--file "2026-01-26_protocol-stack-spec.md" \
|
|
263
|
-
--topics "protocol,architecture,subagent" \
|
|
264
|
-
--findings "Base protocol always loaded,Max 3 active protocols,Conditional loading defined" \
|
|
265
|
-
--status complete \
|
|
266
|
-
--task T2401 \
|
|
267
|
-
--epic T2392 \
|
|
268
|
-
--actionable \
|
|
269
|
-
--needs-followup T2404 \
|
|
270
|
-
--agent-type specification
|
|
271
|
-
```
|
|
272
|
-
|
|
273
|
-
---
|
|
274
|
-
|
|
275
|
-
## Anti-Patterns
|
|
276
|
-
|
|
277
|
-
| Pattern | Why Avoid |
|
|
278
|
-
|---------|-----------|
|
|
279
|
-
| Vague requirements without levels | Cannot verify compliance |
|
|
280
|
-
| Missing version number | Cannot track changes |
|
|
281
|
-
| Undefined scope | Unclear authority |
|
|
282
|
-
| No examples | Hard to implement correctly |
|
|
283
|
-
| Skipping RFC 2119 declaration | Ambiguous requirement levels |
|
|
284
|
-
|
|
285
|
-
---
|
|
286
|
-
|
|
287
|
-
*Protocol Version 1.0.0 - Specification Protocol*
|