@cleocode/cleo 2026.2.8 → 2026.3.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 (62) hide show
  1. package/README.md +14 -13
  2. package/dist/cli/index.js +22676 -26012
  3. package/dist/cli/index.js.map +4 -4
  4. package/dist/mcp/index.js +1651 -802
  5. package/dist/mcp/index.js.map +4 -4
  6. package/drizzle/20260301053344_careless_changeling/migration.sql +27 -0
  7. package/drizzle/20260301053344_careless_changeling/snapshot.json +2598 -0
  8. package/package.json +3 -4
  9. package/packages/ct-skills/skills/ct-cleo/SKILL.md +49 -22
  10. package/templates/CLEO-INJECTION.md +32 -138
  11. package/templates/cleo-gitignore +66 -49
  12. package/templates/git-hooks/pre-commit +24 -6
  13. package/schemas/archive/agent-configs.schema.json +0 -120
  14. package/schemas/archive/agent-registry.schema.json +0 -132
  15. package/schemas/archive/archive.schema.json +0 -450
  16. package/schemas/archive/claudedocs-frontmatter.schema.json +0 -162
  17. package/schemas/archive/commands-index.schema.json +0 -158
  18. package/schemas/archive/contribution.schema.json +0 -722
  19. package/schemas/archive/critical-path.schema.json +0 -246
  20. package/schemas/archive/deps-cache.schema.json +0 -97
  21. package/schemas/archive/doctor-output.schema.json +0 -283
  22. package/schemas/archive/error.schema.json +0 -161
  23. package/schemas/archive/export-package.schema.json +0 -375
  24. package/schemas/archive/global-config.schema.json +0 -219
  25. package/schemas/archive/log.schema.json +0 -250
  26. package/schemas/archive/metrics.schema.json +0 -328
  27. package/schemas/archive/migrations.schema.json +0 -150
  28. package/schemas/archive/nexus-registry.schema.json +0 -90
  29. package/schemas/archive/output.schema.json +0 -164
  30. package/schemas/archive/rcsd-consensus-report.schema.json +0 -491
  31. package/schemas/archive/rcsd-hitl-resolution.schema.json +0 -216
  32. package/schemas/archive/rcsd-index.schema.json +0 -384
  33. package/schemas/archive/rcsd-manifest.schema.json +0 -264
  34. package/schemas/archive/rcsd-research-output.schema.json +0 -564
  35. package/schemas/archive/rcsd-spec-frontmatter.schema.json +0 -225
  36. package/schemas/archive/releases.schema.json +0 -267
  37. package/schemas/archive/skills-manifest.schema.json +0 -91
  38. package/schemas/archive/skillsmp.schema.json +0 -208
  39. package/schemas/archive/spec-index.schema.json +0 -196
  40. package/schemas/archive/todo.schema.json +0 -995
  41. package/schemas/claudedocs-frontmatter.schema.json +0 -162
  42. package/schemas/commands-index.schema.json +0 -158
  43. package/schemas/rcsd-consensus-report.schema.json +0 -494
  44. package/schemas/rcsd-hitl-resolution.schema.json +0 -219
  45. package/schemas/rcsd-index.schema.json +0 -387
  46. package/schemas/rcsd-manifest.schema.json +0 -267
  47. package/schemas/rcsd-research-output.schema.json +0 -567
  48. package/schemas/rcsd-spec-frontmatter.schema.json +0 -225
  49. package/schemas/todo.schema.json +0 -994
  50. package/skills/_shared/cleo-style-guide.md +0 -84
  51. package/skills/_shared/manifest-operations.md +0 -810
  52. package/skills/_shared/placeholders.json +0 -433
  53. package/skills/_shared/skill-chaining-patterns.md +0 -240
  54. package/skills/_shared/subagent-protocol-base.md +0 -221
  55. package/skills/_shared/task-system-integration.md +0 -232
  56. package/skills/_shared/testing-framework-config.md +0 -110
  57. package/skills/agentskills-integrate.md +0 -104
  58. package/skills/agentskills-specs.md +0 -255
  59. package/skills/agentskills-what-are-skills.md +0 -75
  60. package/skills/manifest.json +0 -510
  61. package/templates/AGENT-INJECTION.md +0 -166
  62. /package/schemas/{research-manifest.schema.json → archive/research-manifest.schema.json} +0 -0
@@ -1,164 +0,0 @@
1
- {
2
- "$schema": "http://json-schema.org/draft-07/schema#",
3
- "schemaVersion": "1.0.0",
4
- "$id": "https://cleo-dev.com/schemas/v1/output.schema.json",
5
- "title": "CLEO Response Envelope",
6
- "description": "Standard JSON envelope for all successful cleo command responses",
7
- "type": "object",
8
- "required": ["_meta", "success"],
9
- "properties": {
10
- "$schema": {
11
- "type": "string",
12
- "description": "Schema URL for validation",
13
- "const": "https://cleo-dev.com/schemas/v1/output.schema.json"
14
- },
15
- "_meta": {
16
- "type": "object",
17
- "description": "Response metadata",
18
- "required": ["command", "timestamp", "version"],
19
- "properties": {
20
- "format": {
21
- "type": "string",
22
- "const": "json",
23
- "description": "Output format identifier"
24
- },
25
- "version": {
26
- "type": "string",
27
- "pattern": "^\\d+\\.\\d+\\.\\d+",
28
- "description": "cleo version (semver)"
29
- },
30
- "command": {
31
- "type": "string",
32
- "minLength": 1,
33
- "description": "Command name that generated this response"
34
- },
35
- "timestamp": {
36
- "type": "string",
37
- "format": "date-time",
38
- "description": "ISO-8601 UTC timestamp of response generation"
39
- },
40
- "checksum": {
41
- "type": "string",
42
- "pattern": "^[a-f0-9]{64}$",
43
- "description": "SHA256 checksum of source file (optional)"
44
- },
45
- "execution_ms": {
46
- "type": "integer",
47
- "minimum": 0,
48
- "description": "Execution time in milliseconds (optional)"
49
- },
50
- "resultsField": {
51
- "type": "string",
52
- "description": "Name of the field containing primary results (e.g., 'tasks', 'matches', 'data', 'blockedTasks', 'items'). Enables self-documenting JSON for LLM agents. If omitted, defaults to 'tasks' for list commands or 'task' for single-task commands."
53
- }
54
- },
55
- "additionalProperties": false
56
- },
57
- "success": {
58
- "type": "boolean",
59
- "const": true,
60
- "description": "Indicates successful operation"
61
- },
62
- "summary": {
63
- "type": "object",
64
- "description": "Aggregated statistics or summary data (optional)",
65
- "additionalProperties": true
66
- },
67
- "data": {
68
- "description": "Generic data payload (type depends on command)"
69
- },
70
- "task": {
71
- "type": "object",
72
- "description": "Single task object (for add, update, show commands)",
73
- "properties": {
74
- "id": {
75
- "type": "string",
76
- "pattern": "^T\\d{3,}$",
77
- "description": "Task identifier (T001+, expandable)"
78
- },
79
- "type": {
80
- "type": "string",
81
- "enum": ["epic", "task", "subtask"],
82
- "description": "Hierarchy type"
83
- },
84
- "parentId": {
85
- "type": ["string", "null"],
86
- "pattern": "^T\\d{3,}$",
87
- "description": "Parent task ID or null for root tasks"
88
- },
89
- "size": {
90
- "type": ["string", "null"],
91
- "enum": ["small", "medium", "large", null],
92
- "description": "Task size estimate"
93
- },
94
- "title": {
95
- "type": "string",
96
- "minLength": 1
97
- },
98
- "description": {
99
- "type": "string"
100
- },
101
- "status": {
102
- "type": "string",
103
- "enum": ["pending", "active", "blocked", "done"]
104
- },
105
- "priority": {
106
- "type": "string",
107
- "enum": ["critical", "high", "medium", "low"]
108
- },
109
- "createdAt": {
110
- "type": "string",
111
- "format": "date-time"
112
- },
113
- "completedAt": {
114
- "type": ["string", "null"],
115
- "format": "date-time"
116
- }
117
- },
118
- "additionalProperties": true
119
- },
120
- "tasks": {
121
- "type": "array",
122
- "description": "Array of task objects (for list commands)",
123
- "items": {
124
- "type": "object"
125
- }
126
- },
127
- "taskId": {
128
- "type": "string",
129
- "pattern": "^T\\d{3,}$",
130
- "description": "Task ID affected by operation"
131
- },
132
- "changes": {
133
- "type": "object",
134
- "description": "Change tracking for update operations",
135
- "additionalProperties": {
136
- "type": "object",
137
- "properties": {
138
- "before": {},
139
- "after": {}
140
- }
141
- }
142
- },
143
- "warnings": {
144
- "type": "array",
145
- "description": "Non-fatal warnings",
146
- "items": {
147
- "type": "object",
148
- "properties": {
149
- "code": {
150
- "type": "string",
151
- "pattern": "^W_[A-Z_]+$"
152
- },
153
- "message": {
154
- "type": "string"
155
- },
156
- "suggestion": {
157
- "type": ["string", "null"]
158
- }
159
- }
160
- }
161
- }
162
- },
163
- "additionalProperties": true
164
- }
@@ -1,491 +0,0 @@
1
- {
2
- "$schema": "http://json-schema.org/draft-07/schema#",
3
- "schemaVersion": "1.0.0",
4
- "$id": "https://cleo-dev.com/schemas/v1/rcsd-consensus-report.schema.json",
5
- "title": "RCSD Consensus Validation Report",
6
- "description": "Schema for consensus phase output in the RCSD pipeline. Validates research findings through multi-agent analysis, produces verdicts, and synthesizes validated knowledge.",
7
- "type": "object",
8
- "required": ["$schema", "_meta", "researchRef", "agents", "claims", "synthesis", "statistics"],
9
- "additionalProperties": false,
10
-
11
- "properties": {
12
- "$schema": {
13
- "type": "string",
14
- "const": "https://cleo-dev.com/schemas/v1/rcsd-consensus-report.schema.json",
15
- "description": "Self-referencing schema URI for validation"
16
- },
17
- "_meta": {
18
- "type": "object",
19
- "description": "Consensus report metadata",
20
- "required": ["reportId", "taskId", "shortName", "createdAt"],
21
- "additionalProperties": false,
22
- "properties": {
23
- "reportId": {
24
- "type": "string",
25
- "pattern": "^cons_[a-f0-9]{8}$",
26
- "description": "Unique consensus report identifier"
27
- },
28
- "taskId": {
29
- "type": "string",
30
- "pattern": "^T\\d{3,}$",
31
- "description": "Anchoring task ID"
32
- },
33
- "shortName": {
34
- "type": "string",
35
- "pattern": "^[a-z0-9-]{3,25}$",
36
- "description": "Short identifier for this consensus report"
37
- },
38
- "version": {
39
- "type": "string",
40
- "pattern": "^\\d+\\.\\d+\\.\\d+$",
41
- "default": "1.0.0",
42
- "description": "Consensus report version"
43
- },
44
- "createdAt": {
45
- "type": "string",
46
- "format": "date-time",
47
- "description": "When consensus process began"
48
- },
49
- "completedAt": {
50
- "type": "string",
51
- "format": "date-time",
52
- "description": "When consensus was reached"
53
- },
54
- "duration": {
55
- "type": "integer",
56
- "minimum": 0,
57
- "description": "Consensus duration in seconds"
58
- }
59
- }
60
- },
61
- "researchRef": {
62
- "type": "object",
63
- "description": "Reference to source research output",
64
- "required": ["researchId", "file"],
65
- "additionalProperties": false,
66
- "properties": {
67
- "researchId": {
68
- "type": "string",
69
- "pattern": "^res_[a-f0-9]{8}$",
70
- "description": "Research output ID being validated"
71
- },
72
- "file": {
73
- "type": "string",
74
- "description": "Research output filename"
75
- },
76
- "query": {
77
- "type": "string",
78
- "maxLength": 500,
79
- "description": "Original research query"
80
- },
81
- "findingsCount": {
82
- "type": "integer",
83
- "minimum": 0,
84
- "description": "Number of findings from research"
85
- }
86
- }
87
- },
88
- "agents": {
89
- "type": "array",
90
- "minItems": 2,
91
- "items": {
92
- "$ref": "#/definitions/agent"
93
- },
94
- "description": "Agents participating in consensus validation"
95
- },
96
- "claims": {
97
- "type": "array",
98
- "items": {
99
- "$ref": "#/definitions/claimValidation"
100
- },
101
- "description": "Validation results for each research finding/claim"
102
- },
103
- "synthesis": {
104
- "type": "object",
105
- "description": "Synthesized consensus output",
106
- "required": ["summary", "confidence", "consensusLevel"],
107
- "additionalProperties": false,
108
- "properties": {
109
- "summary": {
110
- "type": "string",
111
- "minLength": 50,
112
- "maxLength": 2000,
113
- "description": "Synthesized summary of validated findings"
114
- },
115
- "keyInsights": {
116
- "type": "array",
117
- "items": {
118
- "type": "object",
119
- "required": ["insight", "supportingClaims"],
120
- "additionalProperties": false,
121
- "properties": {
122
- "insight": {
123
- "type": "string",
124
- "maxLength": 300,
125
- "description": "Key validated insight"
126
- },
127
- "supportingClaims": {
128
- "type": "array",
129
- "items": {
130
- "type": "string",
131
- "pattern": "^claim_[a-f0-9]{6}$"
132
- },
133
- "description": "Claims supporting this insight"
134
- },
135
- "confidence": {
136
- "type": "number",
137
- "minimum": 0.0,
138
- "maximum": 1.0,
139
- "description": "Confidence in this insight"
140
- }
141
- }
142
- },
143
- "description": "Key insights derived from validated claims"
144
- },
145
- "confidence": {
146
- "type": "number",
147
- "minimum": 0.0,
148
- "maximum": 1.0,
149
- "description": "Overall confidence in synthesis"
150
- },
151
- "consensusLevel": {
152
- "type": "string",
153
- "enum": ["HIGH_CONFIDENCE", "MEDIUM_CONFIDENCE", "LOW_CONFIDENCE", "CONTESTED", "INSUFFICIENT"],
154
- "description": "Overall consensus level achieved"
155
- },
156
- "recommendations": {
157
- "type": "array",
158
- "items": {
159
- "type": "object",
160
- "required": ["recommendation", "priority"],
161
- "additionalProperties": false,
162
- "properties": {
163
- "recommendation": {
164
- "type": "string",
165
- "maxLength": 300,
166
- "description": "Recommended action from consensus"
167
- },
168
- "priority": {
169
- "type": "string",
170
- "enum": ["critical", "high", "medium", "low"],
171
- "description": "Recommendation priority"
172
- },
173
- "basedOn": {
174
- "type": "array",
175
- "items": {
176
- "type": "string",
177
- "pattern": "^claim_[a-f0-9]{6}$"
178
- },
179
- "description": "Claims supporting this recommendation"
180
- }
181
- }
182
- },
183
- "description": "Consensus-driven recommendations"
184
- },
185
- "unresolvedIssues": {
186
- "type": "array",
187
- "items": {
188
- "type": "object",
189
- "required": ["issue", "severity"],
190
- "additionalProperties": false,
191
- "properties": {
192
- "issue": {
193
- "type": "string",
194
- "maxLength": 200,
195
- "description": "Unresolved issue description"
196
- },
197
- "severity": {
198
- "type": "string",
199
- "enum": ["critical", "significant", "minor"],
200
- "description": "Issue severity"
201
- },
202
- "suggestedResolution": {
203
- "type": "string",
204
- "maxLength": 200,
205
- "description": "Suggested resolution approach"
206
- }
207
- }
208
- },
209
- "description": "Issues requiring further investigation"
210
- }
211
- }
212
- },
213
- "statistics": {
214
- "type": "object",
215
- "description": "Consensus validation statistics",
216
- "required": ["totalClaims", "proven", "refuted", "contested", "insufficient"],
217
- "additionalProperties": false,
218
- "properties": {
219
- "totalClaims": {
220
- "type": "integer",
221
- "minimum": 0,
222
- "description": "Total claims evaluated"
223
- },
224
- "proven": {
225
- "type": "integer",
226
- "minimum": 0,
227
- "description": "Claims validated as PROVEN"
228
- },
229
- "refuted": {
230
- "type": "integer",
231
- "minimum": 0,
232
- "description": "Claims validated as REFUTED"
233
- },
234
- "contested": {
235
- "type": "integer",
236
- "minimum": 0,
237
- "description": "Claims with CONTESTED verdicts"
238
- },
239
- "insufficient": {
240
- "type": "integer",
241
- "minimum": 0,
242
- "description": "Claims with INSUFFICIENT evidence"
243
- },
244
- "averageConfidence": {
245
- "type": "number",
246
- "minimum": 0.0,
247
- "maximum": 1.0,
248
- "description": "Average confidence across proven claims"
249
- },
250
- "consensusRate": {
251
- "type": "number",
252
- "minimum": 0.0,
253
- "maximum": 1.0,
254
- "description": "Rate of agent agreement"
255
- },
256
- "processingTime": {
257
- "type": "integer",
258
- "minimum": 0,
259
- "description": "Total processing time in seconds"
260
- }
261
- }
262
- },
263
- "auditTrail": {
264
- "type": "array",
265
- "items": {
266
- "$ref": "#/definitions/auditEntry"
267
- },
268
- "description": "Chronological record of consensus process"
269
- }
270
- },
271
-
272
- "definitions": {
273
- "agent": {
274
- "type": "object",
275
- "description": "Consensus validation agent",
276
- "required": ["id", "role", "weight"],
277
- "additionalProperties": false,
278
- "properties": {
279
- "id": {
280
- "type": "string",
281
- "pattern": "^agent_[a-z]+$",
282
- "description": "Unique agent identifier"
283
- },
284
- "role": {
285
- "type": "string",
286
- "enum": ["advocate", "critic", "synthesizer", "domain_expert", "technical_reviewer", "skeptic"],
287
- "description": "Agent role in consensus process"
288
- },
289
- "specialty": {
290
- "type": "string",
291
- "maxLength": 100,
292
- "description": "Agent specialty or domain focus"
293
- },
294
- "weight": {
295
- "type": "number",
296
- "minimum": 0.1,
297
- "maximum": 2.0,
298
- "default": 1.0,
299
- "description": "Vote weight multiplier (1.0 = normal)"
300
- },
301
- "perspective": {
302
- "type": "string",
303
- "maxLength": 200,
304
- "description": "Agent's analytical perspective"
305
- }
306
- }
307
- },
308
- "claimValidation": {
309
- "type": "object",
310
- "description": "Validation result for a single claim",
311
- "required": ["id", "originalFindingId", "claim", "verdict", "votes"],
312
- "additionalProperties": false,
313
- "properties": {
314
- "id": {
315
- "type": "string",
316
- "pattern": "^claim_[a-f0-9]{6}$",
317
- "description": "Unique claim validation ID"
318
- },
319
- "originalFindingId": {
320
- "type": "string",
321
- "pattern": "^find_[a-f0-9]{6}$",
322
- "description": "Original research finding ID"
323
- },
324
- "claim": {
325
- "type": "string",
326
- "minLength": 10,
327
- "maxLength": 500,
328
- "description": "The claim being validated"
329
- },
330
- "verdict": {
331
- "type": "string",
332
- "enum": ["PROVEN", "REFUTED", "CONTESTED", "INSUFFICIENT"],
333
- "description": "Consensus verdict: PROVEN (validated), REFUTED (disproven), CONTESTED (disagreement), INSUFFICIENT (need more evidence)"
334
- },
335
- "votes": {
336
- "type": "array",
337
- "items": {
338
- "$ref": "#/definitions/vote"
339
- },
340
- "description": "Individual agent votes"
341
- },
342
- "evidence": {
343
- "type": "object",
344
- "description": "Evidence summary for this claim",
345
- "additionalProperties": false,
346
- "properties": {
347
- "supporting": {
348
- "type": "array",
349
- "items": {
350
- "type": "object",
351
- "required": ["agentId", "argument"],
352
- "additionalProperties": false,
353
- "properties": {
354
- "agentId": {
355
- "type": "string",
356
- "pattern": "^agent_[a-z]+$"
357
- },
358
- "argument": {
359
- "type": "string",
360
- "maxLength": 500
361
- },
362
- "citations": {
363
- "type": "array",
364
- "items": {
365
- "type": "string",
366
- "pattern": "^cite_[a-f0-9]{6}$"
367
- }
368
- }
369
- }
370
- },
371
- "description": "Arguments supporting the claim"
372
- },
373
- "opposing": {
374
- "type": "array",
375
- "items": {
376
- "type": "object",
377
- "required": ["agentId", "argument"],
378
- "additionalProperties": false,
379
- "properties": {
380
- "agentId": {
381
- "type": "string",
382
- "pattern": "^agent_[a-z]+$"
383
- },
384
- "argument": {
385
- "type": "string",
386
- "maxLength": 500
387
- },
388
- "citations": {
389
- "type": "array",
390
- "items": {
391
- "type": "string",
392
- "pattern": "^cite_[a-f0-9]{6}$"
393
- }
394
- }
395
- }
396
- },
397
- "description": "Arguments opposing the claim"
398
- }
399
- }
400
- },
401
- "confidence": {
402
- "type": "number",
403
- "minimum": 0.0,
404
- "maximum": 1.0,
405
- "description": "Consensus confidence in verdict"
406
- },
407
- "consensusStrength": {
408
- "type": "string",
409
- "enum": ["unanimous", "strong", "moderate", "weak", "split"],
410
- "description": "Strength of agent agreement"
411
- },
412
- "notes": {
413
- "type": "string",
414
- "maxLength": 500,
415
- "description": "Additional notes on validation"
416
- },
417
- "refinedClaim": {
418
- "type": "string",
419
- "maxLength": 500,
420
- "description": "Refined/corrected version of claim (if applicable)"
421
- }
422
- }
423
- },
424
- "vote": {
425
- "type": "object",
426
- "description": "Individual agent vote",
427
- "required": ["agentId", "position", "confidence"],
428
- "additionalProperties": false,
429
- "properties": {
430
- "agentId": {
431
- "type": "string",
432
- "pattern": "^agent_[a-z]+$",
433
- "description": "Voting agent ID"
434
- },
435
- "position": {
436
- "type": "string",
437
- "enum": ["support", "oppose", "abstain", "insufficient_evidence"],
438
- "description": "Agent's position on the claim"
439
- },
440
- "confidence": {
441
- "type": "number",
442
- "minimum": 0.0,
443
- "maximum": 1.0,
444
- "description": "Agent's confidence in their position"
445
- },
446
- "rationale": {
447
- "type": "string",
448
- "maxLength": 300,
449
- "description": "Reasoning for vote"
450
- },
451
- "weightedScore": {
452
- "type": "number",
453
- "description": "Computed weighted vote score"
454
- }
455
- }
456
- },
457
- "auditEntry": {
458
- "type": "object",
459
- "description": "Audit trail entry",
460
- "required": ["timestamp", "event", "description"],
461
- "additionalProperties": false,
462
- "properties": {
463
- "timestamp": {
464
- "type": "string",
465
- "format": "date-time",
466
- "description": "When event occurred"
467
- },
468
- "event": {
469
- "type": "string",
470
- "enum": ["started", "agent_joined", "claim_evaluated", "vote_cast", "consensus_reached", "synthesis_complete", "completed"],
471
- "description": "Event type"
472
- },
473
- "agentId": {
474
- "type": "string",
475
- "pattern": "^agent_[a-z]+$",
476
- "description": "Agent involved (if applicable)"
477
- },
478
- "claimId": {
479
- "type": "string",
480
- "pattern": "^claim_[a-f0-9]{6}$",
481
- "description": "Claim involved (if applicable)"
482
- },
483
- "description": {
484
- "type": "string",
485
- "maxLength": 200,
486
- "description": "Event description"
487
- }
488
- }
489
- }
490
- }
491
- }