@cleocode/skills 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (171) hide show
  1. package/dispatch-config.json +404 -0
  2. package/index.d.ts +178 -0
  3. package/index.js +405 -0
  4. package/package.json +14 -0
  5. package/profiles/core.json +7 -0
  6. package/profiles/full.json +10 -0
  7. package/profiles/minimal.json +7 -0
  8. package/profiles/recommended.json +7 -0
  9. package/provider-skills-map.json +97 -0
  10. package/skills/_shared/cleo-style-guide.md +84 -0
  11. package/skills/_shared/manifest-operations.md +810 -0
  12. package/skills/_shared/placeholders.json +433 -0
  13. package/skills/_shared/skill-chaining-patterns.md +237 -0
  14. package/skills/_shared/subagent-protocol-base.md +223 -0
  15. package/skills/_shared/task-system-integration.md +232 -0
  16. package/skills/_shared/testing-framework-config.md +110 -0
  17. package/skills/ct-cleo/SKILL.md +490 -0
  18. package/skills/ct-cleo/references/anti-patterns.md +19 -0
  19. package/skills/ct-cleo/references/loom-lifecycle.md +136 -0
  20. package/skills/ct-cleo/references/orchestrator-constraints.md +55 -0
  21. package/skills/ct-cleo/references/session-protocol.md +162 -0
  22. package/skills/ct-codebase-mapper/SKILL.md +82 -0
  23. package/skills/ct-contribution/SKILL.md +521 -0
  24. package/skills/ct-contribution/templates/contribution-init.json +21 -0
  25. package/skills/ct-dev-workflow/SKILL.md +423 -0
  26. package/skills/ct-docs-lookup/SKILL.md +66 -0
  27. package/skills/ct-docs-review/SKILL.md +175 -0
  28. package/skills/ct-docs-write/SKILL.md +108 -0
  29. package/skills/ct-documentor/SKILL.md +231 -0
  30. package/skills/ct-epic-architect/SKILL.md +305 -0
  31. package/skills/ct-epic-architect/references/bug-epic-example.md +172 -0
  32. package/skills/ct-epic-architect/references/commands.md +201 -0
  33. package/skills/ct-epic-architect/references/feature-epic-example.md +210 -0
  34. package/skills/ct-epic-architect/references/migration-epic-example.md +244 -0
  35. package/skills/ct-epic-architect/references/output-format.md +92 -0
  36. package/skills/ct-epic-architect/references/patterns.md +284 -0
  37. package/skills/ct-epic-architect/references/refactor-epic-example.md +412 -0
  38. package/skills/ct-epic-architect/references/research-epic-example.md +226 -0
  39. package/skills/ct-epic-architect/references/shell-escaping.md +86 -0
  40. package/skills/ct-epic-architect/references/skill-aware-execution.md +195 -0
  41. package/skills/ct-grade/SKILL.md +230 -0
  42. package/skills/ct-grade/agents/analysis-reporter.md +203 -0
  43. package/skills/ct-grade/agents/blind-comparator.md +157 -0
  44. package/skills/ct-grade/agents/scenario-runner.md +134 -0
  45. package/skills/ct-grade/eval-viewer/__pycache__/generate_grade_review.cpython-314.pyc +0 -0
  46. package/skills/ct-grade/eval-viewer/generate_grade_review.py +1138 -0
  47. package/skills/ct-grade/eval-viewer/generate_grade_viewer.py +544 -0
  48. package/skills/ct-grade/eval-viewer/generate_review.py +283 -0
  49. package/skills/ct-grade/eval-viewer/grade-review.html +1574 -0
  50. package/skills/ct-grade/eval-viewer/viewer.html +219 -0
  51. package/skills/ct-grade/evals/evals.json +94 -0
  52. package/skills/ct-grade/references/ab-test-methodology.md +150 -0
  53. package/skills/ct-grade/references/domains.md +137 -0
  54. package/skills/ct-grade/references/grade-spec.md +236 -0
  55. package/skills/ct-grade/references/scenario-playbook.md +234 -0
  56. package/skills/ct-grade/references/token-tracking.md +120 -0
  57. package/skills/ct-grade/scripts/__pycache__/audit_analyzer.cpython-314.pyc +0 -0
  58. package/skills/ct-grade/scripts/__pycache__/run_ab_test.cpython-314.pyc +0 -0
  59. package/skills/ct-grade/scripts/__pycache__/run_all.cpython-314.pyc +0 -0
  60. package/skills/ct-grade/scripts/__pycache__/token_tracker.cpython-314.pyc +0 -0
  61. package/skills/ct-grade/scripts/audit_analyzer.py +279 -0
  62. package/skills/ct-grade/scripts/generate_report.py +283 -0
  63. package/skills/ct-grade/scripts/run_ab_test.py +504 -0
  64. package/skills/ct-grade/scripts/run_all.py +287 -0
  65. package/skills/ct-grade/scripts/setup_run.py +183 -0
  66. package/skills/ct-grade/scripts/token_tracker.py +630 -0
  67. package/skills/ct-grade-v2-1/SKILL.md +237 -0
  68. package/skills/ct-grade-v2-1/agents/analysis-reporter.md +203 -0
  69. package/skills/ct-grade-v2-1/agents/blind-comparator.md +157 -0
  70. package/skills/ct-grade-v2-1/agents/scenario-runner.md +179 -0
  71. package/skills/ct-grade-v2-1/evals/evals.json +74 -0
  72. package/skills/ct-grade-v2-1/grade-viewer/__pycache__/build_op_stats.cpython-314.pyc +0 -0
  73. package/skills/ct-grade-v2-1/grade-viewer/__pycache__/generate_grade_review.cpython-314.pyc +0 -0
  74. package/skills/ct-grade-v2-1/grade-viewer/build_op_stats.py +174 -0
  75. package/skills/ct-grade-v2-1/grade-viewer/eval-analysis.json +41 -0
  76. package/skills/ct-grade-v2-1/grade-viewer/eval-report.md +34 -0
  77. package/skills/ct-grade-v2-1/grade-viewer/generate_grade_review.py +1023 -0
  78. package/skills/ct-grade-v2-1/grade-viewer/generate_grade_viewer.py +548 -0
  79. package/skills/ct-grade-v2-1/grade-viewer/grade-review-eval.html +613 -0
  80. package/skills/ct-grade-v2-1/grade-viewer/grade-review.html +1532 -0
  81. package/skills/ct-grade-v2-1/grade-viewer/viewer.html +620 -0
  82. package/skills/ct-grade-v2-1/manifest-entry.json +31 -0
  83. package/skills/ct-grade-v2-1/references/ab-testing.md +233 -0
  84. package/skills/ct-grade-v2-1/references/domains-ssot.md +156 -0
  85. package/skills/ct-grade-v2-1/references/grade-spec-v2.md +167 -0
  86. package/skills/ct-grade-v2-1/references/playbook-v2.md +393 -0
  87. package/skills/ct-grade-v2-1/references/token-tracking.md +202 -0
  88. package/skills/ct-grade-v2-1/scripts/generate_report.py +419 -0
  89. package/skills/ct-grade-v2-1/scripts/run_ab_test.py +493 -0
  90. package/skills/ct-grade-v2-1/scripts/run_scenario.py +396 -0
  91. package/skills/ct-grade-v2-1/scripts/setup_run.py +207 -0
  92. package/skills/ct-grade-v2-1/scripts/token_tracker.py +175 -0
  93. package/skills/ct-memory/SKILL.md +84 -0
  94. package/skills/ct-orchestrator/INSTALL.md +61 -0
  95. package/skills/ct-orchestrator/README.md +69 -0
  96. package/skills/ct-orchestrator/SKILL.md +380 -0
  97. package/skills/ct-orchestrator/manifest-entry.json +19 -0
  98. package/skills/ct-orchestrator/orchestrator-prompt.txt +17 -0
  99. package/skills/ct-orchestrator/references/SUBAGENT-PROTOCOL-BLOCK.md +66 -0
  100. package/skills/ct-orchestrator/references/autonomous-operation.md +167 -0
  101. package/skills/ct-orchestrator/references/lifecycle-gates.md +98 -0
  102. package/skills/ct-orchestrator/references/orchestrator-compliance.md +271 -0
  103. package/skills/ct-orchestrator/references/orchestrator-handoffs.md +85 -0
  104. package/skills/ct-orchestrator/references/orchestrator-patterns.md +164 -0
  105. package/skills/ct-orchestrator/references/orchestrator-recovery.md +113 -0
  106. package/skills/ct-orchestrator/references/orchestrator-spawning.md +271 -0
  107. package/skills/ct-orchestrator/references/orchestrator-tokens.md +180 -0
  108. package/skills/ct-research-agent/SKILL.md +226 -0
  109. package/skills/ct-skill-creator/.cleo/.context-state.json +13 -0
  110. package/skills/ct-skill-creator/.cleo/logs/cleo.2026-03-07.1.log +24 -0
  111. package/skills/ct-skill-creator/.cleo/tasks.db +0 -0
  112. package/skills/ct-skill-creator/SKILL.md +356 -0
  113. package/skills/ct-skill-creator/agents/analyzer.md +276 -0
  114. package/skills/ct-skill-creator/agents/comparator.md +204 -0
  115. package/skills/ct-skill-creator/agents/grader.md +225 -0
  116. package/skills/ct-skill-creator/assets/eval_review.html +146 -0
  117. package/skills/ct-skill-creator/eval-viewer/__pycache__/generate_review.cpython-314.pyc +0 -0
  118. package/skills/ct-skill-creator/eval-viewer/generate_review.py +471 -0
  119. package/skills/ct-skill-creator/eval-viewer/viewer.html +1325 -0
  120. package/skills/ct-skill-creator/manifest-entry.json +17 -0
  121. package/skills/ct-skill-creator/references/dynamic-context.md +228 -0
  122. package/skills/ct-skill-creator/references/frontmatter.md +83 -0
  123. package/skills/ct-skill-creator/references/invocation-control.md +165 -0
  124. package/skills/ct-skill-creator/references/output-patterns.md +86 -0
  125. package/skills/ct-skill-creator/references/provider-deployment.md +175 -0
  126. package/skills/ct-skill-creator/references/schemas.md +430 -0
  127. package/skills/ct-skill-creator/references/workflows.md +28 -0
  128. package/skills/ct-skill-creator/scripts/__init__.py +1 -0
  129. package/skills/ct-skill-creator/scripts/__pycache__/__init__.cpython-314.pyc +0 -0
  130. package/skills/ct-skill-creator/scripts/__pycache__/aggregate_benchmark.cpython-314.pyc +0 -0
  131. package/skills/ct-skill-creator/scripts/__pycache__/generate_report.cpython-314.pyc +0 -0
  132. package/skills/ct-skill-creator/scripts/__pycache__/improve_description.cpython-314.pyc +0 -0
  133. package/skills/ct-skill-creator/scripts/__pycache__/init_skill.cpython-314.pyc +0 -0
  134. package/skills/ct-skill-creator/scripts/__pycache__/quick_validate.cpython-314.pyc +0 -0
  135. package/skills/ct-skill-creator/scripts/__pycache__/run_eval.cpython-314.pyc +0 -0
  136. package/skills/ct-skill-creator/scripts/__pycache__/run_loop.cpython-314.pyc +0 -0
  137. package/skills/ct-skill-creator/scripts/__pycache__/utils.cpython-314.pyc +0 -0
  138. package/skills/ct-skill-creator/scripts/aggregate_benchmark.py +401 -0
  139. package/skills/ct-skill-creator/scripts/generate_report.py +326 -0
  140. package/skills/ct-skill-creator/scripts/improve_description.py +247 -0
  141. package/skills/ct-skill-creator/scripts/init_skill.py +306 -0
  142. package/skills/ct-skill-creator/scripts/package_skill.py +110 -0
  143. package/skills/ct-skill-creator/scripts/quick_validate.py +97 -0
  144. package/skills/ct-skill-creator/scripts/run_eval.py +310 -0
  145. package/skills/ct-skill-creator/scripts/run_loop.py +328 -0
  146. package/skills/ct-skill-creator/scripts/utils.py +47 -0
  147. package/skills/ct-skill-validator/SKILL.md +178 -0
  148. package/skills/ct-skill-validator/agents/ecosystem-checker.md +151 -0
  149. package/skills/ct-skill-validator/assets/valid-skill-example.md +13 -0
  150. package/skills/ct-skill-validator/evals/eval_set.json +14 -0
  151. package/skills/ct-skill-validator/evals/evals.json +52 -0
  152. package/skills/ct-skill-validator/manifest-entry.json +20 -0
  153. package/skills/ct-skill-validator/references/cleo-ecosystem-rules.md +163 -0
  154. package/skills/ct-skill-validator/references/validation-rules.md +168 -0
  155. package/skills/ct-skill-validator/scripts/__init__.py +0 -0
  156. package/skills/ct-skill-validator/scripts/__pycache__/audit_body.cpython-314.pyc +0 -0
  157. package/skills/ct-skill-validator/scripts/__pycache__/check_ecosystem.cpython-314.pyc +0 -0
  158. package/skills/ct-skill-validator/scripts/__pycache__/generate_validation_report.cpython-314.pyc +0 -0
  159. package/skills/ct-skill-validator/scripts/__pycache__/validate.cpython-314.pyc +0 -0
  160. package/skills/ct-skill-validator/scripts/audit_body.py +242 -0
  161. package/skills/ct-skill-validator/scripts/check_ecosystem.py +169 -0
  162. package/skills/ct-skill-validator/scripts/check_manifest.py +172 -0
  163. package/skills/ct-skill-validator/scripts/generate_validation_report.py +442 -0
  164. package/skills/ct-skill-validator/scripts/validate.py +422 -0
  165. package/skills/ct-spec-writer/SKILL.md +189 -0
  166. package/skills/ct-stickynote/README.md +14 -0
  167. package/skills/ct-stickynote/SKILL.md +46 -0
  168. package/skills/ct-task-executor/SKILL.md +296 -0
  169. package/skills/ct-validator/SKILL.md +216 -0
  170. package/skills/manifest.json +469 -0
  171. package/skills.json +281 -0
@@ -0,0 +1,223 @@
1
+ # Subagent Protocol Base Reference
2
+
3
+ **Provenance**: @task T3155, @epic T3147
4
+ **Version**: 1.0.1
5
+ **Updated**: 2026-02-07
6
+
7
+ This reference defines the RFC 2119 protocol for subagent output and handoff.
8
+ All subagents operating under an orchestrator MUST follow this protocol.
9
+
10
+ ---
11
+
12
+ ## Output Requirements (RFC 2119)
13
+
14
+ ### Mandatory Rules
15
+
16
+ | ID | Rule | Compliance |
17
+ |----|------|------------|
18
+ | OUT-001 | MUST write findings to `{{OUTPUT_DIR}}/{{DATE}}_{{TOPIC_SLUG}}.md` | Required |
19
+ | OUT-002 | MUST append ONE line to `{{MANIFEST_PATH}}` | Required |
20
+ | OUT-003 | MUST return ONLY: "Research complete. See MANIFEST.jsonl for summary." | Required |
21
+ | OUT-004 | MUST NOT return research content in response | Required |
22
+
23
+ ### Rationale
24
+
25
+ - **OUT-001**: Persistent storage for orchestrator and future agents
26
+ - **OUT-002**: Manifest enables O(1) lookup of key findings
27
+ - **OUT-003**: Minimal response preserves orchestrator context
28
+ - **OUT-004**: Full content would bloat orchestrator context window
29
+
30
+ ---
31
+
32
+ ## Output File Format
33
+
34
+ Write to `{{OUTPUT_DIR}}/{{DATE}}_{{TOPIC_SLUG}}.md`:
35
+
36
+ ```markdown
37
+ # {{TITLE}}
38
+
39
+ ## Summary
40
+
41
+ {{2-3 sentence overview}}
42
+
43
+ ## Findings
44
+
45
+ ### {{Category 1}}
46
+
47
+ {{Details}}
48
+
49
+ ### {{Category 2}}
50
+
51
+ {{Details}}
52
+
53
+ ## Recommendations
54
+
55
+ {{Action items}}
56
+
57
+ ## Sources
58
+
59
+ {{Citations/references}}
60
+
61
+ ## Linked Tasks
62
+
63
+ - Epic: {{EPIC_ID}}
64
+ - Task: {{TASK_ID}}
65
+ ```
66
+
67
+ ---
68
+
69
+ ## Manifest Entry Format
70
+
71
+ @skills/_shared/manifest-operations.md
72
+
73
+ Use `cleo research add` to create manifest entries instead of manual JSONL appends.
74
+
75
+ **Quick Reference**:
76
+ ```bash
77
+ cleo research add \
78
+ --title "{{TITLE}}" \
79
+ --file "{{DATE}}_{{TOPIC_SLUG}}.md" \
80
+ --topics "topic1,topic2,topic3" \
81
+ --findings "Finding 1,Finding 2,Finding 3" \
82
+ --status complete \
83
+ --task {{TASK_ID}} \
84
+ --agent-type research
85
+ ```
86
+
87
+ See the reference above for:
88
+ - Complete CLI command syntax
89
+ - Field definitions and constraints
90
+ - Agent type values (RCASD-IVTR+C + workflow types)
91
+ - Manifest entry schema
92
+ - Anti-patterns to avoid
93
+
94
+ ---
95
+
96
+ ## Task Lifecycle Integration (LOOM)
97
+
98
+ All work follows the **LOOM** (Logical Order of Operations Methodology) framework through the RCASD-IVTR+C pipeline stages. See `docs/concepts/CLEO-VISION.md` for the complete LOOM framework, neural hierarchy model, and brain metaphor mapping.
99
+
100
+ Reference: @skills/_shared/task-system-integration.md
101
+
102
+ ### Execution Sequence
103
+
104
+ ```
105
+ 1. Read task: {{TASK_SHOW_CMD}} {{TASK_ID}}
106
+ 2. Start task: {{TASK_START_CMD}} {{TASK_ID}}
107
+ 3. Do work: [skill-specific execution]
108
+ 4. Write output: {{OUTPUT_DIR}}/{{DATE}}_{{TOPIC_SLUG}}.md
109
+ 5. Create manifest entry: cleo research add [flags]
110
+ 6. Complete: {{TASK_COMPLETE_CMD}} {{TASK_ID}}
111
+ 7. Return: "Research complete. See MANIFEST.jsonl for summary."
112
+ ```
113
+
114
+ ---
115
+
116
+ ## Research Linking
117
+
118
+ ### Link Research to Task
119
+
120
+ ```bash
121
+ {{TASK_LINK_CMD}} {{TASK_ID}} {{RESEARCH_ID}}
122
+ ```
123
+
124
+ **Purpose**: Associate research output with originating task for bidirectional discovery.
125
+
126
+ **CLEO Default**: `cleo research link {{TASK_ID}} {{RESEARCH_ID}}`
127
+
128
+ **When to Link**:
129
+ - SHOULD link after writing research output to manifest
130
+ - SHOULD link when research directly supports task objectives
131
+ - MAY skip if research is exploratory/tangential
132
+
133
+ ### Verify Link
134
+
135
+ ```bash
136
+ {{TASK_SHOW_CMD}} {{TASK_ID}}
137
+ # Check: linkedResearch array contains research ID
138
+ ```
139
+
140
+ ### Benefits
141
+
142
+ | Benefit | Description |
143
+ |---------|-------------|
144
+ | Bidirectional discovery | Task → Research and Research → Task |
145
+ | Context preservation | Future agents can find prior research |
146
+ | Audit trail | Complete record of work artifacts |
147
+
148
+ ---
149
+
150
+ ## Completion Checklist
151
+
152
+ Before returning, verify:
153
+
154
+ - [ ] Task started via `{{TASK_START_CMD}}`
155
+ - [ ] Output file written to `{{OUTPUT_DIR}}/`
156
+ - [ ] Manifest entry created via `cleo research add`
157
+ - [ ] Task completed via `{{TASK_COMPLETE_CMD}}`
158
+ - [ ] Response is ONLY the summary message
159
+
160
+ ---
161
+
162
+ ## Token Reference
163
+
164
+ ### Required Tokens (MUST be provided)
165
+
166
+ | Token | Description | Example |
167
+ |-------|-------------|---------|
168
+ | `{{TASK_ID}}` | Current task identifier | `T1234` |
169
+ | `{{DATE}}` | Current date | `2026-01-19` |
170
+ | `{{TOPIC_SLUG}}` | URL-safe topic name | `authentication-research` |
171
+
172
+ ### Optional Tokens (defaults available)
173
+
174
+ | Token | Default | Description |
175
+ |-------|---------|-------------|
176
+ | `{{EPIC_ID}}` | `""` | Parent epic ID |
177
+ | `{{SESSION_ID}}` | `""` | Session identifier |
178
+ | `{{OUTPUT_DIR}}` | `claudedocs/agent-outputs` | Output directory |
179
+ | `{{MANIFEST_PATH}}` | `{{OUTPUT_DIR}}/MANIFEST.jsonl` | Manifest location |
180
+
181
+ ### Task System Tokens (CLEO defaults)
182
+
183
+ | Token | CLEO Default |
184
+ |-------|--------------|
185
+ | `{{TASK_SHOW_CMD}}` | `cleo show` |
186
+ | `{{TASK_START_CMD}}` | `cleo start` |
187
+ | `{{TASK_COMPLETE_CMD}}` | `cleo complete` |
188
+ | `{{TASK_LINK_CMD}}` | `cleo research link` |
189
+
190
+ ---
191
+
192
+ ## Error Handling
193
+
194
+ ### Partial Completion
195
+
196
+ If work cannot complete fully:
197
+
198
+ 1. Write partial findings to output file
199
+ 2. Set manifest `"status": "partial"`
200
+ 3. Add blocking reason to `needs_followup`
201
+ 4. Complete task (partial work is still progress)
202
+ 5. Return: "Research partial. See MANIFEST.jsonl for details."
203
+
204
+ ### Blocked Status
205
+
206
+ If work cannot proceed:
207
+
208
+ 1. Write blocking analysis to output file
209
+ 2. Set manifest `"status": "blocked"`
210
+ 3. Add blocker details to `needs_followup`
211
+ 4. Do NOT complete task (leave for orchestrator decision)
212
+ 5. Return: "Research blocked. See MANIFEST.jsonl for blocker details."
213
+
214
+ ---
215
+
216
+ ## Anti-Patterns
217
+
218
+ | Pattern | Problem | Solution |
219
+ |---------|---------|----------|
220
+ | Returning full content | Bloats orchestrator context | Return only summary message |
221
+ | Manual JSONL append | No validation, race conditions | Use `cleo research add` |
222
+ | Missing manifest entry | Orchestrator can't find findings | Always create manifest entry |
223
+ | Incomplete checklist | Protocol violation | Verify all items before return |
@@ -0,0 +1,232 @@
1
+ # Task System Integration Reference
2
+
3
+ This reference defines portable task management commands using dynamic tokens.
4
+ Skills and templates SHOULD reference this file instead of hardcoding CLEO commands.
5
+
6
+ ---
7
+
8
+ ## Task Lifecycle Commands
9
+
10
+ ### Read Task Details
11
+
12
+ ```bash
13
+ {{TASK_SHOW_CMD}} {{TASK_ID}}
14
+ ```
15
+
16
+ **Purpose**: Get full task context before starting work.
17
+
18
+ **CLEO Default**: `cleo show {{TASK_ID}}`
19
+
20
+ ### Start Task
21
+
22
+ ```bash
23
+ {{TASK_START_CMD}} {{TASK_ID}}
24
+ ```
25
+
26
+ **Purpose**: Mark task as active/in-progress.
27
+
28
+ **CLEO Default**: `cleo start {{TASK_ID}}`
29
+
30
+ ### Complete Task
31
+
32
+ ```bash
33
+ {{TASK_COMPLETE_CMD}} {{TASK_ID}}
34
+ ```
35
+
36
+ **Purpose**: Mark task as done after work completes.
37
+
38
+ **CLEO Default**: `cleo complete {{TASK_ID}}`
39
+
40
+ ### Link Research
41
+
42
+ ```bash
43
+ {{TASK_LINK_CMD}} {{TASK_ID}} {{RESEARCH_ID}}
44
+ ```
45
+
46
+ **Purpose**: Associate research output with task.
47
+
48
+ **CLEO Default**: `cleo research link {{TASK_ID}} {{RESEARCH_ID}}`
49
+
50
+ ---
51
+
52
+ ## Query Commands
53
+
54
+ ### List Tasks
55
+
56
+ ```bash
57
+ {{TASK_LIST_CMD}} [--status STATUS] [--parent EPIC_ID]
58
+ ```
59
+
60
+ **CLEO Default**: `cleo list`
61
+
62
+ ### Find Tasks
63
+
64
+ ```bash
65
+ {{TASK_FIND_CMD}} "query"
66
+ ```
67
+
68
+ **CLEO Default**: `cleo find`
69
+
70
+ ### Add Task
71
+
72
+ ```bash
73
+ {{TASK_ADD_CMD}} "Title" [OPTIONS]
74
+ ```
75
+
76
+ **CLEO Default**: `cleo add`
77
+
78
+ ---
79
+
80
+ ## File Attachment
81
+
82
+ ### Attach Files to Task
83
+
84
+ ```bash
85
+ {{TASK_ADD_CMD}} "Title" --files "path1,path2"
86
+ ```
87
+
88
+ Or update existing task:
89
+
90
+ ```bash
91
+ cleo update {{TASK_ID}} --files "path1,path2"
92
+ ```
93
+
94
+ **Purpose**: Attach context files for agent reference.
95
+
96
+ **CLEO Default**: `cleo add/update --files "paths"`
97
+
98
+ **Storage**: `.files` array in task JSON
99
+
100
+ ### When to Use --files vs Research Link
101
+
102
+ | Method | Use Case | Storage |
103
+ |--------|----------|---------|
104
+ | `--files` | Reference existing docs, code files | Task `.files` array |
105
+ | `research link` | Connect subagent research outputs | Task `.linkedResearch` array |
106
+
107
+ ### Guidelines
108
+
109
+ - **SHOULD** use `--files` for input context (specs, designs, code files)
110
+ - **SHOULD** use `research link` for output artifacts (research findings)
111
+ - **MAY** combine both for comprehensive task context
112
+
113
+ ---
114
+
115
+ ## CLEO-Specific Extensions
116
+
117
+ When the task system is CLEO, these additional commands are available:
118
+
119
+ | Command | Purpose |
120
+ |---------|---------|
121
+ | `cleo current` | Show current task |
122
+ | `cleo session start` | Begin work session |
123
+ | `cleo session end` | End work session |
124
+ | `cleo analyze` | Task triage with scoring |
125
+ | `cleo deps {{TASK_ID}}` | Check task dependencies |
126
+ | `cleo tree --parent {{EPIC_ID}}` | Visualize hierarchy |
127
+
128
+ ### Session Lifecycle
129
+
130
+ Sessions persist across Claude conversations and support long-running work.
131
+
132
+ **Key Behaviors**:
133
+ - Sessions receive timeout warning after **72 hours** of inactivity
134
+ - Active sessions are auto-ended after **7 days** (configurable via `retention.autoEndActiveAfterDays`)
135
+ - Ended/suspended sessions can be cleaned up with `cleo session gc`
136
+ - Stale active sessions (72h+) cleaned with `cleo session gc --include-active`
137
+
138
+ **Session Commands**:
139
+
140
+ | Command | Purpose |
141
+ |---------|---------|
142
+ | `cleo session start --scope epic:{{EPIC_ID}}` | Begin scoped session |
143
+ | `cleo session end --note "summary"` | End session properly |
144
+ | `cleo session list` | Check existing sessions |
145
+ | `cleo session resume <id>` | Resume previous session |
146
+ | `cleo session gc` | Clean up ended/suspended sessions |
147
+ | `cleo session gc --include-active` | Also clean stale active sessions |
148
+
149
+ **Best Practices**:
150
+ - **MUST** check `cleo session list` before starting new sessions
151
+ - **SHOULD** end sessions properly with `cleo session end --note "summary"` to avoid accumulation
152
+ - **SHOULD** use `cleo session gc` periodically to clean up old ended/suspended sessions
153
+ - **MAY** use `cleo session gc --include-active` to clean stale active sessions (72h+ inactive)
154
+ - Long-running sessions (multi-day work) are expected and supported
155
+
156
+ ---
157
+
158
+ ## Token Defaults
159
+
160
+ When tokens are not explicitly configured, assume CLEO defaults:
161
+
162
+ | Token | Default Value |
163
+ |-------|---------------|
164
+ | `{{TASK_SHOW_CMD}}` | `cleo show` |
165
+ | `{{TASK_START_CMD}}` | `cleo start` |
166
+ | `{{TASK_COMPLETE_CMD}}` | `cleo complete` |
167
+ | `{{TASK_LINK_CMD}}` | `cleo research link` |
168
+ | `{{TASK_LIST_CMD}}` | `cleo list` |
169
+ | `{{TASK_FIND_CMD}}` | `cleo find` |
170
+ | `{{TASK_ADD_CMD}}` | `cleo add` |
171
+ | `{{OUTPUT_DIR}}` | `claudedocs/agent-outputs` |
172
+ | `{{MANIFEST_PATH}}` | `{{OUTPUT_DIR}}/MANIFEST.jsonl` |
173
+
174
+ ---
175
+
176
+ ## Usage in Skills
177
+
178
+ Reference this file from SKILL.md:
179
+
180
+ ```markdown
181
+ ### Task System Integration
182
+
183
+ @skills/_shared/task-system-integration.md
184
+
185
+ Execute lifecycle commands:
186
+ 1. Read task: `{{TASK_SHOW_CMD}} {{TASK_ID}}`
187
+ 2. Start task: `{{TASK_START_CMD}} {{TASK_ID}}`
188
+ 3. Complete: `{{TASK_COMPLETE_CMD}} {{TASK_ID}}`
189
+ ```
190
+
191
+ ---
192
+
193
+ ## Usage in Templates
194
+
195
+ Include task lifecycle section in templates:
196
+
197
+ ```markdown
198
+ ### Task Lifecycle
199
+
200
+ 1. MUST read task details: `{{TASK_SHOW_CMD}} {{TASK_ID}}`
201
+ 2. MUST start task: `{{TASK_START_CMD}} {{TASK_ID}}`
202
+ 3. MUST complete task: `{{TASK_COMPLETE_CMD}} {{TASK_ID}}`
203
+ 4. SHOULD link research: `{{TASK_LINK_CMD}} {{TASK_ID}} {{RESEARCH_ID}}`
204
+ ```
205
+
206
+ ---
207
+
208
+ ## Non-CLEO Configurations
209
+
210
+ ### Linear
211
+
212
+ ```yaml
213
+ TASK_SHOW_CMD: "linear issue view"
214
+ TASK_START_CMD: "linear issue update --status in-progress"
215
+ TASK_COMPLETE_CMD: "linear issue update --status done"
216
+ ```
217
+
218
+ ### Jira
219
+
220
+ ```yaml
221
+ TASK_SHOW_CMD: "jira issue view"
222
+ TASK_START_CMD: "jira issue move --status 'In Progress'"
223
+ TASK_COMPLETE_CMD: "jira issue move --status 'Done'"
224
+ ```
225
+
226
+ ### GitHub Issues
227
+
228
+ ```yaml
229
+ TASK_SHOW_CMD: "gh issue view"
230
+ TASK_START_CMD: "gh issue edit --add-label 'in-progress'"
231
+ TASK_COMPLETE_CMD: "gh issue close"
232
+ ```
@@ -0,0 +1,110 @@
1
+ # Testing Framework Configuration
2
+
3
+ CLEO supports 16 testing frameworks. Configure your project's testing setup in `.cleo/config.json`:
4
+
5
+ ## Framework Examples
6
+
7
+ ### Node.js with Vitest (TypeScript)
8
+ ```json
9
+ {
10
+ "validation": {
11
+ "testing": {
12
+ "framework": "vitest",
13
+ "command": "vitest run",
14
+ "directory": "tests",
15
+ "testFilePatterns": ["**/*.test.ts"]
16
+ }
17
+ }
18
+ }
19
+ ```
20
+
21
+ ### Node.js with Jest
22
+ ```json
23
+ {
24
+ "validation": {
25
+ "testing": {
26
+ "framework": "jest",
27
+ "command": "jest --passWithNoTests",
28
+ "testFilePatterns": ["**/*.test.js", "**/*.spec.js"]
29
+ }
30
+ }
31
+ }
32
+ ```
33
+
34
+ ### Python with pytest
35
+ ```json
36
+ {
37
+ "validation": {
38
+ "testing": {
39
+ "framework": "pytest",
40
+ "command": "pytest -v",
41
+ "directory": "tests",
42
+ "testFilePatterns": ["**/test_*.py"]
43
+ }
44
+ }
45
+ }
46
+ ```
47
+
48
+ ### Rust with Cargo
49
+ ```json
50
+ {
51
+ "validation": {
52
+ "testing": {
53
+ "framework": "cargo",
54
+ "command": "cargo test"
55
+ }
56
+ }
57
+ }
58
+ ```
59
+
60
+ ### Go
61
+ ```json
62
+ {
63
+ "validation": {
64
+ "testing": {
65
+ "framework": "go",
66
+ "command": "go test ./..."
67
+ }
68
+ }
69
+ }
70
+ ```
71
+
72
+ ## Supported Frameworks
73
+
74
+ | Framework | Extension | Ecosystem | Notes |
75
+ |-----------|-----------|-----------|-------|
76
+ | vitest | .test.ts | Node.js | **Default for CLEO projects** |
77
+ | jest, playwright, cypress, mocha, ava, uvu, tap | .test.js/.ts | Node.js | |
78
+ | node:test, deno, bun | .test.ts | Runtime built-ins | |
79
+ | pytest | _test.py | Python | |
80
+ | go | _test.go | Go | |
81
+ | cargo | .rs | Rust | |
82
+ | custom | varies | Any | |
83
+
84
+ ## Validation Gates
85
+
86
+ Enable test validation before releases:
87
+ ```json
88
+ {
89
+ "validation": {
90
+ "testing": {
91
+ "requirePassingTests": true,
92
+ "runOnComplete": true
93
+ }
94
+ }
95
+ }
96
+ ```
97
+
98
+ ## Auto-Detection
99
+
100
+ Run `cleo init --detect` to automatically configure your project based on manifest files (package.json, Cargo.toml, pyproject.toml, etc.).
101
+
102
+ ```bash
103
+ # Preview detection
104
+ cleo init --detect --dry-run
105
+
106
+ # Apply configuration
107
+ cleo init --detect
108
+ ```
109
+
110
+ See `docs/guides/project-config.mdx` for full documentation.