@mohanscodex/spectra-code 0.4.9 → 0.5.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 (861) hide show
  1. package/README.md +42 -2
  2. package/dist/package.json +8 -5
  3. package/dist/src/agents/definitions/build.d.ts +3 -0
  4. package/dist/src/agents/definitions/build.d.ts.map +1 -0
  5. package/dist/src/agents/definitions/build.js +51 -0
  6. package/dist/src/agents/definitions/build.js.map +1 -0
  7. package/dist/src/agents/definitions/debug.d.ts +3 -0
  8. package/dist/src/agents/definitions/debug.d.ts.map +1 -0
  9. package/dist/src/agents/definitions/debug.js +45 -0
  10. package/dist/src/agents/definitions/debug.js.map +1 -0
  11. package/dist/src/agents/definitions/explore.d.ts +3 -0
  12. package/dist/src/agents/definitions/explore.d.ts.map +1 -0
  13. package/dist/src/agents/definitions/explore.js +34 -0
  14. package/dist/src/agents/definitions/explore.js.map +1 -0
  15. package/dist/src/agents/definitions/index.d.ts +5 -0
  16. package/dist/src/agents/definitions/index.d.ts.map +1 -0
  17. package/dist/src/agents/definitions/index.js +19 -0
  18. package/dist/src/agents/definitions/index.js.map +1 -0
  19. package/dist/src/agents/definitions/plan.d.ts +3 -0
  20. package/dist/src/agents/definitions/plan.d.ts.map +1 -0
  21. package/dist/src/agents/definitions/plan.js +44 -0
  22. package/dist/src/agents/definitions/plan.js.map +1 -0
  23. package/dist/src/agents/definitions/title.d.ts +3 -0
  24. package/dist/src/agents/definitions/title.d.ts.map +1 -0
  25. package/dist/src/agents/definitions/title.js +34 -0
  26. package/dist/src/agents/definitions/title.js.map +1 -0
  27. package/dist/src/agents/index.d.ts +6 -0
  28. package/dist/src/agents/index.d.ts.map +1 -0
  29. package/dist/src/agents/index.js +10 -0
  30. package/dist/src/agents/index.js.map +1 -0
  31. package/dist/src/agents/types.d.ts +15 -0
  32. package/dist/src/agents/types.d.ts.map +1 -0
  33. package/dist/src/agents/types.js +2 -0
  34. package/dist/src/agents/types.js.map +1 -0
  35. package/dist/src/cli.js +2 -2
  36. package/dist/src/cli.js.map +1 -1
  37. package/dist/src/commands/session.js +1 -1
  38. package/dist/src/commands/session.js.map +1 -1
  39. package/dist/src/integrations/acp/server.js +1 -1
  40. package/dist/src/integrations/acp/server.js.map +1 -1
  41. package/dist/src/services/prompt-history.d.ts +32 -0
  42. package/dist/src/services/prompt-history.d.ts.map +1 -0
  43. package/dist/src/services/prompt-history.js +144 -0
  44. package/dist/src/services/prompt-history.js.map +1 -0
  45. package/dist/src/services/snapshot-manager.d.ts +32 -32
  46. package/dist/src/services/snapshot-manager.d.ts.map +1 -1
  47. package/dist/src/services/snapshot-manager.js +308 -155
  48. package/dist/src/services/snapshot-manager.js.map +1 -1
  49. package/dist/src/tools/edit.d.ts.map +1 -1
  50. package/dist/src/tools/edit.js +5 -22
  51. package/dist/src/tools/edit.js.map +1 -1
  52. package/dist/src/tools/glob.d.ts.map +1 -1
  53. package/dist/src/tools/glob.js +2 -1
  54. package/dist/src/tools/glob.js.map +1 -1
  55. package/dist/src/tools/grep.js +2 -2
  56. package/dist/src/tools/grep.js.map +1 -1
  57. package/dist/src/tools/index.d.ts +5 -0
  58. package/dist/src/tools/index.d.ts.map +1 -1
  59. package/dist/src/tools/index.js +30 -1
  60. package/dist/src/tools/index.js.map +1 -1
  61. package/dist/src/tools/task.js +1 -1
  62. package/dist/src/tools/task.js.map +1 -1
  63. package/dist/src/tools/write.d.ts.map +1 -1
  64. package/dist/src/tools/write.js +7 -4
  65. package/dist/src/tools/write.js.map +1 -1
  66. package/dist/src/tui/app-constants.js +1 -1
  67. package/dist/src/tui/app-constants.js.map +1 -1
  68. package/dist/src/tui/app.d.ts.map +1 -1
  69. package/dist/src/tui/app.js +35 -15
  70. package/dist/src/tui/app.js.map +1 -1
  71. package/dist/src/tui/commands.d.ts +15 -0
  72. package/dist/src/tui/commands.d.ts.map +1 -1
  73. package/dist/src/tui/commands.js +252 -1
  74. package/dist/src/tui/commands.js.map +1 -1
  75. package/dist/src/tui/components/chat-area.d.ts.map +1 -1
  76. package/dist/src/tui/components/chat-area.js +1 -1
  77. package/dist/src/tui/components/chat-area.js.map +1 -1
  78. package/dist/src/tui/components/message.d.ts.map +1 -1
  79. package/dist/src/tui/components/message.js +79 -4
  80. package/dist/src/tui/components/message.js.map +1 -1
  81. package/dist/src/tui/hooks/use-agent.d.ts.map +1 -1
  82. package/dist/src/tui/hooks/use-agent.js +17 -4
  83. package/dist/src/tui/hooks/use-agent.js.map +1 -1
  84. package/dist/src/tui/hooks/use-app-keyboard.d.ts +4 -5
  85. package/dist/src/tui/hooks/use-app-keyboard.d.ts.map +1 -1
  86. package/dist/src/tui/hooks/use-app-keyboard.js +23 -24
  87. package/dist/src/tui/hooks/use-app-keyboard.js.map +1 -1
  88. package/dist/src/tui/hooks/use-chat-submit.d.ts +2 -2
  89. package/dist/src/tui/hooks/use-chat-submit.d.ts.map +1 -1
  90. package/dist/src/tui/hooks/use-chat-submit.js +143 -20
  91. package/dist/src/tui/hooks/use-chat-submit.js.map +1 -1
  92. package/dist/src/tui/hooks/use-revert.d.ts +3 -5
  93. package/dist/src/tui/hooks/use-revert.d.ts.map +1 -1
  94. package/dist/src/tui/hooks/use-revert.js +83 -34
  95. package/dist/src/tui/hooks/use-revert.js.map +1 -1
  96. package/dist/src/tui/hooks/use-title-agent.d.ts +13 -0
  97. package/dist/src/tui/hooks/use-title-agent.d.ts.map +1 -0
  98. package/dist/src/tui/hooks/use-title-agent.js +50 -0
  99. package/dist/src/tui/hooks/use-title-agent.js.map +1 -0
  100. package/dist/src/tui/prompt-bar.d.ts.map +1 -1
  101. package/dist/src/tui/prompt-bar.js +27 -33
  102. package/dist/src/tui/prompt-bar.js.map +1 -1
  103. package/dist/src/tui/theme.d.ts +2 -0
  104. package/dist/src/tui/theme.d.ts.map +1 -1
  105. package/dist/src/tui/theme.js +2 -0
  106. package/dist/src/tui/theme.js.map +1 -1
  107. package/dist/src/tui/types.d.ts +5 -0
  108. package/dist/src/tui/types.d.ts.map +1 -1
  109. package/dist/src/tui/ui/agent-switcher.js +1 -1
  110. package/dist/src/tui/ui/agent-switcher.js.map +1 -1
  111. package/dist/src/tui/ui/cost-dialog.d.ts +14 -0
  112. package/dist/src/tui/ui/cost-dialog.d.ts.map +1 -0
  113. package/dist/src/tui/ui/cost-dialog.js +28 -0
  114. package/dist/src/tui/ui/cost-dialog.js.map +1 -0
  115. package/dist/src/tui/ui/debug-dialog.js +1 -1
  116. package/dist/src/tui/ui/debug-dialog.js.map +1 -1
  117. package/dist/src/tui/ui/session-list.js +1 -1
  118. package/dist/src/tui/ui/session-list.js.map +1 -1
  119. package/dist/src/tui/utils/terminal-title.d.ts +3 -0
  120. package/dist/src/tui/utils/terminal-title.d.ts.map +1 -0
  121. package/dist/src/tui/utils/terminal-title.js +14 -0
  122. package/dist/src/tui/utils/terminal-title.js.map +1 -0
  123. package/dist/src/tui/utils/version.d.ts +1 -1
  124. package/dist/src/tui/utils/version.d.ts.map +1 -1
  125. package/dist/src/tui/utils/version.js +4 -22
  126. package/dist/src/tui/utils/version.js.map +1 -1
  127. package/dist/src/utils/paths.d.ts +1 -0
  128. package/dist/src/utils/paths.d.ts.map +1 -1
  129. package/dist/src/utils/paths.js +13 -0
  130. package/dist/src/utils/paths.js.map +1 -1
  131. package/package.json +9 -6
  132. package/skills/REQUESTS.md +36 -0
  133. package/skills/architecture/ABOUT.md +20 -0
  134. package/skills/architecture/preserving-productive-tensions/SKILL.md +152 -0
  135. package/skills/aspnet-core/LICENSE.txt +202 -0
  136. package/skills/aspnet-core/SKILL.md +61 -0
  137. package/skills/aspnet-core/agents/openai.yaml +5 -0
  138. package/skills/aspnet-core/assets/dotnet-logo.png +0 -0
  139. package/skills/aspnet-core/references/_sections.md +40 -0
  140. package/skills/aspnet-core/references/apis-minimal-and-controllers.md +81 -0
  141. package/skills/aspnet-core/references/data-state-and-services.md +69 -0
  142. package/skills/aspnet-core/references/program-and-pipeline.md +103 -0
  143. package/skills/aspnet-core/references/realtime-grpc-and-background-work.md +58 -0
  144. package/skills/aspnet-core/references/security-and-identity.md +75 -0
  145. package/skills/aspnet-core/references/source-map.md +43 -0
  146. package/skills/aspnet-core/references/stack-selection.md +63 -0
  147. package/skills/aspnet-core/references/testing-performance-and-operations.md +92 -0
  148. package/skills/aspnet-core/references/ui-blazor.md +53 -0
  149. package/skills/aspnet-core/references/ui-mvc.md +56 -0
  150. package/skills/aspnet-core/references/ui-razor-pages.md +55 -0
  151. package/skills/aspnet-core/references/versioning-and-upgrades.md +51 -0
  152. package/skills/chatgpt-apps/LICENSE.txt +201 -0
  153. package/skills/chatgpt-apps/SKILL.md +320 -0
  154. package/skills/chatgpt-apps/agents/openai.yaml +13 -0
  155. package/skills/chatgpt-apps/references/app-archetypes.md +132 -0
  156. package/skills/chatgpt-apps/references/apps-sdk-docs-workflow.md +135 -0
  157. package/skills/chatgpt-apps/references/interactive-state-sync-patterns.md +113 -0
  158. package/skills/chatgpt-apps/references/repo-contract-and-validation.md +93 -0
  159. package/skills/chatgpt-apps/references/search-fetch-standard.md +67 -0
  160. package/skills/chatgpt-apps/references/upstream-example-workflow.md +79 -0
  161. package/skills/chatgpt-apps/references/window-openai-patterns.md +70 -0
  162. package/skills/chatgpt-apps/scripts/scaffold_node_ext_apps.mjs +606 -0
  163. package/skills/cloudflare-deploy/LICENSE.txt +201 -0
  164. package/skills/cloudflare-deploy/SKILL.md +224 -0
  165. package/skills/cloudflare-deploy/agents/openai.yaml +6 -0
  166. package/skills/cloudflare-deploy/assets/cloudflare-small.svg +3 -0
  167. package/skills/cloudflare-deploy/assets/cloudflare.png +0 -0
  168. package/skills/cloudflare-deploy/references/agents-sdk/README.md +89 -0
  169. package/skills/cloudflare-deploy/references/agents-sdk/api.md +190 -0
  170. package/skills/cloudflare-deploy/references/agents-sdk/configuration.md +182 -0
  171. package/skills/cloudflare-deploy/references/agents-sdk/gotchas.md +158 -0
  172. package/skills/cloudflare-deploy/references/agents-sdk/patterns.md +192 -0
  173. package/skills/cloudflare-deploy/references/ai-gateway/README.md +175 -0
  174. package/skills/cloudflare-deploy/references/ai-gateway/configuration.md +111 -0
  175. package/skills/cloudflare-deploy/references/ai-gateway/dynamic-routing.md +82 -0
  176. package/skills/cloudflare-deploy/references/ai-gateway/features.md +96 -0
  177. package/skills/cloudflare-deploy/references/ai-gateway/sdk-integration.md +114 -0
  178. package/skills/cloudflare-deploy/references/ai-gateway/troubleshooting.md +88 -0
  179. package/skills/cloudflare-deploy/references/ai-search/README.md +138 -0
  180. package/skills/cloudflare-deploy/references/ai-search/api.md +87 -0
  181. package/skills/cloudflare-deploy/references/ai-search/configuration.md +88 -0
  182. package/skills/cloudflare-deploy/references/ai-search/gotchas.md +81 -0
  183. package/skills/cloudflare-deploy/references/ai-search/patterns.md +85 -0
  184. package/skills/cloudflare-deploy/references/analytics-engine/README.md +92 -0
  185. package/skills/cloudflare-deploy/references/analytics-engine/api.md +112 -0
  186. package/skills/cloudflare-deploy/references/analytics-engine/configuration.md +112 -0
  187. package/skills/cloudflare-deploy/references/analytics-engine/gotchas.md +85 -0
  188. package/skills/cloudflare-deploy/references/analytics-engine/patterns.md +83 -0
  189. package/skills/cloudflare-deploy/references/api/README.md +65 -0
  190. package/skills/cloudflare-deploy/references/api/api.md +204 -0
  191. package/skills/cloudflare-deploy/references/api/configuration.md +160 -0
  192. package/skills/cloudflare-deploy/references/api/gotchas.md +225 -0
  193. package/skills/cloudflare-deploy/references/api/patterns.md +204 -0
  194. package/skills/cloudflare-deploy/references/api-shield/README.md +44 -0
  195. package/skills/cloudflare-deploy/references/api-shield/api.md +141 -0
  196. package/skills/cloudflare-deploy/references/api-shield/configuration.md +192 -0
  197. package/skills/cloudflare-deploy/references/api-shield/gotchas.md +125 -0
  198. package/skills/cloudflare-deploy/references/api-shield/patterns.md +180 -0
  199. package/skills/cloudflare-deploy/references/argo-smart-routing/README.md +90 -0
  200. package/skills/cloudflare-deploy/references/argo-smart-routing/api.md +240 -0
  201. package/skills/cloudflare-deploy/references/argo-smart-routing/configuration.md +197 -0
  202. package/skills/cloudflare-deploy/references/argo-smart-routing/gotchas.md +111 -0
  203. package/skills/cloudflare-deploy/references/argo-smart-routing/patterns.md +104 -0
  204. package/skills/cloudflare-deploy/references/bindings/README.md +122 -0
  205. package/skills/cloudflare-deploy/references/bindings/api.md +203 -0
  206. package/skills/cloudflare-deploy/references/bindings/configuration.md +188 -0
  207. package/skills/cloudflare-deploy/references/bindings/gotchas.md +208 -0
  208. package/skills/cloudflare-deploy/references/bindings/patterns.md +200 -0
  209. package/skills/cloudflare-deploy/references/bot-management/README.md +94 -0
  210. package/skills/cloudflare-deploy/references/bot-management/api.md +169 -0
  211. package/skills/cloudflare-deploy/references/bot-management/configuration.md +163 -0
  212. package/skills/cloudflare-deploy/references/bot-management/gotchas.md +114 -0
  213. package/skills/cloudflare-deploy/references/bot-management/patterns.md +182 -0
  214. package/skills/cloudflare-deploy/references/browser-rendering/README.md +78 -0
  215. package/skills/cloudflare-deploy/references/browser-rendering/api.md +108 -0
  216. package/skills/cloudflare-deploy/references/browser-rendering/configuration.md +78 -0
  217. package/skills/cloudflare-deploy/references/browser-rendering/gotchas.md +88 -0
  218. package/skills/cloudflare-deploy/references/browser-rendering/patterns.md +91 -0
  219. package/skills/cloudflare-deploy/references/c3/README.md +111 -0
  220. package/skills/cloudflare-deploy/references/c3/api.md +71 -0
  221. package/skills/cloudflare-deploy/references/c3/configuration.md +81 -0
  222. package/skills/cloudflare-deploy/references/c3/gotchas.md +92 -0
  223. package/skills/cloudflare-deploy/references/c3/patterns.md +82 -0
  224. package/skills/cloudflare-deploy/references/cache-reserve/README.md +147 -0
  225. package/skills/cloudflare-deploy/references/cache-reserve/api.md +194 -0
  226. package/skills/cloudflare-deploy/references/cache-reserve/configuration.md +169 -0
  227. package/skills/cloudflare-deploy/references/cache-reserve/gotchas.md +132 -0
  228. package/skills/cloudflare-deploy/references/cache-reserve/patterns.md +197 -0
  229. package/skills/cloudflare-deploy/references/containers/README.md +85 -0
  230. package/skills/cloudflare-deploy/references/containers/api.md +187 -0
  231. package/skills/cloudflare-deploy/references/containers/configuration.md +188 -0
  232. package/skills/cloudflare-deploy/references/containers/gotchas.md +178 -0
  233. package/skills/cloudflare-deploy/references/containers/patterns.md +202 -0
  234. package/skills/cloudflare-deploy/references/cron-triggers/README.md +99 -0
  235. package/skills/cloudflare-deploy/references/cron-triggers/api.md +196 -0
  236. package/skills/cloudflare-deploy/references/cron-triggers/configuration.md +180 -0
  237. package/skills/cloudflare-deploy/references/cron-triggers/gotchas.md +199 -0
  238. package/skills/cloudflare-deploy/references/cron-triggers/patterns.md +190 -0
  239. package/skills/cloudflare-deploy/references/d1/README.md +133 -0
  240. package/skills/cloudflare-deploy/references/d1/api.md +196 -0
  241. package/skills/cloudflare-deploy/references/d1/configuration.md +188 -0
  242. package/skills/cloudflare-deploy/references/d1/gotchas.md +98 -0
  243. package/skills/cloudflare-deploy/references/d1/patterns.md +189 -0
  244. package/skills/cloudflare-deploy/references/ddos/README.md +41 -0
  245. package/skills/cloudflare-deploy/references/ddos/api.md +164 -0
  246. package/skills/cloudflare-deploy/references/ddos/configuration.md +93 -0
  247. package/skills/cloudflare-deploy/references/ddos/gotchas.md +107 -0
  248. package/skills/cloudflare-deploy/references/ddos/patterns.md +174 -0
  249. package/skills/cloudflare-deploy/references/do-storage/README.md +75 -0
  250. package/skills/cloudflare-deploy/references/do-storage/api.md +102 -0
  251. package/skills/cloudflare-deploy/references/do-storage/configuration.md +112 -0
  252. package/skills/cloudflare-deploy/references/do-storage/gotchas.md +150 -0
  253. package/skills/cloudflare-deploy/references/do-storage/patterns.md +182 -0
  254. package/skills/cloudflare-deploy/references/do-storage/testing.md +183 -0
  255. package/skills/cloudflare-deploy/references/durable-objects/README.md +185 -0
  256. package/skills/cloudflare-deploy/references/durable-objects/api.md +187 -0
  257. package/skills/cloudflare-deploy/references/durable-objects/configuration.md +160 -0
  258. package/skills/cloudflare-deploy/references/durable-objects/gotchas.md +197 -0
  259. package/skills/cloudflare-deploy/references/durable-objects/patterns.md +201 -0
  260. package/skills/cloudflare-deploy/references/email-routing/README.md +89 -0
  261. package/skills/cloudflare-deploy/references/email-routing/api.md +195 -0
  262. package/skills/cloudflare-deploy/references/email-routing/configuration.md +186 -0
  263. package/skills/cloudflare-deploy/references/email-routing/gotchas.md +196 -0
  264. package/skills/cloudflare-deploy/references/email-routing/patterns.md +229 -0
  265. package/skills/cloudflare-deploy/references/email-workers/README.md +151 -0
  266. package/skills/cloudflare-deploy/references/email-workers/api.md +237 -0
  267. package/skills/cloudflare-deploy/references/email-workers/configuration.md +112 -0
  268. package/skills/cloudflare-deploy/references/email-workers/gotchas.md +125 -0
  269. package/skills/cloudflare-deploy/references/email-workers/patterns.md +102 -0
  270. package/skills/cloudflare-deploy/references/hyperdrive/README.md +82 -0
  271. package/skills/cloudflare-deploy/references/hyperdrive/api.md +143 -0
  272. package/skills/cloudflare-deploy/references/hyperdrive/configuration.md +159 -0
  273. package/skills/cloudflare-deploy/references/hyperdrive/gotchas.md +77 -0
  274. package/skills/cloudflare-deploy/references/hyperdrive/patterns.md +190 -0
  275. package/skills/cloudflare-deploy/references/images/README.md +61 -0
  276. package/skills/cloudflare-deploy/references/images/api.md +96 -0
  277. package/skills/cloudflare-deploy/references/images/configuration.md +211 -0
  278. package/skills/cloudflare-deploy/references/images/gotchas.md +99 -0
  279. package/skills/cloudflare-deploy/references/images/patterns.md +115 -0
  280. package/skills/cloudflare-deploy/references/kv/README.md +89 -0
  281. package/skills/cloudflare-deploy/references/kv/api.md +160 -0
  282. package/skills/cloudflare-deploy/references/kv/configuration.md +144 -0
  283. package/skills/cloudflare-deploy/references/kv/gotchas.md +131 -0
  284. package/skills/cloudflare-deploy/references/kv/patterns.md +196 -0
  285. package/skills/cloudflare-deploy/references/miniflare/README.md +105 -0
  286. package/skills/cloudflare-deploy/references/miniflare/api.md +187 -0
  287. package/skills/cloudflare-deploy/references/miniflare/configuration.md +173 -0
  288. package/skills/cloudflare-deploy/references/miniflare/gotchas.md +160 -0
  289. package/skills/cloudflare-deploy/references/miniflare/patterns.md +181 -0
  290. package/skills/cloudflare-deploy/references/network-interconnect/README.md +99 -0
  291. package/skills/cloudflare-deploy/references/network-interconnect/api.md +199 -0
  292. package/skills/cloudflare-deploy/references/network-interconnect/configuration.md +114 -0
  293. package/skills/cloudflare-deploy/references/network-interconnect/gotchas.md +165 -0
  294. package/skills/cloudflare-deploy/references/network-interconnect/patterns.md +166 -0
  295. package/skills/cloudflare-deploy/references/observability/README.md +87 -0
  296. package/skills/cloudflare-deploy/references/observability/api.md +164 -0
  297. package/skills/cloudflare-deploy/references/observability/configuration.md +169 -0
  298. package/skills/cloudflare-deploy/references/observability/gotchas.md +115 -0
  299. package/skills/cloudflare-deploy/references/observability/patterns.md +105 -0
  300. package/skills/cloudflare-deploy/references/pages/README.md +88 -0
  301. package/skills/cloudflare-deploy/references/pages/api.md +204 -0
  302. package/skills/cloudflare-deploy/references/pages/configuration.md +201 -0
  303. package/skills/cloudflare-deploy/references/pages/gotchas.md +203 -0
  304. package/skills/cloudflare-deploy/references/pages/patterns.md +204 -0
  305. package/skills/cloudflare-deploy/references/pages-functions/README.md +98 -0
  306. package/skills/cloudflare-deploy/references/pages-functions/api.md +143 -0
  307. package/skills/cloudflare-deploy/references/pages-functions/configuration.md +122 -0
  308. package/skills/cloudflare-deploy/references/pages-functions/gotchas.md +94 -0
  309. package/skills/cloudflare-deploy/references/pages-functions/patterns.md +137 -0
  310. package/skills/cloudflare-deploy/references/pipelines/README.md +105 -0
  311. package/skills/cloudflare-deploy/references/pipelines/api.md +208 -0
  312. package/skills/cloudflare-deploy/references/pipelines/configuration.md +98 -0
  313. package/skills/cloudflare-deploy/references/pipelines/gotchas.md +80 -0
  314. package/skills/cloudflare-deploy/references/pipelines/patterns.md +87 -0
  315. package/skills/cloudflare-deploy/references/pulumi/README.md +100 -0
  316. package/skills/cloudflare-deploy/references/pulumi/api.md +200 -0
  317. package/skills/cloudflare-deploy/references/pulumi/configuration.md +198 -0
  318. package/skills/cloudflare-deploy/references/pulumi/gotchas.md +181 -0
  319. package/skills/cloudflare-deploy/references/pulumi/patterns.md +191 -0
  320. package/skills/cloudflare-deploy/references/queues/README.md +96 -0
  321. package/skills/cloudflare-deploy/references/queues/api.md +206 -0
  322. package/skills/cloudflare-deploy/references/queues/configuration.md +144 -0
  323. package/skills/cloudflare-deploy/references/queues/gotchas.md +206 -0
  324. package/skills/cloudflare-deploy/references/queues/patterns.md +220 -0
  325. package/skills/cloudflare-deploy/references/r2/README.md +95 -0
  326. package/skills/cloudflare-deploy/references/r2/api.md +200 -0
  327. package/skills/cloudflare-deploy/references/r2/configuration.md +165 -0
  328. package/skills/cloudflare-deploy/references/r2/gotchas.md +190 -0
  329. package/skills/cloudflare-deploy/references/r2/patterns.md +193 -0
  330. package/skills/cloudflare-deploy/references/r2-data-catalog/README.md +149 -0
  331. package/skills/cloudflare-deploy/references/r2-data-catalog/api.md +199 -0
  332. package/skills/cloudflare-deploy/references/r2-data-catalog/configuration.md +198 -0
  333. package/skills/cloudflare-deploy/references/r2-data-catalog/gotchas.md +170 -0
  334. package/skills/cloudflare-deploy/references/r2-data-catalog/patterns.md +191 -0
  335. package/skills/cloudflare-deploy/references/r2-sql/README.md +128 -0
  336. package/skills/cloudflare-deploy/references/r2-sql/api.md +158 -0
  337. package/skills/cloudflare-deploy/references/r2-sql/configuration.md +147 -0
  338. package/skills/cloudflare-deploy/references/r2-sql/gotchas.md +212 -0
  339. package/skills/cloudflare-deploy/references/r2-sql/patterns.md +222 -0
  340. package/skills/cloudflare-deploy/references/realtime-sfu/README.md +65 -0
  341. package/skills/cloudflare-deploy/references/realtime-sfu/api.md +158 -0
  342. package/skills/cloudflare-deploy/references/realtime-sfu/configuration.md +137 -0
  343. package/skills/cloudflare-deploy/references/realtime-sfu/gotchas.md +133 -0
  344. package/skills/cloudflare-deploy/references/realtime-sfu/patterns.md +174 -0
  345. package/skills/cloudflare-deploy/references/realtimekit/README.md +113 -0
  346. package/skills/cloudflare-deploy/references/realtimekit/api.md +212 -0
  347. package/skills/cloudflare-deploy/references/realtimekit/configuration.md +203 -0
  348. package/skills/cloudflare-deploy/references/realtimekit/gotchas.md +169 -0
  349. package/skills/cloudflare-deploy/references/realtimekit/patterns.md +223 -0
  350. package/skills/cloudflare-deploy/references/sandbox/README.md +96 -0
  351. package/skills/cloudflare-deploy/references/sandbox/api.md +198 -0
  352. package/skills/cloudflare-deploy/references/sandbox/configuration.md +143 -0
  353. package/skills/cloudflare-deploy/references/sandbox/gotchas.md +194 -0
  354. package/skills/cloudflare-deploy/references/sandbox/patterns.md +201 -0
  355. package/skills/cloudflare-deploy/references/secrets-store/README.md +74 -0
  356. package/skills/cloudflare-deploy/references/secrets-store/api.md +200 -0
  357. package/skills/cloudflare-deploy/references/secrets-store/configuration.md +185 -0
  358. package/skills/cloudflare-deploy/references/secrets-store/gotchas.md +97 -0
  359. package/skills/cloudflare-deploy/references/secrets-store/patterns.md +207 -0
  360. package/skills/cloudflare-deploy/references/smart-placement/README.md +138 -0
  361. package/skills/cloudflare-deploy/references/smart-placement/api.md +183 -0
  362. package/skills/cloudflare-deploy/references/smart-placement/configuration.md +196 -0
  363. package/skills/cloudflare-deploy/references/smart-placement/gotchas.md +174 -0
  364. package/skills/cloudflare-deploy/references/smart-placement/patterns.md +183 -0
  365. package/skills/cloudflare-deploy/references/snippets/README.md +68 -0
  366. package/skills/cloudflare-deploy/references/snippets/api.md +198 -0
  367. package/skills/cloudflare-deploy/references/snippets/configuration.md +227 -0
  368. package/skills/cloudflare-deploy/references/snippets/gotchas.md +86 -0
  369. package/skills/cloudflare-deploy/references/snippets/patterns.md +135 -0
  370. package/skills/cloudflare-deploy/references/spectrum/README.md +52 -0
  371. package/skills/cloudflare-deploy/references/spectrum/api.md +181 -0
  372. package/skills/cloudflare-deploy/references/spectrum/configuration.md +194 -0
  373. package/skills/cloudflare-deploy/references/spectrum/gotchas.md +145 -0
  374. package/skills/cloudflare-deploy/references/spectrum/patterns.md +196 -0
  375. package/skills/cloudflare-deploy/references/static-assets/README.md +65 -0
  376. package/skills/cloudflare-deploy/references/static-assets/api.md +199 -0
  377. package/skills/cloudflare-deploy/references/static-assets/configuration.md +186 -0
  378. package/skills/cloudflare-deploy/references/static-assets/gotchas.md +162 -0
  379. package/skills/cloudflare-deploy/references/static-assets/patterns.md +189 -0
  380. package/skills/cloudflare-deploy/references/stream/README.md +114 -0
  381. package/skills/cloudflare-deploy/references/stream/api-live.md +195 -0
  382. package/skills/cloudflare-deploy/references/stream/api.md +199 -0
  383. package/skills/cloudflare-deploy/references/stream/configuration.md +141 -0
  384. package/skills/cloudflare-deploy/references/stream/gotchas.md +130 -0
  385. package/skills/cloudflare-deploy/references/stream/patterns.md +184 -0
  386. package/skills/cloudflare-deploy/references/tail-workers/README.md +89 -0
  387. package/skills/cloudflare-deploy/references/tail-workers/api.md +200 -0
  388. package/skills/cloudflare-deploy/references/tail-workers/configuration.md +176 -0
  389. package/skills/cloudflare-deploy/references/tail-workers/gotchas.md +192 -0
  390. package/skills/cloudflare-deploy/references/tail-workers/patterns.md +180 -0
  391. package/skills/cloudflare-deploy/references/terraform/README.md +102 -0
  392. package/skills/cloudflare-deploy/references/terraform/api.md +178 -0
  393. package/skills/cloudflare-deploy/references/terraform/configuration.md +197 -0
  394. package/skills/cloudflare-deploy/references/terraform/gotchas.md +150 -0
  395. package/skills/cloudflare-deploy/references/terraform/patterns.md +174 -0
  396. package/skills/cloudflare-deploy/references/tunnel/README.md +129 -0
  397. package/skills/cloudflare-deploy/references/tunnel/api.md +193 -0
  398. package/skills/cloudflare-deploy/references/tunnel/configuration.md +157 -0
  399. package/skills/cloudflare-deploy/references/tunnel/gotchas.md +147 -0
  400. package/skills/cloudflare-deploy/references/tunnel/networking.md +168 -0
  401. package/skills/cloudflare-deploy/references/tunnel/patterns.md +192 -0
  402. package/skills/cloudflare-deploy/references/turn/README.md +82 -0
  403. package/skills/cloudflare-deploy/references/turn/api.md +239 -0
  404. package/skills/cloudflare-deploy/references/turn/configuration.md +179 -0
  405. package/skills/cloudflare-deploy/references/turn/gotchas.md +231 -0
  406. package/skills/cloudflare-deploy/references/turn/patterns.md +213 -0
  407. package/skills/cloudflare-deploy/references/turnstile/README.md +99 -0
  408. package/skills/cloudflare-deploy/references/turnstile/api.md +240 -0
  409. package/skills/cloudflare-deploy/references/turnstile/configuration.md +222 -0
  410. package/skills/cloudflare-deploy/references/turnstile/gotchas.md +218 -0
  411. package/skills/cloudflare-deploy/references/turnstile/patterns.md +193 -0
  412. package/skills/cloudflare-deploy/references/vectorize/README.md +133 -0
  413. package/skills/cloudflare-deploy/references/vectorize/api.md +88 -0
  414. package/skills/cloudflare-deploy/references/vectorize/configuration.md +88 -0
  415. package/skills/cloudflare-deploy/references/vectorize/gotchas.md +76 -0
  416. package/skills/cloudflare-deploy/references/vectorize/patterns.md +90 -0
  417. package/skills/cloudflare-deploy/references/waf/README.md +113 -0
  418. package/skills/cloudflare-deploy/references/waf/api.md +202 -0
  419. package/skills/cloudflare-deploy/references/waf/configuration.md +203 -0
  420. package/skills/cloudflare-deploy/references/waf/gotchas.md +204 -0
  421. package/skills/cloudflare-deploy/references/waf/patterns.md +197 -0
  422. package/skills/cloudflare-deploy/references/web-analytics/README.md +140 -0
  423. package/skills/cloudflare-deploy/references/web-analytics/configuration.md +76 -0
  424. package/skills/cloudflare-deploy/references/web-analytics/gotchas.md +82 -0
  425. package/skills/cloudflare-deploy/references/web-analytics/integration.md +60 -0
  426. package/skills/cloudflare-deploy/references/web-analytics/patterns.md +91 -0
  427. package/skills/cloudflare-deploy/references/workerd/README.md +78 -0
  428. package/skills/cloudflare-deploy/references/workerd/api.md +185 -0
  429. package/skills/cloudflare-deploy/references/workerd/configuration.md +183 -0
  430. package/skills/cloudflare-deploy/references/workerd/gotchas.md +139 -0
  431. package/skills/cloudflare-deploy/references/workerd/patterns.md +192 -0
  432. package/skills/cloudflare-deploy/references/workers/README.md +108 -0
  433. package/skills/cloudflare-deploy/references/workers/api.md +195 -0
  434. package/skills/cloudflare-deploy/references/workers/configuration.md +185 -0
  435. package/skills/cloudflare-deploy/references/workers/frameworks.md +197 -0
  436. package/skills/cloudflare-deploy/references/workers/gotchas.md +136 -0
  437. package/skills/cloudflare-deploy/references/workers/patterns.md +198 -0
  438. package/skills/cloudflare-deploy/references/workers-ai/README.md +197 -0
  439. package/skills/cloudflare-deploy/references/workers-ai/api.md +112 -0
  440. package/skills/cloudflare-deploy/references/workers-ai/configuration.md +97 -0
  441. package/skills/cloudflare-deploy/references/workers-ai/gotchas.md +114 -0
  442. package/skills/cloudflare-deploy/references/workers-ai/patterns.md +120 -0
  443. package/skills/cloudflare-deploy/references/workers-for-platforms/README.md +89 -0
  444. package/skills/cloudflare-deploy/references/workers-for-platforms/api.md +196 -0
  445. package/skills/cloudflare-deploy/references/workers-for-platforms/configuration.md +167 -0
  446. package/skills/cloudflare-deploy/references/workers-for-platforms/gotchas.md +134 -0
  447. package/skills/cloudflare-deploy/references/workers-for-platforms/patterns.md +188 -0
  448. package/skills/cloudflare-deploy/references/workers-playground/README.md +127 -0
  449. package/skills/cloudflare-deploy/references/workers-playground/api.md +101 -0
  450. package/skills/cloudflare-deploy/references/workers-playground/configuration.md +163 -0
  451. package/skills/cloudflare-deploy/references/workers-playground/gotchas.md +88 -0
  452. package/skills/cloudflare-deploy/references/workers-playground/patterns.md +132 -0
  453. package/skills/cloudflare-deploy/references/workers-vpc/README.md +127 -0
  454. package/skills/cloudflare-deploy/references/workers-vpc/api.md +202 -0
  455. package/skills/cloudflare-deploy/references/workers-vpc/configuration.md +147 -0
  456. package/skills/cloudflare-deploy/references/workers-vpc/gotchas.md +167 -0
  457. package/skills/cloudflare-deploy/references/workers-vpc/patterns.md +209 -0
  458. package/skills/cloudflare-deploy/references/workflows/README.md +69 -0
  459. package/skills/cloudflare-deploy/references/workflows/api.md +185 -0
  460. package/skills/cloudflare-deploy/references/workflows/configuration.md +151 -0
  461. package/skills/cloudflare-deploy/references/workflows/gotchas.md +97 -0
  462. package/skills/cloudflare-deploy/references/workflows/patterns.md +175 -0
  463. package/skills/cloudflare-deploy/references/wrangler/README.md +141 -0
  464. package/skills/cloudflare-deploy/references/wrangler/api.md +188 -0
  465. package/skills/cloudflare-deploy/references/wrangler/auth.md +73 -0
  466. package/skills/cloudflare-deploy/references/wrangler/configuration.md +197 -0
  467. package/skills/cloudflare-deploy/references/wrangler/gotchas.md +197 -0
  468. package/skills/cloudflare-deploy/references/wrangler/patterns.md +209 -0
  469. package/skills/cloudflare-deploy/references/zaraz/IMPLEMENTATION_SUMMARY.md +121 -0
  470. package/skills/cloudflare-deploy/references/zaraz/README.md +111 -0
  471. package/skills/cloudflare-deploy/references/zaraz/api.md +112 -0
  472. package/skills/cloudflare-deploy/references/zaraz/configuration.md +90 -0
  473. package/skills/cloudflare-deploy/references/zaraz/gotchas.md +81 -0
  474. package/skills/cloudflare-deploy/references/zaraz/patterns.md +74 -0
  475. package/skills/collaboration/brainstorming/SKILL.md +75 -0
  476. package/skills/collaboration/dispatching-parallel-agents/SKILL.md +184 -0
  477. package/skills/collaboration/executing-plans/SKILL.md +78 -0
  478. package/skills/collaboration/finishing-a-development-branch/SKILL.md +202 -0
  479. package/skills/collaboration/phase-prompting/SKILL.md +292 -0
  480. package/skills/collaboration/receiving-code-review/SKILL.md +211 -0
  481. package/skills/collaboration/requesting-code-review/SKILL.md +107 -0
  482. package/skills/collaboration/requesting-code-review/code-reviewer.md +146 -0
  483. package/skills/collaboration/subagent-driven-development/SKILL.md +188 -0
  484. package/skills/collaboration/using-git-worktrees/SKILL.md +215 -0
  485. package/skills/collaboration/writing-plans/SKILL.md +118 -0
  486. package/skills/debugging/defense-in-depth/SKILL.md +130 -0
  487. package/skills/debugging/root-cause-tracing/SKILL.md +177 -0
  488. package/skills/debugging/root-cause-tracing/find-polluter.sh +63 -0
  489. package/skills/debugging/systematic-debugging/SKILL.md +295 -0
  490. package/skills/debugging/systematic-debugging/test-academic.md +14 -0
  491. package/skills/debugging/systematic-debugging/test-pressure-1.md +58 -0
  492. package/skills/debugging/systematic-debugging/test-pressure-2.md +68 -0
  493. package/skills/debugging/systematic-debugging/test-pressure-3.md +69 -0
  494. package/skills/debugging/verification-before-completion/SKILL.md +142 -0
  495. package/skills/develop-web-game/LICENSE.txt +201 -0
  496. package/skills/develop-web-game/SKILL.md +149 -0
  497. package/skills/develop-web-game/agents/openai.yaml +6 -0
  498. package/skills/develop-web-game/assets/game-small.svg +4 -0
  499. package/skills/develop-web-game/assets/game.png +0 -0
  500. package/skills/develop-web-game/references/action_payloads.json +7 -0
  501. package/skills/develop-web-game/scripts/web_game_playwright_client.js +356 -0
  502. package/skills/doc/LICENSE.txt +201 -0
  503. package/skills/doc/SKILL.md +80 -0
  504. package/skills/doc/agents/openai.yaml +6 -0
  505. package/skills/doc/assets/doc-small.svg +3 -0
  506. package/skills/doc/assets/doc.png +0 -0
  507. package/skills/doc/scripts/render_docx.py +296 -0
  508. package/skills/figma/LICENSE.txt +202 -0
  509. package/skills/figma/SKILL.md +42 -0
  510. package/skills/figma/agents/openai.yaml +14 -0
  511. package/skills/figma/assets/figma-small.svg +3 -0
  512. package/skills/figma/assets/figma.png +0 -0
  513. package/skills/figma/assets/icon.svg +28 -0
  514. package/skills/figma/references/figma-mcp-config.md +35 -0
  515. package/skills/figma/references/figma-tools-and-prompts.md +34 -0
  516. package/skills/figma-implement-design/LICENSE.txt +202 -0
  517. package/skills/figma-implement-design/SKILL.md +264 -0
  518. package/skills/figma-implement-design/agents/openai.yaml +14 -0
  519. package/skills/figma-implement-design/assets/figma-small.svg +3 -0
  520. package/skills/figma-implement-design/assets/figma.png +0 -0
  521. package/skills/figma-implement-design/assets/icon.svg +28 -0
  522. package/skills/gh-address-comments/LICENSE.txt +202 -0
  523. package/skills/gh-address-comments/SKILL.md +25 -0
  524. package/skills/gh-address-comments/agents/openai.yaml +6 -0
  525. package/skills/gh-address-comments/assets/github-small.svg +3 -0
  526. package/skills/gh-address-comments/assets/github.png +0 -0
  527. package/skills/gh-address-comments/scripts/fetch_comments.py +237 -0
  528. package/skills/gh-fix-ci/LICENSE.txt +201 -0
  529. package/skills/gh-fix-ci/SKILL.md +69 -0
  530. package/skills/gh-fix-ci/agents/openai.yaml +6 -0
  531. package/skills/gh-fix-ci/assets/github-small.svg +3 -0
  532. package/skills/gh-fix-ci/assets/github.png +0 -0
  533. package/skills/gh-fix-ci/scripts/inspect_pr_checks.py +509 -0
  534. package/skills/goal-driven-project-loop/SKILL.md +217 -0
  535. package/skills/goal-driven-project-loop/references/goal-contract-template.md +42 -0
  536. package/skills/imagegen/LICENSE.txt +201 -0
  537. package/skills/imagegen/SKILL.md +174 -0
  538. package/skills/imagegen/agents/openai.yaml +6 -0
  539. package/skills/imagegen/assets/imagegen-small.svg +5 -0
  540. package/skills/imagegen/assets/imagegen.png +0 -0
  541. package/skills/imagegen/references/cli.md +132 -0
  542. package/skills/imagegen/references/codex-network.md +28 -0
  543. package/skills/imagegen/references/image-api.md +36 -0
  544. package/skills/imagegen/references/prompting.md +81 -0
  545. package/skills/imagegen/references/sample-prompts.md +384 -0
  546. package/skills/imagegen/scripts/image_gen.py +876 -0
  547. package/skills/jupyter-notebook/LICENSE.txt +201 -0
  548. package/skills/jupyter-notebook/SKILL.md +107 -0
  549. package/skills/jupyter-notebook/agents/openai.yaml +6 -0
  550. package/skills/jupyter-notebook/assets/experiment-template.ipynb +110 -0
  551. package/skills/jupyter-notebook/assets/jupyter-small.svg +3 -0
  552. package/skills/jupyter-notebook/assets/jupyter.png +0 -0
  553. package/skills/jupyter-notebook/assets/tutorial-template.ipynb +107 -0
  554. package/skills/jupyter-notebook/references/experiment-patterns.md +10 -0
  555. package/skills/jupyter-notebook/references/notebook-structure.md +17 -0
  556. package/skills/jupyter-notebook/references/quality-checklist.md +11 -0
  557. package/skills/jupyter-notebook/references/tutorial-patterns.md +9 -0
  558. package/skills/jupyter-notebook/scripts/new_notebook.py +130 -0
  559. package/skills/linear/LICENSE.txt +202 -0
  560. package/skills/linear/SKILL.md +87 -0
  561. package/skills/linear/agents/openai.yaml +14 -0
  562. package/skills/linear/assets/linear-small.svg +5 -0
  563. package/skills/linear/assets/linear.png +0 -0
  564. package/skills/netlify-deploy/LICENSE.txt +201 -0
  565. package/skills/netlify-deploy/SKILL.md +247 -0
  566. package/skills/netlify-deploy/agents/openai.yaml +6 -0
  567. package/skills/netlify-deploy/assets/netlify-small.svg +11 -0
  568. package/skills/netlify-deploy/assets/netlify.png +0 -0
  569. package/skills/netlify-deploy/references/cli-commands.md +162 -0
  570. package/skills/netlify-deploy/references/deployment-patterns.md +303 -0
  571. package/skills/netlify-deploy/references/netlify-toml.md +259 -0
  572. package/skills/notion-knowledge-capture/LICENSE.txt +7 -0
  573. package/skills/notion-knowledge-capture/SKILL.md +56 -0
  574. package/skills/notion-knowledge-capture/agents/openai.yaml +14 -0
  575. package/skills/notion-knowledge-capture/assets/notion-small.svg +11 -0
  576. package/skills/notion-knowledge-capture/assets/notion.png +0 -0
  577. package/skills/notion-knowledge-capture/evaluations/README.md +95 -0
  578. package/skills/notion-knowledge-capture/evaluations/conversation-to-wiki.json +31 -0
  579. package/skills/notion-knowledge-capture/evaluations/decision-record.json +31 -0
  580. package/skills/notion-knowledge-capture/examples/conversation-to-faq.md +226 -0
  581. package/skills/notion-knowledge-capture/examples/decision-capture.md +126 -0
  582. package/skills/notion-knowledge-capture/examples/how-to-guide.md +118 -0
  583. package/skills/notion-knowledge-capture/reference/database-best-practices.md +112 -0
  584. package/skills/notion-knowledge-capture/reference/decision-log-database.md +58 -0
  585. package/skills/notion-knowledge-capture/reference/documentation-database.md +93 -0
  586. package/skills/notion-knowledge-capture/reference/faq-database.md +57 -0
  587. package/skills/notion-knowledge-capture/reference/how-to-guide-database.md +38 -0
  588. package/skills/notion-knowledge-capture/reference/learning-database.md +35 -0
  589. package/skills/notion-knowledge-capture/reference/team-wiki-database.md +27 -0
  590. package/skills/notion-meeting-intelligence/LICENSE.txt +7 -0
  591. package/skills/notion-meeting-intelligence/SKILL.md +60 -0
  592. package/skills/notion-meeting-intelligence/agents/openai.yaml +14 -0
  593. package/skills/notion-meeting-intelligence/assets/notion-small.svg +11 -0
  594. package/skills/notion-meeting-intelligence/assets/notion.png +0 -0
  595. package/skills/notion-meeting-intelligence/evaluations/README.md +101 -0
  596. package/skills/notion-meeting-intelligence/evaluations/decision-meeting-prep.json +35 -0
  597. package/skills/notion-meeting-intelligence/evaluations/status-meeting-prep.json +35 -0
  598. package/skills/notion-meeting-intelligence/examples/customer-meeting.md +125 -0
  599. package/skills/notion-meeting-intelligence/examples/executive-review.md +78 -0
  600. package/skills/notion-meeting-intelligence/examples/project-decision.md +431 -0
  601. package/skills/notion-meeting-intelligence/examples/sprint-planning.md +80 -0
  602. package/skills/notion-meeting-intelligence/reference/brainstorming-template.md +81 -0
  603. package/skills/notion-meeting-intelligence/reference/decision-meeting-template.md +94 -0
  604. package/skills/notion-meeting-intelligence/reference/one-on-one-template.md +58 -0
  605. package/skills/notion-meeting-intelligence/reference/retrospective-template.md +58 -0
  606. package/skills/notion-meeting-intelligence/reference/sprint-planning-template.md +68 -0
  607. package/skills/notion-meeting-intelligence/reference/status-update-template.md +74 -0
  608. package/skills/notion-meeting-intelligence/reference/template-selection-guide.md +56 -0
  609. package/skills/notion-research-documentation/LICENSE.txt +7 -0
  610. package/skills/notion-research-documentation/SKILL.md +59 -0
  611. package/skills/notion-research-documentation/agents/openai.yaml +14 -0
  612. package/skills/notion-research-documentation/assets/notion-small.svg +11 -0
  613. package/skills/notion-research-documentation/assets/notion.png +0 -0
  614. package/skills/notion-research-documentation/evaluations/README.md +109 -0
  615. package/skills/notion-research-documentation/evaluations/basic-research.json +28 -0
  616. package/skills/notion-research-documentation/evaluations/research-to-database.json +29 -0
  617. package/skills/notion-research-documentation/examples/competitor-analysis.md +283 -0
  618. package/skills/notion-research-documentation/examples/market-research.md +62 -0
  619. package/skills/notion-research-documentation/examples/technical-investigation.md +233 -0
  620. package/skills/notion-research-documentation/examples/trip-planning.md +128 -0
  621. package/skills/notion-research-documentation/reference/advanced-search.md +212 -0
  622. package/skills/notion-research-documentation/reference/citations.md +190 -0
  623. package/skills/notion-research-documentation/reference/comparison-format.md +37 -0
  624. package/skills/notion-research-documentation/reference/comparison-template.md +44 -0
  625. package/skills/notion-research-documentation/reference/comprehensive-report-format.md +41 -0
  626. package/skills/notion-research-documentation/reference/comprehensive-report-template.md +64 -0
  627. package/skills/notion-research-documentation/reference/format-selection-guide.md +95 -0
  628. package/skills/notion-research-documentation/reference/quick-brief-format.md +37 -0
  629. package/skills/notion-research-documentation/reference/quick-brief-template.md +25 -0
  630. package/skills/notion-research-documentation/reference/research-summary-format.md +33 -0
  631. package/skills/notion-research-documentation/reference/research-summary-template.md +49 -0
  632. package/skills/notion-spec-to-implementation/LICENSE.txt +7 -0
  633. package/skills/notion-spec-to-implementation/SKILL.md +58 -0
  634. package/skills/notion-spec-to-implementation/agents/openai.yaml +14 -0
  635. package/skills/notion-spec-to-implementation/assets/notion-small.svg +11 -0
  636. package/skills/notion-spec-to-implementation/assets/notion.png +0 -0
  637. package/skills/notion-spec-to-implementation/evaluations/README.md +120 -0
  638. package/skills/notion-spec-to-implementation/evaluations/basic-spec-implementation.json +32 -0
  639. package/skills/notion-spec-to-implementation/evaluations/spec-to-tasks.json +35 -0
  640. package/skills/notion-spec-to-implementation/examples/api-feature.md +461 -0
  641. package/skills/notion-spec-to-implementation/examples/database-migration.md +81 -0
  642. package/skills/notion-spec-to-implementation/examples/ui-component.md +68 -0
  643. package/skills/notion-spec-to-implementation/reference/milestone-summary-template.md +27 -0
  644. package/skills/notion-spec-to-implementation/reference/progress-tracking.md +458 -0
  645. package/skills/notion-spec-to-implementation/reference/progress-update-template.md +25 -0
  646. package/skills/notion-spec-to-implementation/reference/quick-implementation-plan.md +26 -0
  647. package/skills/notion-spec-to-implementation/reference/spec-parsing.md +383 -0
  648. package/skills/notion-spec-to-implementation/reference/standard-implementation-plan.md +146 -0
  649. package/skills/notion-spec-to-implementation/reference/task-creation-template.md +34 -0
  650. package/skills/notion-spec-to-implementation/reference/task-creation.md +441 -0
  651. package/skills/openai-docs/LICENSE.txt +201 -0
  652. package/skills/openai-docs/SKILL.md +68 -0
  653. package/skills/openai-docs/agents/openai.yaml +14 -0
  654. package/skills/openai-docs/assets/openai-small.svg +3 -0
  655. package/skills/openai-docs/assets/openai.png +0 -0
  656. package/skills/openai-docs/references/gpt-5p4-prompting-guide.md +433 -0
  657. package/skills/openai-docs/references/latest-model.md +35 -0
  658. package/skills/openai-docs/references/upgrading-to-gpt-5p4.md +164 -0
  659. package/skills/pdf/LICENSE.txt +201 -0
  660. package/skills/pdf/SKILL.md +67 -0
  661. package/skills/pdf/agents/openai.yaml +5 -0
  662. package/skills/pdf/assets/pdf.png +0 -0
  663. package/skills/phase-prompting/SKILL.md +162 -0
  664. package/skills/playwright/LICENSE.txt +201 -0
  665. package/skills/playwright/NOTICE.txt +14 -0
  666. package/skills/playwright/SKILL.md +147 -0
  667. package/skills/playwright/agents/openai.yaml +6 -0
  668. package/skills/playwright/assets/playwright-small.svg +3 -0
  669. package/skills/playwright/assets/playwright.png +0 -0
  670. package/skills/playwright/references/cli.md +116 -0
  671. package/skills/playwright/references/workflows.md +95 -0
  672. package/skills/playwright/scripts/playwright_cli.sh +25 -0
  673. package/skills/playwright-interactive/LICENSE.txt +201 -0
  674. package/skills/playwright-interactive/NOTICE.txt +13 -0
  675. package/skills/playwright-interactive/SKILL.md +693 -0
  676. package/skills/playwright-interactive/agents/openai.yaml +6 -0
  677. package/skills/playwright-interactive/assets/playwright-small.svg +3 -0
  678. package/skills/playwright-interactive/assets/playwright.png +0 -0
  679. package/skills/problem-solving/ABOUT.md +40 -0
  680. package/skills/problem-solving/collision-zone-thinking/SKILL.md +62 -0
  681. package/skills/problem-solving/inversion-exercise/SKILL.md +58 -0
  682. package/skills/problem-solving/meta-pattern-recognition/SKILL.md +54 -0
  683. package/skills/problem-solving/scale-game/SKILL.md +63 -0
  684. package/skills/problem-solving/simplification-cascades/SKILL.md +76 -0
  685. package/skills/problem-solving/when-stuck/SKILL.md +88 -0
  686. package/skills/render-deploy/LICENSE.txt +201 -0
  687. package/skills/render-deploy/SKILL.md +479 -0
  688. package/skills/render-deploy/agents/openai.yaml +14 -0
  689. package/skills/render-deploy/assets/docker.yaml +62 -0
  690. package/skills/render-deploy/assets/go-api.yaml +35 -0
  691. package/skills/render-deploy/assets/nextjs-postgres.yaml +35 -0
  692. package/skills/render-deploy/assets/node-express.yaml +25 -0
  693. package/skills/render-deploy/assets/python-django.yaml +89 -0
  694. package/skills/render-deploy/assets/render-small.svg +3 -0
  695. package/skills/render-deploy/assets/render.png +0 -0
  696. package/skills/render-deploy/assets/static-site.yaml +54 -0
  697. package/skills/render-deploy/references/blueprint-spec.md +718 -0
  698. package/skills/render-deploy/references/codebase-analysis.md +49 -0
  699. package/skills/render-deploy/references/configuration-guide.md +603 -0
  700. package/skills/render-deploy/references/deployment-details.md +224 -0
  701. package/skills/render-deploy/references/direct-creation.md +113 -0
  702. package/skills/render-deploy/references/error-patterns.md +13 -0
  703. package/skills/render-deploy/references/post-deploy-checks.md +36 -0
  704. package/skills/render-deploy/references/runtimes.md +473 -0
  705. package/skills/render-deploy/references/service-types.md +450 -0
  706. package/skills/render-deploy/references/troubleshooting-basics.md +36 -0
  707. package/skills/research/ABOUT.md +20 -0
  708. package/skills/research/tracing-knowledge-lineages/SKILL.md +203 -0
  709. package/skills/round-prompting/SKILL.md +148 -0
  710. package/skills/screenshot/LICENSE.txt +201 -0
  711. package/skills/screenshot/SKILL.md +267 -0
  712. package/skills/screenshot/agents/openai.yaml +6 -0
  713. package/skills/screenshot/assets/screenshot-small.svg +5 -0
  714. package/skills/screenshot/assets/screenshot.png +0 -0
  715. package/skills/screenshot/scripts/ensure_macos_permissions.sh +54 -0
  716. package/skills/screenshot/scripts/macos_display_info.swift +22 -0
  717. package/skills/screenshot/scripts/macos_permissions.swift +40 -0
  718. package/skills/screenshot/scripts/macos_window_info.swift +126 -0
  719. package/skills/screenshot/scripts/take_screenshot.ps1 +163 -0
  720. package/skills/screenshot/scripts/take_screenshot.py +585 -0
  721. package/skills/security-best-practices/LICENSE.txt +201 -0
  722. package/skills/security-best-practices/SKILL.md +86 -0
  723. package/skills/security-best-practices/agents/openai.yaml +4 -0
  724. package/skills/security-best-practices/references/golang-general-backend-security.md +826 -0
  725. package/skills/security-best-practices/references/javascript-express-web-server-security.md +1158 -0
  726. package/skills/security-best-practices/references/javascript-general-web-frontend-security.md +747 -0
  727. package/skills/security-best-practices/references/javascript-jquery-web-frontend-security.md +678 -0
  728. package/skills/security-best-practices/references/javascript-typescript-nextjs-web-server-security.md +1144 -0
  729. package/skills/security-best-practices/references/javascript-typescript-react-web-frontend-security.md +990 -0
  730. package/skills/security-best-practices/references/javascript-typescript-vue-web-frontend-security.md +791 -0
  731. package/skills/security-best-practices/references/python-django-web-server-security.md +882 -0
  732. package/skills/security-best-practices/references/python-fastapi-web-server-security.md +1036 -0
  733. package/skills/security-best-practices/references/python-flask-web-server-security.md +705 -0
  734. package/skills/security-ownership-map/LICENSE.txt +201 -0
  735. package/skills/security-ownership-map/SKILL.md +206 -0
  736. package/skills/security-ownership-map/agents/openai.yaml +4 -0
  737. package/skills/security-ownership-map/references/neo4j-import.md +60 -0
  738. package/skills/security-ownership-map/scripts/build_ownership_map.py +956 -0
  739. package/skills/security-ownership-map/scripts/community_maintainers.py +544 -0
  740. package/skills/security-ownership-map/scripts/query_ownership.py +483 -0
  741. package/skills/security-ownership-map/scripts/run_ownership_map.py +200 -0
  742. package/skills/security-threat-model/LICENSE.txt +201 -0
  743. package/skills/security-threat-model/SKILL.md +81 -0
  744. package/skills/security-threat-model/agents/openai.yaml +4 -0
  745. package/skills/security-threat-model/references/prompt-template.md +255 -0
  746. package/skills/security-threat-model/references/security-controls-and-assets.md +32 -0
  747. package/skills/sentry/LICENSE.txt +201 -0
  748. package/skills/sentry/SKILL.md +123 -0
  749. package/skills/sentry/agents/openai.yaml +6 -0
  750. package/skills/sentry/assets/sentry-small.svg +3 -0
  751. package/skills/sentry/assets/sentry.png +0 -0
  752. package/skills/sentry/scripts/sentry_api.py +238 -0
  753. package/skills/slides/LICENSE.txt +201 -0
  754. package/skills/slides/SKILL.md +71 -0
  755. package/skills/slides/agents/openai.yaml +6 -0
  756. package/skills/slides/assets/pptxgenjs_helpers/code.js +104 -0
  757. package/skills/slides/assets/pptxgenjs_helpers/image.js +333 -0
  758. package/skills/slides/assets/pptxgenjs_helpers/index.js +33 -0
  759. package/skills/slides/assets/pptxgenjs_helpers/latex.js +51 -0
  760. package/skills/slides/assets/pptxgenjs_helpers/layout.js +643 -0
  761. package/skills/slides/assets/pptxgenjs_helpers/layout_builders.js +358 -0
  762. package/skills/slides/assets/pptxgenjs_helpers/svg.js +36 -0
  763. package/skills/slides/assets/pptxgenjs_helpers/text.js +789 -0
  764. package/skills/slides/assets/pptxgenjs_helpers/util.js +24 -0
  765. package/skills/slides/assets/slides-small.svg +3 -0
  766. package/skills/slides/assets/slides.png +0 -0
  767. package/skills/slides/references/pptxgenjs-helpers.md +61 -0
  768. package/skills/slides/scripts/create_montage.py +300 -0
  769. package/skills/slides/scripts/detect_font.py +873 -0
  770. package/skills/slides/scripts/ensure_raster_image.py +202 -0
  771. package/skills/slides/scripts/render_slides.py +273 -0
  772. package/skills/slides/scripts/slides_test.py +201 -0
  773. package/skills/sora/LICENSE.txt +201 -0
  774. package/skills/sora/SKILL.md +153 -0
  775. package/skills/sora/agents/openai.yaml +6 -0
  776. package/skills/sora/assets/sora-small.svg +4 -0
  777. package/skills/sora/assets/sora.png +0 -0
  778. package/skills/sora/references/cinematic-shots.md +53 -0
  779. package/skills/sora/references/cli.md +248 -0
  780. package/skills/sora/references/codex-network.md +28 -0
  781. package/skills/sora/references/prompting.md +137 -0
  782. package/skills/sora/references/sample-prompts.md +95 -0
  783. package/skills/sora/references/social-ads.md +42 -0
  784. package/skills/sora/references/troubleshooting.md +58 -0
  785. package/skills/sora/references/video-api.md +45 -0
  786. package/skills/sora/scripts/sora.py +970 -0
  787. package/skills/speech/LICENSE.txt +201 -0
  788. package/skills/speech/SKILL.md +144 -0
  789. package/skills/speech/agents/openai.yaml +6 -0
  790. package/skills/speech/assets/speech-small.svg +3 -0
  791. package/skills/speech/assets/speech.png +0 -0
  792. package/skills/speech/references/accessibility.md +32 -0
  793. package/skills/speech/references/audio-api.md +31 -0
  794. package/skills/speech/references/cli.md +99 -0
  795. package/skills/speech/references/codex-network.md +28 -0
  796. package/skills/speech/references/ivr.md +32 -0
  797. package/skills/speech/references/narration.md +31 -0
  798. package/skills/speech/references/prompting.md +38 -0
  799. package/skills/speech/references/sample-prompts.md +44 -0
  800. package/skills/speech/references/voice-directions.md +80 -0
  801. package/skills/speech/references/voiceover.md +31 -0
  802. package/skills/speech/scripts/text_to_speech.py +528 -0
  803. package/skills/spreadsheet/LICENSE.txt +201 -0
  804. package/skills/spreadsheet/SKILL.md +145 -0
  805. package/skills/spreadsheet/agents/openai.yaml +6 -0
  806. package/skills/spreadsheet/assets/spreadsheet-small.svg +3 -0
  807. package/skills/spreadsheet/assets/spreadsheet.png +0 -0
  808. package/skills/spreadsheet/references/examples/openpyxl/create_basic_spreadsheet.py +51 -0
  809. package/skills/spreadsheet/references/examples/openpyxl/create_spreadsheet_with_styling.py +96 -0
  810. package/skills/spreadsheet/references/examples/openpyxl/read_existing_spreadsheet.py +59 -0
  811. package/skills/spreadsheet/references/examples/openpyxl/styling_spreadsheet.py +79 -0
  812. package/skills/testing/condition-based-waiting/SKILL.md +123 -0
  813. package/skills/testing/condition-based-waiting/example.ts +158 -0
  814. package/skills/testing/test-driven-development/SKILL.md +367 -0
  815. package/skills/testing/testing-anti-patterns/SKILL.md +304 -0
  816. package/skills/transcribe/LICENSE.txt +201 -0
  817. package/skills/transcribe/SKILL.md +81 -0
  818. package/skills/transcribe/agents/openai.yaml +6 -0
  819. package/skills/transcribe/assets/transcribe-small.svg +3 -0
  820. package/skills/transcribe/assets/transcribe.png +0 -0
  821. package/skills/transcribe/references/api.md +8 -0
  822. package/skills/transcribe/scripts/transcribe_diarize.py +276 -0
  823. package/skills/using-skills/SKILL.md +102 -0
  824. package/skills/using-skills/find-skills +107 -0
  825. package/skills/using-skills/skill-run +44 -0
  826. package/skills/vercel-deploy/LICENSE.txt +21 -0
  827. package/skills/vercel-deploy/SKILL.md +77 -0
  828. package/skills/vercel-deploy/agents/openai.yaml +6 -0
  829. package/skills/vercel-deploy/assets/vercel-small.svg +5 -0
  830. package/skills/vercel-deploy/assets/vercel.png +0 -0
  831. package/skills/vercel-deploy/scripts/deploy.sh +301 -0
  832. package/skills/winui-app/LICENSE.txt +202 -0
  833. package/skills/winui-app/SKILL.md +94 -0
  834. package/skills/winui-app/agents/openai.yaml +5 -0
  835. package/skills/winui-app/assets/winui.png +0 -0
  836. package/skills/winui-app/config.yaml +50 -0
  837. package/skills/winui-app/references/_sections.md +96 -0
  838. package/skills/winui-app/references/accessibility-input-and-localization.md +51 -0
  839. package/skills/winui-app/references/build-run-and-launch-verification.md +72 -0
  840. package/skills/winui-app/references/community-toolkit-controls-and-helpers.md +57 -0
  841. package/skills/winui-app/references/controls-layout-and-adaptive-ui.md +84 -0
  842. package/skills/winui-app/references/foundation-environment-audit-and-remediation.md +82 -0
  843. package/skills/winui-app/references/foundation-setup-and-project-selection.md +67 -0
  844. package/skills/winui-app/references/foundation-template-first-recovery.md +62 -0
  845. package/skills/winui-app/references/foundation-winui-app-structure.md +62 -0
  846. package/skills/winui-app/references/motion-animations-and-polish.md +45 -0
  847. package/skills/winui-app/references/performance-diagnostics-and-responsiveness.md +46 -0
  848. package/skills/winui-app/references/sample-source-map.md +37 -0
  849. package/skills/winui-app/references/shell-navigation-and-windowing.md +67 -0
  850. package/skills/winui-app/references/styling-theming-materials-and-icons.md +71 -0
  851. package/skills/winui-app/references/testing-debugging-and-review-checklists.md +77 -0
  852. package/skills/winui-app/references/windows-app-sdk-lifecycle-notifications-and-deployment.md +52 -0
  853. package/skills/yeet/LICENSE.txt +201 -0
  854. package/skills/yeet/SKILL.md +28 -0
  855. package/skills/yeet/agents/openai.yaml +6 -0
  856. package/skills/yeet/assets/yeet-small.svg +3 -0
  857. package/skills/yeet/assets/yeet.png +0 -0
  858. package/dist/src/agents/definitions.d.ts +0 -16
  859. package/dist/src/agents/definitions.d.ts.map +0 -1
  860. package/dist/src/agents/definitions.js +0 -148
  861. package/dist/src/agents/definitions.js.map +0 -1
@@ -0,0 +1,139 @@
1
+ # Workerd Gotchas
2
+
3
+ ## Common Errors
4
+
5
+ ### "Missing compatibility date"
6
+ **Cause:** Compatibility date not set
7
+ **Solution:**
8
+ ❌ Wrong:
9
+ ```capnp
10
+ const worker :Workerd.Worker = (
11
+ serviceWorkerScript = embed "worker.js"
12
+ )
13
+ ```
14
+
15
+ ✅ Correct:
16
+ ```capnp
17
+ const worker :Workerd.Worker = (
18
+ serviceWorkerScript = embed "worker.js",
19
+ compatibilityDate = "2024-01-15" # Always set!
20
+ )
21
+ ```
22
+
23
+ ### Wrong Binding Type
24
+ **Problem:** JSON not parsed
25
+ **Cause:** Using `text = '{"key":"value"}'` instead of `json`
26
+ **Solution:** Use `json = '{"key":"value"}'` for parsed objects
27
+
28
+ ### Service vs Namespace
29
+ **Problem:** Cannot create DO instance
30
+ **Cause:** Using `service = "room-service"` for Durable Object
31
+ **Solution:** Use `durableObjectNamespace = "Room"` for DO bindings
32
+
33
+ ### Module Name Mismatch
34
+ **Problem:** Import fails
35
+ **Cause:** Module name includes path: `name = "src/index.js"`
36
+ **Solution:** Use simple names: `name = "index.js"`, embed with path
37
+
38
+ ## Network Access
39
+
40
+ **Problem:** Fetch fails with network error
41
+ **Cause:** No network service configured (workerd has no global fetch)
42
+ **Solution:** Add network service binding:
43
+ ```capnp
44
+ services = [(name = "internet", network = (allow = ["public"]))]
45
+ bindings = [(name = "NET", service = "internet")]
46
+ ```
47
+
48
+ Or external service:
49
+ ```capnp
50
+ bindings = [(name = "API", service = (external = (address = "api.com:443", http = (style = tls))))]
51
+ ```
52
+
53
+ ### "Worker not responding"
54
+ **Cause:** Socket misconfigured, no fetch handler, or port unavailable
55
+ **Solution:** Verify socket `address` matches, worker exports `fetch()`, port available
56
+
57
+ ### "Binding not found"
58
+ **Cause:** Name mismatch or service doesn't exist
59
+ **Solution:** Check binding name in config matches code (`env.BINDING` for ES modules)
60
+
61
+ ### "Module not found"
62
+ **Cause:** Module name doesn't match import or bad embed path
63
+ **Solution:** Module `name` must match import path exactly, verify `embed` path
64
+
65
+ ### "Compatibility error"
66
+ **Cause:** Date not set or API unavailable on that date
67
+ **Solution:** Set `compatibilityDate`, verify API available on that date
68
+
69
+ ## Performance Issues
70
+
71
+ **Problem:** High memory usage
72
+ **Cause:** Large caches or many isolates
73
+ **Solution:** Set cache limits, reduce isolate count, or use V8 flags (caution)
74
+
75
+ **Problem:** Slow startup
76
+ **Cause:** Many modules or complex config
77
+ **Solution:** Compile to binary (`workerd compile`), reduce imports
78
+
79
+ **Problem:** Request timeouts
80
+ **Cause:** External service issues or DNS problems
81
+ **Solution:** Check connectivity, DNS resolution, TLS handshake
82
+
83
+ ## Build Issues
84
+
85
+ **Problem:** Cap'n Proto syntax errors
86
+ **Cause:** Invalid config or missing schema
87
+ **Solution:** Install capnproto tools, validate: `capnp compile -I. config.capnp`
88
+
89
+ **Problem:** Embed path not found
90
+ **Cause:** Path relative to config file
91
+ **Solution:** Use correct relative path or absolute path
92
+
93
+ **Problem:** V8 flags cause crashes
94
+ **Cause:** Unsafe V8 flags
95
+ **Solution:** ⚠️ V8 flags unsupported in production. Test thoroughly before use.
96
+
97
+ ## Security Issues
98
+
99
+ **Problem:** Hardcoded secrets in config
100
+ **Cause:** `text` binding with secret value
101
+ **Solution:** Use `fromEnvironment` to load from env vars
102
+
103
+ **Problem:** Overly broad network access
104
+ **Cause:** `network = (allow = ["*"])`
105
+ **Solution:** Restrict to `allow = ["public"]` or specific hosts
106
+
107
+ **Problem:** Extractable crypto keys
108
+ **Cause:** `cryptoKey = (extractable = true, ...)`
109
+ **Solution:** Set `extractable = false` unless export required
110
+
111
+ ## Compatibility Changes
112
+
113
+ **Problem:** Breaking changes after compat date update
114
+ **Cause:** New flags enabled between dates
115
+ **Solution:** Review [compat dates docs](https://developers.cloudflare.com/workers/configuration/compatibility-dates/), test locally first
116
+
117
+ **Problem:** "Compatibility date not supported"
118
+ **Cause:** Workerd version older than compat date
119
+ **Solution:** Update workerd binary (version = max compat date supported)
120
+
121
+ ## Limits
122
+
123
+ | Resource/Limit | Value | Notes |
124
+ |----------------|-------|-------|
125
+ | V8 flags | Unsupported in production | Use with caution |
126
+ | Compatibility date | Must match workerd version | Update if mismatch |
127
+ | Module count | Affects startup time | Many imports slow |
128
+
129
+ ## Troubleshooting Steps
130
+
131
+ 1. **Enable verbose logging**: `workerd serve config.capnp --verbose`
132
+ 2. **Check logs**: Look for error messages, stack traces
133
+ 3. **Validate config**: `capnp compile -I. config.capnp`
134
+ 4. **Test bindings**: Log `Object.keys(env)` to verify
135
+ 5. **Check versions**: Workerd version vs compat date
136
+ 6. **Isolate issue**: Minimal repro config
137
+ 7. **Review schema**: [workerd.capnp](https://github.com/cloudflare/workerd/blob/main/src/workerd/server/workerd.capnp)
138
+
139
+ See [configuration.md](./configuration.md) for config details, [patterns.md](./patterns.md) for working examples, [api.md](./api.md) for runtime APIs.
@@ -0,0 +1,192 @@
1
+ # Workerd Patterns
2
+
3
+ ## Multi-Service Architecture
4
+ ```capnp
5
+ const config :Workerd.Config = (
6
+ services = [
7
+ (name = "frontend", worker = (
8
+ modules = [(name = "index.js", esModule = embed "frontend/index.js")],
9
+ compatibilityDate = "2024-01-15",
10
+ bindings = [(name = "API", service = "api")]
11
+ )),
12
+ (name = "api", worker = (
13
+ modules = [(name = "index.js", esModule = embed "api/index.js")],
14
+ compatibilityDate = "2024-01-15",
15
+ bindings = [(name = "DB", service = "postgres"), (name = "CACHE", kvNamespace = "kv")]
16
+ )),
17
+ (name = "postgres", external = (address = "db.internal:5432", http = ())),
18
+ (name = "kv", disk = (path = "/var/kv", writable = true))
19
+ ],
20
+ sockets = [(name = "http", address = "*:8080", http = (), service = "frontend")]
21
+ );
22
+ ```
23
+
24
+ ## Durable Objects
25
+ ```capnp
26
+ const worker :Workerd.Worker = (
27
+ modules = [(name = "index.js", esModule = embed "index.js"), (name = "room.js", esModule = embed "room.js")],
28
+ compatibilityDate = "2024-01-15",
29
+ bindings = [(name = "ROOMS", durableObjectNamespace = "Room")],
30
+ durableObjectNamespaces = [(className = "Room", uniqueKey = "v1")],
31
+ durableObjectStorage = (localDisk = "/var/do")
32
+ );
33
+ ```
34
+
35
+ ## Dev vs Prod Configs
36
+ ```capnp
37
+ # Use parameter bindings for env-specific config
38
+ const baseWorker :Workerd.Worker = (
39
+ modules = [(name = "index.js", esModule = embed "src/index.js")],
40
+ compatibilityDate = "2024-01-15",
41
+ bindings = [(name = "API_URL", parameter = (type = text))]
42
+ );
43
+
44
+ const prodWorker :Workerd.Worker = (
45
+ inherit = "base-service",
46
+ bindings = [(name = "API_URL", text = "https://api.prod.com")]
47
+ );
48
+ ```
49
+
50
+ ## HTTP Reverse Proxy
51
+ ```capnp
52
+ services = [
53
+ (name = "proxy", worker = (serviceWorkerScript = embed "proxy.js", compatibilityDate = "2024-01-15", bindings = [(name = "BACKEND", service = "backend")])),
54
+ (name = "backend", external = (address = "internal:8080", http = ()))
55
+ ]
56
+ ```
57
+
58
+ ## Local Development
59
+
60
+ **Recommended:** Use Wrangler
61
+ ```bash
62
+ wrangler dev # Uses workerd internally
63
+ ```
64
+
65
+ **Direct workerd:**
66
+ ```bash
67
+ workerd serve config.capnp --socket-addr http=*:3000 --verbose
68
+ ```
69
+
70
+ **Environment variables:**
71
+ ```capnp
72
+ bindings = [(name = "DATABASE_URL", fromEnvironment = "DATABASE_URL")]
73
+ ```
74
+
75
+ ## Testing
76
+ ```bash
77
+ workerd test config.capnp
78
+ workerd test config.capnp --test-only=test.js
79
+ ```
80
+
81
+ Test files must be included in `modules = [...]` config.
82
+
83
+ ## Production Deployment
84
+
85
+ ### Compiled Binary (Recommended)
86
+ ```bash
87
+ workerd compile config.capnp myConfig -o production-server
88
+ ./production-server
89
+ ```
90
+
91
+ ### Docker
92
+ ```dockerfile
93
+ FROM debian:bookworm-slim
94
+ RUN apt-get update && apt-get install -y ca-certificates
95
+ COPY workerd /usr/local/bin/
96
+ COPY config.capnp /etc/workerd/
97
+ COPY src/ /etc/workerd/src/
98
+ EXPOSE 8080
99
+ CMD ["workerd", "serve", "/etc/workerd/config.capnp"]
100
+ ```
101
+
102
+ ### Systemd
103
+ ```ini
104
+ # /etc/systemd/system/workerd.service
105
+ [Service]
106
+ ExecStart=/usr/bin/workerd serve /etc/workerd/config.capnp --socket-fd http=3
107
+ Restart=always
108
+ User=nobody
109
+ ```
110
+
111
+ See systemd socket activation docs for complete setup.
112
+
113
+ ## Framework Integration
114
+
115
+ ### Hono
116
+ ```javascript
117
+ import { Hono } from 'hono';
118
+
119
+ const app = new Hono();
120
+
121
+ app.get('/', (c) => c.text('Hello Hono!'));
122
+ app.get('/api/:id', async (c) => {
123
+ const id = c.req.param('id');
124
+ const data = await c.env.KV.get(id);
125
+ return c.json({ id, data });
126
+ });
127
+
128
+ export default app;
129
+ ```
130
+
131
+ ### itty-router
132
+ ```javascript
133
+ import { Router } from 'itty-router';
134
+
135
+ const router = Router();
136
+
137
+ router.get('/', () => new Response('Hello itty!'));
138
+ router.get('/api/:id', async (request, env) => {
139
+ const { id } = request.params;
140
+ const data = await env.KV.get(id);
141
+ return Response.json({ id, data });
142
+ });
143
+
144
+ export default {
145
+ fetch: (request, env, ctx) => router.handle(request, env, ctx)
146
+ };
147
+ ```
148
+
149
+ ## Best Practices
150
+
151
+ 1. **Use ES modules** over service worker syntax
152
+ 2. **Explicit bindings** - no global namespace assumptions
153
+ 3. **Type safety** - define `Env` interfaces (use `wrangler types`)
154
+ 4. **Service isolation** - split concerns into multiple services
155
+ 5. **Pin compat date** in production after testing
156
+ 6. **Use ctx.waitUntil()** for background tasks
157
+ 7. **Handle errors gracefully** with try/catch
158
+ 8. **Configure resource limits** on caches/storage
159
+
160
+ ## Common Patterns
161
+
162
+ ### Error Handling
163
+ ```javascript
164
+ export default {
165
+ async fetch(request, env, ctx) {
166
+ try {
167
+ return await handleRequest(request, env);
168
+ } catch (error) {
169
+ console.error("Request failed", error);
170
+ return new Response("Internal Error", {status: 500});
171
+ }
172
+ }
173
+ };
174
+ ```
175
+
176
+ ### Background Tasks
177
+ ```javascript
178
+ export default {
179
+ async fetch(request, env, ctx) {
180
+ const response = new Response("OK");
181
+
182
+ // Fire-and-forget background work
183
+ ctx.waitUntil(
184
+ env.ANALYTICS.put(request.url, Date.now())
185
+ );
186
+
187
+ return response;
188
+ }
189
+ };
190
+ ```
191
+
192
+ See [configuration.md](./configuration.md) for config syntax, [api.md](./api.md) for runtime APIs, [gotchas.md](./gotchas.md) for common errors.
@@ -0,0 +1,108 @@
1
+ # Cloudflare Workers
2
+
3
+ Expert guidance for building, deploying, and optimizing Cloudflare Workers applications.
4
+
5
+ ## Overview
6
+
7
+ Cloudflare Workers run on V8 isolates (NOT containers/VMs):
8
+ - Extremely fast cold starts (< 1ms)
9
+ - Global deployment across 300+ locations
10
+ - Web standards compliant (fetch, URL, Headers, Request, Response)
11
+ - Support JS/TS, Python, Rust, and WebAssembly
12
+
13
+ **Key principle**: Workers use web platform APIs wherever possible for portability.
14
+
15
+ ## Module Worker Pattern (Recommended)
16
+
17
+ ```typescript
18
+ export default {
19
+ async fetch(request: Request, env: Env, ctx: ExecutionContext): Promise<Response> {
20
+ return new Response('Hello World!');
21
+ },
22
+ };
23
+ ```
24
+
25
+ **Handler parameters**:
26
+ - `request`: Incoming HTTP request (standard Request object)
27
+ - `env`: Environment bindings (KV, D1, R2, secrets, vars)
28
+ - `ctx`: Execution context (`waitUntil`, `passThroughOnException`)
29
+
30
+ ## Essential Commands
31
+
32
+ ```bash
33
+ npx wrangler dev # Local dev
34
+ npx wrangler dev --remote # Remote dev (actual resources)
35
+ npx wrangler deploy # Production
36
+ npx wrangler deploy --env staging # Specific environment
37
+ npx wrangler tail # Stream logs
38
+ npx wrangler secret put API_KEY # Set secret
39
+ ```
40
+
41
+ ## When to Use Workers
42
+
43
+ - API endpoints at the edge
44
+ - Request/response transformation
45
+ - Authentication/authorization layers
46
+ - Static asset optimization
47
+ - A/B testing and feature flags
48
+ - Rate limiting and security
49
+ - Proxy/routing logic
50
+ - WebSocket applications
51
+
52
+ ## Quick Start
53
+
54
+ ```bash
55
+ npm create cloudflare@latest my-worker -- --type hello-world
56
+ cd my-worker
57
+ npx wrangler dev
58
+ ```
59
+
60
+ ## Handler Signatures
61
+
62
+ ```typescript
63
+ // HTTP requests
64
+ async fetch(request: Request, env: Env, ctx: ExecutionContext): Promise<Response>
65
+
66
+ // Cron triggers
67
+ async scheduled(event: ScheduledEvent, env: Env, ctx: ExecutionContext): Promise<void>
68
+
69
+ // Queue consumer
70
+ async queue(batch: MessageBatch, env: Env, ctx: ExecutionContext): Promise<void>
71
+
72
+ // Tail consumer
73
+ async tail(events: TraceItem[], env: Env, ctx: ExecutionContext): Promise<void>
74
+ ```
75
+
76
+ ## Resources
77
+
78
+ **Docs**: https://developers.cloudflare.com/workers/
79
+ **Examples**: https://developers.cloudflare.com/workers/examples/
80
+ **Runtime APIs**: https://developers.cloudflare.com/workers/runtime-apis/
81
+
82
+ ## In This Reference
83
+
84
+ - [Configuration](./configuration.md) - wrangler.jsonc setup, bindings, environments
85
+ - [API](./api.md) - Runtime APIs, bindings, execution context
86
+ - [Patterns](./patterns.md) - Common workflows, testing, optimization
87
+ - [Frameworks](./frameworks.md) - Hono, routing, validation
88
+ - [Gotchas](./gotchas.md) - Common issues, limits, troubleshooting
89
+
90
+ ## Reading Order
91
+
92
+ | Task | Start With | Then Read |
93
+ |------|------------|-----------|
94
+ | First Worker | README → Configuration → API | Patterns |
95
+ | Add framework | Frameworks | Configuration (bindings) |
96
+ | Add storage/bindings | Configuration → API (binding usage) | See Also links |
97
+ | Debug issues | Gotchas | API (specific binding docs) |
98
+ | Production optimization | Patterns | API (caching, streaming) |
99
+ | Type safety | Configuration (TypeScript) | Frameworks (Hono typing) |
100
+
101
+ ## See Also
102
+
103
+ - [KV](../kv/README.md) - Key-value storage
104
+ - [D1](../d1/README.md) - SQL database
105
+ - [R2](../r2/README.md) - Object storage
106
+ - [Durable Objects](../durable-objects/README.md) - Stateful coordination
107
+ - [Queues](../queues/README.md) - Message queues
108
+ - [Wrangler](../wrangler/README.md) - CLI tool reference
@@ -0,0 +1,195 @@
1
+ # Workers Runtime APIs
2
+
3
+ ## Fetch Handler
4
+
5
+ ```typescript
6
+ export default {
7
+ async fetch(request: Request, env: Env, ctx: ExecutionContext): Promise<Response> {
8
+ const url = new URL(request.url);
9
+ if (request.method === 'POST' && url.pathname === '/api') {
10
+ const body = await request.json();
11
+ return new Response(JSON.stringify({ id: 1 }), {
12
+ headers: { 'Content-Type': 'application/json' }
13
+ });
14
+ }
15
+ return fetch(request); // Subrequest to origin
16
+ },
17
+ };
18
+ ```
19
+
20
+ ## Execution Context
21
+
22
+ ```typescript
23
+ ctx.waitUntil(logAnalytics(request)); // Background work, don't block response
24
+ ctx.passThroughOnException(); // Failover to origin on error
25
+ ```
26
+
27
+ **Never** `await` background operations - use `ctx.waitUntil()`.
28
+
29
+ ## Bindings
30
+
31
+ ```typescript
32
+ // KV
33
+ await env.MY_KV.get('key');
34
+ await env.MY_KV.put('key', 'value', { expirationTtl: 3600 });
35
+
36
+ // R2
37
+ const obj = await env.MY_BUCKET.get('file.txt');
38
+ await env.MY_BUCKET.put('file.txt', 'content');
39
+
40
+ // D1
41
+ const result = await env.DB.prepare('SELECT * FROM users WHERE id = ?').bind(1).first();
42
+
43
+ // D1 Sessions (2024+) - read-after-write consistency
44
+ const session = env.DB.withSession();
45
+ await session.prepare('INSERT INTO users (name) VALUES (?)').bind('Alice').run();
46
+ const user = await session.prepare('SELECT * FROM users WHERE name = ?').bind('Alice').first(); // Guaranteed fresh
47
+
48
+ // Queues
49
+ await env.MY_QUEUE.send({ timestamp: Date.now() });
50
+
51
+ // Secrets/vars
52
+ const key = env.API_KEY;
53
+ ```
54
+
55
+ ## Cache API
56
+
57
+ ```typescript
58
+ const cache = caches.default;
59
+ let response = await cache.match(request);
60
+
61
+ if (!response) {
62
+ response = await fetch(request);
63
+ response = new Response(response.body, response);
64
+ response.headers.set('Cache-Control', 'max-age=3600');
65
+ ctx.waitUntil(cache.put(request, response.clone())); // Clone before caching
66
+ }
67
+ ```
68
+
69
+ ## HTMLRewriter
70
+
71
+ ```typescript
72
+ return new HTMLRewriter()
73
+ .on('a[href]', {
74
+ element(el) {
75
+ const href = el.getAttribute('href');
76
+ if (href?.startsWith('http://')) {
77
+ el.setAttribute('href', href.replace('http://', 'https://'));
78
+ }
79
+ }
80
+ })
81
+ .transform(response);
82
+ ```
83
+
84
+ **Use cases**: A/B testing, analytics injection, link rewriting
85
+
86
+ ## WebSockets
87
+
88
+ ### Standard WebSocket
89
+
90
+ ```typescript
91
+ const [client, server] = Object.values(new WebSocketPair());
92
+
93
+ server.accept();
94
+ server.addEventListener('message', event => {
95
+ server.send(`Echo: ${event.data}`);
96
+ });
97
+
98
+ return new Response(null, { status: 101, webSocket: client });
99
+ ```
100
+
101
+ ### WebSocket Hibernation (Recommended for idle connections)
102
+
103
+ ```typescript
104
+ // In Durable Object
105
+ export class WebSocketDO {
106
+ async webSocketMessage(ws: WebSocket, message: string) {
107
+ ws.send(`Echo: ${message}`);
108
+ }
109
+
110
+ async webSocketClose(ws: WebSocket, code: number, reason: string) {
111
+ // Cleanup on close
112
+ }
113
+
114
+ async webSocketError(ws: WebSocket, error: Error) {
115
+ console.error('WebSocket error:', error);
116
+ }
117
+ }
118
+ ```
119
+
120
+ Hibernation automatically suspends inactive connections (no CPU cost), wakes on events
121
+
122
+ ## Durable Objects
123
+
124
+ ### RPC Pattern (Recommended 2024+)
125
+
126
+ ```typescript
127
+ export class Counter {
128
+ private value = 0;
129
+
130
+ constructor(private state: DurableObjectState) {
131
+ state.blockConcurrencyWhile(async () => {
132
+ this.value = (await state.storage.get('value')) || 0;
133
+ });
134
+ }
135
+
136
+ // Export methods directly - called via RPC (type-safe, zero serialization)
137
+ async increment(): Promise<number> {
138
+ this.value++;
139
+ await this.state.storage.put('value', this.value);
140
+ return this.value;
141
+ }
142
+
143
+ async getValue(): Promise<number> {
144
+ return this.value;
145
+ }
146
+ }
147
+
148
+ // Worker usage:
149
+ const stub = env.COUNTER.get(env.COUNTER.idFromName('global'));
150
+ const count = await stub.increment(); // Direct method call, full type safety
151
+ ```
152
+
153
+ ### Legacy Fetch Pattern (Pre-2024)
154
+
155
+ ```typescript
156
+ async fetch(request: Request): Promise<Response> {
157
+ const url = new URL(request.url);
158
+ if (url.pathname === '/increment') {
159
+ await this.state.storage.put('value', ++this.value);
160
+ }
161
+ return new Response(String(this.value));
162
+ }
163
+ // Usage: await stub.fetch('http://x/increment')
164
+ ```
165
+
166
+ **When to use DOs**: Real-time collaboration, rate limiting, strongly consistent state
167
+
168
+ ## Other Handlers
169
+
170
+ ```typescript
171
+ // Cron: async scheduled(event, env, ctx) { ctx.waitUntil(doCleanup(env)); }
172
+ // Queue: async queue(batch) { for (const msg of batch.messages) { await process(msg.body); msg.ack(); } }
173
+ // Tail: async tail(events, env) { for (const e of events) if (e.outcome === 'exception') await log(e); }
174
+ ```
175
+
176
+ ## Service Bindings
177
+
178
+ ```typescript
179
+ // Worker-to-worker RPC (zero latency, no internet round-trip)
180
+ return env.SERVICE_B.fetch(request);
181
+
182
+ // With RPC (2024+) - same as Durable Objects RPC
183
+ export class ServiceWorker {
184
+ async getData() { return { data: 'value' }; }
185
+ }
186
+ // Usage: const data = await env.SERVICE_B.getData();
187
+ ```
188
+
189
+ **Benefits**: Type-safe method calls, no HTTP overhead, share code between Workers
190
+
191
+ ## See Also
192
+
193
+ - [Configuration](./configuration.md) - Binding setup
194
+ - [Patterns](./patterns.md) - Common workflows
195
+ - [KV](../kv/README.md), [D1](../d1/README.md), [R2](../r2/README.md), [Durable Objects](../durable-objects/README.md), [Queues](../queues/README.md)