@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.
- package/dispatch-config.json +404 -0
- package/index.d.ts +178 -0
- package/index.js +405 -0
- package/package.json +14 -0
- package/profiles/core.json +7 -0
- package/profiles/full.json +10 -0
- package/profiles/minimal.json +7 -0
- package/profiles/recommended.json +7 -0
- package/provider-skills-map.json +97 -0
- package/skills/_shared/cleo-style-guide.md +84 -0
- package/skills/_shared/manifest-operations.md +810 -0
- package/skills/_shared/placeholders.json +433 -0
- package/skills/_shared/skill-chaining-patterns.md +237 -0
- package/skills/_shared/subagent-protocol-base.md +223 -0
- package/skills/_shared/task-system-integration.md +232 -0
- package/skills/_shared/testing-framework-config.md +110 -0
- package/skills/ct-cleo/SKILL.md +490 -0
- package/skills/ct-cleo/references/anti-patterns.md +19 -0
- package/skills/ct-cleo/references/loom-lifecycle.md +136 -0
- package/skills/ct-cleo/references/orchestrator-constraints.md +55 -0
- package/skills/ct-cleo/references/session-protocol.md +162 -0
- package/skills/ct-codebase-mapper/SKILL.md +82 -0
- package/skills/ct-contribution/SKILL.md +521 -0
- package/skills/ct-contribution/templates/contribution-init.json +21 -0
- package/skills/ct-dev-workflow/SKILL.md +423 -0
- package/skills/ct-docs-lookup/SKILL.md +66 -0
- package/skills/ct-docs-review/SKILL.md +175 -0
- package/skills/ct-docs-write/SKILL.md +108 -0
- package/skills/ct-documentor/SKILL.md +231 -0
- package/skills/ct-epic-architect/SKILL.md +305 -0
- package/skills/ct-epic-architect/references/bug-epic-example.md +172 -0
- package/skills/ct-epic-architect/references/commands.md +201 -0
- package/skills/ct-epic-architect/references/feature-epic-example.md +210 -0
- package/skills/ct-epic-architect/references/migration-epic-example.md +244 -0
- package/skills/ct-epic-architect/references/output-format.md +92 -0
- package/skills/ct-epic-architect/references/patterns.md +284 -0
- package/skills/ct-epic-architect/references/refactor-epic-example.md +412 -0
- package/skills/ct-epic-architect/references/research-epic-example.md +226 -0
- package/skills/ct-epic-architect/references/shell-escaping.md +86 -0
- package/skills/ct-epic-architect/references/skill-aware-execution.md +195 -0
- package/skills/ct-grade/SKILL.md +230 -0
- package/skills/ct-grade/agents/analysis-reporter.md +203 -0
- package/skills/ct-grade/agents/blind-comparator.md +157 -0
- package/skills/ct-grade/agents/scenario-runner.md +134 -0
- package/skills/ct-grade/eval-viewer/__pycache__/generate_grade_review.cpython-314.pyc +0 -0
- package/skills/ct-grade/eval-viewer/generate_grade_review.py +1138 -0
- package/skills/ct-grade/eval-viewer/generate_grade_viewer.py +544 -0
- package/skills/ct-grade/eval-viewer/generate_review.py +283 -0
- package/skills/ct-grade/eval-viewer/grade-review.html +1574 -0
- package/skills/ct-grade/eval-viewer/viewer.html +219 -0
- package/skills/ct-grade/evals/evals.json +94 -0
- package/skills/ct-grade/references/ab-test-methodology.md +150 -0
- package/skills/ct-grade/references/domains.md +137 -0
- package/skills/ct-grade/references/grade-spec.md +236 -0
- package/skills/ct-grade/references/scenario-playbook.md +234 -0
- package/skills/ct-grade/references/token-tracking.md +120 -0
- package/skills/ct-grade/scripts/__pycache__/audit_analyzer.cpython-314.pyc +0 -0
- package/skills/ct-grade/scripts/__pycache__/run_ab_test.cpython-314.pyc +0 -0
- package/skills/ct-grade/scripts/__pycache__/run_all.cpython-314.pyc +0 -0
- package/skills/ct-grade/scripts/__pycache__/token_tracker.cpython-314.pyc +0 -0
- package/skills/ct-grade/scripts/audit_analyzer.py +279 -0
- package/skills/ct-grade/scripts/generate_report.py +283 -0
- package/skills/ct-grade/scripts/run_ab_test.py +504 -0
- package/skills/ct-grade/scripts/run_all.py +287 -0
- package/skills/ct-grade/scripts/setup_run.py +183 -0
- package/skills/ct-grade/scripts/token_tracker.py +630 -0
- package/skills/ct-grade-v2-1/SKILL.md +237 -0
- package/skills/ct-grade-v2-1/agents/analysis-reporter.md +203 -0
- package/skills/ct-grade-v2-1/agents/blind-comparator.md +157 -0
- package/skills/ct-grade-v2-1/agents/scenario-runner.md +179 -0
- package/skills/ct-grade-v2-1/evals/evals.json +74 -0
- package/skills/ct-grade-v2-1/grade-viewer/__pycache__/build_op_stats.cpython-314.pyc +0 -0
- package/skills/ct-grade-v2-1/grade-viewer/__pycache__/generate_grade_review.cpython-314.pyc +0 -0
- package/skills/ct-grade-v2-1/grade-viewer/build_op_stats.py +174 -0
- package/skills/ct-grade-v2-1/grade-viewer/eval-analysis.json +41 -0
- package/skills/ct-grade-v2-1/grade-viewer/eval-report.md +34 -0
- package/skills/ct-grade-v2-1/grade-viewer/generate_grade_review.py +1023 -0
- package/skills/ct-grade-v2-1/grade-viewer/generate_grade_viewer.py +548 -0
- package/skills/ct-grade-v2-1/grade-viewer/grade-review-eval.html +613 -0
- package/skills/ct-grade-v2-1/grade-viewer/grade-review.html +1532 -0
- package/skills/ct-grade-v2-1/grade-viewer/viewer.html +620 -0
- package/skills/ct-grade-v2-1/manifest-entry.json +31 -0
- package/skills/ct-grade-v2-1/references/ab-testing.md +233 -0
- package/skills/ct-grade-v2-1/references/domains-ssot.md +156 -0
- package/skills/ct-grade-v2-1/references/grade-spec-v2.md +167 -0
- package/skills/ct-grade-v2-1/references/playbook-v2.md +393 -0
- package/skills/ct-grade-v2-1/references/token-tracking.md +202 -0
- package/skills/ct-grade-v2-1/scripts/generate_report.py +419 -0
- package/skills/ct-grade-v2-1/scripts/run_ab_test.py +493 -0
- package/skills/ct-grade-v2-1/scripts/run_scenario.py +396 -0
- package/skills/ct-grade-v2-1/scripts/setup_run.py +207 -0
- package/skills/ct-grade-v2-1/scripts/token_tracker.py +175 -0
- package/skills/ct-memory/SKILL.md +84 -0
- package/skills/ct-orchestrator/INSTALL.md +61 -0
- package/skills/ct-orchestrator/README.md +69 -0
- package/skills/ct-orchestrator/SKILL.md +380 -0
- package/skills/ct-orchestrator/manifest-entry.json +19 -0
- package/skills/ct-orchestrator/orchestrator-prompt.txt +17 -0
- package/skills/ct-orchestrator/references/SUBAGENT-PROTOCOL-BLOCK.md +66 -0
- package/skills/ct-orchestrator/references/autonomous-operation.md +167 -0
- package/skills/ct-orchestrator/references/lifecycle-gates.md +98 -0
- package/skills/ct-orchestrator/references/orchestrator-compliance.md +271 -0
- package/skills/ct-orchestrator/references/orchestrator-handoffs.md +85 -0
- package/skills/ct-orchestrator/references/orchestrator-patterns.md +164 -0
- package/skills/ct-orchestrator/references/orchestrator-recovery.md +113 -0
- package/skills/ct-orchestrator/references/orchestrator-spawning.md +271 -0
- package/skills/ct-orchestrator/references/orchestrator-tokens.md +180 -0
- package/skills/ct-research-agent/SKILL.md +226 -0
- package/skills/ct-skill-creator/.cleo/.context-state.json +13 -0
- package/skills/ct-skill-creator/.cleo/logs/cleo.2026-03-07.1.log +24 -0
- package/skills/ct-skill-creator/.cleo/tasks.db +0 -0
- package/skills/ct-skill-creator/SKILL.md +356 -0
- package/skills/ct-skill-creator/agents/analyzer.md +276 -0
- package/skills/ct-skill-creator/agents/comparator.md +204 -0
- package/skills/ct-skill-creator/agents/grader.md +225 -0
- package/skills/ct-skill-creator/assets/eval_review.html +146 -0
- package/skills/ct-skill-creator/eval-viewer/__pycache__/generate_review.cpython-314.pyc +0 -0
- package/skills/ct-skill-creator/eval-viewer/generate_review.py +471 -0
- package/skills/ct-skill-creator/eval-viewer/viewer.html +1325 -0
- package/skills/ct-skill-creator/manifest-entry.json +17 -0
- package/skills/ct-skill-creator/references/dynamic-context.md +228 -0
- package/skills/ct-skill-creator/references/frontmatter.md +83 -0
- package/skills/ct-skill-creator/references/invocation-control.md +165 -0
- package/skills/ct-skill-creator/references/output-patterns.md +86 -0
- package/skills/ct-skill-creator/references/provider-deployment.md +175 -0
- package/skills/ct-skill-creator/references/schemas.md +430 -0
- package/skills/ct-skill-creator/references/workflows.md +28 -0
- package/skills/ct-skill-creator/scripts/__init__.py +1 -0
- package/skills/ct-skill-creator/scripts/__pycache__/__init__.cpython-314.pyc +0 -0
- package/skills/ct-skill-creator/scripts/__pycache__/aggregate_benchmark.cpython-314.pyc +0 -0
- package/skills/ct-skill-creator/scripts/__pycache__/generate_report.cpython-314.pyc +0 -0
- package/skills/ct-skill-creator/scripts/__pycache__/improve_description.cpython-314.pyc +0 -0
- package/skills/ct-skill-creator/scripts/__pycache__/init_skill.cpython-314.pyc +0 -0
- package/skills/ct-skill-creator/scripts/__pycache__/quick_validate.cpython-314.pyc +0 -0
- package/skills/ct-skill-creator/scripts/__pycache__/run_eval.cpython-314.pyc +0 -0
- package/skills/ct-skill-creator/scripts/__pycache__/run_loop.cpython-314.pyc +0 -0
- package/skills/ct-skill-creator/scripts/__pycache__/utils.cpython-314.pyc +0 -0
- package/skills/ct-skill-creator/scripts/aggregate_benchmark.py +401 -0
- package/skills/ct-skill-creator/scripts/generate_report.py +326 -0
- package/skills/ct-skill-creator/scripts/improve_description.py +247 -0
- package/skills/ct-skill-creator/scripts/init_skill.py +306 -0
- package/skills/ct-skill-creator/scripts/package_skill.py +110 -0
- package/skills/ct-skill-creator/scripts/quick_validate.py +97 -0
- package/skills/ct-skill-creator/scripts/run_eval.py +310 -0
- package/skills/ct-skill-creator/scripts/run_loop.py +328 -0
- package/skills/ct-skill-creator/scripts/utils.py +47 -0
- package/skills/ct-skill-validator/SKILL.md +178 -0
- package/skills/ct-skill-validator/agents/ecosystem-checker.md +151 -0
- package/skills/ct-skill-validator/assets/valid-skill-example.md +13 -0
- package/skills/ct-skill-validator/evals/eval_set.json +14 -0
- package/skills/ct-skill-validator/evals/evals.json +52 -0
- package/skills/ct-skill-validator/manifest-entry.json +20 -0
- package/skills/ct-skill-validator/references/cleo-ecosystem-rules.md +163 -0
- package/skills/ct-skill-validator/references/validation-rules.md +168 -0
- package/skills/ct-skill-validator/scripts/__init__.py +0 -0
- package/skills/ct-skill-validator/scripts/__pycache__/audit_body.cpython-314.pyc +0 -0
- package/skills/ct-skill-validator/scripts/__pycache__/check_ecosystem.cpython-314.pyc +0 -0
- package/skills/ct-skill-validator/scripts/__pycache__/generate_validation_report.cpython-314.pyc +0 -0
- package/skills/ct-skill-validator/scripts/__pycache__/validate.cpython-314.pyc +0 -0
- package/skills/ct-skill-validator/scripts/audit_body.py +242 -0
- package/skills/ct-skill-validator/scripts/check_ecosystem.py +169 -0
- package/skills/ct-skill-validator/scripts/check_manifest.py +172 -0
- package/skills/ct-skill-validator/scripts/generate_validation_report.py +442 -0
- package/skills/ct-skill-validator/scripts/validate.py +422 -0
- package/skills/ct-spec-writer/SKILL.md +189 -0
- package/skills/ct-stickynote/README.md +14 -0
- package/skills/ct-stickynote/SKILL.md +46 -0
- package/skills/ct-task-executor/SKILL.md +296 -0
- package/skills/ct-validator/SKILL.md +216 -0
- package/skills/manifest.json +469 -0
- package/skills.json +281 -0
|
@@ -0,0 +1,404 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_comment": "Manual dispatch routing rules merged with SKILL.md frontmatter to generate manifest.json",
|
|
3
|
+
"dispatch_matrix": {
|
|
4
|
+
"_comment": "Maps task types/keywords to skill NAMES (protocol identifiers). All spawns use 'cleo-subagent' with the selected skill as context injection.",
|
|
5
|
+
"by_task_type": {
|
|
6
|
+
"research": "ct-research-agent",
|
|
7
|
+
"planning": "ct-epic-architect",
|
|
8
|
+
"implementation": "ct-task-executor",
|
|
9
|
+
"testing": "ct-test-writer-bats",
|
|
10
|
+
"documentation": "ct-documentor",
|
|
11
|
+
"specification": "ct-spec-writer",
|
|
12
|
+
"validation": "ct-validator",
|
|
13
|
+
"bash-library": "ct-library-implementer-bash",
|
|
14
|
+
"release": "ct-dev-workflow",
|
|
15
|
+
"consensus": "ct-validator",
|
|
16
|
+
"contribution": "ct-contribution"
|
|
17
|
+
},
|
|
18
|
+
"by_keyword": {
|
|
19
|
+
"research|investigate|explore|discover": "ct-research-agent",
|
|
20
|
+
"epic|plan|decompose|architect": "ct-epic-architect",
|
|
21
|
+
"implement|build|execute|create": "ct-task-executor",
|
|
22
|
+
"test|bats|coverage|integration": "ct-test-writer-bats",
|
|
23
|
+
"doc|document|readme|guide": "ct-documentor",
|
|
24
|
+
"spec|rfc|protocol|contract": "ct-spec-writer",
|
|
25
|
+
"validate|verify|audit|compliance|consensus|vote": "ct-validator",
|
|
26
|
+
"lib/|bash|shell|function": "ct-library-implementer-bash",
|
|
27
|
+
"release|version|publish|deploy|ship|changelog": "ct-dev-workflow"
|
|
28
|
+
},
|
|
29
|
+
"by_protocol": {
|
|
30
|
+
"RSCH": { "skillRef": "ct-research-agent", "enforcement": "strict" },
|
|
31
|
+
"CONS": { "skillRef": "ct-validator", "enforcement": "strict" },
|
|
32
|
+
"SPEC": { "skillRef": "ct-spec-writer", "enforcement": "strict" },
|
|
33
|
+
"DCMP": { "skillRef": "ct-epic-architect", "enforcement": "strict" },
|
|
34
|
+
"IMPL": { "skillRef": "ct-task-executor", "enforcement": "strict" },
|
|
35
|
+
"CONT": { "skillRef": "ct-contribution", "enforcement": "strict" },
|
|
36
|
+
"VALID": { "skillRef": "ct-validator", "enforcement": "strict" },
|
|
37
|
+
"TEST": { "skillRef": "ct-test-writer-bats", "enforcement": "strict" },
|
|
38
|
+
"REL": { "skillRef": "ct-dev-workflow", "enforcement": "strict" },
|
|
39
|
+
"ADR": { "skillRef": "ct-spec-writer", "enforcement": "advisory" },
|
|
40
|
+
"AGENT": { "skillRef": "ct-orchestrator", "enforcement": "strict" },
|
|
41
|
+
"ART": { "skillRef": "ct-contribution", "enforcement": "advisory" },
|
|
42
|
+
"PROV": { "skillRef": "ct-orchestrator", "enforcement": "advisory" }
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
"skill_overrides": {
|
|
46
|
+
"ct-orchestrator": {
|
|
47
|
+
"tags": ["workflow", "multi-agent", "coordination"],
|
|
48
|
+
"status": "active",
|
|
49
|
+
"token_budget": 8000,
|
|
50
|
+
"capabilities": {
|
|
51
|
+
"inputs": ["TASK_ID", "SESSION_ID", "EPIC_ID"],
|
|
52
|
+
"outputs": ["workflow-coordination", "subagent-spawns"],
|
|
53
|
+
"dispatch_triggers": ["orchestrate", "orchestrator mode", "run as orchestrator", "delegate to subagents", "coordinate agents", "spawn subagents", "multi-agent workflow", "context-protected workflow", "agent farm", "HITL orchestration"],
|
|
54
|
+
"compatible_subagent_types": ["orchestrator"],
|
|
55
|
+
"chains_to": ["ct-epic-architect", "ct-research-agent", "ct-task-executor", "ct-test-writer-bats", "ct-spec-writer", "ct-library-implementer-bash", "ct-validator", "ct-documentor"],
|
|
56
|
+
"dispatch_keywords": {
|
|
57
|
+
"primary": ["orchestrate", "coordinate", "delegate", "multi-agent"],
|
|
58
|
+
"secondary": ["spawn", "farm", "HITL", "workflow"]
|
|
59
|
+
}
|
|
60
|
+
},
|
|
61
|
+
"constraints": {
|
|
62
|
+
"max_context_tokens": 150000,
|
|
63
|
+
"requires_session": true,
|
|
64
|
+
"requires_epic": true
|
|
65
|
+
}
|
|
66
|
+
},
|
|
67
|
+
"ct-epic-architect": {
|
|
68
|
+
"tags": ["planning", "architecture", "task-management"],
|
|
69
|
+
"status": "active",
|
|
70
|
+
"token_budget": 8000,
|
|
71
|
+
"capabilities": {
|
|
72
|
+
"inputs": ["TASK_ID", "FEATURE_NAME", "FEATURE_SLUG", "DATE", "EPIC_ID", "SESSION_ID"],
|
|
73
|
+
"outputs": ["epic", "tasks", "manifest-entry", "session"],
|
|
74
|
+
"dispatch_triggers": ["create epic", "plan epic", "decompose into tasks", "architect the work", "break down this project", "epic planning", "task breakdown", "dependency analysis", "wave planning", "sprint planning"],
|
|
75
|
+
"compatible_subagent_types": ["general-purpose", "planning"],
|
|
76
|
+
"chains_to": ["ct-task-executor", "ct-research-agent", "ct-spec-writer"],
|
|
77
|
+
"dispatch_keywords": {
|
|
78
|
+
"primary": ["epic", "plan", "decompose", "architect"],
|
|
79
|
+
"secondary": ["breakdown", "wave", "sprint", "dependency"]
|
|
80
|
+
}
|
|
81
|
+
},
|
|
82
|
+
"constraints": {
|
|
83
|
+
"max_context_tokens": 100000,
|
|
84
|
+
"requires_session": true,
|
|
85
|
+
"requires_epic": false
|
|
86
|
+
}
|
|
87
|
+
},
|
|
88
|
+
"ct-task-executor": {
|
|
89
|
+
"tags": ["execution", "implementation", "task-management"],
|
|
90
|
+
"status": "active",
|
|
91
|
+
"token_budget": 8000,
|
|
92
|
+
"capabilities": {
|
|
93
|
+
"inputs": ["TASK_ID", "TASK_NAME", "TASK_INSTRUCTIONS", "DELIVERABLES_LIST", "ACCEPTANCE_CRITERIA", "TOPIC_SLUG", "DATE", "EPIC_ID", "SESSION_ID", "DEPENDS_LIST", "MANIFEST_SUMMARIES", "TOPICS_JSON"],
|
|
94
|
+
"outputs": ["deliverables", "manifest-entry"],
|
|
95
|
+
"dispatch_triggers": ["execute task", "implement", "do the work", "complete this task", "carry out", "perform task", "run task", "work on", "implement feature", "build component", "create implementation"],
|
|
96
|
+
"compatible_subagent_types": ["general-purpose", "Code"],
|
|
97
|
+
"chains_to": ["ct-test-writer-bats", "ct-documentor"],
|
|
98
|
+
"dispatch_keywords": {
|
|
99
|
+
"primary": ["implement", "build", "execute", "create"],
|
|
100
|
+
"secondary": ["complete", "finish", "work on", "carry out"]
|
|
101
|
+
}
|
|
102
|
+
},
|
|
103
|
+
"constraints": {
|
|
104
|
+
"max_context_tokens": 80000,
|
|
105
|
+
"requires_session": true,
|
|
106
|
+
"requires_epic": false
|
|
107
|
+
}
|
|
108
|
+
},
|
|
109
|
+
"ct-research-agent": {
|
|
110
|
+
"tags": ["research", "investigation", "discovery"],
|
|
111
|
+
"status": "active",
|
|
112
|
+
"token_budget": 8000,
|
|
113
|
+
"capabilities": {
|
|
114
|
+
"inputs": ["TASK_ID", "TOPIC", "TOPIC_SLUG", "RESEARCH_QUESTIONS", "RESEARCH_TITLE", "DATE", "EPIC_ID", "SESSION_ID", "TOPICS_JSON"],
|
|
115
|
+
"outputs": ["research-file", "manifest-entry"],
|
|
116
|
+
"dispatch_triggers": ["research", "investigate", "gather information", "look up", "find out about", "analyze topic", "explore options", "survey alternatives"],
|
|
117
|
+
"compatible_subagent_types": ["general-purpose", "Explore"],
|
|
118
|
+
"chains_to": ["ct-spec-writer", "ct-epic-architect"],
|
|
119
|
+
"dispatch_keywords": {
|
|
120
|
+
"primary": ["research", "investigate", "explore", "discover"],
|
|
121
|
+
"secondary": ["gather", "survey", "analyze", "fact-finding"]
|
|
122
|
+
}
|
|
123
|
+
},
|
|
124
|
+
"constraints": {
|
|
125
|
+
"max_context_tokens": 80000,
|
|
126
|
+
"requires_session": false,
|
|
127
|
+
"requires_epic": false
|
|
128
|
+
}
|
|
129
|
+
},
|
|
130
|
+
"ct-spec-writer": {
|
|
131
|
+
"tags": ["specification", "documentation", "rfc"],
|
|
132
|
+
"status": "active",
|
|
133
|
+
"token_budget": 8000,
|
|
134
|
+
"capabilities": {
|
|
135
|
+
"inputs": ["TASK_ID", "SPEC_NAME", "spec_topic", "requirements_list", "DATE", "TOPIC_SLUG"],
|
|
136
|
+
"outputs": ["specification-file", "manifest-entry"],
|
|
137
|
+
"dispatch_triggers": ["write a spec", "create specification", "define protocol", "document requirements", "RFC-style document", "technical specification"],
|
|
138
|
+
"compatible_subagent_types": ["general-purpose", "Code"],
|
|
139
|
+
"chains_to": ["ct-task-executor", "ct-documentor"],
|
|
140
|
+
"dispatch_keywords": {
|
|
141
|
+
"primary": ["spec", "rfc", "protocol", "contract"],
|
|
142
|
+
"secondary": ["specification", "requirements", "interface", "architecture"]
|
|
143
|
+
}
|
|
144
|
+
},
|
|
145
|
+
"constraints": {
|
|
146
|
+
"max_context_tokens": 80000,
|
|
147
|
+
"requires_session": false,
|
|
148
|
+
"requires_epic": false
|
|
149
|
+
}
|
|
150
|
+
},
|
|
151
|
+
"ct-test-writer-bats": {
|
|
152
|
+
"tags": ["testing", "bats", "integration"],
|
|
153
|
+
"status": "active",
|
|
154
|
+
"token_budget": 8000,
|
|
155
|
+
"capabilities": {
|
|
156
|
+
"inputs": ["TASK_ID", "test_target", "test_scenarios", "DATE", "TOPIC_SLUG"],
|
|
157
|
+
"outputs": ["test-file", "manifest-entry"],
|
|
158
|
+
"dispatch_triggers": ["write tests", "create BATS tests", "add integration tests", "bash tests", "test coverage"],
|
|
159
|
+
"compatible_subagent_types": ["general-purpose", "Code"],
|
|
160
|
+
"chains_to": [],
|
|
161
|
+
"dispatch_keywords": {
|
|
162
|
+
"primary": ["test", "bats", "coverage", "integration"],
|
|
163
|
+
"secondary": ["unit tests", "test cases", "shell tests", "bash tests"]
|
|
164
|
+
}
|
|
165
|
+
},
|
|
166
|
+
"constraints": {
|
|
167
|
+
"max_context_tokens": 80000,
|
|
168
|
+
"requires_session": false,
|
|
169
|
+
"requires_epic": false
|
|
170
|
+
}
|
|
171
|
+
},
|
|
172
|
+
"ct-library-implementer-bash": {
|
|
173
|
+
"tags": ["implementation", "bash", "library"],
|
|
174
|
+
"status": "active",
|
|
175
|
+
"token_budget": 8000,
|
|
176
|
+
"capabilities": {
|
|
177
|
+
"inputs": ["TASK_ID", "MODULE_NAME", "function_signatures", "DATE", "TOPIC_SLUG"],
|
|
178
|
+
"outputs": ["library-file", "manifest-entry"],
|
|
179
|
+
"dispatch_triggers": ["create library", "implement functions", "add to lib/", "shared utilities", "bash library"],
|
|
180
|
+
"compatible_subagent_types": ["general-purpose", "Code"],
|
|
181
|
+
"chains_to": ["ct-test-writer-bats"],
|
|
182
|
+
"dispatch_keywords": {
|
|
183
|
+
"primary": ["lib/", "bash", "shell", "function"],
|
|
184
|
+
"secondary": ["library", "utilities", "helper", "module"]
|
|
185
|
+
}
|
|
186
|
+
},
|
|
187
|
+
"constraints": {
|
|
188
|
+
"max_context_tokens": 80000,
|
|
189
|
+
"requires_session": false,
|
|
190
|
+
"requires_epic": false
|
|
191
|
+
}
|
|
192
|
+
},
|
|
193
|
+
"ct-validator": {
|
|
194
|
+
"tags": ["validation", "compliance", "audit"],
|
|
195
|
+
"status": "active",
|
|
196
|
+
"token_budget": 6000,
|
|
197
|
+
"capabilities": {
|
|
198
|
+
"inputs": ["TASK_ID", "VALIDATION_TARGET", "TARGET_FILES_OR_SYSTEMS", "VALIDATION_CRITERIA", "VALIDATION_COMMANDS", "TOPIC_SLUG", "DATE"],
|
|
199
|
+
"outputs": ["validation-report", "manifest-entry"],
|
|
200
|
+
"dispatch_triggers": ["validate", "verify", "check compliance", "audit", "compliance check"],
|
|
201
|
+
"compatible_subagent_types": ["general-purpose", "Explore"],
|
|
202
|
+
"chains_to": [],
|
|
203
|
+
"dispatch_keywords": {
|
|
204
|
+
"primary": ["validate", "verify", "audit", "compliance"],
|
|
205
|
+
"secondary": ["check", "conformance", "standards", "requirements"]
|
|
206
|
+
}
|
|
207
|
+
},
|
|
208
|
+
"constraints": {
|
|
209
|
+
"max_context_tokens": 60000,
|
|
210
|
+
"requires_session": false,
|
|
211
|
+
"requires_epic": false
|
|
212
|
+
}
|
|
213
|
+
},
|
|
214
|
+
"ct-dev-workflow": {
|
|
215
|
+
"tags": ["workflow", "git", "commits", "release", "task-tracking"],
|
|
216
|
+
"status": "active",
|
|
217
|
+
"token_budget": 6000,
|
|
218
|
+
"capabilities": {
|
|
219
|
+
"inputs": ["TASK_ID", "CHANGE_TYPE", "SCOPE", "DESCRIPTION"],
|
|
220
|
+
"outputs": ["commit", "tag", "push"],
|
|
221
|
+
"dispatch_triggers": ["commit", "release", "run the workflow", "prepare release", "atomic commit"],
|
|
222
|
+
"compatible_subagent_types": ["general-purpose", "Code"],
|
|
223
|
+
"chains_to": [],
|
|
224
|
+
"dispatch_keywords": {
|
|
225
|
+
"primary": ["commit", "release", "push", "version"],
|
|
226
|
+
"secondary": ["atomic", "conventional", "ship", "finalize"]
|
|
227
|
+
}
|
|
228
|
+
},
|
|
229
|
+
"constraints": {
|
|
230
|
+
"max_context_tokens": 60000,
|
|
231
|
+
"requires_session": false,
|
|
232
|
+
"requires_epic": false
|
|
233
|
+
}
|
|
234
|
+
},
|
|
235
|
+
"ct-documentor": {
|
|
236
|
+
"tags": ["documentation", "orchestration", "workflow"],
|
|
237
|
+
"status": "active",
|
|
238
|
+
"token_budget": 8000,
|
|
239
|
+
"capabilities": {
|
|
240
|
+
"inputs": ["TASK_ID", "documentation_topic", "target_audience"],
|
|
241
|
+
"outputs": ["documentation-file", "manifest-entry", "review-report"],
|
|
242
|
+
"dispatch_triggers": ["write documentation", "create docs", "review docs", "update documentation"],
|
|
243
|
+
"compatible_subagent_types": ["general-purpose", "documentation", "Code"],
|
|
244
|
+
"chains_to": ["ct-docs-lookup", "ct-docs-write", "ct-docs-review"],
|
|
245
|
+
"dispatch_keywords": {
|
|
246
|
+
"primary": ["doc", "document", "readme", "guide"],
|
|
247
|
+
"secondary": ["documentation", "docs", "markdown", "mdx"]
|
|
248
|
+
}
|
|
249
|
+
},
|
|
250
|
+
"constraints": {
|
|
251
|
+
"max_context_tokens": 80000,
|
|
252
|
+
"requires_session": false,
|
|
253
|
+
"requires_epic": false
|
|
254
|
+
}
|
|
255
|
+
},
|
|
256
|
+
"ct-docs-lookup": {
|
|
257
|
+
"tags": ["documentation", "libraries", "context7"],
|
|
258
|
+
"status": "active",
|
|
259
|
+
"token_budget": 6000,
|
|
260
|
+
"capabilities": {
|
|
261
|
+
"inputs": ["library_name", "query", "version"],
|
|
262
|
+
"outputs": ["documentation-content", "code-examples"],
|
|
263
|
+
"dispatch_triggers": ["how do I configure", "write code using", "what are the methods", "show me examples"],
|
|
264
|
+
"compatible_subagent_types": ["general-purpose", "documentation", "Explore"],
|
|
265
|
+
"chains_to": [],
|
|
266
|
+
"dispatch_keywords": {
|
|
267
|
+
"primary": ["library", "framework", "api", "reference"],
|
|
268
|
+
"secondary": ["configure", "methods", "examples", "docs"]
|
|
269
|
+
}
|
|
270
|
+
},
|
|
271
|
+
"constraints": {
|
|
272
|
+
"max_context_tokens": 60000,
|
|
273
|
+
"requires_session": false,
|
|
274
|
+
"requires_epic": false
|
|
275
|
+
}
|
|
276
|
+
},
|
|
277
|
+
"ct-docs-write": {
|
|
278
|
+
"tags": ["documentation", "writing", "style-guide"],
|
|
279
|
+
"status": "active",
|
|
280
|
+
"token_budget": 6000,
|
|
281
|
+
"capabilities": {
|
|
282
|
+
"inputs": ["file_path", "content_topic", "audience"],
|
|
283
|
+
"outputs": ["documentation-file", "markdown-content"],
|
|
284
|
+
"dispatch_triggers": ["write docs", "create documentation", "edit the README"],
|
|
285
|
+
"compatible_subagent_types": ["general-purpose", "documentation", "Code"],
|
|
286
|
+
"chains_to": [],
|
|
287
|
+
"dispatch_keywords": {
|
|
288
|
+
"primary": ["write", "create", "edit", "style"],
|
|
289
|
+
"secondary": ["clarity", "readable", "user-facing", "content"]
|
|
290
|
+
}
|
|
291
|
+
},
|
|
292
|
+
"constraints": {
|
|
293
|
+
"max_context_tokens": 60000,
|
|
294
|
+
"requires_session": false,
|
|
295
|
+
"requires_epic": false
|
|
296
|
+
}
|
|
297
|
+
},
|
|
298
|
+
"ct-docs-review": {
|
|
299
|
+
"tags": ["documentation", "review", "style-guide"],
|
|
300
|
+
"status": "active",
|
|
301
|
+
"token_budget": 6000,
|
|
302
|
+
"capabilities": {
|
|
303
|
+
"inputs": ["file_path", "pr_url", "diff_content"],
|
|
304
|
+
"outputs": ["review-comments", "style-violations", "improvement-suggestions"],
|
|
305
|
+
"dispatch_triggers": ["review documentation", "check docs style", "review this markdown file"],
|
|
306
|
+
"compatible_subagent_types": ["general-purpose", "documentation", "Explore"],
|
|
307
|
+
"chains_to": [],
|
|
308
|
+
"dispatch_keywords": {
|
|
309
|
+
"primary": ["review", "check", "style", "compliance"],
|
|
310
|
+
"secondary": ["violations", "improvements", "pr review", "markdown"]
|
|
311
|
+
}
|
|
312
|
+
},
|
|
313
|
+
"constraints": {
|
|
314
|
+
"max_context_tokens": 60000,
|
|
315
|
+
"requires_session": false,
|
|
316
|
+
"requires_epic": false
|
|
317
|
+
}
|
|
318
|
+
},
|
|
319
|
+
"ct-skill-creator": {
|
|
320
|
+
"tags": ["skills", "creation", "meta"],
|
|
321
|
+
"status": "active",
|
|
322
|
+
"token_budget": 8000,
|
|
323
|
+
"capabilities": {
|
|
324
|
+
"inputs": ["skill_name", "skill_purpose", "concrete_examples"],
|
|
325
|
+
"outputs": ["skill-directory", "SKILL.md", "skill-resources"],
|
|
326
|
+
"dispatch_triggers": ["create a new skill", "update an existing skill", "skill creation"],
|
|
327
|
+
"compatible_subagent_types": ["general-purpose", "Code"],
|
|
328
|
+
"chains_to": [],
|
|
329
|
+
"dispatch_keywords": {
|
|
330
|
+
"primary": ["skill", "create", "build", "extend"],
|
|
331
|
+
"secondary": ["capabilities", "workflow", "integration", "new skill"]
|
|
332
|
+
}
|
|
333
|
+
},
|
|
334
|
+
"constraints": {
|
|
335
|
+
"max_context_tokens": 80000,
|
|
336
|
+
"requires_session": false,
|
|
337
|
+
"requires_epic": false
|
|
338
|
+
}
|
|
339
|
+
},
|
|
340
|
+
"ct-skill-lookup": {
|
|
341
|
+
"tags": ["skills", "discovery", "prompts-chat"],
|
|
342
|
+
"status": "active",
|
|
343
|
+
"token_budget": 6000,
|
|
344
|
+
"capabilities": {
|
|
345
|
+
"inputs": ["search_query", "skill_id", "category", "tag"],
|
|
346
|
+
"outputs": ["skill-list", "skill-content", "skill-files"],
|
|
347
|
+
"dispatch_triggers": ["find me a skill", "search for skills", "what skills are available"],
|
|
348
|
+
"compatible_subagent_types": ["general-purpose", "Explore"],
|
|
349
|
+
"chains_to": ["ct-skill-creator"],
|
|
350
|
+
"dispatch_keywords": {
|
|
351
|
+
"primary": ["find", "search", "skill", "lookup"],
|
|
352
|
+
"secondary": ["available", "install", "get", "discover"]
|
|
353
|
+
}
|
|
354
|
+
},
|
|
355
|
+
"constraints": {
|
|
356
|
+
"max_context_tokens": 60000,
|
|
357
|
+
"requires_session": false,
|
|
358
|
+
"requires_epic": false
|
|
359
|
+
}
|
|
360
|
+
},
|
|
361
|
+
"ct-contribution": {
|
|
362
|
+
"tags": ["contribution", "consensus", "workflow"],
|
|
363
|
+
"status": "active",
|
|
364
|
+
"token_budget": 6000,
|
|
365
|
+
"capabilities": {
|
|
366
|
+
"inputs": ["TASK_ID", "contribution_type", "context"],
|
|
367
|
+
"outputs": ["contribution-record", "consensus-report"],
|
|
368
|
+
"dispatch_triggers": ["contribution", "contribution protocol", "submit contribution", "consensus workflow"],
|
|
369
|
+
"compatible_subagent_types": ["general-purpose"],
|
|
370
|
+
"chains_to": [],
|
|
371
|
+
"dispatch_keywords": {
|
|
372
|
+
"primary": ["contribution", "consensus", "submit", "decision"],
|
|
373
|
+
"secondary": ["conflict", "weighted", "tracking", "resolution"]
|
|
374
|
+
}
|
|
375
|
+
},
|
|
376
|
+
"constraints": {
|
|
377
|
+
"max_context_tokens": 60000,
|
|
378
|
+
"requires_session": false,
|
|
379
|
+
"requires_epic": false
|
|
380
|
+
}
|
|
381
|
+
},
|
|
382
|
+
"ct-gitbook": {
|
|
383
|
+
"tags": ["documentation", "gitbook", "publishing"],
|
|
384
|
+
"status": "active",
|
|
385
|
+
"token_budget": 8000,
|
|
386
|
+
"capabilities": {
|
|
387
|
+
"inputs": ["site_name", "configuration", "content"],
|
|
388
|
+
"outputs": ["gitbook-config", "documentation-site"],
|
|
389
|
+
"dispatch_triggers": ["gitbook", "docs site", "publish documentation", "git sync"],
|
|
390
|
+
"compatible_subagent_types": ["general-purpose", "Code"],
|
|
391
|
+
"chains_to": [],
|
|
392
|
+
"dispatch_keywords": {
|
|
393
|
+
"primary": ["gitbook", "docs-site", "publish", "sync"],
|
|
394
|
+
"secondary": ["documentation", "site", "migration", "sdk"]
|
|
395
|
+
}
|
|
396
|
+
},
|
|
397
|
+
"constraints": {
|
|
398
|
+
"max_context_tokens": 80000,
|
|
399
|
+
"requires_session": false,
|
|
400
|
+
"requires_epic": false
|
|
401
|
+
}
|
|
402
|
+
}
|
|
403
|
+
}
|
|
404
|
+
}
|
package/index.d.ts
ADDED
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
// --- Skill Entry (from skills.json) ---
|
|
2
|
+
|
|
3
|
+
export interface SkillEntry {
|
|
4
|
+
name: string;
|
|
5
|
+
description: string;
|
|
6
|
+
version: string;
|
|
7
|
+
path: string;
|
|
8
|
+
references: string[];
|
|
9
|
+
core: boolean;
|
|
10
|
+
category: 'core' | 'recommended' | 'specialist' | 'composition' | 'meta';
|
|
11
|
+
tier: number;
|
|
12
|
+
protocol: string | null;
|
|
13
|
+
dependencies: string[];
|
|
14
|
+
sharedResources: string[];
|
|
15
|
+
compatibility: string[];
|
|
16
|
+
license: string;
|
|
17
|
+
metadata: Record<string, unknown>;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
// --- Manifest types ---
|
|
21
|
+
|
|
22
|
+
export interface ManifestSkill {
|
|
23
|
+
name: string;
|
|
24
|
+
version: string;
|
|
25
|
+
description: string;
|
|
26
|
+
path: string;
|
|
27
|
+
tags: string[];
|
|
28
|
+
status: string;
|
|
29
|
+
tier: number;
|
|
30
|
+
token_budget: number;
|
|
31
|
+
references: string[];
|
|
32
|
+
capabilities: {
|
|
33
|
+
inputs: string[];
|
|
34
|
+
outputs: string[];
|
|
35
|
+
dependencies: string[];
|
|
36
|
+
dispatch_triggers: string[];
|
|
37
|
+
compatible_subagent_types: string[];
|
|
38
|
+
chains_to: string[];
|
|
39
|
+
dispatch_keywords: {
|
|
40
|
+
primary: string[];
|
|
41
|
+
secondary: string[];
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
constraints: {
|
|
45
|
+
max_context_tokens: number;
|
|
46
|
+
requires_session: boolean;
|
|
47
|
+
requires_epic: boolean;
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export interface DispatchMatrix {
|
|
52
|
+
by_task_type: Record<string, string>;
|
|
53
|
+
by_keyword: Record<string, string>;
|
|
54
|
+
by_protocol: Record<string, string>;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
export interface Manifest {
|
|
58
|
+
$schema: string;
|
|
59
|
+
_meta: Record<string, unknown>;
|
|
60
|
+
dispatch_matrix: DispatchMatrix;
|
|
61
|
+
skills: ManifestSkill[];
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
// --- Profile types ---
|
|
65
|
+
|
|
66
|
+
export interface ProfileDefinition {
|
|
67
|
+
name: string;
|
|
68
|
+
description: string;
|
|
69
|
+
extends?: string;
|
|
70
|
+
skills: string[];
|
|
71
|
+
includeShared?: boolean;
|
|
72
|
+
includeProtocols: string[];
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
// --- Validation types ---
|
|
76
|
+
|
|
77
|
+
export interface ValidationIssue {
|
|
78
|
+
level: 'error' | 'warn';
|
|
79
|
+
field: string;
|
|
80
|
+
message: string;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
export interface ValidationResult {
|
|
84
|
+
valid: boolean;
|
|
85
|
+
issues: ValidationIssue[];
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
// --- Existing exports (preserved) ---
|
|
89
|
+
|
|
90
|
+
/** All skill entries from skills.json */
|
|
91
|
+
export declare const skills: SkillEntry[];
|
|
92
|
+
|
|
93
|
+
/** Parsed manifest.json dispatch registry */
|
|
94
|
+
export declare const manifest: Manifest;
|
|
95
|
+
|
|
96
|
+
/** Parsed _shared/placeholders.json */
|
|
97
|
+
export declare const shared: Record<string, unknown>;
|
|
98
|
+
|
|
99
|
+
/** List all skill names */
|
|
100
|
+
export declare function listSkills(): string[];
|
|
101
|
+
|
|
102
|
+
/** Get skill metadata from skills.json by name */
|
|
103
|
+
export declare function getSkill(name: string): SkillEntry | undefined;
|
|
104
|
+
|
|
105
|
+
/** Resolve absolute path to a skill's SKILL.md file */
|
|
106
|
+
export declare function getSkillPath(name: string): string;
|
|
107
|
+
|
|
108
|
+
/** Resolve absolute path to a skill's directory */
|
|
109
|
+
export declare function getSkillDir(name: string): string;
|
|
110
|
+
|
|
111
|
+
/** Get the dispatch matrix from manifest.json */
|
|
112
|
+
export declare function getDispatchMatrix(): DispatchMatrix;
|
|
113
|
+
|
|
114
|
+
/** Read a skill's SKILL.md content as a string */
|
|
115
|
+
export declare function readSkillContent(name: string): string;
|
|
116
|
+
|
|
117
|
+
// --- New: Core & Dependency awareness ---
|
|
118
|
+
|
|
119
|
+
/** Get all skills where core === true */
|
|
120
|
+
export declare function getCoreSkills(): SkillEntry[];
|
|
121
|
+
|
|
122
|
+
/** Get skills filtered by category */
|
|
123
|
+
export declare function getSkillsByCategory(category: SkillEntry['category']): SkillEntry[];
|
|
124
|
+
|
|
125
|
+
/** Get direct dependency names for a skill */
|
|
126
|
+
export declare function getSkillDependencies(name: string): string[];
|
|
127
|
+
|
|
128
|
+
/** Resolve full dependency tree for a set of skill names (includes transitive deps) */
|
|
129
|
+
export declare function resolveDependencyTree(names: string[]): string[];
|
|
130
|
+
|
|
131
|
+
// --- New: Profile-based selection ---
|
|
132
|
+
|
|
133
|
+
/** List available profile names */
|
|
134
|
+
export declare function listProfiles(): string[];
|
|
135
|
+
|
|
136
|
+
/** Get a profile definition by name */
|
|
137
|
+
export declare function getProfile(name: string): ProfileDefinition | undefined;
|
|
138
|
+
|
|
139
|
+
/** Resolve a profile to its full skill list (follows extends, resolves deps) */
|
|
140
|
+
export declare function resolveProfile(name: string): string[];
|
|
141
|
+
|
|
142
|
+
// --- New: Shared resources ---
|
|
143
|
+
|
|
144
|
+
/** List available shared resource names (files in _shared/) */
|
|
145
|
+
export declare function listSharedResources(): string[];
|
|
146
|
+
|
|
147
|
+
/** Get absolute path to a shared resource file */
|
|
148
|
+
export declare function getSharedResourcePath(name: string): string | undefined;
|
|
149
|
+
|
|
150
|
+
/** Read a shared resource file content */
|
|
151
|
+
export declare function readSharedResource(name: string): string | undefined;
|
|
152
|
+
|
|
153
|
+
// --- New: Protocols ---
|
|
154
|
+
|
|
155
|
+
/** List available protocol names */
|
|
156
|
+
export declare function listProtocols(): string[];
|
|
157
|
+
|
|
158
|
+
/** Get absolute path to a protocol file */
|
|
159
|
+
export declare function getProtocolPath(name: string): string | undefined;
|
|
160
|
+
|
|
161
|
+
/** Read a protocol file content */
|
|
162
|
+
export declare function readProtocol(name: string): string | undefined;
|
|
163
|
+
|
|
164
|
+
// --- New: Validation ---
|
|
165
|
+
|
|
166
|
+
/** Validate a single skill's frontmatter */
|
|
167
|
+
export declare function validateSkillFrontmatter(name: string): ValidationResult;
|
|
168
|
+
|
|
169
|
+
/** Validate all skills, returns Map of name -> ValidationResult */
|
|
170
|
+
export declare function validateAll(): Map<string, ValidationResult>;
|
|
171
|
+
|
|
172
|
+
// --- New: Package metadata ---
|
|
173
|
+
|
|
174
|
+
/** Package version from package.json */
|
|
175
|
+
export declare const version: string;
|
|
176
|
+
|
|
177
|
+
/** Absolute path to the package root directory */
|
|
178
|
+
export declare const libraryRoot: string;
|