oh-my-codex-cli 0.1.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 (292) hide show
  1. package/.agent/skills/agent-kb/HOW_TO_USE.md +428 -0
  2. package/.agent/skills/agent-kb/README.md +46 -0
  3. package/.agent/skills/agent-kb/SKILL.md +128 -0
  4. package/.agent/skills/agent-kb/references/intelligent-analysis-explained.md +333 -0
  5. package/.agent/skills/agent-kb/references/query-optimization.md +225 -0
  6. package/.agent/skills/aireview/SKILL.md +704 -0
  7. package/.agent/skills/analyze/SKILL.md +81 -0
  8. package/.agent/skills/architect-planner/HOW_TO_USE.md +238 -0
  9. package/.agent/skills/architect-planner/README.md +41 -0
  10. package/.agent/skills/architect-planner/SKILL.md +539 -0
  11. package/.agent/skills/auto-mbti/SKILL.md +291 -0
  12. package/.agent/skills/autopilot/SKILL.md +222 -0
  13. package/.agent/skills/backend-patterns/SKILL.md +602 -0
  14. package/.agent/skills/bdd-generator/README.md +78 -0
  15. package/.agent/skills/bdd-generator/SKILL.md +436 -0
  16. package/.agent/skills/brainstorming/HOW_TO_USE.md +289 -0
  17. package/.agent/skills/brainstorming/README.md +41 -0
  18. package/.agent/skills/brainstorming/SKILL.md +165 -0
  19. package/.agent/skills/build-fix/SKILL.md +190 -0
  20. package/.agent/skills/cancel/SKILL.md +658 -0
  21. package/.agent/skills/checkpoint/SKILL.md +94 -0
  22. package/.agent/skills/code-review/SKILL.md +273 -0
  23. package/.agent/skills/coding-standards/SKILL.md +535 -0
  24. package/.agent/skills/conductor/SKILL.md +128 -0
  25. package/.agent/skills/conductor/commands/conductor/implement.toml +358 -0
  26. package/.agent/skills/conductor/commands/conductor/newTrack.toml +142 -0
  27. package/.agent/skills/conductor/commands/conductor/revert.toml +123 -0
  28. package/.agent/skills/conductor/commands/conductor/setup.toml +429 -0
  29. package/.agent/skills/conductor/commands/conductor/status.toml +57 -0
  30. package/.agent/skills/conductor/scripts/install.sh +89 -0
  31. package/.agent/skills/conductor/templates/code_styleguides/csharp.md +115 -0
  32. package/.agent/skills/conductor/templates/code_styleguides/dart.md +238 -0
  33. package/.agent/skills/conductor/templates/code_styleguides/general.md +23 -0
  34. package/.agent/skills/conductor/templates/code_styleguides/go.md +48 -0
  35. package/.agent/skills/conductor/templates/code_styleguides/html-css.md +49 -0
  36. package/.agent/skills/conductor/templates/code_styleguides/javascript.md +51 -0
  37. package/.agent/skills/conductor/templates/code_styleguides/python.md +37 -0
  38. package/.agent/skills/conductor/templates/code_styleguides/typescript.md +43 -0
  39. package/.agent/skills/conductor/templates/rules/README.md +23 -0
  40. package/.agent/skills/conductor/templates/rules/agents.md +49 -0
  41. package/.agent/skills/conductor/templates/rules/coding-style.md +70 -0
  42. package/.agent/skills/conductor/templates/rules/dev.md +20 -0
  43. package/.agent/skills/conductor/templates/rules/git-workflow.md +45 -0
  44. package/.agent/skills/conductor/templates/rules/hooks.md +6 -0
  45. package/.agent/skills/conductor/templates/rules/patterns.md +55 -0
  46. package/.agent/skills/conductor/templates/rules/performance.md +47 -0
  47. package/.agent/skills/conductor/templates/rules/research.md +26 -0
  48. package/.agent/skills/conductor/templates/rules/review.md +22 -0
  49. package/.agent/skills/conductor/templates/rules/security.md +36 -0
  50. package/.agent/skills/conductor/templates/rules/testing.md +30 -0
  51. package/.agent/skills/conductor/templates/workflow.md +333 -0
  52. package/.agent/skills/consensus/HOW_TO_USE.md +191 -0
  53. package/.agent/skills/consensus/README.md +41 -0
  54. package/.agent/skills/consensus/SKILL.md +317 -0
  55. package/.agent/skills/content-research-writer/SKILL.md +537 -0
  56. package/.agent/skills/debug-analysis/SKILL.md +331 -0
  57. package/.agent/skills/deepinit/SKILL.md +347 -0
  58. package/.agent/skills/deepsearch/SKILL.md +56 -0
  59. package/.agent/skills/doctor/SKILL.md +158 -0
  60. package/.agent/skills/drawio/EXAMPLES.md +382 -0
  61. package/.agent/skills/drawio/QUICK_START.md +237 -0
  62. package/.agent/skills/drawio/README.md +315 -0
  63. package/.agent/skills/drawio/SETUP_GUIDE.md +254 -0
  64. package/.agent/skills/drawio/SKILL.md +1176 -0
  65. package/.agent/skills/e2e/SKILL.md +396 -0
  66. package/.agent/skills/ecomode/SKILL.md +160 -0
  67. package/.agent/skills/electron-driver/SKILL.md +144 -0
  68. package/.agent/skills/electron-driver/scripts/driver-template.js +71 -0
  69. package/.agent/skills/eval/SKILL.md +140 -0
  70. package/.agent/skills/eval-harness/SKILL.md +242 -0
  71. package/.agent/skills/evolve/SKILL.md +213 -0
  72. package/.agent/skills/frontend-design/SKILL.md +42 -0
  73. package/.agent/skills/frontend-patterns/SKILL.md +646 -0
  74. package/.agent/skills/frontend-ui-ux/SKILL.md +70 -0
  75. package/.agent/skills/git-master/SKILL.md +75 -0
  76. package/.agent/skills/help/SKILL.md +89 -0
  77. package/.agent/skills/iterative-retrieval/SKILL.md +217 -0
  78. package/.agent/skills/local-skills-setup/SKILL.md +483 -0
  79. package/.agent/skills/log-analyzer/SKILL.md +187 -0
  80. package/.agent/skills/mcp-setup/SKILL.md +226 -0
  81. package/.agent/skills/multi-model-research/HOW_TO_USE.md +614 -0
  82. package/.agent/skills/multi-model-research/README.md +233 -0
  83. package/.agent/skills/multi-model-research/SKILL.md +541 -0
  84. package/.agent/skills/multi-model-research/references/troubleshooting.md +415 -0
  85. package/.agent/skills/note/SKILL.md +80 -0
  86. package/.agent/skills/omc-setup/SKILL.md +219 -0
  87. package/.agent/skills/orchestrate/SKILL.md +620 -0
  88. package/.agent/skills/patent-workflow/IMPLEMENTATION_SUMMARY.md +500 -0
  89. package/.agent/skills/patent-workflow/README.md +455 -0
  90. package/.agent/skills/patent-workflow/SKILL.md +1036 -0
  91. package/.agent/skills/patent-workflow/tools/irr_checker.py +260 -0
  92. package/.agent/skills/patent-workflow/tools/sample_terminology.json +49 -0
  93. package/.agent/skills/patent-workflow/tools/term_checker.py +355 -0
  94. package/.agent/skills/pattern-recognition/SKILL.md +792 -0
  95. package/.agent/skills/pipeline/SKILL.md +448 -0
  96. package/.agent/skills/plan/SKILL.md +309 -0
  97. package/.agent/skills/planning-methodology/SKILL.md +370 -0
  98. package/.agent/skills/planning-with-files/SKILL.md +210 -0
  99. package/.agent/skills/planning-with-files/examples.md +202 -0
  100. package/.agent/skills/planning-with-files/reference.md +218 -0
  101. package/.agent/skills/planning-with-files/scripts/check-complete.ps1 +42 -0
  102. package/.agent/skills/planning-with-files/scripts/check-complete.sh +44 -0
  103. package/.agent/skills/planning-with-files/scripts/init-session.ps1 +120 -0
  104. package/.agent/skills/planning-with-files/scripts/init-session.sh +120 -0
  105. package/.agent/skills/planning-with-files/scripts/session-catchup.py +208 -0
  106. package/.agent/skills/planning-with-files/templates/findings.md +95 -0
  107. package/.agent/skills/planning-with-files/templates/progress.md +114 -0
  108. package/.agent/skills/planning-with-files/templates/task_plan.md +132 -0
  109. package/.agent/skills/project-analyze/CLAUDE.md +18 -0
  110. package/.agent/skills/project-analyze/HOW_TO_USE.md +145 -0
  111. package/.agent/skills/project-analyze/README.md +42 -0
  112. package/.agent/skills/project-analyze/SKILL.md +289 -0
  113. package/.agent/skills/project-analyze/SKILL.md.backup +287 -0
  114. package/.agent/skills/project-analyze/SKILL.md.backup_20260105_093646 +287 -0
  115. package/.agent/skills/project-analyze/assets/analysis-report-template.md +433 -0
  116. package/.agent/skills/project-analyze/references/analysis-patterns.md +422 -0
  117. package/.agent/skills/project-analyze/references/projectmind-explained.md +535 -0
  118. package/.agent/skills/project-session-manager/SKILL.md +428 -0
  119. package/.agent/skills/project-session-manager/lib/config.sh +86 -0
  120. package/.agent/skills/project-session-manager/lib/parse.sh +121 -0
  121. package/.agent/skills/project-session-manager/lib/session.sh +132 -0
  122. package/.agent/skills/project-session-manager/lib/tmux.sh +103 -0
  123. package/.agent/skills/project-session-manager/lib/worktree.sh +171 -0
  124. package/.agent/skills/project-session-manager/psm.sh +629 -0
  125. package/.agent/skills/project-session-manager/templates/feature.md +56 -0
  126. package/.agent/skills/project-session-manager/templates/issue-fix.md +57 -0
  127. package/.agent/skills/project-session-manager/templates/pr-review.md +65 -0
  128. package/.agent/skills/project-session-manager/templates/projects.json +19 -0
  129. package/.agent/skills/quality-check/HOW_TO_USE.md +171 -0
  130. package/.agent/skills/quality-check/README.md +50 -0
  131. package/.agent/skills/quality-check/SKILL.md +240 -0
  132. package/.agent/skills/quality-check/SKILL.md.backup +238 -0
  133. package/.agent/skills/quality-check/SKILL.md.backup_20260105_093646 +238 -0
  134. package/.agent/skills/quality-check/assets/quality-report-template.md +437 -0
  135. package/.agent/skills/quality-check/references/refactoring-patterns.md +550 -0
  136. package/.agent/skills/quality-check/references/scoring-criteria.md +454 -0
  137. package/.agent/skills/quality-validation/SKILL.md +519 -0
  138. package/.agent/skills/quality-validation/SKILL.md.backup +573 -0
  139. package/.agent/skills/quality-validation/SKILL.md.backup_20260105_093646 +573 -0
  140. package/.agent/skills/ralph/SKILL.md +236 -0
  141. package/.agent/skills/ralph-init/SKILL.md +78 -0
  142. package/.agent/skills/ralplan/SKILL.md +58 -0
  143. package/.agent/skills/refactor-clean/SKILL.md +49 -0
  144. package/.agent/skills/release/SKILL.md +84 -0
  145. package/.agent/skills/research/SKILL.md +526 -0
  146. package/.agent/skills/research-methodology/SKILL.md +268 -0
  147. package/.agent/skills/review/SKILL.md +53 -0
  148. package/.agent/skills/security-review/SKILL.md +509 -0
  149. package/.agent/skills/security-review/cloud-infrastructure-security.md +361 -0
  150. package/.agent/skills/setup-pm/SKILL.md +102 -0
  151. package/.agent/skills/skill/SKILL.md +424 -0
  152. package/.agent/skills/skill-create/SKILL.md +209 -0
  153. package/.agent/skills/skill-debugger/HOW_TO_USE.md +244 -0
  154. package/.agent/skills/skill-debugger/README.md +44 -0
  155. package/.agent/skills/skill-debugger/SKILL.md +326 -0
  156. package/.agent/skills/skill-debugger/diagnostic_checklist.md +115 -0
  157. package/.agent/skills/skill-development/SKILL.md +661 -0
  158. package/.agent/skills/skill-development/references/skill-creator-original.md +209 -0
  159. package/.agent/skills/skill-doc-generator/README.md +37 -0
  160. package/.agent/skills/skill-doc-generator/SKILL.md +331 -0
  161. package/.agent/skills/skill-quality-analyzer/HOW_TO_USE.md +243 -0
  162. package/.agent/skills/skill-quality-analyzer/README.md +61 -0
  163. package/.agent/skills/skill-quality-analyzer/SKILL.md +247 -0
  164. package/.agent/skills/skill-quality-analyzer/analyzer.py +209 -0
  165. package/.agent/skills/skill-quality-analyzer/expected_output.json +81 -0
  166. package/.agent/skills/skill-quality-analyzer/sample_input.json +9 -0
  167. package/.agent/skills/skill-tester/README.md +46 -0
  168. package/.agent/skills/skill-tester/SKILL.md +345 -0
  169. package/.agent/skills/start-dev/SKILL.md +701 -0
  170. package/.agent/skills/swarm/SKILL.md +691 -0
  171. package/.agent/skills/task-kb-lookup/SKILL.md +211 -0
  172. package/.agent/skills/task-kb-record/SKILL.md +417 -0
  173. package/.agent/skills/tdd/SKILL.md +446 -0
  174. package/.agent/skills/tdd-generator/DEMO.md +516 -0
  175. package/.agent/skills/tdd-generator/README.md +89 -0
  176. package/.agent/skills/tdd-generator/SKILL.md +278 -0
  177. package/.agent/skills/tdd-workflow/SKILL.md +424 -0
  178. package/.agent/skills/test-coverage/SKILL.md +48 -0
  179. package/.agent/skills/thinkdeep/HOW_TO_USE.md +183 -0
  180. package/.agent/skills/thinkdeep/README.md +41 -0
  181. package/.agent/skills/thinkdeep/SKILL.md +343 -0
  182. package/.agent/skills/ui-ux-pro-max/SKILL.md +228 -0
  183. package/.agent/skills/ui-ux-pro-max/data/charts.csv +26 -0
  184. package/.agent/skills/ui-ux-pro-max/data/colors.csv +97 -0
  185. package/.agent/skills/ui-ux-pro-max/data/landing.csv +31 -0
  186. package/.agent/skills/ui-ux-pro-max/data/products.csv +97 -0
  187. package/.agent/skills/ui-ux-pro-max/data/prompts.csv +24 -0
  188. package/.agent/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
  189. package/.agent/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
  190. package/.agent/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
  191. package/.agent/skills/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
  192. package/.agent/skills/ui-ux-pro-max/data/stacks/react.csv +54 -0
  193. package/.agent/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
  194. package/.agent/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
  195. package/.agent/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -0
  196. package/.agent/skills/ui-ux-pro-max/data/styles.csv +59 -0
  197. package/.agent/skills/ui-ux-pro-max/data/typography.csv +58 -0
  198. package/.agent/skills/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
  199. package/.agent/skills/ui-ux-pro-max/scripts/core.py +236 -0
  200. package/.agent/skills/ui-ux-pro-max/scripts/search.py +61 -0
  201. package/.agent/skills/ultrapilot/SKILL.md +647 -0
  202. package/.agent/skills/ultraqa/SKILL.md +152 -0
  203. package/.agent/skills/ultrawork/SKILL.md +123 -0
  204. package/.agent/skills/update-codemaps/SKILL.md +38 -0
  205. package/.agent/skills/update-docs/SKILL.md +52 -0
  206. package/.agent/skills/verification-loop/SKILL.md +140 -0
  207. package/.agent/skills/verify/SKILL.md +80 -0
  208. package/.agent/skills/writer-memory/SKILL.md +459 -0
  209. package/.agent/skills/writer-memory/lib/character-tracker.ts +338 -0
  210. package/.agent/skills/writer-memory/lib/memory-manager.ts +804 -0
  211. package/.agent/skills/writer-memory/lib/relationship-graph.ts +400 -0
  212. package/.agent/skills/writer-memory/lib/scene-organizer.ts +544 -0
  213. package/.agent/skills/writer-memory/lib/synopsis-builder.ts +339 -0
  214. package/.agent/skills/writer-memory/templates/synopsis-template.md +46 -0
  215. package/.governance/skill-lint.allowlist +4 -0
  216. package/.governance/skill-llm.allowlist +4 -0
  217. package/AGENTS.md +59 -0
  218. package/LICENSE +21 -0
  219. package/README.md +169 -0
  220. package/README.zh.md +145 -0
  221. package/bin/omcodex.js +8 -0
  222. package/commands/conductor/implement.toml +358 -0
  223. package/commands/conductor/newTrack.toml +142 -0
  224. package/commands/conductor/revert.toml +123 -0
  225. package/commands/conductor/setup.toml +429 -0
  226. package/commands/conductor/status.toml +57 -0
  227. package/docs/ALIGNMENT.md +40 -0
  228. package/docs/CODEX.md +133 -0
  229. package/docs/NOTIFY.md +81 -0
  230. package/docs/SKILL_GOVERNANCE.md +72 -0
  231. package/docs/SKILL_GOVERNANCE_FRAMEWORK.md +182 -0
  232. package/docs/SKILL_GOVERNANCE_FRAMEWORK.zh.md +170 -0
  233. package/package.json +50 -0
  234. package/prompts/architect.md +105 -0
  235. package/prompts/executor.md +134 -0
  236. package/prompts/planner.md +113 -0
  237. package/scripts/check-skill-governance.sh +84 -0
  238. package/scripts/check-skill-llm-governance.js +302 -0
  239. package/scripts/eval-skills.js +217 -0
  240. package/scripts/generate-catalog-docs.js +95 -0
  241. package/scripts/generate-codex-mcp-config.sh +22 -0
  242. package/scripts/install-codex-force.sh +5 -0
  243. package/scripts/install-codex-incremental.sh +5 -0
  244. package/scripts/install-codex.sh +79 -0
  245. package/scripts/notify-dispatch.js +15 -0
  246. package/scripts/setup-package-manager.js +137 -0
  247. package/src/catalog/generated/public-catalog.json +547 -0
  248. package/src/catalog/manifest.json +542 -0
  249. package/src/catalog/reader.js +43 -0
  250. package/src/catalog/schema.js +79 -0
  251. package/src/cli/doctor.js +62 -0
  252. package/src/cli/index.js +85 -0
  253. package/src/cli/notify.js +127 -0
  254. package/src/cli/route.js +43 -0
  255. package/src/cli/setup.js +155 -0
  256. package/src/cli/team.js +125 -0
  257. package/src/config/generator.js +119 -0
  258. package/src/mcp/memory-server.js +241 -0
  259. package/src/mcp/state-server.js +112 -0
  260. package/src/mcp/trace-server.js +168 -0
  261. package/src/notify/dispatch.js +74 -0
  262. package/src/notify/extensibility/dispatcher.js +113 -0
  263. package/src/notify/extensibility/events.js +15 -0
  264. package/src/notify/extensibility/loader.js +54 -0
  265. package/src/router/skill-router.js +90 -0
  266. package/src/team/auto-advance.js +72 -0
  267. package/src/team/orchestrator.js +82 -0
  268. package/src/team/state-store.js +33 -0
  269. package/src/utils/paths.js +33 -0
  270. package/templates/AGENTS.md +15 -0
  271. package/templates/catalog-manifest.json +542 -0
  272. package/templates/code_styleguides/csharp.md +115 -0
  273. package/templates/code_styleguides/dart.md +238 -0
  274. package/templates/code_styleguides/general.md +23 -0
  275. package/templates/code_styleguides/go.md +48 -0
  276. package/templates/code_styleguides/html-css.md +49 -0
  277. package/templates/code_styleguides/javascript.md +51 -0
  278. package/templates/code_styleguides/python.md +37 -0
  279. package/templates/code_styleguides/typescript.md +43 -0
  280. package/templates/rules/README.md +23 -0
  281. package/templates/rules/agents.md +49 -0
  282. package/templates/rules/coding-style.md +70 -0
  283. package/templates/rules/dev.md +20 -0
  284. package/templates/rules/git-workflow.md +45 -0
  285. package/templates/rules/notify.md +6 -0
  286. package/templates/rules/patterns.md +55 -0
  287. package/templates/rules/performance.md +47 -0
  288. package/templates/rules/research.md +26 -0
  289. package/templates/rules/review.md +22 -0
  290. package/templates/rules/security.md +36 -0
  291. package/templates/rules/testing.md +30 -0
  292. package/templates/workflow.md +333 -0
@@ -0,0 +1,542 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "catalogVersion": "2026-02-23",
4
+ "skills": [
5
+ {
6
+ "name": "agent-kb",
7
+ "category": "utility",
8
+ "status": "active",
9
+ "core": false
10
+ },
11
+ {
12
+ "name": "aireview",
13
+ "category": "utility",
14
+ "status": "active",
15
+ "core": false
16
+ },
17
+ {
18
+ "name": "analyze",
19
+ "category": "utility",
20
+ "status": "active",
21
+ "core": false
22
+ },
23
+ {
24
+ "name": "architect-planner",
25
+ "category": "utility",
26
+ "status": "active",
27
+ "core": false
28
+ },
29
+ {
30
+ "name": "auto-mbti",
31
+ "category": "utility",
32
+ "status": "active",
33
+ "core": false
34
+ },
35
+ {
36
+ "name": "autopilot",
37
+ "category": "execution",
38
+ "status": "active",
39
+ "core": true
40
+ },
41
+ {
42
+ "name": "backend-patterns",
43
+ "category": "utility",
44
+ "status": "active",
45
+ "core": false
46
+ },
47
+ {
48
+ "name": "bdd-generator",
49
+ "category": "utility",
50
+ "status": "active",
51
+ "core": false
52
+ },
53
+ {
54
+ "name": "brainstorming",
55
+ "category": "utility",
56
+ "status": "active",
57
+ "core": false
58
+ },
59
+ {
60
+ "name": "build-fix",
61
+ "category": "shortcut",
62
+ "status": "active",
63
+ "core": false
64
+ },
65
+ {
66
+ "name": "cancel",
67
+ "category": "utility",
68
+ "status": "active",
69
+ "core": false
70
+ },
71
+ {
72
+ "name": "checkpoint",
73
+ "category": "utility",
74
+ "status": "active",
75
+ "core": false
76
+ },
77
+ {
78
+ "name": "code-review",
79
+ "category": "shortcut",
80
+ "status": "active",
81
+ "core": false
82
+ },
83
+ {
84
+ "name": "coding-standards",
85
+ "category": "utility",
86
+ "status": "active",
87
+ "core": false
88
+ },
89
+ {
90
+ "name": "conductor",
91
+ "category": "utility",
92
+ "status": "active",
93
+ "core": false
94
+ },
95
+ {
96
+ "name": "consensus",
97
+ "category": "utility",
98
+ "status": "active",
99
+ "core": false
100
+ },
101
+ {
102
+ "name": "content-research-writer",
103
+ "category": "utility",
104
+ "status": "active",
105
+ "core": false
106
+ },
107
+ {
108
+ "name": "debug-analysis",
109
+ "category": "utility",
110
+ "status": "active",
111
+ "core": false
112
+ },
113
+ {
114
+ "name": "deepinit",
115
+ "category": "utility",
116
+ "status": "active",
117
+ "core": false
118
+ },
119
+ {
120
+ "name": "deepsearch",
121
+ "category": "utility",
122
+ "status": "active",
123
+ "core": false
124
+ },
125
+ {
126
+ "name": "doctor",
127
+ "category": "utility",
128
+ "status": "active",
129
+ "core": false
130
+ },
131
+ {
132
+ "name": "drawio",
133
+ "category": "utility",
134
+ "status": "active",
135
+ "core": false
136
+ },
137
+ {
138
+ "name": "e2e",
139
+ "category": "utility",
140
+ "status": "active",
141
+ "core": false
142
+ },
143
+ {
144
+ "name": "ecomode",
145
+ "category": "utility",
146
+ "status": "active",
147
+ "core": false
148
+ },
149
+ {
150
+ "name": "electron-driver",
151
+ "category": "utility",
152
+ "status": "active",
153
+ "core": false
154
+ },
155
+ {
156
+ "name": "eval",
157
+ "category": "utility",
158
+ "status": "active",
159
+ "core": false
160
+ },
161
+ {
162
+ "name": "eval-harness",
163
+ "category": "utility",
164
+ "status": "active",
165
+ "core": false
166
+ },
167
+ {
168
+ "name": "evolve",
169
+ "category": "utility",
170
+ "status": "active",
171
+ "core": false
172
+ },
173
+ {
174
+ "name": "frontend-design",
175
+ "category": "utility",
176
+ "status": "active",
177
+ "core": false
178
+ },
179
+ {
180
+ "name": "frontend-patterns",
181
+ "category": "utility",
182
+ "status": "active",
183
+ "core": false
184
+ },
185
+ {
186
+ "name": "frontend-ui-ux",
187
+ "category": "utility",
188
+ "status": "active",
189
+ "core": false
190
+ },
191
+ {
192
+ "name": "git-master",
193
+ "category": "utility",
194
+ "status": "active",
195
+ "core": false
196
+ },
197
+ {
198
+ "name": "help",
199
+ "category": "utility",
200
+ "status": "active",
201
+ "core": false
202
+ },
203
+ {
204
+ "name": "iterative-retrieval",
205
+ "category": "utility",
206
+ "status": "active",
207
+ "core": false
208
+ },
209
+ {
210
+ "name": "local-skills-setup",
211
+ "category": "utility",
212
+ "status": "active",
213
+ "core": false
214
+ },
215
+ {
216
+ "name": "log-analyzer",
217
+ "category": "utility",
218
+ "status": "active",
219
+ "core": false
220
+ },
221
+ {
222
+ "name": "mcp-setup",
223
+ "category": "utility",
224
+ "status": "active",
225
+ "core": false
226
+ },
227
+ {
228
+ "name": "multi-model-research",
229
+ "category": "utility",
230
+ "status": "active",
231
+ "core": false
232
+ },
233
+ {
234
+ "name": "note",
235
+ "category": "utility",
236
+ "status": "active",
237
+ "core": false
238
+ },
239
+ {
240
+ "name": "omc-setup",
241
+ "category": "utility",
242
+ "status": "active",
243
+ "core": false
244
+ },
245
+ {
246
+ "name": "orchestrate",
247
+ "category": "utility",
248
+ "status": "active",
249
+ "core": false
250
+ },
251
+ {
252
+ "name": "patent-workflow",
253
+ "category": "utility",
254
+ "status": "active",
255
+ "core": false
256
+ },
257
+ {
258
+ "name": "pattern-recognition",
259
+ "category": "utility",
260
+ "status": "active",
261
+ "core": false
262
+ },
263
+ {
264
+ "name": "pipeline",
265
+ "category": "utility",
266
+ "status": "active",
267
+ "core": false
268
+ },
269
+ {
270
+ "name": "plan",
271
+ "category": "planning",
272
+ "status": "active",
273
+ "core": true
274
+ },
275
+ {
276
+ "name": "planning-methodology",
277
+ "category": "utility",
278
+ "status": "active",
279
+ "core": false
280
+ },
281
+ {
282
+ "name": "planning-with-files",
283
+ "category": "utility",
284
+ "status": "active",
285
+ "core": false
286
+ },
287
+ {
288
+ "name": "project-analyze",
289
+ "category": "utility",
290
+ "status": "active",
291
+ "core": false
292
+ },
293
+ {
294
+ "name": "project-session-manager",
295
+ "category": "utility",
296
+ "status": "active",
297
+ "core": false
298
+ },
299
+ {
300
+ "name": "quality-check",
301
+ "category": "utility",
302
+ "status": "active",
303
+ "core": false
304
+ },
305
+ {
306
+ "name": "quality-validation",
307
+ "category": "utility",
308
+ "status": "active",
309
+ "core": false
310
+ },
311
+ {
312
+ "name": "ralph",
313
+ "category": "execution",
314
+ "status": "active",
315
+ "core": true
316
+ },
317
+ {
318
+ "name": "ralph-init",
319
+ "category": "utility",
320
+ "status": "active",
321
+ "core": false
322
+ },
323
+ {
324
+ "name": "ralplan",
325
+ "category": "planning",
326
+ "status": "active",
327
+ "core": false
328
+ },
329
+ {
330
+ "name": "refactor-clean",
331
+ "category": "utility",
332
+ "status": "active",
333
+ "core": false
334
+ },
335
+ {
336
+ "name": "release",
337
+ "category": "utility",
338
+ "status": "active",
339
+ "core": false
340
+ },
341
+ {
342
+ "name": "research",
343
+ "category": "utility",
344
+ "status": "active",
345
+ "core": false
346
+ },
347
+ {
348
+ "name": "research-methodology",
349
+ "category": "utility",
350
+ "status": "active",
351
+ "core": false
352
+ },
353
+ {
354
+ "name": "review",
355
+ "category": "utility",
356
+ "status": "active",
357
+ "core": false
358
+ },
359
+ {
360
+ "name": "security-review",
361
+ "category": "shortcut",
362
+ "status": "active",
363
+ "core": false
364
+ },
365
+ {
366
+ "name": "setup-pm",
367
+ "category": "utility",
368
+ "status": "active",
369
+ "core": false
370
+ },
371
+ {
372
+ "name": "skill",
373
+ "category": "utility",
374
+ "status": "active",
375
+ "core": false
376
+ },
377
+ {
378
+ "name": "skill-create",
379
+ "category": "utility",
380
+ "status": "active",
381
+ "core": false
382
+ },
383
+ {
384
+ "name": "skill-debugger",
385
+ "category": "utility",
386
+ "status": "active",
387
+ "core": false
388
+ },
389
+ {
390
+ "name": "skill-development",
391
+ "category": "utility",
392
+ "status": "active",
393
+ "core": false
394
+ },
395
+ {
396
+ "name": "skill-doc-generator",
397
+ "category": "utility",
398
+ "status": "active",
399
+ "core": false
400
+ },
401
+ {
402
+ "name": "skill-quality-analyzer",
403
+ "category": "utility",
404
+ "status": "active",
405
+ "core": false
406
+ },
407
+ {
408
+ "name": "skill-tester",
409
+ "category": "utility",
410
+ "status": "active",
411
+ "core": false
412
+ },
413
+ {
414
+ "name": "start-dev",
415
+ "category": "utility",
416
+ "status": "active",
417
+ "core": false
418
+ },
419
+ {
420
+ "name": "swarm",
421
+ "category": "execution",
422
+ "status": "active",
423
+ "core": true
424
+ },
425
+ {
426
+ "name": "task-kb-lookup",
427
+ "category": "utility",
428
+ "status": "active",
429
+ "core": false
430
+ },
431
+ {
432
+ "name": "task-kb-record",
433
+ "category": "utility",
434
+ "status": "active",
435
+ "core": false
436
+ },
437
+ {
438
+ "name": "tdd",
439
+ "category": "shortcut",
440
+ "status": "active",
441
+ "core": false
442
+ },
443
+ {
444
+ "name": "tdd-generator",
445
+ "category": "utility",
446
+ "status": "active",
447
+ "core": false
448
+ },
449
+ {
450
+ "name": "tdd-workflow",
451
+ "category": "utility",
452
+ "status": "active",
453
+ "core": false
454
+ },
455
+ {
456
+ "name": "test-coverage",
457
+ "category": "utility",
458
+ "status": "active",
459
+ "core": false
460
+ },
461
+ {
462
+ "name": "thinkdeep",
463
+ "category": "utility",
464
+ "status": "active",
465
+ "core": false
466
+ },
467
+ {
468
+ "name": "ui-ux-pro-max",
469
+ "category": "utility",
470
+ "status": "active",
471
+ "core": false
472
+ },
473
+ {
474
+ "name": "ultrapilot",
475
+ "category": "utility",
476
+ "status": "active",
477
+ "core": false
478
+ },
479
+ {
480
+ "name": "ultraqa",
481
+ "category": "execution",
482
+ "status": "active",
483
+ "core": false
484
+ },
485
+ {
486
+ "name": "ultrawork",
487
+ "category": "execution",
488
+ "status": "active",
489
+ "core": true
490
+ },
491
+ {
492
+ "name": "update-codemaps",
493
+ "category": "utility",
494
+ "status": "active",
495
+ "core": false
496
+ },
497
+ {
498
+ "name": "update-docs",
499
+ "category": "utility",
500
+ "status": "active",
501
+ "core": false
502
+ },
503
+ {
504
+ "name": "verification-loop",
505
+ "category": "utility",
506
+ "status": "active",
507
+ "core": false
508
+ },
509
+ {
510
+ "name": "verify",
511
+ "category": "utility",
512
+ "status": "active",
513
+ "core": false
514
+ },
515
+ {
516
+ "name": "writer-memory",
517
+ "category": "utility",
518
+ "status": "active",
519
+ "core": false
520
+ }
521
+ ],
522
+ "agents": [
523
+ {
524
+ "name": "architect",
525
+ "category": "role",
526
+ "status": "active",
527
+ "core": true
528
+ },
529
+ {
530
+ "name": "executor",
531
+ "category": "role",
532
+ "status": "active",
533
+ "core": true
534
+ },
535
+ {
536
+ "name": "planner",
537
+ "category": "role",
538
+ "status": "active",
539
+ "core": true
540
+ }
541
+ ]
542
+ }
@@ -0,0 +1,43 @@
1
+ const fs = require('fs');
2
+ const path = require('path');
3
+ const { validateCatalogManifest, summarizeCatalogCounts } = require('./schema');
4
+
5
+ function resolveManifestPath(root) {
6
+ const candidates = [
7
+ path.join(root, 'templates', 'catalog-manifest.json'),
8
+ path.join(root, 'src', 'catalog', 'manifest.json'),
9
+ ];
10
+
11
+ for (const file of candidates) {
12
+ if (fs.existsSync(file)) return file;
13
+ }
14
+ return null;
15
+ }
16
+
17
+ function readCatalogManifest(root) {
18
+ const manifestPath = resolveManifestPath(root);
19
+ if (!manifestPath) throw new Error('catalog_manifest_missing');
20
+ const raw = JSON.parse(fs.readFileSync(manifestPath, 'utf8'));
21
+ return validateCatalogManifest(raw);
22
+ }
23
+
24
+ function tryReadCatalogManifest(root) {
25
+ try {
26
+ return readCatalogManifest(root);
27
+ } catch {
28
+ return null;
29
+ }
30
+ }
31
+
32
+ function getCatalogHeadlineCounts(root) {
33
+ const manifest = tryReadCatalogManifest(root);
34
+ if (!manifest) return null;
35
+ const counts = summarizeCatalogCounts(manifest);
36
+ return { prompts: counts.promptCount, skills: counts.skillCount };
37
+ }
38
+
39
+ module.exports = {
40
+ readCatalogManifest,
41
+ tryReadCatalogManifest,
42
+ getCatalogHeadlineCounts,
43
+ };
@@ -0,0 +1,79 @@
1
+ const REQUIRED_CORE_SKILLS = new Set(['autopilot', 'ralph', 'ultrawork', 'swarm', 'plan']);
2
+ const STATUSES = new Set(['active', 'alias', 'merged', 'deprecated', 'internal']);
3
+
4
+ function assertString(value, field) {
5
+ if (typeof value !== 'string' || value.trim() === '') {
6
+ throw new Error(`catalog_manifest_invalid:${field}`);
7
+ }
8
+ }
9
+
10
+ function validateCatalogManifest(input) {
11
+ if (!input || typeof input !== 'object') throw new Error('catalog_manifest_invalid:root');
12
+ if (!Array.isArray(input.skills)) throw new Error('catalog_manifest_invalid:skills');
13
+ if (!Array.isArray(input.agents)) throw new Error('catalog_manifest_invalid:agents');
14
+
15
+ const seen = new Set();
16
+ const skills = input.skills.map((entry, index) => {
17
+ if (!entry || typeof entry !== 'object') throw new Error(`catalog_manifest_invalid:skills[${index}]`);
18
+ assertString(entry.name, `skills[${index}].name`);
19
+ const status = entry.status || 'active';
20
+ if (!STATUSES.has(status)) {
21
+ throw new Error(`catalog_manifest_invalid:skills[${index}].status`);
22
+ }
23
+ if (seen.has(entry.name)) throw new Error(`catalog_manifest_invalid:duplicate_skill:${entry.name}`);
24
+ seen.add(entry.name);
25
+
26
+ return {
27
+ name: entry.name,
28
+ category: entry.category || 'utility',
29
+ status,
30
+ canonical: typeof entry.canonical === 'string' ? entry.canonical : undefined,
31
+ core: entry.core === true,
32
+ };
33
+ });
34
+
35
+ for (const coreSkill of REQUIRED_CORE_SKILLS) {
36
+ const found = skills.find((skill) => skill.name === coreSkill && skill.status === 'active');
37
+ if (!found) throw new Error(`catalog_manifest_invalid:missing_core_skill:${coreSkill}`);
38
+ }
39
+
40
+ const agentSeen = new Set();
41
+ const agents = input.agents.map((entry, index) => {
42
+ if (!entry || typeof entry !== 'object') throw new Error(`catalog_manifest_invalid:agents[${index}]`);
43
+ assertString(entry.name, `agents[${index}].name`);
44
+ const status = entry.status || 'active';
45
+ if (!STATUSES.has(status)) {
46
+ throw new Error(`catalog_manifest_invalid:agents[${index}].status`);
47
+ }
48
+ if (agentSeen.has(entry.name)) throw new Error(`catalog_manifest_invalid:duplicate_agent:${entry.name}`);
49
+ agentSeen.add(entry.name);
50
+ return {
51
+ name: entry.name,
52
+ category: entry.category || 'role',
53
+ status,
54
+ canonical: typeof entry.canonical === 'string' ? entry.canonical : undefined,
55
+ core: entry.core === true,
56
+ };
57
+ });
58
+
59
+ return {
60
+ schemaVersion: Number(input.schemaVersion || 1),
61
+ catalogVersion: String(input.catalogVersion || '0.1.0'),
62
+ skills,
63
+ agents,
64
+ };
65
+ }
66
+
67
+ function summarizeCatalogCounts(manifest) {
68
+ return {
69
+ skillCount: manifest.skills.length,
70
+ promptCount: manifest.agents.length,
71
+ activeSkillCount: manifest.skills.filter((skill) => skill.status === 'active').length,
72
+ activeAgentCount: manifest.agents.filter((agent) => agent.status === 'active').length,
73
+ };
74
+ }
75
+
76
+ module.exports = {
77
+ validateCatalogManifest,
78
+ summarizeCatalogCounts,
79
+ };