codexkit 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (655) hide show
  1. package/.codex/.env.example +27 -0
  2. package/.codex/.template-manifest.json +631 -0
  3. package/.codex/.version +1 -0
  4. package/.codex/agents/builder.toml +104 -0
  5. package/.codex/agents/debugger.toml +67 -0
  6. package/.codex/agents/general.toml +41 -0
  7. package/.codex/agents/painter.toml +40 -0
  8. package/.codex/agents/planner.toml +60 -0
  9. package/.codex/agents/refactorer.toml +76 -0
  10. package/.codex/agents/reviewer.toml +60 -0
  11. package/.codex/agents/runner.toml +40 -0
  12. package/.codex/agents/scout.toml +133 -0
  13. package/.codex/agents/shipper.toml +69 -0
  14. package/.codex/agents/vision.toml +69 -0
  15. package/.codex/config.toml +146 -0
  16. package/.codex/context/architecture.md +66 -0
  17. package/.codex/context/conventions.md +98 -0
  18. package/.codex/context/current-priorities.md +33 -0
  19. package/.codex/context/decision-log.md +93 -0
  20. package/.codex/context/gotchas.md +42 -0
  21. package/.codex/context/index.md +21 -0
  22. package/.codex/context/session-context.md +11 -0
  23. package/.codex/context/worklog.md +9 -0
  24. package/.codex/hooks/README.md +17 -0
  25. package/.codex/hooks/after_agent.sh +11 -0
  26. package/.codex/hooks/after_tool_use.sh +10 -0
  27. package/.codex/hooks/post_commit.sh +10 -0
  28. package/.codex/hooks/pre_commit.sh +6 -0
  29. package/.codex/hooks/session_start.sh +18 -0
  30. package/.codex/hooks/stop.sh +10 -0
  31. package/.codex/mcp/README.md +143 -0
  32. package/.codex/mcp/basic-memory.toml.example +10 -0
  33. package/.codex/mcp/context7.toml.example +13 -0
  34. package/.codex/mcp/exa.toml.example +12 -0
  35. package/.codex/mcp/memory-bridge.toml.example +15 -0
  36. package/.codex/mcp/memory.toml.example +6 -0
  37. package/.codex/mcp/ref.toml.example +13 -0
  38. package/.codex/mcp/tilth.toml.example +10 -0
  39. package/.codex/memory/README.md +29 -0
  40. package/.codex/memory/_templates/README.md +26 -0
  41. package/.codex/memory/_templates/design.md +15 -0
  42. package/.codex/memory/_templates/gotcha.md +9 -0
  43. package/.codex/memory/_templates/handoff.md +9 -0
  44. package/.codex/memory/_templates/prd.md +13 -0
  45. package/.codex/memory/_templates/project.md +9 -0
  46. package/.codex/memory/_templates/proposal.md +13 -0
  47. package/.codex/memory/_templates/research.md +9 -0
  48. package/.codex/memory/_templates/roadmap.md +11 -0
  49. package/.codex/memory/_templates/session-context.md +7 -0
  50. package/.codex/memory/_templates/state.md +11 -0
  51. package/.codex/memory/_templates/tasks.md +9 -0
  52. package/.codex/memory/_templates/tech-stack.md +9 -0
  53. package/.codex/memory/_templates/user.md +7 -0
  54. package/.codex/memory/project/gotchas.md +5 -0
  55. package/.codex/memory/project/project.md +12 -0
  56. package/.codex/memory/project/roadmap.md +15 -0
  57. package/.codex/memory/project/state.md +22 -0
  58. package/.codex/memory/project/tech-stack.md +19 -0
  59. package/.codex/memory/project/user.md +10 -0
  60. package/.codex/memory/research/.gitkeep +1 -0
  61. package/.codex/memory/session-context.md +18 -0
  62. package/.codex/plans/README.md +7 -0
  63. package/.codex/prompts/compound.md +154 -0
  64. package/.codex/prompts/create.md +238 -0
  65. package/.codex/prompts/design.md +90 -0
  66. package/.codex/prompts/handoff.md +184 -0
  67. package/.codex/prompts/init-context.md +185 -0
  68. package/.codex/prompts/init-user.md +93 -0
  69. package/.codex/prompts/init.md +103 -0
  70. package/.codex/prompts/lfg.md +140 -0
  71. package/.codex/prompts/plan.md +140 -0
  72. package/.codex/prompts/pr.md +150 -0
  73. package/.codex/prompts/research.md +137 -0
  74. package/.codex/prompts/resume.md +105 -0
  75. package/.codex/prompts/review-codebase.md +147 -0
  76. package/.codex/prompts/ship.md +334 -0
  77. package/.codex/prompts/start.md +141 -0
  78. package/.codex/prompts/status.md +102 -0
  79. package/.codex/prompts/ui-inspire.md +151 -0
  80. package/.codex/prompts/ui-review.md +86 -0
  81. package/.codex/prompts/verify.md +181 -0
  82. package/.codex/scripts/append_worklog.sh +20 -0
  83. package/.codex/scripts/apply_worklog_archive.sh +48 -0
  84. package/.codex/scripts/audit_memory_hygiene.sh +102 -0
  85. package/.codex/scripts/build_memory_index.sh +167 -0
  86. package/.codex/scripts/build_prior_related_work.sh +127 -0
  87. package/.codex/scripts/build_startup_brief.sh +52 -0
  88. package/.codex/scripts/close_bead.sh +103 -0
  89. package/.codex/scripts/detect_changed_files.sh +38 -0
  90. package/.codex/scripts/ensure_beads.sh +14 -0
  91. package/.codex/scripts/memory_search.sh +292 -0
  92. package/.codex/scripts/prepare_worklog_archive.sh +115 -0
  93. package/.codex/scripts/search_bead_context.sh +214 -0
  94. package/.codex/scripts/start_bead.sh +129 -0
  95. package/.codex/scripts/sync_bead_context.sh +288 -0
  96. package/.codex/scripts/validate_memory_docs.sh +44 -0
  97. package/.codex/scripts/verify_bead.sh +154 -0
  98. package/.codex/skills/accessibility-audit/SKILL.md +191 -0
  99. package/.codex/skills/agent-browser/SKILL.md +413 -0
  100. package/.codex/skills/agent-teams/SKILL.md +268 -0
  101. package/.codex/skills/augment-context-engine/SKILL.md +115 -0
  102. package/.codex/skills/augment-context-engine/mcp.json +6 -0
  103. package/.codex/skills/beads/SKILL.md +181 -0
  104. package/.codex/skills/beads/references/BEST_PRACTICES.md +27 -0
  105. package/.codex/skills/beads/references/BOUNDARIES.md +219 -0
  106. package/.codex/skills/beads/references/DEPENDENCIES.md +124 -0
  107. package/.codex/skills/beads/references/EXAMPLES.md +45 -0
  108. package/.codex/skills/beads/references/FILE_CLAIMING.md +101 -0
  109. package/.codex/skills/beads/references/GIT_SYNC.md +25 -0
  110. package/.codex/skills/beads/references/HIERARCHY.md +71 -0
  111. package/.codex/skills/beads/references/MULTI_AGENT.md +40 -0
  112. package/.codex/skills/beads/references/RESUMABILITY.md +177 -0
  113. package/.codex/skills/beads/references/SESSION_PROTOCOL.md +61 -0
  114. package/.codex/skills/beads/references/TASK_CREATION.md +38 -0
  115. package/.codex/skills/beads/references/TROUBLESHOOTING.md +38 -0
  116. package/.codex/skills/beads/references/WORKFLOWS.md +226 -0
  117. package/.codex/skills/beads-bridge/SKILL.md +321 -0
  118. package/.codex/skills/brainstorming/SKILL.md +114 -0
  119. package/.codex/skills/bug-triage/SKILL.md +191 -0
  120. package/.codex/skills/chrome-devtools/SKILL.md +76 -0
  121. package/.codex/skills/chrome-devtools/mcp.json +19 -0
  122. package/.codex/skills/cloudflare/SKILL.md +253 -0
  123. package/.codex/skills/cloudflare/references/agents-sdk/README.md +35 -0
  124. package/.codex/skills/cloudflare/references/agents-sdk/api.md +100 -0
  125. package/.codex/skills/cloudflare/references/agents-sdk/configuration.md +99 -0
  126. package/.codex/skills/cloudflare/references/agents-sdk/gotchas.md +59 -0
  127. package/.codex/skills/cloudflare/references/agents-sdk/patterns.md +89 -0
  128. package/.codex/skills/cloudflare/references/ai-gateway/README.md +695 -0
  129. package/.codex/skills/cloudflare/references/ai-search/README.md +14 -0
  130. package/.codex/skills/cloudflare/references/ai-search/api.md +38 -0
  131. package/.codex/skills/cloudflare/references/ai-search/configuration.md +52 -0
  132. package/.codex/skills/cloudflare/references/ai-search/gotchas.md +41 -0
  133. package/.codex/skills/cloudflare/references/ai-search/patterns.md +45 -0
  134. package/.codex/skills/cloudflare/references/analytics-engine/README.md +14 -0
  135. package/.codex/skills/cloudflare/references/analytics-engine/api.md +27 -0
  136. package/.codex/skills/cloudflare/references/analytics-engine/configuration.md +45 -0
  137. package/.codex/skills/cloudflare/references/analytics-engine/gotchas.md +3 -0
  138. package/.codex/skills/cloudflare/references/analytics-engine/patterns.md +36 -0
  139. package/.codex/skills/cloudflare/references/api/README.md +21 -0
  140. package/.codex/skills/cloudflare/references/api/api.md +31 -0
  141. package/.codex/skills/cloudflare/references/api/configuration.md +20 -0
  142. package/.codex/skills/cloudflare/references/api/gotchas.md +28 -0
  143. package/.codex/skills/cloudflare/references/api/patterns.md +47 -0
  144. package/.codex/skills/cloudflare/references/api-shield/README.md +20 -0
  145. package/.codex/skills/cloudflare/references/api-shield/api.md +78 -0
  146. package/.codex/skills/cloudflare/references/api-shield/configuration.md +128 -0
  147. package/.codex/skills/cloudflare/references/api-shield/gotchas.md +51 -0
  148. package/.codex/skills/cloudflare/references/api-shield/patterns.md +145 -0
  149. package/.codex/skills/cloudflare/references/argo-smart-routing/README.md +16 -0
  150. package/.codex/skills/cloudflare/references/argo-smart-routing/api.md +50 -0
  151. package/.codex/skills/cloudflare/references/argo-smart-routing/configuration.md +53 -0
  152. package/.codex/skills/cloudflare/references/argo-smart-routing/gotchas.md +16 -0
  153. package/.codex/skills/cloudflare/references/argo-smart-routing/patterns.md +45 -0
  154. package/.codex/skills/cloudflare/references/bindings/README.md +14 -0
  155. package/.codex/skills/cloudflare/references/bindings/api.md +3 -0
  156. package/.codex/skills/cloudflare/references/bindings/configuration.md +58 -0
  157. package/.codex/skills/cloudflare/references/bindings/gotchas.md +35 -0
  158. package/.codex/skills/cloudflare/references/bindings/patterns.md +37 -0
  159. package/.codex/skills/cloudflare/references/bot-management/README.md +71 -0
  160. package/.codex/skills/cloudflare/references/bot-management/api.md +168 -0
  161. package/.codex/skills/cloudflare/references/bot-management/configuration.md +114 -0
  162. package/.codex/skills/cloudflare/references/bot-management/gotchas.md +99 -0
  163. package/.codex/skills/cloudflare/references/bot-management/patterns.md +125 -0
  164. package/.codex/skills/cloudflare/references/browser-rendering/README.md +16 -0
  165. package/.codex/skills/cloudflare/references/browser-rendering/api.md +54 -0
  166. package/.codex/skills/cloudflare/references/browser-rendering/configuration.md +47 -0
  167. package/.codex/skills/cloudflare/references/browser-rendering/gotchas.md +29 -0
  168. package/.codex/skills/cloudflare/references/browser-rendering/patterns.md +29 -0
  169. package/.codex/skills/cloudflare/references/c3/README.md +264 -0
  170. package/.codex/skills/cloudflare/references/cache-reserve/README.md +93 -0
  171. package/.codex/skills/cloudflare/references/cache-reserve/api.md +176 -0
  172. package/.codex/skills/cloudflare/references/cache-reserve/configuration.md +164 -0
  173. package/.codex/skills/cloudflare/references/cache-reserve/gotchas.md +203 -0
  174. package/.codex/skills/cloudflare/references/cache-reserve/patterns.md +180 -0
  175. package/.codex/skills/cloudflare/references/containers/README.md +16 -0
  176. package/.codex/skills/cloudflare/references/containers/api.md +43 -0
  177. package/.codex/skills/cloudflare/references/containers/configuration.md +56 -0
  178. package/.codex/skills/cloudflare/references/containers/gotchas.md +21 -0
  179. package/.codex/skills/cloudflare/references/containers/patterns.md +40 -0
  180. package/.codex/skills/cloudflare/references/cron-triggers/README.md +85 -0
  181. package/.codex/skills/cloudflare/references/cron-triggers/api.md +198 -0
  182. package/.codex/skills/cloudflare/references/cron-triggers/configuration.md +151 -0
  183. package/.codex/skills/cloudflare/references/cron-triggers/gotchas.md +129 -0
  184. package/.codex/skills/cloudflare/references/cron-triggers/patterns.md +122 -0
  185. package/.codex/skills/cloudflare/references/d1/README.md +92 -0
  186. package/.codex/skills/cloudflare/references/d1/api.md +141 -0
  187. package/.codex/skills/cloudflare/references/d1/configuration.md +127 -0
  188. package/.codex/skills/cloudflare/references/d1/gotchas.md +70 -0
  189. package/.codex/skills/cloudflare/references/d1/patterns.md +144 -0
  190. package/.codex/skills/cloudflare/references/ddos/README.md +34 -0
  191. package/.codex/skills/cloudflare/references/ddos/api.md +136 -0
  192. package/.codex/skills/cloudflare/references/ddos/configuration.md +67 -0
  193. package/.codex/skills/cloudflare/references/ddos/gotchas.md +114 -0
  194. package/.codex/skills/cloudflare/references/ddos/patterns.md +158 -0
  195. package/.codex/skills/cloudflare/references/do-storage/README.md +62 -0
  196. package/.codex/skills/cloudflare/references/do-storage/api.md +89 -0
  197. package/.codex/skills/cloudflare/references/do-storage/configuration.md +116 -0
  198. package/.codex/skills/cloudflare/references/do-storage/gotchas.md +93 -0
  199. package/.codex/skills/cloudflare/references/do-storage/patterns.md +112 -0
  200. package/.codex/skills/cloudflare/references/durable-objects/README.md +125 -0
  201. package/.codex/skills/cloudflare/references/durable-objects/api.md +152 -0
  202. package/.codex/skills/cloudflare/references/durable-objects/configuration.md +148 -0
  203. package/.codex/skills/cloudflare/references/durable-objects/gotchas.md +158 -0
  204. package/.codex/skills/cloudflare/references/durable-objects/patterns.md +255 -0
  205. package/.codex/skills/cloudflare/references/email-routing/README.md +18 -0
  206. package/.codex/skills/cloudflare/references/email-routing/api.md +46 -0
  207. package/.codex/skills/cloudflare/references/email-routing/configuration.md +63 -0
  208. package/.codex/skills/cloudflare/references/email-routing/gotchas.md +16 -0
  209. package/.codex/skills/cloudflare/references/email-routing/patterns.md +46 -0
  210. package/.codex/skills/cloudflare/references/email-workers/README.md +598 -0
  211. package/.codex/skills/cloudflare/references/hyperdrive/README.md +62 -0
  212. package/.codex/skills/cloudflare/references/hyperdrive/api.md +137 -0
  213. package/.codex/skills/cloudflare/references/hyperdrive/configuration.md +133 -0
  214. package/.codex/skills/cloudflare/references/hyperdrive/gotchas.md +184 -0
  215. package/.codex/skills/cloudflare/references/hyperdrive/patterns.md +176 -0
  216. package/.codex/skills/cloudflare/references/images/README.md +14 -0
  217. package/.codex/skills/cloudflare/references/images/api.md +3 -0
  218. package/.codex/skills/cloudflare/references/images/configuration.md +45 -0
  219. package/.codex/skills/cloudflare/references/images/gotchas.md +23 -0
  220. package/.codex/skills/cloudflare/references/images/patterns.md +31 -0
  221. package/.codex/skills/cloudflare/references/kv/README.md +60 -0
  222. package/.codex/skills/cloudflare/references/kv/api.md +114 -0
  223. package/.codex/skills/cloudflare/references/kv/configuration.md +92 -0
  224. package/.codex/skills/cloudflare/references/kv/gotchas.md +117 -0
  225. package/.codex/skills/cloudflare/references/kv/patterns.md +139 -0
  226. package/.codex/skills/cloudflare/references/miniflare/README.md +64 -0
  227. package/.codex/skills/cloudflare/references/miniflare/api.md +144 -0
  228. package/.codex/skills/cloudflare/references/miniflare/configuration.md +203 -0
  229. package/.codex/skills/cloudflare/references/miniflare/gotchas.md +187 -0
  230. package/.codex/skills/cloudflare/references/miniflare/patterns.md +211 -0
  231. package/.codex/skills/cloudflare/references/network-interconnect/README.md +60 -0
  232. package/.codex/skills/cloudflare/references/network-interconnect/api.md +240 -0
  233. package/.codex/skills/cloudflare/references/network-interconnect/configuration.md +127 -0
  234. package/.codex/skills/cloudflare/references/network-interconnect/gotchas.md +171 -0
  235. package/.codex/skills/cloudflare/references/network-interconnect/patterns.md +171 -0
  236. package/.codex/skills/cloudflare/references/observability/README.md +18 -0
  237. package/.codex/skills/cloudflare/references/observability/api.md +51 -0
  238. package/.codex/skills/cloudflare/references/observability/configuration.md +60 -0
  239. package/.codex/skills/cloudflare/references/observability/gotchas.md +36 -0
  240. package/.codex/skills/cloudflare/references/observability/patterns.md +42 -0
  241. package/.codex/skills/cloudflare/references/pages/README.md +76 -0
  242. package/.codex/skills/cloudflare/references/pages/api.md +200 -0
  243. package/.codex/skills/cloudflare/references/pages/configuration.md +228 -0
  244. package/.codex/skills/cloudflare/references/pages/gotchas.md +161 -0
  245. package/.codex/skills/cloudflare/references/pages/patterns.md +145 -0
  246. package/.codex/skills/cloudflare/references/pages-functions/README.md +57 -0
  247. package/.codex/skills/cloudflare/references/pages-functions/api.md +201 -0
  248. package/.codex/skills/cloudflare/references/pages-functions/configuration.md +159 -0
  249. package/.codex/skills/cloudflare/references/pages-functions/gotchas.md +151 -0
  250. package/.codex/skills/cloudflare/references/pages-functions/patterns.md +190 -0
  251. package/.codex/skills/cloudflare/references/pipelines/README.md +664 -0
  252. package/.codex/skills/cloudflare/references/pulumi/README.md +107 -0
  253. package/.codex/skills/cloudflare/references/pulumi/api.md +194 -0
  254. package/.codex/skills/cloudflare/references/pulumi/configuration.md +216 -0
  255. package/.codex/skills/cloudflare/references/pulumi/gotchas.md +223 -0
  256. package/.codex/skills/cloudflare/references/pulumi/patterns.md +139 -0
  257. package/.codex/skills/cloudflare/references/queues/README.md +69 -0
  258. package/.codex/skills/cloudflare/references/queues/api.md +138 -0
  259. package/.codex/skills/cloudflare/references/queues/configuration.md +125 -0
  260. package/.codex/skills/cloudflare/references/queues/gotchas.md +112 -0
  261. package/.codex/skills/cloudflare/references/queues/patterns.md +155 -0
  262. package/.codex/skills/cloudflare/references/r2/README.md +61 -0
  263. package/.codex/skills/cloudflare/references/r2/api.md +127 -0
  264. package/.codex/skills/cloudflare/references/r2/configuration.md +76 -0
  265. package/.codex/skills/cloudflare/references/r2/gotchas.md +94 -0
  266. package/.codex/skills/cloudflare/references/r2/patterns.md +127 -0
  267. package/.codex/skills/cloudflare/references/r2-data-catalog/README.md +18 -0
  268. package/.codex/skills/cloudflare/references/r2-data-catalog/api.md +29 -0
  269. package/.codex/skills/cloudflare/references/r2-data-catalog/configuration.md +39 -0
  270. package/.codex/skills/cloudflare/references/r2-data-catalog/gotchas.md +20 -0
  271. package/.codex/skills/cloudflare/references/r2-data-catalog/patterns.md +46 -0
  272. package/.codex/skills/cloudflare/references/r2-sql/README.md +512 -0
  273. package/.codex/skills/cloudflare/references/realtime-sfu/README.md +21 -0
  274. package/.codex/skills/cloudflare/references/realtime-sfu/api.md +135 -0
  275. package/.codex/skills/cloudflare/references/realtime-sfu/configuration.md +63 -0
  276. package/.codex/skills/cloudflare/references/realtime-sfu/gotchas.md +75 -0
  277. package/.codex/skills/cloudflare/references/realtime-sfu/patterns.md +102 -0
  278. package/.codex/skills/cloudflare/references/realtimekit/README.md +81 -0
  279. package/.codex/skills/cloudflare/references/realtimekit/api.md +164 -0
  280. package/.codex/skills/cloudflare/references/realtimekit/configuration.md +147 -0
  281. package/.codex/skills/cloudflare/references/realtimekit/gotchas.md +172 -0
  282. package/.codex/skills/cloudflare/references/realtimekit/patterns.md +155 -0
  283. package/.codex/skills/cloudflare/references/sandbox/README.md +90 -0
  284. package/.codex/skills/cloudflare/references/sandbox/api.md +178 -0
  285. package/.codex/skills/cloudflare/references/sandbox/configuration.md +131 -0
  286. package/.codex/skills/cloudflare/references/sandbox/gotchas.md +156 -0
  287. package/.codex/skills/cloudflare/references/sandbox/patterns.md +203 -0
  288. package/.codex/skills/cloudflare/references/secrets-store/README.md +58 -0
  289. package/.codex/skills/cloudflare/references/secrets-store/api.md +182 -0
  290. package/.codex/skills/cloudflare/references/secrets-store/configuration.md +140 -0
  291. package/.codex/skills/cloudflare/references/secrets-store/gotchas.md +129 -0
  292. package/.codex/skills/cloudflare/references/secrets-store/patterns.md +218 -0
  293. package/.codex/skills/cloudflare/references/smart-placement/README.md +91 -0
  294. package/.codex/skills/cloudflare/references/smart-placement/api.md +139 -0
  295. package/.codex/skills/cloudflare/references/smart-placement/configuration.md +129 -0
  296. package/.codex/skills/cloudflare/references/smart-placement/gotchas.md +87 -0
  297. package/.codex/skills/cloudflare/references/smart-placement/patterns.md +135 -0
  298. package/.codex/skills/cloudflare/references/snippets/README.md +15 -0
  299. package/.codex/skills/cloudflare/references/snippets/api.md +47 -0
  300. package/.codex/skills/cloudflare/references/snippets/configuration.md +33 -0
  301. package/.codex/skills/cloudflare/references/snippets/gotchas.md +21 -0
  302. package/.codex/skills/cloudflare/references/snippets/patterns.md +34 -0
  303. package/.codex/skills/cloudflare/references/spectrum/README.md +16 -0
  304. package/.codex/skills/cloudflare/references/spectrum/api.md +24 -0
  305. package/.codex/skills/cloudflare/references/spectrum/configuration.md +43 -0
  306. package/.codex/skills/cloudflare/references/spectrum/gotchas.md +42 -0
  307. package/.codex/skills/cloudflare/references/spectrum/patterns.md +40 -0
  308. package/.codex/skills/cloudflare/references/static-assets/README.md +14 -0
  309. package/.codex/skills/cloudflare/references/static-assets/api.md +3 -0
  310. package/.codex/skills/cloudflare/references/static-assets/configuration.md +47 -0
  311. package/.codex/skills/cloudflare/references/static-assets/gotchas.md +44 -0
  312. package/.codex/skills/cloudflare/references/static-assets/patterns.md +42 -0
  313. package/.codex/skills/cloudflare/references/stream/README.md +103 -0
  314. package/.codex/skills/cloudflare/references/stream/api.md +204 -0
  315. package/.codex/skills/cloudflare/references/stream/configuration.md +127 -0
  316. package/.codex/skills/cloudflare/references/stream/gotchas.md +131 -0
  317. package/.codex/skills/cloudflare/references/stream/patterns.md +152 -0
  318. package/.codex/skills/cloudflare/references/tail-workers/README.md +640 -0
  319. package/.codex/skills/cloudflare/references/terraform/README.md +76 -0
  320. package/.codex/skills/cloudflare/references/terraform/api.md +159 -0
  321. package/.codex/skills/cloudflare/references/terraform/configuration.md +156 -0
  322. package/.codex/skills/cloudflare/references/terraform/gotchas.md +207 -0
  323. package/.codex/skills/cloudflare/references/terraform/patterns.md +135 -0
  324. package/.codex/skills/cloudflare/references/tunnel/README.md +82 -0
  325. package/.codex/skills/cloudflare/references/tunnel/api.md +105 -0
  326. package/.codex/skills/cloudflare/references/tunnel/configuration.md +113 -0
  327. package/.codex/skills/cloudflare/references/tunnel/gotchas.md +115 -0
  328. package/.codex/skills/cloudflare/references/tunnel/patterns.md +157 -0
  329. package/.codex/skills/cloudflare/references/turn/README.md +699 -0
  330. package/.codex/skills/cloudflare/references/turnstile/README.md +14 -0
  331. package/.codex/skills/cloudflare/references/turnstile/api.md +3 -0
  332. package/.codex/skills/cloudflare/references/turnstile/configuration.md +19 -0
  333. package/.codex/skills/cloudflare/references/turnstile/gotchas.md +27 -0
  334. package/.codex/skills/cloudflare/references/turnstile/patterns.md +41 -0
  335. package/.codex/skills/cloudflare/references/vectorize/README.md +682 -0
  336. package/.codex/skills/cloudflare/references/waf/README.md +14 -0
  337. package/.codex/skills/cloudflare/references/waf/api.md +3 -0
  338. package/.codex/skills/cloudflare/references/waf/configuration.md +44 -0
  339. package/.codex/skills/cloudflare/references/waf/gotchas.md +24 -0
  340. package/.codex/skills/cloudflare/references/waf/patterns.md +29 -0
  341. package/.codex/skills/cloudflare/references/web-analytics/README.md +19 -0
  342. package/.codex/skills/cloudflare/references/web-analytics/api.md +52 -0
  343. package/.codex/skills/cloudflare/references/web-analytics/configuration.md +31 -0
  344. package/.codex/skills/cloudflare/references/web-analytics/gotchas.md +28 -0
  345. package/.codex/skills/cloudflare/references/web-analytics/patterns.md +52 -0
  346. package/.codex/skills/cloudflare/references/workerd/README.md +47 -0
  347. package/.codex/skills/cloudflare/references/workerd/api.md +199 -0
  348. package/.codex/skills/cloudflare/references/workerd/configuration.md +185 -0
  349. package/.codex/skills/cloudflare/references/workerd/gotchas.md +203 -0
  350. package/.codex/skills/cloudflare/references/workerd/patterns.md +216 -0
  351. package/.codex/skills/cloudflare/references/workers/README.md +96 -0
  352. package/.codex/skills/cloudflare/references/workers/api.md +137 -0
  353. package/.codex/skills/cloudflare/references/workers/configuration.md +147 -0
  354. package/.codex/skills/cloudflare/references/workers/gotchas.md +99 -0
  355. package/.codex/skills/cloudflare/references/workers/patterns.md +149 -0
  356. package/.codex/skills/cloudflare/references/workers-ai/README.md +116 -0
  357. package/.codex/skills/cloudflare/references/workers-for-platforms/README.md +48 -0
  358. package/.codex/skills/cloudflare/references/workers-for-platforms/api.md +169 -0
  359. package/.codex/skills/cloudflare/references/workers-for-platforms/configuration.md +136 -0
  360. package/.codex/skills/cloudflare/references/workers-for-platforms/gotchas.md +130 -0
  361. package/.codex/skills/cloudflare/references/workers-for-platforms/patterns.md +170 -0
  362. package/.codex/skills/cloudflare/references/workers-playground/README.md +16 -0
  363. package/.codex/skills/cloudflare/references/workers-playground/api.md +20 -0
  364. package/.codex/skills/cloudflare/references/workers-playground/configuration.md +3 -0
  365. package/.codex/skills/cloudflare/references/workers-playground/gotchas.md +35 -0
  366. package/.codex/skills/cloudflare/references/workers-playground/patterns.md +42 -0
  367. package/.codex/skills/cloudflare/references/workers-vpc/README.md +579 -0
  368. package/.codex/skills/cloudflare/references/workflows/README.md +62 -0
  369. package/.codex/skills/cloudflare/references/workflows/api.md +125 -0
  370. package/.codex/skills/cloudflare/references/workflows/configuration.md +177 -0
  371. package/.codex/skills/cloudflare/references/workflows/gotchas.md +136 -0
  372. package/.codex/skills/cloudflare/references/workflows/patterns.md +132 -0
  373. package/.codex/skills/cloudflare/references/wrangler/README.md +90 -0
  374. package/.codex/skills/cloudflare/references/wrangler/api.md +140 -0
  375. package/.codex/skills/cloudflare/references/wrangler/configuration.md +128 -0
  376. package/.codex/skills/cloudflare/references/wrangler/gotchas.md +93 -0
  377. package/.codex/skills/cloudflare/references/wrangler/patterns.md +150 -0
  378. package/.codex/skills/cloudflare/references/zaraz/README.md +360 -0
  379. package/.codex/skills/code-navigation/SKILL.md +130 -0
  380. package/.codex/skills/code-review/SKILL.md +208 -0
  381. package/.codex/skills/compaction/SKILL.md +317 -0
  382. package/.codex/skills/condition-based-waiting/SKILL.md +123 -0
  383. package/.codex/skills/condition-based-waiting/example.ts +158 -0
  384. package/.codex/skills/context-engineering/SKILL.md +176 -0
  385. package/.codex/skills/context-initialization/SKILL.md +70 -0
  386. package/.codex/skills/context-management/SKILL.md +163 -0
  387. package/.codex/skills/core-data-expert/SKILL.md +93 -0
  388. package/.codex/skills/core-data-expert/references/batch-operations.md +543 -0
  389. package/.codex/skills/core-data-expert/references/cloudkit-integration.md +259 -0
  390. package/.codex/skills/core-data-expert/references/concurrency.md +522 -0
  391. package/.codex/skills/core-data-expert/references/fetch-requests.md +643 -0
  392. package/.codex/skills/core-data-expert/references/glossary.md +233 -0
  393. package/.codex/skills/core-data-expert/references/migration.md +393 -0
  394. package/.codex/skills/core-data-expert/references/model-configuration.md +597 -0
  395. package/.codex/skills/core-data-expert/references/performance.md +300 -0
  396. package/.codex/skills/core-data-expert/references/persistent-history.md +553 -0
  397. package/.codex/skills/core-data-expert/references/project-audit.md +60 -0
  398. package/.codex/skills/core-data-expert/references/saving.md +574 -0
  399. package/.codex/skills/core-data-expert/references/stack-setup.md +625 -0
  400. package/.codex/skills/core-data-expert/references/testing.md +300 -0
  401. package/.codex/skills/core-data-expert/references/threading.md +589 -0
  402. package/.codex/skills/debugging/SKILL.md +203 -0
  403. package/.codex/skills/deep-research/SKILL.md +384 -0
  404. package/.codex/skills/defense-in-depth/SKILL.md +166 -0
  405. package/.codex/skills/dependency-upgrades/SKILL.md +198 -0
  406. package/.codex/skills/design-system-audit/SKILL.md +153 -0
  407. package/.codex/skills/development-lifecycle/SKILL.md +356 -0
  408. package/.codex/skills/dispatching-parallel-agents/SKILL.md +191 -0
  409. package/.codex/skills/docs-handoff/SKILL.md +175 -0
  410. package/.codex/skills/executing-plans/SKILL.md +247 -0
  411. package/.codex/skills/figma/SKILL.md +224 -0
  412. package/.codex/skills/figma/mcp.json +6 -0
  413. package/.codex/skills/finishing-a-development-branch/SKILL.md +357 -0
  414. package/.codex/skills/frontend-design/SKILL.md +176 -0
  415. package/.codex/skills/gemini-large-context/SKILL.md +216 -0
  416. package/.codex/skills/git-pr-prep/SKILL.md +179 -0
  417. package/.codex/skills/index-knowledge/SKILL.md +413 -0
  418. package/.codex/skills/jira/SKILL.md +283 -0
  419. package/.codex/skills/jira/mcp.json +6 -0
  420. package/.codex/skills/memory-system/SKILL.md +93 -0
  421. package/.codex/skills/mockup-to-code/SKILL.md +184 -0
  422. package/.codex/skills/mqdh/SKILL.md +171 -0
  423. package/.codex/skills/obsidian/SKILL.md +187 -0
  424. package/.codex/skills/obsidian/mcp.json +22 -0
  425. package/.codex/skills/opensrc/SKILL.md +127 -0
  426. package/.codex/skills/opensrc/references/architecture.md +176 -0
  427. package/.codex/skills/opensrc/references/cli-usage.md +176 -0
  428. package/.codex/skills/opensrc/references/registry-support.md +137 -0
  429. package/.codex/skills/pdf-extract/SKILL.md +438 -0
  430. package/.codex/skills/playwright/SKILL.md +320 -0
  431. package/.codex/skills/playwright/mcp.json +16 -0
  432. package/.codex/skills/playwriter/SKILL.md +158 -0
  433. package/.codex/skills/polar/SKILL.md +102 -0
  434. package/.codex/skills/prd/SKILL.md +146 -0
  435. package/.codex/skills/prd-task/SKILL.md +182 -0
  436. package/.codex/skills/prd-task/references/prd-schema.json +124 -0
  437. package/.codex/skills/prompt-leverage/SKILL.md +69 -0
  438. package/.codex/skills/prompt-leverage/agents/openai.yaml +4 -0
  439. package/.codex/skills/prompt-leverage/references/framework.md +91 -0
  440. package/.codex/skills/prompt-leverage/scripts/augment_prompt.py +114 -0
  441. package/.codex/skills/ralph/SKILL.md +296 -0
  442. package/.codex/skills/react-best-practices/AGENTS.md +2410 -0
  443. package/.codex/skills/react-best-practices/README.md +123 -0
  444. package/.codex/skills/react-best-practices/SKILL.md +133 -0
  445. package/.codex/skills/react-best-practices/metadata.json +15 -0
  446. package/.codex/skills/react-best-practices/rules/_sections.md +46 -0
  447. package/.codex/skills/react-best-practices/rules/_template.md +28 -0
  448. package/.codex/skills/react-best-practices/rules/advanced-event-handler-refs.md +55 -0
  449. package/.codex/skills/react-best-practices/rules/advanced-use-latest.md +49 -0
  450. package/.codex/skills/react-best-practices/rules/async-api-routes.md +38 -0
  451. package/.codex/skills/react-best-practices/rules/async-defer-await.md +80 -0
  452. package/.codex/skills/react-best-practices/rules/async-dependencies.md +36 -0
  453. package/.codex/skills/react-best-practices/rules/async-parallel.md +28 -0
  454. package/.codex/skills/react-best-practices/rules/async-suspense-boundaries.md +99 -0
  455. package/.codex/skills/react-best-practices/rules/bundle-barrel-imports.md +59 -0
  456. package/.codex/skills/react-best-practices/rules/bundle-conditional.md +31 -0
  457. package/.codex/skills/react-best-practices/rules/bundle-defer-third-party.md +49 -0
  458. package/.codex/skills/react-best-practices/rules/bundle-dynamic-imports.md +35 -0
  459. package/.codex/skills/react-best-practices/rules/bundle-preload.md +50 -0
  460. package/.codex/skills/react-best-practices/rules/client-event-listeners.md +74 -0
  461. package/.codex/skills/react-best-practices/rules/client-localstorage-schema.md +71 -0
  462. package/.codex/skills/react-best-practices/rules/client-passive-event-listeners.md +48 -0
  463. package/.codex/skills/react-best-practices/rules/client-swr-dedup.md +56 -0
  464. package/.codex/skills/react-best-practices/rules/js-batch-dom-css.md +82 -0
  465. package/.codex/skills/react-best-practices/rules/js-cache-function-results.md +80 -0
  466. package/.codex/skills/react-best-practices/rules/js-cache-property-access.md +28 -0
  467. package/.codex/skills/react-best-practices/rules/js-cache-storage.md +70 -0
  468. package/.codex/skills/react-best-practices/rules/js-combine-iterations.md +32 -0
  469. package/.codex/skills/react-best-practices/rules/js-early-exit.md +50 -0
  470. package/.codex/skills/react-best-practices/rules/js-hoist-regexp.md +45 -0
  471. package/.codex/skills/react-best-practices/rules/js-index-maps.md +37 -0
  472. package/.codex/skills/react-best-practices/rules/js-length-check-first.md +49 -0
  473. package/.codex/skills/react-best-practices/rules/js-min-max-loop.md +82 -0
  474. package/.codex/skills/react-best-practices/rules/js-set-map-lookups.md +24 -0
  475. package/.codex/skills/react-best-practices/rules/js-tosorted-immutable.md +57 -0
  476. package/.codex/skills/react-best-practices/rules/rendering-activity.md +26 -0
  477. package/.codex/skills/react-best-practices/rules/rendering-animate-svg-wrapper.md +47 -0
  478. package/.codex/skills/react-best-practices/rules/rendering-conditional-render.md +40 -0
  479. package/.codex/skills/react-best-practices/rules/rendering-content-visibility.md +38 -0
  480. package/.codex/skills/react-best-practices/rules/rendering-hoist-jsx.md +46 -0
  481. package/.codex/skills/react-best-practices/rules/rendering-hydration-no-flicker.md +82 -0
  482. package/.codex/skills/react-best-practices/rules/rendering-svg-precision.md +28 -0
  483. package/.codex/skills/react-best-practices/rules/rerender-defer-reads.md +39 -0
  484. package/.codex/skills/react-best-practices/rules/rerender-dependencies.md +45 -0
  485. package/.codex/skills/react-best-practices/rules/rerender-derived-state.md +29 -0
  486. package/.codex/skills/react-best-practices/rules/rerender-functional-setstate.md +74 -0
  487. package/.codex/skills/react-best-practices/rules/rerender-lazy-state-init.md +58 -0
  488. package/.codex/skills/react-best-practices/rules/rerender-memo.md +44 -0
  489. package/.codex/skills/react-best-practices/rules/rerender-transitions.md +40 -0
  490. package/.codex/skills/react-best-practices/rules/server-after-nonblocking.md +73 -0
  491. package/.codex/skills/react-best-practices/rules/server-cache-lru.md +41 -0
  492. package/.codex/skills/react-best-practices/rules/server-cache-react.md +76 -0
  493. package/.codex/skills/react-best-practices/rules/server-parallel-fetching.md +83 -0
  494. package/.codex/skills/react-best-practices/rules/server-serialization.md +38 -0
  495. package/.codex/skills/receiving-code-review/SKILL.md +252 -0
  496. package/.codex/skills/refactoring/SKILL.md +217 -0
  497. package/.codex/skills/repo-orientation/SKILL.md +156 -0
  498. package/.codex/skills/requesting-code-review/SKILL.md +397 -0
  499. package/.codex/skills/resend/SKILL.md +177 -0
  500. package/.codex/skills/resend/references/react-email.md +287 -0
  501. package/.codex/skills/resend/references/receive-email.md +248 -0
  502. package/.codex/skills/resend/references/send-email.md +318 -0
  503. package/.codex/skills/root-cause-tracing/SKILL.md +192 -0
  504. package/.codex/skills/root-cause-tracing/find-polluter.sh +63 -0
  505. package/.codex/skills/safe-implementation/SKILL.md +205 -0
  506. package/.codex/skills/session-management/SKILL.md +10 -0
  507. package/.codex/skills/sharing-skills/SKILL.md +214 -0
  508. package/.codex/skills/skill-creator/SKILL.md +156 -0
  509. package/.codex/skills/source-code-research/SKILL.md +293 -0
  510. package/.codex/skills/source-code-research/references/analysis-tips.md +43 -0
  511. package/.codex/skills/source-code-research/references/anti-patterns.md +36 -0
  512. package/.codex/skills/source-code-research/references/common-patterns.md +57 -0
  513. package/.codex/skills/source-code-research/references/example-workflow.md +60 -0
  514. package/.codex/skills/source-code-research/references/further-reading.md +5 -0
  515. package/.codex/skills/source-code-research/references/source-structure.md +45 -0
  516. package/.codex/skills/stitch/SKILL.md +147 -0
  517. package/.codex/skills/stitch/mcp.json +9 -0
  518. package/.codex/skills/structured-edit/SKILL.md +181 -0
  519. package/.codex/skills/subagent-driven-development/SKILL.md +237 -0
  520. package/.codex/skills/supabase/SKILL.md +130 -0
  521. package/.codex/skills/supabase/mcp.json +27 -0
  522. package/.codex/skills/supabase-postgres-best-practices/AGENTS.md +1490 -0
  523. package/.codex/skills/supabase-postgres-best-practices/SKILL.md +65 -0
  524. package/.codex/skills/supabase-postgres-best-practices/rules/advanced-full-text-search.md +55 -0
  525. package/.codex/skills/supabase-postgres-best-practices/rules/advanced-jsonb-indexing.md +49 -0
  526. package/.codex/skills/supabase-postgres-best-practices/rules/conn-idle-timeout.md +46 -0
  527. package/.codex/skills/supabase-postgres-best-practices/rules/conn-limits.md +44 -0
  528. package/.codex/skills/supabase-postgres-best-practices/rules/conn-pooling.md +41 -0
  529. package/.codex/skills/supabase-postgres-best-practices/rules/conn-prepared-statements.md +46 -0
  530. package/.codex/skills/supabase-postgres-best-practices/rules/data-batch-inserts.md +54 -0
  531. package/.codex/skills/supabase-postgres-best-practices/rules/data-n-plus-one.md +53 -0
  532. package/.codex/skills/supabase-postgres-best-practices/rules/data-pagination.md +50 -0
  533. package/.codex/skills/supabase-postgres-best-practices/rules/data-upsert.md +50 -0
  534. package/.codex/skills/supabase-postgres-best-practices/rules/lock-advisory.md +56 -0
  535. package/.codex/skills/supabase-postgres-best-practices/rules/lock-deadlock-prevention.md +68 -0
  536. package/.codex/skills/supabase-postgres-best-practices/rules/lock-short-transactions.md +50 -0
  537. package/.codex/skills/supabase-postgres-best-practices/rules/lock-skip-locked.md +54 -0
  538. package/.codex/skills/supabase-postgres-best-practices/rules/monitor-explain-analyze.md +45 -0
  539. package/.codex/skills/supabase-postgres-best-practices/rules/monitor-pg-stat-statements.md +55 -0
  540. package/.codex/skills/supabase-postgres-best-practices/rules/monitor-vacuum-analyze.md +55 -0
  541. package/.codex/skills/supabase-postgres-best-practices/rules/query-composite-indexes.md +44 -0
  542. package/.codex/skills/supabase-postgres-best-practices/rules/query-covering-indexes.md +40 -0
  543. package/.codex/skills/supabase-postgres-best-practices/rules/query-index-types.md +45 -0
  544. package/.codex/skills/supabase-postgres-best-practices/rules/query-missing-indexes.md +43 -0
  545. package/.codex/skills/supabase-postgres-best-practices/rules/query-partial-indexes.md +45 -0
  546. package/.codex/skills/supabase-postgres-best-practices/rules/schema-data-types.md +46 -0
  547. package/.codex/skills/supabase-postgres-best-practices/rules/schema-foreign-key-indexes.md +59 -0
  548. package/.codex/skills/supabase-postgres-best-practices/rules/schema-lowercase-identifiers.md +55 -0
  549. package/.codex/skills/supabase-postgres-best-practices/rules/schema-partitioning.md +55 -0
  550. package/.codex/skills/supabase-postgres-best-practices/rules/schema-primary-keys.md +61 -0
  551. package/.codex/skills/supabase-postgres-best-practices/rules/security-privileges.md +54 -0
  552. package/.codex/skills/supabase-postgres-best-practices/rules/security-rls-basics.md +50 -0
  553. package/.codex/skills/supabase-postgres-best-practices/rules/security-rls-performance.md +57 -0
  554. package/.codex/skills/swarm-coordination/SKILL.md +179 -0
  555. package/.codex/skills/swarm-coordination/references/architecture.md +39 -0
  556. package/.codex/skills/swarm-coordination/references/delegation-worker-protocol.md +145 -0
  557. package/.codex/skills/swarm-coordination/references/dependency-graph.md +50 -0
  558. package/.codex/skills/swarm-coordination/references/drift-check.md +90 -0
  559. package/.codex/skills/swarm-coordination/references/integration-beads.md +20 -0
  560. package/.codex/skills/swarm-coordination/references/launch-flow.md +186 -0
  561. package/.codex/skills/swarm-coordination/references/reconciler.md +172 -0
  562. package/.codex/skills/swarm-coordination/references/tier-enforcement.md +78 -0
  563. package/.codex/skills/swarm-coordination/references/tmux-integration.md +134 -0
  564. package/.codex/skills/swift-concurrency/SKILL.md +266 -0
  565. package/.codex/skills/swift-concurrency/references/actors.md +640 -0
  566. package/.codex/skills/swift-concurrency/references/async-algorithms.md +822 -0
  567. package/.codex/skills/swift-concurrency/references/async-await-basics.md +249 -0
  568. package/.codex/skills/swift-concurrency/references/async-sequences.md +670 -0
  569. package/.codex/skills/swift-concurrency/references/core-data.md +533 -0
  570. package/.codex/skills/swift-concurrency/references/glossary.md +128 -0
  571. package/.codex/skills/swift-concurrency/references/linting.md +142 -0
  572. package/.codex/skills/swift-concurrency/references/memory-management.md +542 -0
  573. package/.codex/skills/swift-concurrency/references/migration.md +1076 -0
  574. package/.codex/skills/swift-concurrency/references/performance.md +574 -0
  575. package/.codex/skills/swift-concurrency/references/sendable.md +578 -0
  576. package/.codex/skills/swift-concurrency/references/tasks.md +604 -0
  577. package/.codex/skills/swift-concurrency/references/testing.md +565 -0
  578. package/.codex/skills/swift-concurrency/references/threading.md +452 -0
  579. package/.codex/skills/swiftui-expert-skill/SKILL.md +329 -0
  580. package/.codex/skills/swiftui-expert-skill/references/animation-advanced.md +351 -0
  581. package/.codex/skills/swiftui-expert-skill/references/animation-basics.md +284 -0
  582. package/.codex/skills/swiftui-expert-skill/references/animation-transitions.md +326 -0
  583. package/.codex/skills/swiftui-expert-skill/references/image-optimization.md +286 -0
  584. package/.codex/skills/swiftui-expert-skill/references/layout-best-practices.md +312 -0
  585. package/.codex/skills/swiftui-expert-skill/references/liquid-glass.md +377 -0
  586. package/.codex/skills/swiftui-expert-skill/references/list-patterns.md +153 -0
  587. package/.codex/skills/swiftui-expert-skill/references/modern-apis.md +400 -0
  588. package/.codex/skills/swiftui-expert-skill/references/performance-patterns.md +377 -0
  589. package/.codex/skills/swiftui-expert-skill/references/scroll-patterns.md +305 -0
  590. package/.codex/skills/swiftui-expert-skill/references/sheet-navigation-patterns.md +292 -0
  591. package/.codex/skills/swiftui-expert-skill/references/state-management.md +447 -0
  592. package/.codex/skills/swiftui-expert-skill/references/text-formatting.md +285 -0
  593. package/.codex/skills/swiftui-expert-skill/references/view-structure.md +276 -0
  594. package/.codex/skills/systematic-debugging/SKILL.md +402 -0
  595. package/.codex/skills/task-planning/SKILL.md +205 -0
  596. package/.codex/skills/test-driven-development/SKILL.md +388 -0
  597. package/.codex/skills/test-strategy/SKILL.md +186 -0
  598. package/.codex/skills/testing-anti-patterns/SKILL.md +320 -0
  599. package/.codex/skills/testing-skills-with-subagents/SKILL.md +405 -0
  600. package/.codex/skills/tilth-cli/SKILL.md +180 -0
  601. package/.codex/skills/tool-priority/SKILL.md +299 -0
  602. package/.codex/skills/ui-inspiration-scout/SKILL.md +203 -0
  603. package/.codex/skills/ui-ux-research/SKILL.md +35 -0
  604. package/.codex/skills/using-git-worktrees/SKILL.md +259 -0
  605. package/.codex/skills/using-skills/SKILL.md +117 -0
  606. package/.codex/skills/v0/SKILL.md +158 -0
  607. package/.codex/skills/v0/mcp.json +6 -0
  608. package/.codex/skills/v1-run/SKILL.md +175 -0
  609. package/.codex/skills/v1-run/mcp.json +6 -0
  610. package/.codex/skills/vercel-deploy-claimable/SKILL.md +124 -0
  611. package/.codex/skills/vercel-deploy-claimable/scripts/deploy.sh +249 -0
  612. package/.codex/skills/verification/SKILL.md +191 -0
  613. package/.codex/skills/verification-before-completion/SKILL.md +236 -0
  614. package/.codex/skills/visual-analysis/SKILL.md +154 -0
  615. package/.codex/skills/web-design-guidelines/SKILL.md +46 -0
  616. package/.codex/skills/writing-plans/SKILL.md +320 -0
  617. package/.codex/skills/writing-skills/SKILL.md +287 -0
  618. package/.codex/skills/writing-skills/anthropic-best-practices.md +1173 -0
  619. package/.codex/skills/writing-skills/graphviz-conventions.dot +172 -0
  620. package/.codex/skills/writing-skills/persuasion-principles.md +220 -0
  621. package/.codex/skills/writing-skills/references/anti-patterns.md +25 -0
  622. package/.codex/skills/writing-skills/references/claude-search-optimization.md +140 -0
  623. package/.codex/skills/writing-skills/references/discovery-workflow.md +11 -0
  624. package/.codex/skills/writing-skills/references/file-organization.md +32 -0
  625. package/.codex/skills/writing-skills/references/flowcharts-and-examples.md +57 -0
  626. package/.codex/skills/writing-skills/references/rationalization-hardening.md +75 -0
  627. package/.codex/skills/writing-skills/references/testing-skill-types.md +52 -0
  628. package/.template-manifest.json +631 -0
  629. package/AGENTS.md +719 -0
  630. package/AGENTS.override.md.example +7 -0
  631. package/CHANGELOG.md +28 -0
  632. package/LICENSE +21 -0
  633. package/README.md +641 -0
  634. package/bin/codexkit +148 -0
  635. package/install/bead-close.sh +20 -0
  636. package/install/bead-search.sh +18 -0
  637. package/install/bead-start.sh +20 -0
  638. package/install/bead-sync.sh +19 -0
  639. package/install/bead-verify.sh +20 -0
  640. package/install/generate-manifest.sh +55 -0
  641. package/install/install-global.sh +150 -0
  642. package/install/install-project.sh +704 -0
  643. package/install/install-remote.sh +152 -0
  644. package/install/patch.sh +478 -0
  645. package/install/plugin.sh +565 -0
  646. package/install/run-codex.sh +68 -0
  647. package/install/template.sh +620 -0
  648. package/install/validate.sh +653 -0
  649. package/package.json +39 -0
  650. package/templates/global/.codex-config-template.toml +87 -0
  651. package/templates/global/AGENTS.override.md +18 -0
  652. package/templates/global/README.md +29 -0
  653. package/templates/project/.codex-config-template.toml +26 -0
  654. package/templates/project/AGENTS.md.template +27 -0
  655. package/templates/project/README.md +24 -0
@@ -0,0 +1,653 @@
1
+ #!/bin/bash
2
+ set -euo pipefail
3
+
4
+ SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
5
+ REPO_DIR="$(dirname "$SCRIPT_DIR")"
6
+ PASS=0
7
+ FAIL=0
8
+ WARN=0
9
+ GLOBAL_CODEX_DIR="${HOME}/.codex"
10
+ GLOBAL_AGENT_BRIDGE="${HOME}/.agents/skills"
11
+ IS_SOURCE_REPO=false
12
+ if [ -d ".git" ] && [ -f "package.json" ]; then
13
+ IS_SOURCE_REPO=true
14
+ fi
15
+
16
+ check() {
17
+ local label="$1"
18
+ local result="$2"
19
+ if [ "$result" = "pass" ]; then
20
+ echo " ✓ $label"
21
+ PASS=$((PASS + 1))
22
+ elif [ "$result" = "warn" ]; then
23
+ echo " ⚠ $label"
24
+ WARN=$((WARN + 1))
25
+ else
26
+ echo " ✗ $label"
27
+ FAIL=$((FAIL + 1))
28
+ fi
29
+ }
30
+
31
+ check_max_lines() {
32
+ local file="$1"
33
+ local max_lines="$2"
34
+ local label="$3"
35
+
36
+ if [ ! -f "$file" ]; then
37
+ check "$label missing" "fail"
38
+ return
39
+ fi
40
+
41
+ local lines
42
+ lines=$(wc -l < "$file" | tr -d ' ')
43
+ if [ "$lines" -le "$max_lines" ]; then
44
+ check "$label within budget ($lines/$max_lines lines)" "pass"
45
+ else
46
+ check "$label exceeds budget ($lines/$max_lines lines)" "warn"
47
+ fi
48
+ }
49
+
50
+ have_root_shared_inventory() {
51
+ [ -f "$GLOBAL_CODEX_DIR/config.toml" ] &&
52
+ [ -d "$GLOBAL_CODEX_DIR/agents" ] &&
53
+ [ -d "$GLOBAL_CODEX_DIR/prompts" ] &&
54
+ [ -d "$GLOBAL_CODEX_DIR/skills" ]
55
+ }
56
+
57
+ project_has_local_shared_inventory() {
58
+ [ -d ".codex/agents" ] || [ -d ".codex/prompts" ] || [ -d ".codex/skills" ] || [ -e ".agents/skills" ]
59
+ }
60
+
61
+ path_sha256() {
62
+ shasum -a 256 "$1" 2>/dev/null | cut -d' ' -f1
63
+ }
64
+
65
+ classify_local_shared_files() {
66
+ local local_root="$1"
67
+ local root_root="$2"
68
+ local fallback_root="$3"
69
+ local rel duplicate_count override_count unmatched_count root_file fallback_file
70
+ duplicate_count=0
71
+ override_count=0
72
+ unmatched_count=0
73
+
74
+ [ -d "$local_root" ] || {
75
+ printf '0 0 0\n'
76
+ return 0
77
+ }
78
+
79
+ while IFS= read -r local_file; do
80
+ rel="${local_file#$local_root/}"
81
+ root_file="$root_root/$rel"
82
+ fallback_file="$fallback_root/$rel"
83
+
84
+ if [ -f "$root_file" ]; then
85
+ if [ "$(path_sha256 "$local_file")" = "$(path_sha256 "$root_file")" ]; then
86
+ duplicate_count=$((duplicate_count + 1))
87
+ else
88
+ override_count=$((override_count + 1))
89
+ fi
90
+ elif [ -f "$fallback_file" ]; then
91
+ if [ "$(path_sha256 "$local_file")" = "$(path_sha256 "$fallback_file")" ]; then
92
+ duplicate_count=$((duplicate_count + 1))
93
+ else
94
+ override_count=$((override_count + 1))
95
+ fi
96
+ else
97
+ unmatched_count=$((unmatched_count + 1))
98
+ fi
99
+ done < <(find "$local_root" -type f | sort)
100
+
101
+ printf '%s %s %s\n' "$duplicate_count" "$override_count" "$unmatched_count"
102
+ }
103
+
104
+ patch_inventory_counts() {
105
+ local patches_dir="Codexkit_patches"
106
+ local enabled_count=0
107
+ local disabled_count=0
108
+ local invalid_count=0
109
+ local metadata enabled
110
+
111
+ [ -d "$patches_dir" ] || {
112
+ printf '0 0 0\n'
113
+ return 0
114
+ }
115
+
116
+ while IFS= read -r metadata; do
117
+ if enabled="$(python3 -c 'import json,sys; print(str(json.load(open(sys.argv[1])).get("enabled", True)).lower())' "$metadata" 2>/dev/null)"; then
118
+ if [ "$enabled" = "true" ]; then
119
+ enabled_count=$((enabled_count + 1))
120
+ else
121
+ disabled_count=$((disabled_count + 1))
122
+ fi
123
+ else
124
+ invalid_count=$((invalid_count + 1))
125
+ fi
126
+ done < <(find "$patches_dir" -mindepth 2 -maxdepth 2 -type f -name metadata.json | sort)
127
+
128
+ printf '%s %s %s\n' "$enabled_count" "$disabled_count" "$invalid_count"
129
+ }
130
+
131
+ ROOT_SHARED_AVAILABLE=false
132
+ if have_root_shared_inventory; then
133
+ ROOT_SHARED_AVAILABLE=true
134
+ fi
135
+
136
+ PROJECT_MODE="project-only"
137
+ if $ROOT_SHARED_AVAILABLE && project_has_local_shared_inventory; then
138
+ PROJECT_MODE="mixed-legacy"
139
+ elif $ROOT_SHARED_AVAILABLE; then
140
+ PROJECT_MODE="root-shared"
141
+ elif project_has_local_shared_inventory; then
142
+ PROJECT_MODE="full-local"
143
+ fi
144
+
145
+ echo "=== Codexkit Validation ==="
146
+ echo ""
147
+
148
+ # ─── Ownership ───────────────────────────────────────────────────────
149
+ echo "Ownership:"
150
+ check "Project mode: $PROJECT_MODE" "pass"
151
+ if $ROOT_SHARED_AVAILABLE; then
152
+ check "Root shared inventory available at ~/.codex" "pass"
153
+ elif $IS_SOURCE_REPO; then
154
+ check "Root shared inventory unavailable (expected for source-repo validation)" "pass"
155
+ else
156
+ check "Root shared inventory unavailable" "warn"
157
+ fi
158
+
159
+ case "$PROJECT_MODE" in
160
+ root-shared)
161
+ echo " · Mode guide: project keeps only project-scoped files; shared agents/prompts/skills come from ~/.codex"
162
+ ;;
163
+ full-local)
164
+ echo " · Mode guide: project owns its shared inventory locally"
165
+ ;;
166
+ mixed-legacy)
167
+ echo " · Mode guide: ~/.codex shared inventory exists, but project still has local shared files"
168
+ ;;
169
+ *)
170
+ echo " · Mode guide: project is missing both root shared inventory and local shared inventory"
171
+ ;;
172
+ esac
173
+
174
+ CLASSIFY_ROOT_AGENTS="$REPO_DIR/.codex/agents"
175
+ CLASSIFY_ROOT_PROMPTS="$REPO_DIR/.codex/prompts"
176
+ CLASSIFY_ROOT_SKILLS="$REPO_DIR/.codex/skills"
177
+ if $ROOT_SHARED_AVAILABLE; then
178
+ CLASSIFY_ROOT_AGENTS="$GLOBAL_CODEX_DIR/agents"
179
+ CLASSIFY_ROOT_PROMPTS="$GLOBAL_CODEX_DIR/prompts"
180
+ CLASSIFY_ROOT_SKILLS="$GLOBAL_CODEX_DIR/skills"
181
+ fi
182
+
183
+ read -r AGENT_DUPLICATES AGENT_OVERRIDES AGENT_UNMATCHED < <(classify_local_shared_files ".codex/agents" "$CLASSIFY_ROOT_AGENTS" "$REPO_DIR/.codex/agents")
184
+ read -r PROMPT_DUPLICATES PROMPT_OVERRIDES PROMPT_UNMATCHED < <(classify_local_shared_files ".codex/prompts" "$CLASSIFY_ROOT_PROMPTS" "$REPO_DIR/.codex/prompts")
185
+ read -r SKILL_DUPLICATES SKILL_OVERRIDES SKILL_UNMATCHED < <(classify_local_shared_files ".codex/skills" "$CLASSIFY_ROOT_SKILLS" "$REPO_DIR/.codex/skills")
186
+
187
+ LOCAL_SHARED_DUPLICATES=$((AGENT_DUPLICATES + PROMPT_DUPLICATES + SKILL_DUPLICATES))
188
+ LOCAL_SHARED_OVERRIDES=$((AGENT_OVERRIDES + PROMPT_OVERRIDES + SKILL_OVERRIDES))
189
+ LOCAL_SHARED_UNMATCHED=$((AGENT_UNMATCHED + PROMPT_UNMATCHED + SKILL_UNMATCHED))
190
+
191
+ if [ "$LOCAL_SHARED_DUPLICATES" -gt 0 ] && ! $IS_SOURCE_REPO; then
192
+ check "Legacy local shared duplicates detected ($LOCAL_SHARED_DUPLICATES files)" "warn"
193
+ else
194
+ if $IS_SOURCE_REPO; then
195
+ check "Source repo local shared inventory is canonical (duplicate count informational: $LOCAL_SHARED_DUPLICATES)" "pass"
196
+ else
197
+ check "No legacy local shared duplicates detected" "pass"
198
+ fi
199
+ fi
200
+
201
+ if [ "$LOCAL_SHARED_OVERRIDES" -gt 0 ]; then
202
+ check "Local shared overrides detected ($LOCAL_SHARED_OVERRIDES files, consider patches)" "warn"
203
+ else
204
+ check "No local shared overrides detected" "pass"
205
+ fi
206
+
207
+ if [ "$LOCAL_SHARED_UNMATCHED" -gt 0 ]; then
208
+ check "Unmatched local shared files detected ($LOCAL_SHARED_UNMATCHED files)" "warn"
209
+ else
210
+ check "No unmatched local shared files detected" "pass"
211
+ fi
212
+
213
+ echo " · Shared agents : duplicates=$AGENT_DUPLICATES overrides=$AGENT_OVERRIDES unmatched=$AGENT_UNMATCHED"
214
+ echo " · Shared prompts: duplicates=$PROMPT_DUPLICATES overrides=$PROMPT_OVERRIDES unmatched=$PROMPT_UNMATCHED"
215
+ echo " · Shared skills : duplicates=$SKILL_DUPLICATES overrides=$SKILL_OVERRIDES unmatched=$SKILL_UNMATCHED"
216
+
217
+ read -r PATCH_ENABLED PATCH_DISABLED PATCH_INVALID < <(patch_inventory_counts)
218
+ check "Patch inventory: enabled=$PATCH_ENABLED disabled=$PATCH_DISABLED invalid=$PATCH_INVALID" "$([ "$PATCH_INVALID" -eq 0 ] && echo pass || echo warn)"
219
+ echo ""
220
+
221
+ # ─── CLI ─────────────────────────────────────────────────────────
222
+ echo "CLI:"
223
+ if command -v codex &> /dev/null; then
224
+ version=$(codex --version 2>/dev/null || echo "unknown")
225
+ check "Codex CLI installed (version: $version)" "pass"
226
+ else
227
+ check "Codex CLI not found" "warn"
228
+ fi
229
+
230
+ if "$REPO_DIR/bin/codexkit" help | grep -q "codexkit run" 2>/dev/null; then
231
+ check "codexkit help exposes run launcher" "pass"
232
+ else
233
+ check "codexkit help missing run launcher" "fail"
234
+ fi
235
+
236
+ # ─── Core files ──────────────────────────────────────────────────
237
+ echo ""
238
+ echo "Core files:"
239
+
240
+ if [ -f "AGENTS.md" ]; then
241
+ check "AGENTS.md exists at project root" "pass"
242
+ else
243
+ check "AGENTS.md missing (must be at project root)" "fail"
244
+ fi
245
+
246
+ if [ -d ".codex" ]; then
247
+ check ".codex/ directory exists" "pass"
248
+ else
249
+ check ".codex/ directory missing" "fail"
250
+ fi
251
+
252
+ if [ -f ".codex/config.toml" ]; then
253
+ if grep -q '\[profiles\.' ".codex/config.toml" 2>/dev/null; then
254
+ check ".codex/config.toml has [profiles.*] sections" "pass"
255
+ elif grep -q '\[profile\.' ".codex/config.toml" 2>/dev/null; then
256
+ check ".codex/config.toml uses stale [profile.*] — should be [profiles.*]" "fail"
257
+ else
258
+ check ".codex/config.toml exists but may need profiles" "warn"
259
+ fi
260
+ # Check for stale config keys
261
+ if grep -qE '^sandbox\s*=' ".codex/config.toml" 2>/dev/null; then
262
+ check "config.toml uses stale 'sandbox' key — should be 'sandbox_mode'" "fail"
263
+ fi
264
+ if grep -qE '^approval\s*=' ".codex/config.toml" 2>/dev/null; then
265
+ check "config.toml uses stale 'approval' key — should be 'approval_policy'" "fail"
266
+ fi
267
+ else
268
+ check ".codex/config.toml missing" "fail"
269
+ fi
270
+
271
+ if [ -f ".codex/.env.example" ]; then
272
+ check ".codex/.env.example exists" "pass"
273
+ else
274
+ check ".codex/.env.example missing" "fail"
275
+ fi
276
+
277
+ if [ -f ".env.example" ]; then
278
+ check "root .env.example exists (legacy; Codexkit uses .codex/.env.example instead)" "warn"
279
+ else
280
+ check "No legacy root .env.example detected" "pass"
281
+ fi
282
+
283
+ if [ -f ".codex/.env.example" ]; then
284
+ for env_key in EXA_API_KEY CONTEXT7_API_KEY REF_API_KEY; do
285
+ if grep -q "^${env_key}=" ".codex/.env.example" 2>/dev/null; then
286
+ check ".codex/.env.example includes $env_key" "pass"
287
+ else
288
+ check ".codex/.env.example missing $env_key" "fail"
289
+ fi
290
+ done
291
+ fi
292
+
293
+ if [ -f ".codex/.version" ]; then
294
+ check ".codex/.version exists" "pass"
295
+ else
296
+ check ".codex/.version missing" "fail"
297
+ fi
298
+
299
+ if [ -f ".codex/.template-manifest.json" ] || [ -f ".template-manifest.json" ]; then
300
+ check "template manifest exists" "pass"
301
+ else
302
+ check "template manifest missing" "fail"
303
+ fi
304
+
305
+ # ─── Directories ─────────────────────────────────────────────────
306
+ echo ""
307
+ echo "Directories:"
308
+ for dir in context hooks scripts mcp memory plans; do
309
+ if [ -d ".codex/$dir" ]; then
310
+ count=$(find ".codex/$dir" -maxdepth 1 -type f 2>/dev/null | wc -l | tr -d ' ')
311
+ check ".codex/$dir/ exists ($count files)" "pass"
312
+ else
313
+ check ".codex/$dir/ missing" "fail"
314
+ fi
315
+ done
316
+
317
+ for script in audit_memory_hygiene.sh prepare_worklog_archive.sh apply_worklog_archive.sh build_memory_index.sh validate_memory_docs.sh; do
318
+ if [ -x ".codex/scripts/$script" ]; then
319
+ check ".codex/scripts/$script is executable" "pass"
320
+ elif [ -f ".codex/scripts/$script" ]; then
321
+ check ".codex/scripts/$script exists but is not executable" "warn"
322
+ else
323
+ check ".codex/scripts/$script missing" "warn"
324
+ fi
325
+ done
326
+
327
+ if [ -f ".codex/.env" ]; then
328
+ check ".codex/.env exists (launcher-ready MCP secrets file)" "pass"
329
+ elif $IS_SOURCE_REPO; then
330
+ check ".codex/.env missing in source repo (expected; create locally from .codex/.env.example when needed)" "pass"
331
+ else
332
+ check ".codex/.env missing (create from .codex/.env.example before codexkit run for MCP auth)" "warn"
333
+ fi
334
+
335
+ for dir in agents prompts skills; do
336
+ if [ -d ".codex/$dir" ]; then
337
+ if [ "$dir" = "skills" ]; then
338
+ count=$(find ".codex/$dir" -mindepth 2 -maxdepth 2 -type f -name 'SKILL.md' 2>/dev/null | wc -l | tr -d ' ')
339
+ check ".codex/$dir/ exists locally ($count skills)" "pass"
340
+ else
341
+ count=$(find ".codex/$dir" -maxdepth 1 -type f 2>/dev/null | wc -l | tr -d ' ')
342
+ check ".codex/$dir/ exists locally ($count files)" "pass"
343
+ fi
344
+ elif $ROOT_SHARED_AVAILABLE; then
345
+ check ".codex/$dir/ provided by ~/.codex/$dir" "pass"
346
+ else
347
+ check ".codex/$dir/ missing" "fail"
348
+ fi
349
+ done
350
+
351
+ # Check .agents/skills discovery bridge
352
+ if [ -L ".agents/skills" ]; then
353
+ check ".agents/skills symlink exists (Codex CLI discovery)" "pass"
354
+ elif [ -d ".agents/skills" ]; then
355
+ check ".agents/skills exists as directory" "pass"
356
+ else
357
+ if [ -d ".git" ] && [ -d ".codex/skills" ]; then
358
+ check ".agents/skills missing in source repo (canonical-only layout; install-project.sh creates bridge in target projects)" "pass"
359
+ elif [ -L "$GLOBAL_AGENT_BRIDGE" ] || [ -d "$GLOBAL_AGENT_BRIDGE" ] || $ROOT_SHARED_AVAILABLE; then
360
+ check ".agents/skills provided by root shared inventory" "pass"
361
+ else
362
+ check ".agents/skills missing (run install-project.sh to create discovery bridge in target projects)" "warn"
363
+ fi
364
+ fi
365
+
366
+ # ─── Agent roles ─────────────────────────────────────────────────
367
+ echo ""
368
+ echo "Agent roles:"
369
+ for agent in planner reviewer shipper scout vision debugger refactorer builder runner general painter; do
370
+ agent_file=".codex/agents/$agent.toml"
371
+ if [ ! -f "$agent_file" ] && $ROOT_SHARED_AVAILABLE; then
372
+ agent_file="$GLOBAL_CODEX_DIR/agents/$agent.toml"
373
+ fi
374
+
375
+ if [ -f "$agent_file" ]; then
376
+ if grep -q 'developer_instructions' "$agent_file" 2>/dev/null; then
377
+ check "$agent.toml has developer_instructions" "pass"
378
+ else
379
+ check "$agent.toml missing developer_instructions" "fail"
380
+ fi
381
+ else
382
+ check "$agent.toml missing" "warn"
383
+ fi
384
+ done
385
+
386
+ # ─── Skills ──────────────────────────────────────────────────────
387
+ echo ""
388
+ echo "Skills:"
389
+ SKILL_ROOT=".codex/skills"
390
+ if [ ! -d "$SKILL_ROOT" ] && $ROOT_SHARED_AVAILABLE; then
391
+ SKILL_ROOT="$GLOBAL_CODEX_DIR/skills"
392
+ fi
393
+ skill_count=$(find "$SKILL_ROOT" -name "SKILL.md" 2>/dev/null | wc -l | tr -d ' ')
394
+ check "Found $skill_count skills" "pass"
395
+
396
+ # Check frontmatter
397
+ missing_fm=0
398
+ for skill_file in "$SKILL_ROOT"/*/SKILL.md; do
399
+ [ -f "$skill_file" ] || continue
400
+ if ! head -1 "$skill_file" | grep -q '^---$'; then
401
+ missing_fm=$((missing_fm + 1))
402
+ fi
403
+ done
404
+ if [ "$missing_fm" -eq 0 ]; then
405
+ check "All skills have YAML frontmatter" "pass"
406
+ else
407
+ check "$missing_fm skills missing YAML frontmatter" "warn"
408
+ fi
409
+
410
+ # ─── Prompts ─────────────────────────────────────────────────────
411
+ echo ""
412
+ echo "Prompts:"
413
+ PROMPT_ROOT=".codex/prompts"
414
+ if [ ! -d "$PROMPT_ROOT" ] && $ROOT_SHARED_AVAILABLE; then
415
+ PROMPT_ROOT="$GLOBAL_CODEX_DIR/prompts"
416
+ fi
417
+ prompt_count=$(find "$PROMPT_ROOT" -name "*.md" 2>/dev/null | wc -l | tr -d ' ')
418
+ check "Found $prompt_count prompts" "pass"
419
+
420
+ # ─── Context docs ────────────────────────────────────────────────
421
+ echo ""
422
+ echo "Context docs:"
423
+ for doc in index.md architecture.md conventions.md current-priorities.md decision-log.md worklog.md session-context.md; do
424
+ if [ -f ".codex/context/$doc" ]; then
425
+ check ".codex/context/$doc" "pass"
426
+ else
427
+ check ".codex/context/$doc missing" "fail"
428
+ fi
429
+ done
430
+
431
+ # ─── Memory ──────────────────────────────────────────────────────
432
+ echo ""
433
+ echo "Memory:"
434
+ for doc in README.md session-context.md project/user.md project/tech-stack.md project/project.md project/roadmap.md project/state.md project/gotchas.md; do
435
+ if [ -f ".codex/memory/$doc" ]; then
436
+ check ".codex/memory/$doc" "pass"
437
+ else
438
+ check ".codex/memory/$doc missing" "fail"
439
+ fi
440
+ done
441
+
442
+ if [ -f ".codex/context/session-context.md" ]; then
443
+ check "Canonical session context exists at .codex/context/session-context.md" "pass"
444
+ else
445
+ check "Canonical session context missing at .codex/context/session-context.md" "fail"
446
+ fi
447
+
448
+ if [ -f ".codex/memory/_templates/README.md" ]; then
449
+ check ".codex/memory/_templates/README.md" "pass"
450
+ else
451
+ check ".codex/memory/_templates/README.md missing" "warn"
452
+ fi
453
+
454
+ if [ -f ".codex/memory/.index/memory-index.jsonl" ] && [ -f ".codex/memory/.index/memory-index.db" ]; then
455
+ check "Derived memory indexes present at .codex/memory/.index/{memory-index.jsonl,memory-index.db}" "pass"
456
+ else
457
+ check "Derived memory indexes not fully built yet (.codex/memory/.index/)" "warn"
458
+ fi
459
+
460
+ if [ -x ".codex/scripts/validate_memory_docs.sh" ]; then
461
+ if ".codex/scripts/validate_memory_docs.sh" ".codex" >/dev/null 2>&1; then
462
+ check "Memory docs pass structural validation" "pass"
463
+ else
464
+ check "Memory docs fail structural validation" "fail"
465
+ fi
466
+ fi
467
+
468
+ check_max_lines ".codex/context/worklog.md" 200 "worklog.md"
469
+ check_max_lines ".codex/context/decision-log.md" 200 "decision-log.md"
470
+ check_max_lines ".codex/context/session-context.md" 80 "context/session-context.md"
471
+ check_max_lines ".codex/memory/project/state.md" 120 "memory/project/state.md"
472
+
473
+ if [ -f ".codex/memory/session-context.md" ]; then
474
+ legacy_note="Legacy compatibility file only."
475
+ if grep -q "$legacy_note" ".codex/memory/session-context.md" 2>/dev/null; then
476
+ check "Legacy .codex/memory/session-context.md is marked as compatibility-only" "pass"
477
+ else
478
+ check "Legacy .codex/memory/session-context.md is not marked as compatibility-only" "warn"
479
+ fi
480
+ fi
481
+
482
+ # ─── Global install ──────────────────────────────────────────────
483
+ echo ""
484
+ echo "Global install:"
485
+ if [ -d "${HOME}/.codex" ]; then
486
+ check "~/.codex/ directory exists" "pass"
487
+ else
488
+ check "~/.codex/ directory missing (run install-global.sh)" "warn"
489
+ fi
490
+
491
+ if [ -f "${HOME}/.codex/AGENTS.override.md" ]; then
492
+ check "~/.codex/AGENTS.override.md exists" "pass"
493
+ else
494
+ check "~/.codex/AGENTS.override.md missing" "warn"
495
+ fi
496
+
497
+ if [ -f "${HOME}/.codex/config.toml" ]; then
498
+ check "~/.codex/config.toml exists" "pass"
499
+ else
500
+ check "~/.codex/config.toml missing" "warn"
501
+ fi
502
+
503
+ for dir in agents prompts skills; do
504
+ if [ -d "${HOME}/.codex/$dir" ]; then
505
+ check "~/.codex/$dir exists" "pass"
506
+ elif $IS_SOURCE_REPO && [ "$dir" = "agents" ]; then
507
+ check "~/.codex/agents missing (acceptable when validating source repo without global shared-agent install)" "pass"
508
+ else
509
+ check "~/.codex/$dir missing" "warn"
510
+ fi
511
+ done
512
+
513
+ # ─── Stale pattern check ────────────────────────────────────────
514
+ echo ""
515
+ echo "Stale patterns:"
516
+ stale_found=0
517
+
518
+ if grep -rq '\[mcp\.' ".codex/config.toml" 2>/dev/null; then
519
+ # Only flag uncommented lines
520
+ if grep -E '^\[mcp\.' ".codex/config.toml" 2>/dev/null | grep -qv '^#'; then
521
+ check "config.toml has active [mcp.*] — should be [mcp_servers.*]" "fail"
522
+ stale_found=1
523
+ fi
524
+ fi
525
+
526
+ if grep -rq 'system_prompt' ".codex/config.toml" 2>/dev/null; then
527
+ check "config.toml has 'system_prompt' — should be 'config_file'" "fail"
528
+ stale_found=1
529
+ fi
530
+
531
+ if [ "$stale_found" -eq 0 ]; then
532
+ check "No stale patterns detected" "pass"
533
+ fi
534
+
535
+ if grep -R "YOUR_KEY_HERE" README.md docs .codex/mcp >/dev/null 2>&1; then
536
+ check "Docs/examples still contain hardcoded MCP secret placeholders" "fail"
537
+ else
538
+ check "Docs/examples avoid hardcoded MCP secret placeholders" "pass"
539
+ fi
540
+
541
+ if grep -R "exaApiKey=" README.md docs .codex/mcp >/dev/null 2>&1; then
542
+ check "Docs/examples still inline Exa API keys in URLs" "fail"
543
+ else
544
+ check "Docs/examples avoid inline Exa API keys in URLs" "pass"
545
+ fi
546
+
547
+ # ─── Plugins ─────────────────────────────────────────────────────
548
+ echo ""
549
+ echo "Plugins:"
550
+ CODEXKIT_HOME="${CODEXKIT_HOME:-$HOME/.codexkit}"
551
+ if [ -d "$CODEXKIT_HOME/plugins" ]; then
552
+ plugin_count=0
553
+ plugin_invalid=0
554
+ for plugin_dir in "$CODEXKIT_HOME/plugins"/*/; do
555
+ [ -d "$plugin_dir" ] || continue
556
+ plugin_count=$((plugin_count + 1))
557
+ pname=$(basename "$plugin_dir")
558
+ if [ ! -f "$plugin_dir/plugin.json" ]; then
559
+ check "Plugin '$pname' missing plugin.json" "fail"
560
+ plugin_invalid=$((plugin_invalid + 1))
561
+ else
562
+ # Validate required fields
563
+ if python3 -c '
564
+ import json, sys
565
+ p = json.load(open(sys.argv[1]))
566
+ assert p.get("name"), "missing name"
567
+ assert p.get("version"), "missing version"
568
+ ' "$plugin_dir/plugin.json" 2>/dev/null; then
569
+ check "Plugin '$pname' valid" "pass"
570
+ else
571
+ check "Plugin '$pname' invalid plugin.json (needs name + version)" "fail"
572
+ plugin_invalid=$((plugin_invalid + 1))
573
+ fi
574
+ fi
575
+ done
576
+ if [ "$plugin_count" -eq 0 ]; then
577
+ check "No plugins installed" "pass"
578
+ else
579
+ check "Found $plugin_count plugin(s), $plugin_invalid invalid" "$([ "$plugin_invalid" -eq 0 ] && echo pass || echo warn)"
580
+ fi
581
+ else
582
+ check "No plugin directory (~/.codexkit/plugins/)" "pass"
583
+ fi
584
+
585
+ # ─── Templates ───────────────────────────────────────────────────
586
+ echo ""
587
+ echo "Custom templates:"
588
+ if [ -d "$CODEXKIT_HOME/templates" ]; then
589
+ template_count=0
590
+ template_invalid=0
591
+ for tmpl_dir in "$CODEXKIT_HOME/templates"/*/; do
592
+ [ -d "$tmpl_dir" ] || continue
593
+ template_count=$((template_count + 1))
594
+ tname=$(basename "$tmpl_dir")
595
+ if [ ! -f "$tmpl_dir/template.json" ]; then
596
+ check "Template '$tname' missing template.json" "fail"
597
+ template_invalid=$((template_invalid + 1))
598
+ else
599
+ if python3 -c '
600
+ import json, sys
601
+ t = json.load(open(sys.argv[1]))
602
+ assert t.get("name"), "missing name"
603
+ assert t.get("version"), "missing version"
604
+ ' "$tmpl_dir/template.json" 2>/dev/null; then
605
+ check "Template '$tname' valid" "pass"
606
+ else
607
+ check "Template '$tname' invalid template.json (needs name + version)" "fail"
608
+ template_invalid=$((template_invalid + 1))
609
+ fi
610
+ fi
611
+ done
612
+ if [ "$template_count" -eq 0 ]; then
613
+ check "No custom templates installed" "pass"
614
+ else
615
+ check "Found $template_count template(s), $template_invalid invalid" "$([ "$template_invalid" -eq 0 ] && echo pass || echo warn)"
616
+ fi
617
+ else
618
+ check "No template directory (~/.codexkit/templates/)" "pass"
619
+ fi
620
+
621
+ # ─── Registry ────────────────────────────────────────────────────
622
+ echo ""
623
+ echo "Registry:"
624
+ if [ -f "$CODEXKIT_HOME/registry.json" ]; then
625
+ if python3 -c '
626
+ import json, sys
627
+ r = json.load(open(sys.argv[1]))
628
+ assert isinstance(r.get("plugins", {}), dict)
629
+ assert isinstance(r.get("templates", {}), dict)
630
+ ' "$CODEXKIT_HOME/registry.json" 2>/dev/null; then
631
+ check "registry.json valid" "pass"
632
+ else
633
+ check "registry.json invalid format" "fail"
634
+ fi
635
+ else
636
+ check "No registry.json (created on first plugin/template install)" "pass"
637
+ fi
638
+
639
+ # ─── Summary ─────────────────────────────────────────────────────
640
+ echo ""
641
+ echo "=== Results ==="
642
+ echo " Pass: $PASS Warn: $WARN Fail: $FAIL"
643
+
644
+ if [ "$FAIL" -gt 0 ]; then
645
+ echo ""
646
+ echo " Run install scripts to fix failures:"
647
+ echo " ./install/install-global.sh"
648
+ echo " ./install/install-project.sh"
649
+ exit 1
650
+ fi
651
+
652
+ echo ""
653
+ echo "✓ Validation passed"
package/package.json ADDED
@@ -0,0 +1,39 @@
1
+ {
2
+ "name": "codexkit",
3
+ "version": "1.0.0",
4
+ "description": "Professional configuration kit for OpenAI Codex CLI",
5
+ "license": "MIT",
6
+ "keywords": [
7
+ "codex",
8
+ "codex-cli",
9
+ "agent",
10
+ "workflow",
11
+ "installer"
12
+ ],
13
+ "bin": {
14
+ "codexkit": "bin/codexkit"
15
+ },
16
+ "files": [
17
+ "bin",
18
+ "install",
19
+ "templates",
20
+ ".codex",
21
+ "!.codex/memory/.index",
22
+ "!.codex/memory/.index/**",
23
+ ".template-manifest.json",
24
+ "AGENTS.md",
25
+ "AGENTS.override.md.example",
26
+ "README.md",
27
+ "LICENSE",
28
+ "CHANGELOG.md"
29
+ ],
30
+ "scripts": {
31
+ "test": "bash tests/run_release_gate.sh"
32
+ },
33
+ "publishConfig": {
34
+ "access": "public"
35
+ },
36
+ "engines": {
37
+ "node": ">=18"
38
+ }
39
+ }