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,334 @@
1
+ ---
2
+ name: django-best-practices
3
+ description: Django patterns for production-ready Python web applications
4
+ scope: core
5
+ user-invocable: false
6
+ ---
7
+
8
+ ## Purpose
9
+
10
+ Apply Django patterns for building production-ready, secure, and maintainable Python web applications.
11
+
12
+ ## Rules
13
+
14
+ ### 1. Project Structure
15
+
16
+ ```yaml
17
+ structure:
18
+ settings_split: true
19
+ layout: "config/{settings/{base,development,production}.py,urls.py,wsgi.py} + apps/{core/,users/,<feature>/} + templates/ + static/ + requirements/{base,development,production}.txt"
20
+
21
+ app_module_contents:
22
+ models.py: Database models
23
+ views.py: Request handlers
24
+ urls.py: URL patterns (with app_name)
25
+ serializers.py: DRF serializers (if API)
26
+ forms.py: Django forms
27
+ admin.py: Admin customization
28
+ services.py: Business logic layer
29
+ managers.py: Custom model managers
30
+ signals.py: Django signals (use sparingly)
31
+ tests/: Test suite (mirror app structure)
32
+ ```
33
+
34
+ Reference: guides/django-best-practices/README.md
35
+
36
+ ### 2. Models Best Practices
37
+
38
+ ```yaml
39
+ custom_user_model:
40
+ rule: ALWAYS create a custom User model, even if identical to default
41
+ location: apps/users/models.py
42
+ reason: Impossible to swap default User model mid-project
43
+ pattern: "Extend AbstractUser, set AUTH_USER_MODEL in settings"
44
+
45
+ primary_key:
46
+ default: BigAutoField
47
+ settings: DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField'
48
+
49
+ model_meta:
50
+ required:
51
+ - __str__: human-readable representation
52
+ - Meta.ordering: consistent default ordering
53
+ - Meta.verbose_name: singular display name
54
+ - Meta.verbose_name_plural: plural display name
55
+
56
+ query_optimization:
57
+ foreign_key: select_related() # Single SQL JOIN
58
+ many_to_many: prefetch_related() # Separate query + Python join
59
+ partial_fields: only() / defer() # Load subset of fields
60
+ aggregations: F() and Q() objects for complex expressions
61
+ bulk_ops:
62
+ create: bulk_create(objs, batch_size=1000)
63
+ update: bulk_update(objs, fields, batch_size=1000)
64
+
65
+ indexing:
66
+ - Frequently filtered fields: db_index=True
67
+ - Frequently ordered fields: Meta.ordering fields
68
+ - Multi-column: Meta.indexes with models.Index
69
+ - Unique together: Meta.unique_together or UniqueConstraint
70
+
71
+ constraints:
72
+ use: Meta.constraints for database-level enforcement
73
+ types: "UniqueConstraint, CheckConstraint"
74
+
75
+ soft_delete:
76
+ pattern: is_active = models.BooleanField(default=True)
77
+ manager: Override default manager to filter is_active=True
78
+
79
+ custom_managers:
80
+ rule: Use managers for reusable querysets
81
+ ```
82
+
83
+ Reference: guides/django-best-practices/README.md
84
+
85
+ ### 3. Views Best Practices
86
+
87
+ ```yaml
88
+ cbv_vs_fbv:
89
+ cbv: Standard CRUD, predictable patterns (ListView, DetailView, etc.)
90
+ fbv: Complex custom logic, non-standard workflows
91
+
92
+ thin_views:
93
+ rule: Keep views thin — delegate business logic to services/models
94
+
95
+ shortcuts:
96
+ - get_object_or_404(Model, pk=pk): Returns 404 instead of 500
97
+ - get_list_or_404(Model, **kwargs): 404 if empty list
98
+
99
+ mixins:
100
+ authentication: LoginRequiredMixin
101
+ permissions: PermissionRequiredMixin
102
+ user_pass: UserPassesTestMixin
103
+
104
+ status_codes:
105
+ 200: OK (default for success)
106
+ 201: Created (after successful creation)
107
+ 302: Redirect (after POST success — PRG pattern)
108
+ 400: Bad Request (validation error)
109
+ 403: Forbidden (permission denied)
110
+ 404: Not Found
111
+ 405: Method Not Allowed
112
+ ```
113
+
114
+ ### 4. URL Patterns
115
+
116
+ ```yaml
117
+ namespacing:
118
+ app_name: Required in every app's urls.py
119
+ usage: "reverse('app_name:url_name') or {% url 'app_name:url_name' %}"
120
+
121
+ syntax:
122
+ prefer: path() over re_path() for clarity
123
+ use_re_path: Only for complex regex patterns
124
+
125
+ naming:
126
+ rule: Name ALL URL patterns
127
+ convention: "{resource}-{action} (e.g., article-list, article-detail)"
128
+
129
+ inclusion:
130
+ root_urls: Use include() for app-level URLs
131
+ ```
132
+
133
+ Reference: guides/django-best-practices/README.md
134
+
135
+ ### 5. Forms & Validation
136
+
137
+ ```yaml
138
+ model_forms:
139
+ rule: Use ModelForm when form maps to a model
140
+ fields: "Explicitly list fields (never use fields = '__all__')"
141
+
142
+ validation:
143
+ field_level: clean_<field>() method
144
+ cross_field: clean() method
145
+ built_in: Use Django validators (MaxValueValidator, RegexValidator, etc.)
146
+ ```
147
+
148
+ Reference: guides/django-best-practices/README.md
149
+
150
+ ### 6. Security
151
+
152
+ ```yaml
153
+ environment:
154
+ SECRET_KEY: Never hardcode — read from environment variable
155
+ DEBUG: False in production (MUST)
156
+ ALLOWED_HOSTS: Explicitly set in production (MUST)
157
+
158
+ https:
159
+ SECURE_SSL_REDIRECT: true
160
+ SESSION_COOKIE_SECURE: true
161
+ CSRF_COOKIE_SECURE: true
162
+ SECURE_HSTS_SECONDS: 3600 # Start small, increase to 31536000
163
+ SECURE_HSTS_INCLUDE_SUBDOMAINS: true
164
+
165
+ clickjacking:
166
+ X_FRAME_OPTIONS: DENY
167
+
168
+ content_type:
169
+ SECURE_CONTENT_TYPE_NOSNIFF: true
170
+
171
+ csrf:
172
+ rule: Enabled by default via CsrfViewMiddleware — do NOT disable
173
+
174
+ sql_injection:
175
+ rule: Use ORM, avoid raw SQL; if needed, use parameterized queries
176
+
177
+ xss:
178
+ rule: Templates auto-escape by default — never use |safe with user content
179
+
180
+ deployment_check:
181
+ command: python manage.py check --deploy
182
+ run: Before every production deployment
183
+ ```
184
+
185
+ ### 7. Testing
186
+
187
+ ```yaml
188
+ framework:
189
+ preferred: pytest-django (over unittest)
190
+ config: pytest.ini or pyproject.toml with [tool.pytest.ini_options]
191
+
192
+ test_classes:
193
+ database: TestCase (wraps each test in transaction)
194
+ no_database: SimpleTestCase (faster)
195
+ live_server: LiveServerTestCase (for Selenium)
196
+
197
+ test_data:
198
+ preferred: factory_boy or model_bakery
199
+ avoid: fixtures (hard to maintain, slow)
200
+
201
+ request_testing:
202
+ Client: Full request/response cycle (preferred for views)
203
+ RequestFactory: Faster, no middleware (for unit testing views)
204
+
205
+ settings_override:
206
+ decorator: '@override_settings(...)'
207
+
208
+ coverage:
209
+ target: 80%+
210
+ exclude: migrations, admin, settings
211
+
212
+ structure:
213
+ mirror_app: tests/test_models.py, tests/test_views.py, tests/test_forms.py
214
+ ```
215
+
216
+ Reference: guides/django-best-practices/README.md
217
+
218
+ ### 8. Performance
219
+
220
+ ```yaml
221
+ n_plus_1_prevention:
222
+ check: Use django-debug-toolbar in development
223
+ fix_fk: select_related('author', 'category')
224
+ fix_m2m: prefetch_related('tags', 'comments')
225
+ complex: Prefetch object with custom queryset
226
+
227
+ partial_loading:
228
+ only: "only('id', 'title', 'created_at') — Load only these fields"
229
+ defer: "defer('body', 'metadata') — Load all except these"
230
+ values: "values('id', 'title') — Returns dicts (no ORM overhead)"
231
+ values_list: "values_list('id', flat=True) — Returns flat list"
232
+
233
+ caching:
234
+ backend: Redis (preferred), Memcached
235
+ view_cache: "'@cache_page(60 * 15)' decorator"
236
+ template_cache: "'{% cache 500 sidebar %}' template tag"
237
+ low_level: cache.get/set/delete for fine-grained control
238
+
239
+ pagination:
240
+ list_views: Always paginate large querysets
241
+ page_size: Set reasonable default (20-50 items)
242
+ drf: PageNumberPagination or CursorPagination
243
+
244
+ bulk_operations:
245
+ create: "bulk_create(articles, batch_size=1000)"
246
+ update: "bulk_update(articles, ['status'], batch_size=1000)"
247
+ avoid: Loops calling .save() on many objects
248
+ ```
249
+
250
+ ### 9. Django REST Framework (DRF)
251
+
252
+ ```yaml
253
+ serializers:
254
+ standard_crud: ModelSerializer
255
+ read_only: Use SerializerMethodField for computed values
256
+ write_validation: validate_<field>() and validate() methods
257
+
258
+ viewsets:
259
+ standard: ModelViewSet for full CRUD
260
+ custom: ViewSet with explicit action methods
261
+ routers: DefaultRouter or SimpleRouter for URL generation
262
+
263
+ authentication:
264
+ jwt: djangorestframework-simplejwt (recommended)
265
+ token: DRF built-in TokenAuthentication
266
+ session: SessionAuthentication (for browser clients)
267
+
268
+ permissions:
269
+ global: DEFAULT_PERMISSION_CLASSES in settings
270
+ per_view: permission_classes attribute on ViewSet
271
+ object_level: has_object_permission() in custom permission class
272
+
273
+ versioning:
274
+ method: NamespaceVersioning or URLPathVersioning
275
+
276
+ throttling:
277
+ anonymous: AnonRateThrottle
278
+ authenticated: UserRateThrottle
279
+ custom: Extend BaseThrottle
280
+
281
+ pagination:
282
+ global: DEFAULT_PAGINATION_CLASS in settings
283
+ types: PageNumberPagination (simple), CursorPagination (large datasets)
284
+ ```
285
+
286
+ Reference: guides/django-best-practices/README.md
287
+
288
+ ### 10. Deployment
289
+
290
+ ```yaml
291
+ wsgi_asgi:
292
+ wsgi: gunicorn (4 workers per CPU core)
293
+ asgi: uvicorn with gunicorn workers (for async/WebSocket)
294
+
295
+ static_files:
296
+ development: Django's staticfiles
297
+ production: whitenoise middleware OR CDN (S3 + CloudFront)
298
+ command: python manage.py collectstatic --noinput
299
+
300
+ database:
301
+ development: SQLite (acceptable)
302
+ production: PostgreSQL (MUST — never SQLite in production)
303
+ connection_pooling: Use pgBouncer or django-db-connection-pool
304
+
305
+ migrations:
306
+ deploy: Run as part of CI/CD pipeline before server restart
307
+ zero_downtime: Use additive migrations (add nullable columns, backfill, then add constraint)
308
+
309
+ logging:
310
+ config: LOGGING dict in settings
311
+ handler: File handler in production, console in development
312
+ level: WARNING in production, DEBUG in development
313
+
314
+ environment_variables:
315
+ tool: python-decouple or django-environ
316
+ never: Hardcode secrets in settings files
317
+
318
+ health_check:
319
+ endpoint: /health/ returning 200 OK
320
+ checks: Database connection, cache connection, disk space
321
+ ```
322
+
323
+ ## Application
324
+
325
+ When writing Django code:
326
+
327
+ 1. **Always** create a custom User model before any other models
328
+ 2. **Always** split settings into base/development/production
329
+ 3. **Prefer** CBVs for standard CRUD, FBVs for custom logic
330
+ 4. **Use** select_related/prefetch_related to prevent N+1 queries
331
+ 5. **Apply** the security checklist for every production deployment
332
+ 6. **Test** with pytest-django and factory_boy
333
+ 7. **Never** use `fields = '__all__'` in ModelForms or ModelSerializer
334
+ 8. **Run** `python manage.py check --deploy` before shipping
@@ -0,0 +1,276 @@
1
+ ---
2
+ name: docker-best-practices
3
+ description: Docker patterns for optimized containerization
4
+ scope: core
5
+ user-invocable: false
6
+ ---
7
+
8
+ ## Purpose
9
+
10
+ Apply Docker patterns for building optimized and secure container images.
11
+
12
+ ## Rules
13
+
14
+ ### 1. Layer Optimization
15
+
16
+ ```yaml
17
+ principles:
18
+ - Combine related RUN commands
19
+ - Sort multi-line arguments alphabetically
20
+ - Clean up in same layer
21
+
22
+ patterns: |
23
+ # GOOD: Single layer, clean cache
24
+ RUN apt-get update && apt-get install -y \
25
+ curl \
26
+ git \
27
+ vim \
28
+ && rm -rf /var/lib/apt/lists/*
29
+
30
+ # BAD: Multiple layers, cache remains
31
+ RUN apt-get update
32
+ RUN apt-get install -y curl
33
+ RUN apt-get install -y git
34
+ ```
35
+
36
+ ### 2. Multi-Stage Builds
37
+
38
+ ```yaml
39
+ purpose:
40
+ - Reduce final image size
41
+ - Separate build and runtime dependencies
42
+ - Security (no build tools in production)
43
+
44
+ pattern: |
45
+ # Build stage
46
+ FROM golang:1.21 AS builder
47
+ WORKDIR /app
48
+ COPY go.mod go.sum ./
49
+ RUN go mod download
50
+ COPY . .
51
+ RUN CGO_ENABLED=0 go build -o /app/server ./cmd/server
52
+
53
+ # Runtime stage
54
+ FROM gcr.io/distroless/static:nonroot
55
+ COPY --from=builder /app/server /server
56
+ USER nonroot:nonroot
57
+ ENTRYPOINT ["/server"]
58
+ ```
59
+
60
+ ### 3. Security
61
+
62
+ ```yaml
63
+ principles:
64
+ - Run as non-root user
65
+ - Pin base image versions
66
+ - Use minimal base images
67
+ - Don't store secrets in images
68
+
69
+ patterns: |
70
+ # Pin version with digest
71
+ FROM node:20-slim@sha256:abc123...
72
+
73
+ # Create non-root user
74
+ RUN groupadd -r appgroup && useradd -r -g appgroup appuser
75
+ USER appuser
76
+
77
+ # Use secrets mount (BuildKit)
78
+ RUN --mount=type=secret,id=npmrc,target=/root/.npmrc \
79
+ npm install
80
+
81
+ # .dockerignore for secrets
82
+ # .env
83
+ # *.pem
84
+ # credentials.json
85
+ ```
86
+
87
+ ### 4. Image Size Reduction
88
+
89
+ ```yaml
90
+ strategies:
91
+ - Use slim/alpine base images
92
+ - Remove build dependencies
93
+ - Use .dockerignore
94
+ - Multi-stage builds
95
+
96
+ minimal_bases:
97
+ distroless: "gcr.io/distroless/static"
98
+ alpine: "alpine:3.19"
99
+ slim: "debian:12-slim"
100
+
101
+ patterns: |
102
+ # Alpine for size
103
+ FROM python:3.12-alpine
104
+ RUN apk add --no-cache gcc musl-dev
105
+
106
+ # Distroless for security
107
+ FROM gcr.io/distroless/python3
108
+ COPY --from=builder /app /app
109
+ ```
110
+
111
+ ### 5. Cache Optimization
112
+
113
+ ```yaml
114
+ principles:
115
+ - Order from least to most frequently changing
116
+ - Copy dependency files first
117
+ - Use BuildKit cache mounts
118
+
119
+ patterns: |
120
+ # Copy dependency files first
121
+ COPY package.json package-lock.json ./
122
+ RUN npm ci
123
+
124
+ # Then copy source (changes frequently)
125
+ COPY . .
126
+ RUN npm run build
127
+
128
+ # BuildKit cache mount
129
+ RUN --mount=type=cache,target=/root/.cache/pip \
130
+ pip install -r requirements.txt
131
+ ```
132
+
133
+ ### 6. ENTRYPOINT vs CMD
134
+
135
+ ```yaml
136
+ entrypoint:
137
+ purpose: Main executable
138
+ form: exec form ["executable"]
139
+
140
+ cmd:
141
+ purpose: Default arguments
142
+ form: exec form ["arg1", "arg2"]
143
+
144
+ patterns: |
145
+ # Fixed command with variable args
146
+ ENTRYPOINT ["python", "app.py"]
147
+ CMD ["--port", "8080"]
148
+
149
+ # docker run myapp --port 3000
150
+ # Executes: python app.py --port 3000
151
+
152
+ # Flexible command
153
+ CMD ["python", "app.py"]
154
+
155
+ # docker run myapp bash
156
+ # Executes: bash
157
+ ```
158
+
159
+ ### 7. Health Checks
160
+
161
+ ```yaml
162
+ purpose: Container health monitoring
163
+ interval: how often to check
164
+ timeout: max time for check
165
+ retries: failures before unhealthy
166
+
167
+ pattern: |
168
+ HEALTHCHECK --interval=30s --timeout=3s --retries=3 \
169
+ CMD curl -f http://localhost:8080/health || exit 1
170
+ ```
171
+
172
+ ### 8. Docker Compose
173
+
174
+ ```yaml
175
+ best_practices:
176
+ - Use named volumes
177
+ - Define networks explicitly
178
+ - Use environment files
179
+ - Set resource limits
180
+
181
+ pattern: |
182
+ version: "3.8"
183
+
184
+ services:
185
+ app:
186
+ build:
187
+ context: .
188
+ target: production
189
+ environment:
190
+ - DATABASE_URL
191
+ env_file:
192
+ - .env
193
+ ports:
194
+ - "8080:8080"
195
+ depends_on:
196
+ db:
197
+ condition: service_healthy
198
+ deploy:
199
+ resources:
200
+ limits:
201
+ cpus: "1"
202
+ memory: 512M
203
+ networks:
204
+ - backend
205
+
206
+ db:
207
+ image: postgres:16-alpine
208
+ volumes:
209
+ - postgres_data:/var/lib/postgresql/data
210
+ healthcheck:
211
+ test: ["CMD-SHELL", "pg_isready -U postgres"]
212
+ interval: 10s
213
+ timeout: 5s
214
+ retries: 5
215
+ networks:
216
+ - backend
217
+
218
+ volumes:
219
+ postgres_data:
220
+
221
+ networks:
222
+ backend:
223
+ ```
224
+
225
+ ### 9. Common Patterns by Language
226
+
227
+ ```yaml
228
+ nodejs: |
229
+ FROM node:20-slim AS builder
230
+ WORKDIR /app
231
+ COPY package*.json ./
232
+ RUN npm ci --only=production
233
+
234
+ FROM gcr.io/distroless/nodejs20
235
+ WORKDIR /app
236
+ COPY --from=builder /app/node_modules ./node_modules
237
+ COPY . .
238
+ CMD ["server.js"]
239
+
240
+ python: |
241
+ FROM python:3.12-slim AS builder
242
+ WORKDIR /app
243
+ RUN pip install --user -r requirements.txt
244
+
245
+ FROM python:3.12-slim
246
+ WORKDIR /app
247
+ COPY --from=builder /root/.local /root/.local
248
+ COPY . .
249
+ ENV PATH=/root/.local/bin:$PATH
250
+ CMD ["python", "app.py"]
251
+
252
+ go: |
253
+ FROM golang:1.21 AS builder
254
+ WORKDIR /app
255
+ COPY go.* ./
256
+ RUN go mod download
257
+ COPY . .
258
+ RUN CGO_ENABLED=0 go build -o /server
259
+
260
+ FROM scratch
261
+ COPY --from=builder /server /server
262
+ ENTRYPOINT ["/server"]
263
+ ```
264
+
265
+ ## Application
266
+
267
+ When writing Dockerfiles:
268
+
269
+ 1. **Always** use multi-stage builds
270
+ 2. **Always** run as non-root user
271
+ 3. **Always** pin base image versions
272
+ 4. **Prefer** minimal base images
273
+ 5. **Order** layers for cache efficiency
274
+ 6. **Clean** package caches in same layer
275
+ 7. **Use** .dockerignore
276
+ 8. **Add** health checks