oh-my-customcodex 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 (351) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +327 -0
  3. package/dist/cli/index.js +32054 -0
  4. package/dist/index.js +5469 -0
  5. package/package.json +89 -0
  6. package/templates/.claude/agents/arch-documenter.md +38 -0
  7. package/templates/.claude/agents/arch-speckit-agent.md +66 -0
  8. package/templates/.claude/agents/be-django-expert.md +47 -0
  9. package/templates/.claude/agents/be-express-expert.md +31 -0
  10. package/templates/.claude/agents/be-fastapi-expert.md +45 -0
  11. package/templates/.claude/agents/be-go-backend-expert.md +45 -0
  12. package/templates/.claude/agents/be-nestjs-expert.md +29 -0
  13. package/templates/.claude/agents/be-springboot-expert.md +42 -0
  14. package/templates/.claude/agents/db-alembic-expert.md +73 -0
  15. package/templates/.claude/agents/db-postgres-expert.md +38 -0
  16. package/templates/.claude/agents/db-redis-expert.md +38 -0
  17. package/templates/.claude/agents/db-supabase-expert.md +37 -0
  18. package/templates/.claude/agents/de-airflow-expert.md +48 -0
  19. package/templates/.claude/agents/de-dbt-expert.md +36 -0
  20. package/templates/.claude/agents/de-kafka-expert.md +83 -0
  21. package/templates/.claude/agents/de-pipeline-expert.md +34 -0
  22. package/templates/.claude/agents/de-snowflake-expert.md +38 -0
  23. package/templates/.claude/agents/de-spark-expert.md +38 -0
  24. package/templates/.claude/agents/fe-design-expert.md +120 -0
  25. package/templates/.claude/agents/fe-flutter-agent.md +48 -0
  26. package/templates/.claude/agents/fe-svelte-agent.md +33 -0
  27. package/templates/.claude/agents/fe-vercel-agent.md +40 -0
  28. package/templates/.claude/agents/fe-vuejs-agent.md +34 -0
  29. package/templates/.claude/agents/infra-aws-expert.md +49 -0
  30. package/templates/.claude/agents/infra-docker-expert.md +49 -0
  31. package/templates/.claude/agents/lang-golang-expert.md +46 -0
  32. package/templates/.claude/agents/lang-java21-expert.md +42 -0
  33. package/templates/.claude/agents/lang-kotlin-expert.md +45 -0
  34. package/templates/.claude/agents/lang-python-expert.md +45 -0
  35. package/templates/.claude/agents/lang-rust-expert.md +45 -0
  36. package/templates/.claude/agents/lang-typescript-expert.md +45 -0
  37. package/templates/.claude/agents/mgr-claude-code-bible.md +62 -0
  38. package/templates/.claude/agents/mgr-creator.md +57 -0
  39. package/templates/.claude/agents/mgr-gitnerd.md +50 -0
  40. package/templates/.claude/agents/mgr-sauron.md +163 -0
  41. package/templates/.claude/agents/mgr-supplier.md +39 -0
  42. package/templates/.claude/agents/mgr-updater.md +40 -0
  43. package/templates/.claude/agents/qa-engineer.md +36 -0
  44. package/templates/.claude/agents/qa-planner.md +78 -0
  45. package/templates/.claude/agents/qa-writer.md +32 -0
  46. package/templates/.claude/agents/sec-codeql-expert.md +56 -0
  47. package/templates/.claude/agents/slack-cli-expert.md +98 -0
  48. package/templates/.claude/agents/souls/lang-golang-expert.soul.md +21 -0
  49. package/templates/.claude/agents/sys-memory-keeper.md +123 -0
  50. package/templates/.claude/agents/sys-naggy.md +76 -0
  51. package/templates/.claude/agents/tool-bun-expert.md +26 -0
  52. package/templates/.claude/agents/tool-npm-expert.md +31 -0
  53. package/templates/.claude/agents/tool-optimizer.md +37 -0
  54. package/templates/.claude/agents/wiki-curator.md +72 -0
  55. package/templates/.claude/config/required-plugins.json +30 -0
  56. package/templates/.claude/contexts/dev.md +20 -0
  57. package/templates/.claude/contexts/ecomode.md +110 -0
  58. package/templates/.claude/contexts/index.yaml +41 -0
  59. package/templates/.claude/contexts/research.md +28 -0
  60. package/templates/.claude/contexts/review.md +23 -0
  61. package/templates/.claude/hooks/hooks.json +533 -0
  62. package/templates/.claude/hooks/scripts/adaptive-harness-scan.sh +45 -0
  63. package/templates/.claude/hooks/scripts/agent-start-recorder.sh +40 -0
  64. package/templates/.claude/hooks/scripts/agent-teams-advisor.sh +76 -0
  65. package/templates/.claude/hooks/scripts/audit-log.sh +64 -0
  66. package/templates/.claude/hooks/scripts/auto-continue-guard.sh +33 -0
  67. package/templates/.claude/hooks/scripts/content-hash-validator.sh +75 -0
  68. package/templates/.claude/hooks/scripts/context-budget-advisor.sh +107 -0
  69. package/templates/.claude/hooks/scripts/cost-cap-advisor.sh +71 -0
  70. package/templates/.claude/hooks/scripts/cwd-change-detector.sh +36 -0
  71. package/templates/.claude/hooks/scripts/eval-core-batch-save.sh +46 -0
  72. package/templates/.claude/hooks/scripts/feedback-collector.sh +92 -0
  73. package/templates/.claude/hooks/scripts/file-change-validator.sh +26 -0
  74. package/templates/.claude/hooks/scripts/git-delegation-guard.sh +57 -0
  75. package/templates/.claude/hooks/scripts/model-escalation-advisor.sh +106 -0
  76. package/templates/.claude/hooks/scripts/omcodex-auto-update.sh +4 -0
  77. package/templates/.claude/hooks/scripts/omcustom-auto-update.sh +177 -0
  78. package/templates/.claude/hooks/scripts/rtk-intercept.sh +77 -0
  79. package/templates/.claude/hooks/scripts/rule-deletion-guard.sh +60 -0
  80. package/templates/.claude/hooks/scripts/schema-validator.sh +106 -0
  81. package/templates/.claude/hooks/scripts/secret-filter.sh +100 -0
  82. package/templates/.claude/hooks/scripts/session-autofix-prompt.sh +34 -0
  83. package/templates/.claude/hooks/scripts/session-autofix.sh +146 -0
  84. package/templates/.claude/hooks/scripts/session-env-check.sh +254 -0
  85. package/templates/.claude/hooks/scripts/skill-extractor-analyzer.sh +49 -0
  86. package/templates/.claude/hooks/scripts/stage-blocker.sh +16 -0
  87. package/templates/.claude/hooks/scripts/stale-todo-scanner.sh +91 -0
  88. package/templates/.claude/hooks/scripts/stall-detection-advisor.sh +112 -0
  89. package/templates/.claude/hooks/scripts/stop-console-audit.sh +46 -0
  90. package/templates/.claude/hooks/scripts/stuck-detector.sh +199 -0
  91. package/templates/.claude/hooks/scripts/task-outcome-recorder.sh +119 -0
  92. package/templates/.claude/hooks/scripts/task-state-precompact.sh +58 -0
  93. package/templates/.claude/hooks/scripts/user-prompt-preprocessor.sh +32 -0
  94. package/templates/.claude/hooks/skill-count-reminder.sh +34 -0
  95. package/templates/.claude/install-hooks.sh +100 -0
  96. package/templates/.claude/ontology/agents.yaml +546 -0
  97. package/templates/.claude/ontology/graphs/agent-skill.json +102 -0
  98. package/templates/.claude/ontology/graphs/full-graph.json +629 -0
  99. package/templates/.claude/ontology/graphs/routing.json +112 -0
  100. package/templates/.claude/ontology/graphs/skill-rule.json +78 -0
  101. package/templates/.claude/ontology/rules.yaml +251 -0
  102. package/templates/.claude/ontology/schema.yaml +144 -0
  103. package/templates/.claude/ontology/skills.yaml +575 -0
  104. package/templates/.claude/rules/MAY-optimization.md +42 -0
  105. package/templates/.claude/rules/MUST-agent-design.md +340 -0
  106. package/templates/.claude/rules/MUST-agent-identification.md +77 -0
  107. package/templates/.claude/rules/MUST-agent-teams.md +293 -0
  108. package/templates/.claude/rules/MUST-completion-verification.md +112 -0
  109. package/templates/.claude/rules/MUST-continuous-improvement.md +69 -0
  110. package/templates/.claude/rules/MUST-enforcement-policy.md +50 -0
  111. package/templates/.claude/rules/MUST-intent-transparency.md +74 -0
  112. package/templates/.claude/rules/MUST-language-policy.md +28 -0
  113. package/templates/.claude/rules/MUST-orchestrator-coordination.md +399 -0
  114. package/templates/.claude/rules/MUST-parallel-execution.md +184 -0
  115. package/templates/.claude/rules/MUST-permissions.md +32 -0
  116. package/templates/.claude/rules/MUST-safety.md +23 -0
  117. package/templates/.claude/rules/MUST-sync-verification.md +145 -0
  118. package/templates/.claude/rules/MUST-tool-identification.md +97 -0
  119. package/templates/.claude/rules/SHOULD-ecomode.md +123 -0
  120. package/templates/.claude/rules/SHOULD-error-handling.md +33 -0
  121. package/templates/.claude/rules/SHOULD-hud-statusline.md +51 -0
  122. package/templates/.claude/rules/SHOULD-interaction.md +77 -0
  123. package/templates/.claude/rules/SHOULD-memory-integration.md +371 -0
  124. package/templates/.claude/rules/SHOULD-ontology-rag-routing.md +49 -0
  125. package/templates/.claude/rules/SHOULD-wiki-sync.md +73 -0
  126. package/templates/.claude/rules/index.yaml +141 -0
  127. package/templates/.claude/schemas/tool-inputs.json +62 -0
  128. package/templates/.claude/skills/action-validator/SKILL.md +89 -0
  129. package/templates/.claude/skills/adaptive-harness/SKILL.md +335 -0
  130. package/templates/.claude/skills/adversarial-review/SKILL.md +80 -0
  131. package/templates/.claude/skills/agora/SKILL.md +194 -0
  132. package/templates/.claude/skills/airflow-best-practices/SKILL.md +94 -0
  133. package/templates/.claude/skills/alembic-best-practices/SKILL.md +295 -0
  134. package/templates/.claude/skills/ambiguity-gate/SKILL.md +94 -0
  135. package/templates/.claude/skills/analysis/SKILL.md +223 -0
  136. package/templates/.claude/skills/audit-agents/SKILL.md +118 -0
  137. package/templates/.claude/skills/aws-best-practices/SKILL.md +281 -0
  138. package/templates/.claude/skills/claude-code-bible/SKILL.md +93 -0
  139. package/templates/.claude/skills/claude-code-bible/scripts/fetch-docs.js +244 -0
  140. package/templates/.claude/skills/claude-native/SKILL.md +215 -0
  141. package/templates/.claude/skills/codex-exec/SKILL.md +206 -0
  142. package/templates/.claude/skills/codex-exec/scripts/codex-wrapper.cjs +430 -0
  143. package/templates/.claude/skills/create-agent/SKILL.md +94 -0
  144. package/templates/.claude/skills/cve-triage/SKILL.md +91 -0
  145. package/templates/.claude/skills/dag-orchestration/SKILL.md +201 -0
  146. package/templates/.claude/skills/dbt-best-practices/SKILL.md +55 -0
  147. package/templates/.claude/skills/de-lead-routing/SKILL.md +230 -0
  148. package/templates/.claude/skills/deep-plan/SKILL.md +344 -0
  149. package/templates/.claude/skills/deep-verify/SKILL.md +111 -0
  150. package/templates/.claude/skills/dev-lead-routing/SKILL.md +161 -0
  151. package/templates/.claude/skills/dev-refactor/SKILL.md +234 -0
  152. package/templates/.claude/skills/dev-review/SKILL.md +172 -0
  153. package/templates/.claude/skills/django-best-practices/SKILL.md +334 -0
  154. package/templates/.claude/skills/docker-best-practices/SKILL.md +276 -0
  155. package/templates/.claude/skills/evaluator-optimizer/SKILL.md +421 -0
  156. package/templates/.claude/skills/fastapi-best-practices/SKILL.md +271 -0
  157. package/templates/.claude/skills/fix-refs/SKILL.md +109 -0
  158. package/templates/.claude/skills/flutter-best-practices/SKILL.md +325 -0
  159. package/templates/.claude/skills/gemini-exec/SKILL.md +215 -0
  160. package/templates/.claude/skills/gemini-exec/scripts/gemini-wrapper.cjs +485 -0
  161. package/templates/.claude/skills/go-backend-best-practices/SKILL.md +135 -0
  162. package/templates/.claude/skills/go-best-practices/SKILL.md +204 -0
  163. package/templates/.claude/skills/hada-scout/SKILL.md +92 -0
  164. package/templates/.claude/skills/harness-eval/SKILL.md +95 -0
  165. package/templates/.claude/skills/harness-synthesizer/SKILL.md +145 -0
  166. package/templates/.claude/skills/help/SKILL.md +127 -0
  167. package/templates/.claude/skills/idea/SKILL.md +88 -0
  168. package/templates/.claude/skills/impeccable-design/SKILL.md +173 -0
  169. package/templates/.claude/skills/intent-detection/SKILL.md +293 -0
  170. package/templates/.claude/skills/intent-detection/patterns/agent-triggers.yaml +438 -0
  171. package/templates/.claude/skills/java21-best-practices/SKILL.md +190 -0
  172. package/templates/.claude/skills/jinja2-prompts/SKILL.md +86 -0
  173. package/templates/.claude/skills/kafka-best-practices/SKILL.md +53 -0
  174. package/templates/.claude/skills/kotlin-best-practices/SKILL.md +257 -0
  175. package/templates/.claude/skills/lists/SKILL.md +80 -0
  176. package/templates/.claude/skills/memory-management/SKILL.md +196 -0
  177. package/templates/.claude/skills/memory-recall/SKILL.md +172 -0
  178. package/templates/.claude/skills/memory-save/SKILL.md +128 -0
  179. package/templates/.claude/skills/model-escalation/SKILL.md +62 -0
  180. package/templates/.claude/skills/monitoring-setup/SKILL.md +215 -0
  181. package/templates/.claude/skills/multi-model-verification/SKILL.md +130 -0
  182. package/templates/.claude/skills/npm-audit/SKILL.md +74 -0
  183. package/templates/.claude/skills/npm-publish/SKILL.md +65 -0
  184. package/templates/.claude/skills/npm-version/SKILL.md +104 -0
  185. package/templates/.claude/skills/omcodex-auto-improve/SKILL.md +136 -0
  186. package/templates/.claude/skills/omcodex-feedback/SKILL.md +205 -0
  187. package/templates/.claude/skills/omcodex-improve-report/SKILL.md +65 -0
  188. package/templates/.claude/skills/omcodex-loop/SKILL.md +45 -0
  189. package/templates/.claude/skills/omcodex-release-notes/SKILL.md +117 -0
  190. package/templates/.claude/skills/omcodex-takeover/SKILL.md +115 -0
  191. package/templates/.claude/skills/omcodex-web/SKILL.md +95 -0
  192. package/templates/.claude/skills/optimize-analyze/SKILL.md +57 -0
  193. package/templates/.claude/skills/optimize-bundle/SKILL.md +69 -0
  194. package/templates/.claude/skills/optimize-report/SKILL.md +76 -0
  195. package/templates/.claude/skills/peer-messaging/SKILL.md +59 -0
  196. package/templates/.claude/skills/pipeline/SKILL.md +103 -0
  197. package/templates/.claude/skills/pipeline-architecture-patterns/SKILL.md +84 -0
  198. package/templates/.claude/skills/pipeline-guards/SKILL.md +173 -0
  199. package/templates/.claude/skills/post-release-followup/SKILL.md +134 -0
  200. package/templates/.claude/skills/postgres-best-practices/SKILL.md +67 -0
  201. package/templates/.claude/skills/pr-auto-improve/SKILL.md +129 -0
  202. package/templates/.claude/skills/professor-triage/SKILL.md +321 -0
  203. package/templates/.claude/skills/python-best-practices/SKILL.md +223 -0
  204. package/templates/.claude/skills/qa-lead-routing/SKILL.md +104 -0
  205. package/templates/.claude/skills/react-best-practices/SKILL.md +102 -0
  206. package/templates/.claude/skills/reasoning-sandwich/SKILL.md +64 -0
  207. package/templates/.claude/skills/redis-best-practices/SKILL.md +84 -0
  208. package/templates/.claude/skills/release-plan/SKILL.md +207 -0
  209. package/templates/.claude/skills/research/SKILL.md +493 -0
  210. package/templates/.claude/skills/result-aggregation/SKILL.md +165 -0
  211. package/templates/.claude/skills/rtk-exec/SKILL.md +199 -0
  212. package/templates/.claude/skills/rtk-exec/scripts/rtk-wrapper.cjs +377 -0
  213. package/templates/.claude/skills/rust-best-practices/SKILL.md +268 -0
  214. package/templates/.claude/skills/sauron-watch/SKILL.md +239 -0
  215. package/templates/.claude/skills/scout/SKILL.md +250 -0
  216. package/templates/.claude/skills/sdd/SKILL.md +24 -0
  217. package/templates/.claude/skills/sdd-dev/SKILL.md +257 -0
  218. package/templates/.claude/skills/sdd-development/SKILL.md +24 -0
  219. package/templates/.claude/skills/secretary-routing/SKILL.md +132 -0
  220. package/templates/.claude/skills/skill-extractor/SKILL.md +155 -0
  221. package/templates/.claude/skills/skills-sh-search/SKILL.md +210 -0
  222. package/templates/.claude/skills/snowflake-best-practices/SKILL.md +66 -0
  223. package/templates/.claude/skills/spark-best-practices/SKILL.md +53 -0
  224. package/templates/.claude/skills/springboot-best-practices/SKILL.md +74 -0
  225. package/templates/.claude/skills/springboot-best-practices/examples/config-properties-example.java +22 -0
  226. package/templates/.claude/skills/springboot-best-practices/examples/controller-example.java +28 -0
  227. package/templates/.claude/skills/springboot-best-practices/examples/controller-test-example.java +33 -0
  228. package/templates/.claude/skills/springboot-best-practices/examples/entity-example.java +22 -0
  229. package/templates/.claude/skills/springboot-best-practices/examples/exception-handler-example.java +30 -0
  230. package/templates/.claude/skills/springboot-best-practices/examples/repository-example.java +17 -0
  231. package/templates/.claude/skills/springboot-best-practices/examples/repository-test-example.java +23 -0
  232. package/templates/.claude/skills/springboot-best-practices/examples/security-config-example.java +27 -0
  233. package/templates/.claude/skills/springboot-best-practices/examples/service-example.java +33 -0
  234. package/templates/.claude/skills/status/SKILL.md +155 -0
  235. package/templates/.claude/skills/structured-dev-cycle/SKILL.md +200 -0
  236. package/templates/.claude/skills/stuck-recovery/SKILL.md +80 -0
  237. package/templates/.claude/skills/supabase-postgres-best-practices/SKILL.md +100 -0
  238. package/templates/.claude/skills/systematic-debugging/SKILL.md +288 -0
  239. package/templates/.claude/skills/systematic-debugging/condition-based-waiting-example.ts +278 -0
  240. package/templates/.claude/skills/systematic-debugging/condition-based-waiting.md +240 -0
  241. package/templates/.claude/skills/systematic-debugging/defense-in-depth.md +252 -0
  242. package/templates/.claude/skills/systematic-debugging/find-polluter.sh +147 -0
  243. package/templates/.claude/skills/systematic-debugging/root-cause-tracing.md +87 -0
  244. package/templates/.claude/skills/task-decomposition/SKILL.md +197 -0
  245. package/templates/.claude/skills/typescript-best-practices/SKILL.md +322 -0
  246. package/templates/.claude/skills/update-docs/SKILL.md +142 -0
  247. package/templates/.claude/skills/update-external/SKILL.md +169 -0
  248. package/templates/.claude/skills/vercel-deploy/SKILL.md +75 -0
  249. package/templates/.claude/skills/web-design-guidelines/SKILL.md +119 -0
  250. package/templates/.claude/skills/wiki/SKILL.md +426 -0
  251. package/templates/.claude/skills/wiki-rag/SKILL.md +154 -0
  252. package/templates/.claude/skills/worker-reviewer-pipeline/SKILL.md +165 -0
  253. package/templates/.claude/skills/writing-clearly-and-concisely/SKILL.md +66 -0
  254. package/templates/.claude/statusline.sh +380 -0
  255. package/templates/.claude/uninstall-hooks.sh +52 -0
  256. package/templates/.github/workflows/wiki-sync.yml +132 -0
  257. package/templates/AGENTS.md.en +255 -0
  258. package/templates/AGENTS.md.ko +255 -0
  259. package/templates/CLAUDE.md +263 -0
  260. package/templates/CLAUDE.md.en +256 -0
  261. package/templates/CLAUDE.md.ko +256 -0
  262. package/templates/deprecated-files.json +10 -0
  263. package/templates/guides/agents-md-quality/README.md +110 -0
  264. package/templates/guides/airflow/README.md +47 -0
  265. package/templates/guides/alembic/README.md +438 -0
  266. package/templates/guides/aws/common-patterns.md +169 -0
  267. package/templates/guides/aws/index.yaml +26 -0
  268. package/templates/guides/aws/well-architected.md +143 -0
  269. package/templates/guides/cc-token-saver/README.md +97 -0
  270. package/templates/guides/claude-code/01-overview.md +42 -0
  271. package/templates/guides/claude-code/03-tools.md +107 -0
  272. package/templates/guides/claude-code/04-agent-skills.md +90 -0
  273. package/templates/guides/claude-code/05-agent-sdk.md +129 -0
  274. package/templates/guides/claude-code/06-mcp.md +165 -0
  275. package/templates/guides/claude-code/07-prompt-engineering.md +100 -0
  276. package/templates/guides/claude-code/08-testing.md +56 -0
  277. package/templates/guides/claude-code/09-guardrails.md +78 -0
  278. package/templates/guides/claude-code/10-monitoring.md +87 -0
  279. package/templates/guides/claude-code/11-sub-agents.md +159 -0
  280. package/templates/guides/claude-code/12-workflow-patterns.md +182 -0
  281. package/templates/guides/claude-code/13-cli-flags.md +151 -0
  282. package/templates/guides/claude-code/index.yaml +61 -0
  283. package/templates/guides/dbt/README.md +32 -0
  284. package/templates/guides/django-best-practices/README.md +476 -0
  285. package/templates/guides/docker/compose-best-practices.md +284 -0
  286. package/templates/guides/docker/dockerfile-best-practices.md +262 -0
  287. package/templates/guides/docker/index.yaml +26 -0
  288. package/templates/guides/drizzle-orm/README.md +69 -0
  289. package/templates/guides/elements-of-style/elements-of-style.html +2609 -0
  290. package/templates/guides/fastapi/best-practices.md +232 -0
  291. package/templates/guides/fastapi/index.yaml +21 -0
  292. package/templates/guides/flutter/architecture.md +141 -0
  293. package/templates/guides/flutter/fundamentals.md +119 -0
  294. package/templates/guides/flutter/index.yaml +44 -0
  295. package/templates/guides/flutter/performance.md +119 -0
  296. package/templates/guides/flutter/security.md +120 -0
  297. package/templates/guides/flutter/state-management.md +144 -0
  298. package/templates/guides/flutter/testing.md +155 -0
  299. package/templates/guides/git-worktree-workflow/README.md +138 -0
  300. package/templates/guides/go-backend/index.yaml +26 -0
  301. package/templates/guides/go-backend/project-layout.md +243 -0
  302. package/templates/guides/go-backend/uber-style.md +212 -0
  303. package/templates/guides/golang/concurrency.md +282 -0
  304. package/templates/guides/golang/effective-go.md +309 -0
  305. package/templates/guides/golang/error-handling.md +250 -0
  306. package/templates/guides/golang/index.yaml +27 -0
  307. package/templates/guides/hook-data-flow/README.md +135 -0
  308. package/templates/guides/iceberg/README.md +49 -0
  309. package/templates/guides/impeccable-design/color-and-contrast.md +278 -0
  310. package/templates/guides/impeccable-design/index.yaml +12 -0
  311. package/templates/guides/impeccable-design/motion-design.md +390 -0
  312. package/templates/guides/impeccable-design/typography.md +386 -0
  313. package/templates/guides/impeccable-design/ux-writing.md +400 -0
  314. package/templates/guides/index.yaml +265 -0
  315. package/templates/guides/java21/index.yaml +29 -0
  316. package/templates/guides/java21/java-style-guide.md +248 -0
  317. package/templates/guides/java21/modern-java21.md +303 -0
  318. package/templates/guides/kafka/README.md +32 -0
  319. package/templates/guides/kotlin/coding-conventions.md +247 -0
  320. package/templates/guides/kotlin/idioms.md +234 -0
  321. package/templates/guides/kotlin/index.yaml +26 -0
  322. package/templates/guides/multi-model-routing/README.md +101 -0
  323. package/templates/guides/multi-provider-exec/README.md +83 -0
  324. package/templates/guides/postgres/README.md +58 -0
  325. package/templates/guides/python/index.yaml +26 -0
  326. package/templates/guides/python/pep8-style-guide.md +202 -0
  327. package/templates/guides/python/zen-of-python.md +79 -0
  328. package/templates/guides/redis/README.md +50 -0
  329. package/templates/guides/rust/error-handling.md +262 -0
  330. package/templates/guides/rust/index.yaml +26 -0
  331. package/templates/guides/rust/ownership.md +180 -0
  332. package/templates/guides/skill-bundle-design/README.md +106 -0
  333. package/templates/guides/slack-cli/README.md +145 -0
  334. package/templates/guides/snowflake/README.md +32 -0
  335. package/templates/guides/spark/README.md +32 -0
  336. package/templates/guides/springboot/best-practices.md +361 -0
  337. package/templates/guides/springboot/index.yaml +22 -0
  338. package/templates/guides/supabase-postgres/README.md +32 -0
  339. package/templates/guides/supabase-postgres/index.yaml +19 -0
  340. package/templates/guides/typescript/advanced-types.md +225 -0
  341. package/templates/guides/typescript/index.yaml +26 -0
  342. package/templates/guides/typescript/type-system.md +219 -0
  343. package/templates/guides/web-design/accessibility.md +66 -0
  344. package/templates/guides/web-design/index.yaml +20 -0
  345. package/templates/guides/web-design/performance.md +102 -0
  346. package/templates/guides/web-scraping/README.md +926 -0
  347. package/templates/guides/web-scraping/index.yaml +19 -0
  348. package/templates/guides/worktree-lifecycle/README.md +104 -0
  349. package/templates/index.yaml +18 -0
  350. package/templates/manifest.json +49 -0
  351. package/templates/workflows/auto-dev.yaml +46 -0
@@ -0,0 +1,117 @@
1
+ ---
2
+ name: omcodex-release-notes
3
+ description: Generate structured release notes from git history and closed issues within the GPT Codex + OMX session
4
+ scope: harness
5
+ user-invocable: true
6
+ argument-hint: "<version> [--previous-tag <tag>]"
7
+ ---
8
+
9
+ # Release Notes Generator
10
+
11
+ Generate structured release notes directly within the GPT Codex + OMX session, using git history and GitHub issues. No external API calls needed — the current harness analyzes and generates the notes.
12
+
13
+ ## Purpose
14
+
15
+ Replaces the CI-based `release-notes.yml` workflow that previously used Claude API (`ANTHROPIC_API_KEY`). The release notes are now generated in-session and passed directly to `gh release create --notes`.
16
+
17
+ ## Usage
18
+
19
+ ```
20
+ /omcodex-release-notes 0.36.0
21
+ /omcodex-release-notes 0.36.0 --previous-tag v0.35.3
22
+ ```
23
+
24
+ ## Workflow
25
+
26
+ ### Phase 1: Gather Context
27
+
28
+ ```bash
29
+ # 1. Determine previous tag
30
+ PREV_TAG=$(git tag --sort=-version:refname | grep -v "^v${VERSION}$" | head -1)
31
+
32
+ # 2. Get commit history
33
+ git log ${PREV_TAG}..HEAD --pretty=format:"%h %s"
34
+
35
+ # 3. Get changed files
36
+ git diff --name-status ${PREV_TAG}..HEAD
37
+
38
+ # 4. Get closed issues since previous tag
39
+ gh issue list --state closed --search "closed:>$(git log -1 --format=%ci ${PREV_TAG} | cut -d' ' -f1)" --json number,title,labels
40
+ ```
41
+
42
+ ### Phase 2: Classify Changes
43
+
44
+ Categorize commits using Conventional Commits:
45
+
46
+ | Prefix | Category | Emoji |
47
+ |--------|----------|-------|
48
+ | feat: | Features | :rocket: |
49
+ | fix: | Bug Fixes | :bug: |
50
+ | docs: | Documentation | :books: |
51
+ | refactor: | Refactoring | :recycle: |
52
+ | test: | Tests | :test_tube: |
53
+ | chore: | Chores | :wrench: |
54
+ | security | Security | :lock: |
55
+
56
+ ### Phase 3: Generate Notes
57
+
58
+ Output format:
59
+
60
+ ```markdown
61
+ # Release v{VERSION}
62
+
63
+ ## Highlights
64
+ (1-3 key features/changes)
65
+
66
+ ## :rocket: Features
67
+ - **{title}** (#{issue}): {description}
68
+
69
+ ## :bug: Bug Fixes
70
+ - **{title}** (#{issue}): {description}
71
+
72
+ ## :lock: Security
73
+ - {security changes}
74
+
75
+ ## :books: Documentation
76
+ - {doc changes}
77
+
78
+ ## :recycle: Other Changes
79
+ - {other changes}
80
+
81
+ ## Resource Changes
82
+ | Resource | Before | After | Delta |
83
+ |----------|--------|-------|-------|
84
+ | Rules | {n} | {n} | {delta} |
85
+ | Skills | {n} | {n} | {delta} |
86
+ | Agents | {n} | {n} | {delta} |
87
+
88
+ ## Breaking Changes
89
+ {if any, otherwise omit section}
90
+
91
+ ---
92
+ _Release notes generated with oh-my-customcodex_
93
+ ```
94
+
95
+ ### Phase 4: Apply
96
+
97
+ The generated notes can be:
98
+ 1. **Direct**: Passed to `gh release create --notes "{notes}"`
99
+ 2. **File**: Written to `release_notes.md` for review before use
100
+ 3. **Update**: Used with `gh release edit v{VERSION} --notes "{notes}"`
101
+
102
+ ## Integration
103
+
104
+ This skill is designed to be used during the release process:
105
+
106
+ ```
107
+ /omcodex:npm-version patch|minor|major -> version bump
108
+ /omcodex-release-notes {version} -> generate notes
109
+ mgr-gitnerd: gh release create -> create release with notes
110
+ ```
111
+
112
+ ## Notes
113
+
114
+ - No external API keys required
115
+ - Uses git history and gh CLI for data gathering
116
+ - The current harness analyzes and generates notes in-context
117
+ - Resource count changes auto-detected from AGENTS.md history
@@ -0,0 +1,115 @@
1
+ ---
2
+ name: omcodex:takeover
3
+ description: Extract canonical spec from existing agent or skill files
4
+ scope: harness
5
+ user-invocable: true
6
+ argument-hint: "<agent-name>"
7
+ ---
8
+
9
+ # Takeover Skill
10
+
11
+ Extract a canonical specification from an existing agent or skill file. Inspired by codespeak.dev's reverse compilation concept — deriving specs from existing implementations.
12
+
13
+ ## Purpose
14
+
15
+ When an agent or skill has evolved organically without a formal spec, `omcodex:takeover` reverse-engineers a structured specification that captures its intent, invariants, workflow contract, and I/O contract.
16
+
17
+ ## Usage
18
+
19
+ ```
20
+ /omcodex:takeover <agent-name>
21
+ /omcodex:takeover <skill-name>
22
+ ```
23
+
24
+ ## Workflow
25
+
26
+ ### Phase 1: Read Target
27
+
28
+ ```
29
+ 1. Determine target type:
30
+ - Agent: read .codex/agents/<name>.md
31
+ - Skill: read .codex/skills/<name>/SKILL.md
32
+ 2. Parse frontmatter (YAML metadata)
33
+ 3. Parse body (markdown content)
34
+ ```
35
+
36
+ ### Phase 2: Extract Spec Components
37
+
38
+ Extract these components from the target:
39
+
40
+ | Component | Source | Description |
41
+ |-----------|--------|-------------|
42
+ | `intent` | Description field + first paragraph | One-line purpose statement |
43
+ | `invariants` | Rules referenced, constraints mentioned | Things that must always be true |
44
+ | `workflow_contract` | Workflow/stages sections | Input → processing → output steps |
45
+ | `io_contract` | Tools field, input/output patterns | What the agent consumes and produces |
46
+ | `dependencies` | Skills field, guide references | External knowledge required |
47
+ | `boundaries` | Limitations field, disallowedTools | What the agent explicitly cannot do |
48
+
49
+ ### Phase 3: Generate Spec
50
+
51
+ Output structured spec to `.codex/specs/<name>.spec.md`:
52
+
53
+ ```markdown
54
+ ---
55
+ name: <name>
56
+ type: agent | skill
57
+ source: .codex/agents/<name>.md | .codex/skills/<name>/SKILL.md
58
+ generated: <ISO-8601 timestamp>
59
+ ---
60
+
61
+ # Spec: <name>
62
+
63
+ ## Intent
64
+ <one-line purpose>
65
+
66
+ ## Invariants
67
+ - <rule or constraint that must always hold>
68
+ - ...
69
+
70
+ ## Workflow Contract
71
+ ### Input
72
+ <what the agent/skill receives>
73
+
74
+ ### Processing
75
+ 1. <step>
76
+ 2. <step>
77
+
78
+ ### Output
79
+ <what the agent/skill produces>
80
+
81
+ ## I/O Contract
82
+ ### Consumes
83
+ - Tools: [<tools used>]
84
+ - Files: [<files read>]
85
+ - MCP: [<MCP tools if any>]
86
+
87
+ ### Produces
88
+ - Files: [<files created/modified>]
89
+ - Output: [<what is returned>]
90
+
91
+ ## Dependencies
92
+ - Skills: [<referenced skills>]
93
+ - Guides: [<referenced guides>]
94
+ - Rules: [<rules enforced>]
95
+
96
+ ## Boundaries
97
+ - <what the agent explicitly cannot do>
98
+ ```
99
+
100
+ ### Phase 4: Report
101
+
102
+ ```
103
+ [Done] Spec extracted: .codex/specs/<name>.spec.md
104
+ ├── Intent: <summary>
105
+ ├── Invariants: <count> rules
106
+ ├── Workflow: <step count> steps
107
+ └── Dependencies: <count> refs
108
+ ```
109
+
110
+ ## Notes
111
+
112
+ - Specs are git-untracked (under `.codex/`)
113
+ - Regenerate anytime with `/omcodex:takeover <name>`
114
+ - Used by `/dev-refactor --spec` for invariant-preserving refactoring
115
+ - Advisory output — human review recommended before using as contract
@@ -0,0 +1,95 @@
1
+ ---
2
+ name: omcodex:web
3
+ description: Control and inspect the built-in Web UI (packages/serve) — start, stop, status, open
4
+ scope: harness
5
+ argument-hint: "[start|stop|status|open]"
6
+ user-invocable: true
7
+ ---
8
+
9
+ # Web UI Control
10
+
11
+ Interactive control for the built-in Web UI server (packages/serve).
12
+
13
+ ## Arguments
14
+
15
+ | Argument | Action |
16
+ |----------|--------|
17
+ | `status` (default) | Show server status (PID, port, URL) |
18
+ | `start` | Start the Web UI server in background |
19
+ | `stop` | Stop the running Web UI server |
20
+ | `open` | Open the Web UI in the default browser |
21
+
22
+ ## Workflow
23
+
24
+ ### Step 1: Check Server Status
25
+
26
+ Run these checks via Bash:
27
+
28
+ ```bash
29
+ PORT=${OMCODEX_PORT:-${OMCUSTOM_PORT:-4321}}
30
+ PID_FILE="$HOME/.omcodex-serve.pid"
31
+ PID=$(cat "$PID_FILE" 2>/dev/null)
32
+
33
+ # Process alive?
34
+ if [ -n "$PID" ] && kill -0 "$PID" 2>/dev/null; then
35
+ STATUS="running"
36
+ else
37
+ STATUS="stopped"
38
+ # Clean stale PID file
39
+ [ -f "$PID_FILE" ] && rm "$PID_FILE"
40
+ fi
41
+
42
+ # Port check
43
+ PORT_PID=$(lsof -ti :$PORT 2>/dev/null | head -1)
44
+
45
+ echo "STATUS=$STATUS PID=$PID PORT=$PORT PORT_PID=$PORT_PID"
46
+ ```
47
+
48
+ ### Step 2: Display Status
49
+
50
+ ```
51
+ Web UI Control
52
+ ─────────────
53
+ Status: ● Running (PID {PID})
54
+ URL: http://localhost:{PORT}
55
+ PID: ~/.omcodex-serve.pid
56
+ ```
57
+
58
+ or
59
+
60
+ ```
61
+ Web UI Control
62
+ ─────────────
63
+ Status: ○ Stopped
64
+ Port: {PORT} (free)
65
+ ```
66
+
67
+ ### Step 3: Execute Subcommand
68
+
69
+ | Subcommand | Action |
70
+ |------------|--------|
71
+ | `status` | Display status from Step 2, then exit |
72
+ | `start` | If stopped → run `omcodex serve` via Bash. If running → show URL |
73
+ | `stop` | If running → run `omcodex serve-stop` via Bash. If stopped → inform user |
74
+ | `open` | If running → `open http://localhost:{PORT}` (macOS). If stopped → ask to start first |
75
+
76
+ ### Step 4: Port Conflict Detection
77
+
78
+ Before `start`, check if port is already occupied by another process:
79
+
80
+ ```bash
81
+ PORT_PID=$(lsof -ti :$PORT 2>/dev/null | head -1)
82
+ if [ -n "$PORT_PID" ]; then
83
+ PROC=$(ps -p $PORT_PID -o comm= 2>/dev/null)
84
+ echo "Port $PORT is occupied by $PROC (PID $PORT_PID)"
85
+ fi
86
+ ```
87
+
88
+ If occupied by a non-serve process, warn the user and suggest `--port` option.
89
+
90
+ ## No Argument Behavior
91
+
92
+ When called without arguments (`/omcodex:web`):
93
+ 1. Show status
94
+ 2. If stopped, suggest: "Run `/omcodex:web start` to start the server"
95
+ 3. If running, suggest: "Run `/omcodex:web open` to open in browser"
@@ -0,0 +1,57 @@
1
+ ---
2
+ name: optimize-analyze
3
+ description: Analyze bundle size and performance metrics
4
+ scope: core
5
+ argument-hint: "[target] [--verbose]"
6
+ user-invocable: true
7
+ ---
8
+
9
+ # Bundle Analysis Skill
10
+
11
+ Analyze bundle size and performance metrics for web applications.
12
+
13
+ ## Arguments
14
+
15
+ ```
16
+ target Build output path or project root (optional, auto-detects)
17
+ ```
18
+
19
+ ## Options
20
+
21
+ ```
22
+ --verbose, -v Show detailed analysis
23
+ ```
24
+
25
+ ## Workflow
26
+
27
+ ```
28
+ 1. Identify build tool (webpack, vite, rollup, esbuild)
29
+ 2. Locate build output
30
+ 3. Analyze bundle composition
31
+ 4. Calculate size metrics
32
+ 5. Identify large dependencies
33
+ 6. Detect unused code/exports
34
+ 7. Generate analysis report
35
+ ```
36
+
37
+ ## Output
38
+
39
+ - Total bundle size
40
+ - Size breakdown by chunk/module
41
+ - Top dependencies by size
42
+ - Tree-shaking status
43
+ - Dead code detection
44
+ - Optimization recommendations
45
+
46
+ ## Examples
47
+
48
+ ```bash
49
+ # Analyze current project
50
+ optimize-analyze
51
+
52
+ # Analyze specific output directory
53
+ optimize-analyze ./dist
54
+
55
+ # Verbose analysis
56
+ optimize-analyze --verbose
57
+ ```
@@ -0,0 +1,69 @@
1
+ ---
2
+ name: optimize-bundle
3
+ description: Apply bundle size optimizations
4
+ scope: core
5
+ argument-hint: "[--dry-run] [--safe]"
6
+ disable-model-invocation: true
7
+ user-invocable: true
8
+ ---
9
+
10
+ # Bundle Optimization Skill
11
+
12
+ Apply bundle size optimizations to reduce build output and improve performance.
13
+
14
+ ## Options
15
+
16
+ ```
17
+ --dry-run Show what would be changed without applying
18
+ --safe Only apply safe, reversible optimizations
19
+ ```
20
+
21
+ ## Workflow
22
+
23
+ ```
24
+ 1. Run full bundle analysis
25
+ 2. Identify optimization opportunities
26
+ 3. Prioritize by impact and risk
27
+ 4. Apply recommended changes (or show dry-run)
28
+ 5. Rebuild if changes applied
29
+ 6. Verify improvements
30
+ 7. Report before/after metrics
31
+ ```
32
+
33
+ ## Optimization Levels
34
+
35
+ ### Safe
36
+ - Configure code splitting
37
+ - Enable tree-shaking for ESM
38
+ - Add terser/minification
39
+ - Configure chunk optimization
40
+
41
+ ### Moderate
42
+ - Replace heavy dependencies with lighter alternatives
43
+ - Add dynamic imports for routes
44
+ - Configure asset optimization
45
+
46
+ ### Aggressive
47
+ - Remove unused dependencies
48
+ - Inline small modules
49
+ - Configure aggressive minification
50
+
51
+ ## Output
52
+
53
+ - Applied changes list
54
+ - Before/after size comparison
55
+ - Build time comparison
56
+ - Risk assessment for each change
57
+
58
+ ## Examples
59
+
60
+ ```bash
61
+ # Apply all safe optimizations
62
+ optimize-bundle
63
+
64
+ # Preview changes without applying
65
+ optimize-bundle --dry-run
66
+
67
+ # Only apply safe optimizations
68
+ optimize-bundle --safe
69
+ ```
@@ -0,0 +1,76 @@
1
+ ---
2
+ name: optimize-report
3
+ description: Generate comprehensive optimization report
4
+ scope: core
5
+ argument-hint: "[--baseline <file>] [--format <format>]"
6
+ user-invocable: true
7
+ ---
8
+
9
+ # Optimization Report Skill
10
+
11
+ Generate comprehensive optimization report with analysis, metrics, and recommendations.
12
+
13
+ ## Options
14
+
15
+ ```
16
+ --baseline Compare against previous report
17
+ --format Output format (text, json, markdown)
18
+ Default: text
19
+ ```
20
+
21
+ ## Workflow
22
+
23
+ ```
24
+ 1. Run full analysis
25
+ 2. Collect all metrics
26
+ 3. Compare against baseline (if provided)
27
+ 4. Calculate performance scores
28
+ 5. Generate recommendations
29
+ 6. Format report
30
+ ```
31
+
32
+ ## Report Sections
33
+
34
+ ### Bundle Analysis
35
+ - Total size (raw and gzipped)
36
+ - Chunk breakdown
37
+ - Dependency tree
38
+
39
+ ### Performance Metrics
40
+ - Estimated load times
41
+ - Core Web Vitals impact
42
+ - Build performance
43
+
44
+ ### Code Quality
45
+ - Tree-shaking effectiveness
46
+ - Dead code percentage
47
+ - Duplicate code detection
48
+
49
+ ### Recommendations
50
+ - High impact optimizations
51
+ - Quick wins
52
+ - Long-term improvements
53
+
54
+ ### Comparison (if baseline)
55
+ - Size delta
56
+ - Performance delta
57
+ - Trend analysis
58
+
59
+ ## Output
60
+
61
+ - Formatted report in requested format
62
+ - Performance grade (A-F)
63
+ - Priority action items
64
+
65
+ ## Examples
66
+
67
+ ```bash
68
+ # Generate current report
69
+ optimize-report
70
+
71
+ # Compare against previous report
72
+ optimize-report --baseline ./previous-report.json
73
+
74
+ # Generate markdown report
75
+ optimize-report --format markdown
76
+ ```
@@ -0,0 +1,59 @@
1
+ ---
2
+ name: peer-messaging
3
+ description: Cross-session agent session messaging via claude-peers-mcp broker
4
+ scope: core
5
+ user-invocable: false
6
+ ---
7
+
8
+ # Peer Messaging Skill
9
+
10
+ ## Purpose
11
+
12
+ Enables cross-session coordination between multiple GPT Codex + OMX sessions through the claude-peers-mcp broker. Complements Agent Teams (R018, intra-session) with inter-session messaging.
13
+
14
+ ## Scope Clarification
15
+
16
+ | Scope | Mechanism | Tools | Use Case |
17
+ |-------|-----------|-------|----------|
18
+ | Intra-session agents | Agent Teams (R018) | TeamCreate, SendMessage | Single session multi-agent collaboration |
19
+ | Cross-session instances | claude-peers-mcp | list_peers, send_message | Multi-terminal/project real-time coordination |
20
+ | Cross-session memory | claude-mem | save_memory, search | Async memory persistence |
21
+
22
+ > **Important**: R018's `SendMessage` and claude-peers-mcp's `send_message` are different tools with different scopes. Do not confuse them.
23
+
24
+ ## MCP Tool Mapping
25
+
26
+ | Tool | Purpose | oh-my-customcodex Scenario |
27
+ |------|---------|---------------------------|
28
+ | `list_peers` | Discover active agent sessions | `omcodex:status` system overview |
29
+ | `send_message` | Send message to peer | Cross-project workflow coordination |
30
+ | `set_summary` | Broadcast current task summary | DAG cross-project step sync |
31
+ | `check_messages` | Read incoming messages | Receive coordination signals |
32
+
33
+ ## Use Cases
34
+
35
+ ### Multi-Project Workflow
36
+ Terminal A runs `auto-dev` on project-1; Terminal B works on dependent project-2. Peers coordinate via messages when blocking dependencies are resolved.
37
+
38
+ ### Cross-Project QA
39
+ Share test infrastructure state between projects running concurrent test suites.
40
+
41
+ ### DAG Bridge
42
+ `dag-orchestration` cross-project steps can use peer messaging for synchronization (currently impossible without this tool).
43
+
44
+ ## Setup
45
+
46
+ ```bash
47
+ # Install broker (optional MCP server)
48
+ npm install -g claude-peers-mcp
49
+
50
+ # Add to MCP config
51
+ claude mcp add claude-peers-mcp -- npx claude-peers-mcp
52
+ ```
53
+
54
+ ## Integration
55
+
56
+ - Works with R018 Agent Teams (different scope, complementary)
57
+ - Works with claude-mem (async vs sync messaging)
58
+ - Works with `omcodex:status` (peer discovery)
59
+ - Broker runs on localhost:7899 (SQLite-backed)
@@ -0,0 +1,103 @@
1
+ ---
2
+ name: pipeline
3
+ description: Invoke and resume YAML-defined pipelines by name — /pipeline auto-dev runs the full release pipeline
4
+ scope: harness
5
+ user-invocable: true
6
+ effort: high
7
+ argument-hint: "<pipeline-name> | resume | (no args to list available)"
8
+ source:
9
+ type: external
10
+ origin: github
11
+ url: https://github.com/baekenough/baekenough-skills
12
+ version: 1.0.0
13
+ ---
14
+
15
+ # /pipeline — Pipeline Invocation
16
+
17
+ ## Usage
18
+
19
+ ```
20
+ /pipeline auto-dev # Run the auto-dev pipeline
21
+ /pipeline # List available pipelines
22
+ /pipeline resume # Resume a halted pipeline
23
+ ```
24
+
25
+ ## Behavior
26
+
27
+ ### List Mode (no arguments or --list flag)
28
+
29
+ Execute these steps to display available pipelines:
30
+
31
+ 1. **Scan built-in pipelines**: Use `Glob("workflows/*.yaml")` (NOT templates/) to find all pipeline definitions
32
+ 2. **Extract metadata**: For each YAML file found, use `Bash` to extract name and description:
33
+ ```bash
34
+ for f in workflows/*.yaml; do
35
+ name=$(grep -m1 '^name:' "$f" | sed 's/^name: *//' | tr -d '"')
36
+ desc=$(grep -m1 '^description:' "$f" | sed 's/^description: *//' | tr -d '"')
37
+ echo " $name — $desc"
38
+ done
39
+ ```
40
+ 3. **Scan template pipelines**: Use `Glob("templates/workflows/*.yaml")` for template examples
41
+ 4. **Display formatted output**:
42
+ ```
43
+ Available pipelines:
44
+ {name} — {description}
45
+ {name} — {description}
46
+
47
+ Template pipelines (in templates/workflows/):
48
+ {name} — {description}
49
+ ```
50
+ 5. If no pipelines found, display: "No pipelines found in workflows/ directory."
51
+ 6. If YAML parsing fails for a file, skip it and show: ` {filename} — (parse error, skipped)`
52
+
53
+ ### Run Mode (with pipeline name)
54
+
55
+ 1. Validate pipeline exists: `workflows/{name}.yaml`
56
+ 2. Load and validate YAML structure:
57
+ - Required fields: `name`, `description`, `steps[]`
58
+ - Each step has either `skill:` or `prompt:` (not both)
59
+ - Referenced skills exist in `.codex/skills/`
60
+ - Skill names must match `^[a-z0-9-]+$` (kebab-case only) — reject path traversal attempts
61
+ 3. Announce: `[Pipeline] Starting {name} — {step_count} steps`
62
+ 4. Execute steps top-to-bottom:
63
+ - **Skill steps** (`skill: name`): Invoke via Skill tool — `Skill(skill: "{name}")`
64
+ - **Prompt steps** (`prompt: text`): Execute the described action using appropriate agents/tools
65
+ - **Foreach steps** (`foreach: collection`): Iterate over collection from previous step output
66
+ - **Permission mode**: When spawning agents, pass `mode: "bypassPermissions"` in the Agent tool call if the session uses bypassPermissions. Without explicit mode, CC defaults to `acceptEdits`.
67
+ 5. Report completion or failure
68
+
69
+ ### Resume Mode (/pipeline resume)
70
+
71
+ 1. Scan `/tmp/.codex-pipeline-*-{PPID}.json` for state files
72
+ 2. If none found: "No halted pipelines found."
73
+ 3. If found: display pipeline name, failed step, error message
74
+ 4. Options:
75
+ - **Retry** — Re-execute the failed step
76
+ - **Skip** — Mark failed step as skipped, continue to next
77
+ - **Abort** — Delete state file, cancel pipeline
78
+ 5. On resume: execute from the failed step
79
+
80
+ ## State Tracking
81
+
82
+ Track per-step state:
83
+ ```json
84
+ {
85
+ "pipeline": "{name}",
86
+ "started": "ISO-8601",
87
+ "status": "running|completed|halted",
88
+ "current_step": 0,
89
+ "steps": [
90
+ {"name": "triage", "status": "completed", "duration_ms": 5000},
91
+ {"name": "plan", "status": "running"}
92
+ ]
93
+ }
94
+ ```
95
+
96
+ State saved to `/tmp/.codex-pipeline-{name}-{PPID}.json` on failure.
97
+
98
+ ## Error Handling
99
+
100
+ - Pipeline not found → list available pipelines with suggestion
101
+ - YAML parse error → report with line number
102
+ - Step failure (error: halt-and-report) → stop execution, save state, report failure with context
103
+ - All file writes delegated to subagents per R010