memory-journal-mcp 7.7.0 → 8.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 (531) hide show
  1. package/README.md +126 -56
  2. package/dist/chunk-6OHRCNYW.js +3231 -0
  3. package/dist/chunk-JFMITANR.js +5168 -0
  4. package/dist/{chunk-QCQPAF4I.js → chunk-MWNLAEHR.js} +301 -4321
  5. package/dist/{chunk-ARLYSFSI.js → chunk-UHSO65A4.js} +4242 -6092
  6. package/dist/cli.js +21 -3
  7. package/dist/index.d.ts +16 -13
  8. package/dist/index.js +4 -2
  9. package/dist/resources-IJVKDFGS.js +2 -0
  10. package/dist/tools-44DGXE3V.js +2 -0
  11. package/dist/worker-script.js +201 -20
  12. package/package.json +7 -4
  13. package/skills/README.md +62 -25
  14. package/skills/adversarial-performance/SKILL.md +139 -0
  15. package/skills/adversarial-performance/references/audit-categories.md +462 -0
  16. package/skills/adversarial-performance/references/copilot-performance-prompts.md +44 -0
  17. package/skills/adversarial-performance/references/copilot-usage.md +16 -0
  18. package/skills/adversarial-performance/references/feedback-loop.md +177 -0
  19. package/skills/adversarial-performance/references/multi-pass-performance-protocol.md +398 -0
  20. package/skills/adversarial-planner/SKILL.md +23 -54
  21. package/skills/adversarial-planner/references/copilot-integration.md +25 -40
  22. package/skills/adversarial-planner/references/copilot-usage.md +16 -0
  23. package/skills/adversarial-planner/references/multi-pass-protocol.md +4 -0
  24. package/skills/adversarial-security/SKILL.md +149 -0
  25. package/skills/adversarial-security/references/adversarial-base-protocol.md +44 -0
  26. package/skills/adversarial-security/references/audit-categories.md +723 -0
  27. package/skills/adversarial-security/references/copilot-security-prompts.md +142 -0
  28. package/skills/adversarial-security/references/copilot-usage.md +16 -0
  29. package/skills/adversarial-security/references/feedback-loop.md +206 -0
  30. package/skills/adversarial-security/references/journal-opt-out.md +7 -0
  31. package/skills/adversarial-security/references/multi-pass-security-protocol.md +403 -0
  32. package/skills/adversarial-skill-audit/SKILL.md +118 -0
  33. package/skills/adversarial-skill-audit/references/audit-categories.md +308 -0
  34. package/skills/adversarial-skill-audit/references/copilot-skill-prompts.md +68 -0
  35. package/skills/adversarial-skill-audit/references/copilot-usage.md +16 -0
  36. package/skills/adversarial-skill-audit/references/feedback-loop.md +155 -0
  37. package/skills/adversarial-skill-audit/references/multi-pass-skill-protocol.md +367 -0
  38. package/skills/adversarial-skill-audit/scripts/check-skills.ps1 +48 -0
  39. package/skills/adversarial-skill-audit/scripts/run-copilot.ps1 +52 -0
  40. package/skills/adversarial-workflow-audit/SKILL.md +82 -0
  41. package/skills/adversarial-workflow-audit/references/audit-categories.md +28 -0
  42. package/skills/adversarial-workflow-audit/references/copilot-usage.md +16 -0
  43. package/skills/adversarial-workflow-audit/scripts/check-workflows.ps1 +24 -0
  44. package/skills/agents-sdk/SKILL.md +220 -0
  45. package/skills/agents-sdk/references/callable.md +92 -0
  46. package/skills/agents-sdk/references/codemode.md +209 -0
  47. package/skills/agents-sdk/references/email.md +144 -0
  48. package/skills/agents-sdk/references/mcp/SKILL.md +65 -0
  49. package/skills/agents-sdk/references/mcp/code-mode-reference.md +245 -0
  50. package/skills/agents-sdk/references/mcp/oauth-reference.md +359 -0
  51. package/skills/agents-sdk/references/mcp/references/architecture-reference.md +208 -0
  52. package/skills/agents-sdk/references/mcp/references/cloudflare-quickstart.md +156 -0
  53. package/skills/agents-sdk/references/mcp/references/error-handling.md +343 -0
  54. package/skills/agents-sdk/references/mcp/references/http-security.md +164 -0
  55. package/skills/agents-sdk/references/mcp/references/implementation-guide.md +507 -0
  56. package/skills/agents-sdk/references/mcp/references/testing-reference.md +171 -0
  57. package/skills/agents-sdk/references/mcp.md +157 -0
  58. package/skills/agents-sdk/references/state-scheduling.md +164 -0
  59. package/skills/agents-sdk/references/streaming-chat.md +168 -0
  60. package/skills/agents-sdk/references/workflows.md +136 -0
  61. package/skills/auth-identity/SKILL.md +48 -0
  62. package/skills/autonomous-dev/SKILL.md +46 -23
  63. package/skills/autonomous-dev/references/workflow_orchestration.md +22 -0
  64. package/skills/aws/SKILL.md +39 -0
  65. package/skills/azure/SKILL.md +38 -0
  66. package/skills/bin/sync.js +7 -1
  67. package/skills/biome/SKILL.md +59 -0
  68. package/skills/bun/SKILL.md +8 -2
  69. package/skills/cloudflare/SKILL.md +37 -0
  70. package/skills/cloudflare/references/agents-sdk/README.md +95 -0
  71. package/skills/cloudflare/references/agents-sdk/api.md +195 -0
  72. package/skills/cloudflare/references/agents-sdk/configuration.md +178 -0
  73. package/skills/cloudflare/references/agents-sdk/gotchas.md +173 -0
  74. package/skills/cloudflare/references/agents-sdk/patterns.md +215 -0
  75. package/skills/cloudflare/references/ai-gateway/README.md +176 -0
  76. package/skills/cloudflare/references/ai-gateway/configuration.md +117 -0
  77. package/skills/cloudflare/references/ai-gateway/dynamic-routing.md +88 -0
  78. package/skills/cloudflare/references/ai-gateway/features.md +96 -0
  79. package/skills/cloudflare/references/ai-gateway/sdk-integration.md +110 -0
  80. package/skills/cloudflare/references/ai-gateway/troubleshooting.md +90 -0
  81. package/skills/cloudflare/references/ai-search/README.md +145 -0
  82. package/skills/cloudflare/references/ai-search/api.md +87 -0
  83. package/skills/cloudflare/references/ai-search/configuration.md +91 -0
  84. package/skills/cloudflare/references/ai-search/gotchas.md +92 -0
  85. package/skills/cloudflare/references/ai-search/patterns.md +87 -0
  86. package/skills/cloudflare/references/analytics-engine/README.md +96 -0
  87. package/skills/cloudflare/references/analytics-engine/api.md +112 -0
  88. package/skills/cloudflare/references/analytics-engine/configuration.md +107 -0
  89. package/skills/cloudflare/references/analytics-engine/gotchas.md +87 -0
  90. package/skills/cloudflare/references/analytics-engine/patterns.md +83 -0
  91. package/skills/cloudflare/references/api/README.md +66 -0
  92. package/skills/cloudflare/references/api/api.md +205 -0
  93. package/skills/cloudflare/references/api/configuration.md +158 -0
  94. package/skills/cloudflare/references/api/gotchas.md +231 -0
  95. package/skills/cloudflare/references/api/patterns.md +208 -0
  96. package/skills/cloudflare/references/api-shield/README.md +44 -0
  97. package/skills/cloudflare/references/api-shield/api.md +153 -0
  98. package/skills/cloudflare/references/api-shield/configuration.md +210 -0
  99. package/skills/cloudflare/references/api-shield/gotchas.md +132 -0
  100. package/skills/cloudflare/references/api-shield/patterns.md +185 -0
  101. package/skills/cloudflare/references/argo-smart-routing/README.md +96 -0
  102. package/skills/cloudflare/references/argo-smart-routing/api.md +253 -0
  103. package/skills/cloudflare/references/argo-smart-routing/configuration.md +205 -0
  104. package/skills/cloudflare/references/argo-smart-routing/gotchas.md +115 -0
  105. package/skills/cloudflare/references/argo-smart-routing/patterns.md +107 -0
  106. package/skills/cloudflare/references/bindings/README.md +127 -0
  107. package/skills/cloudflare/references/bindings/api.md +214 -0
  108. package/skills/cloudflare/references/bindings/configuration.md +200 -0
  109. package/skills/cloudflare/references/bindings/gotchas.md +210 -0
  110. package/skills/cloudflare/references/bindings/patterns.md +205 -0
  111. package/skills/cloudflare/references/bot-management/README.md +95 -0
  112. package/skills/cloudflare/references/bot-management/api.md +175 -0
  113. package/skills/cloudflare/references/bot-management/configuration.md +175 -0
  114. package/skills/cloudflare/references/bot-management/gotchas.md +116 -0
  115. package/skills/cloudflare/references/bot-management/patterns.md +181 -0
  116. package/skills/cloudflare/references/browser-rendering/README.md +84 -0
  117. package/skills/cloudflare/references/browser-rendering/api.md +108 -0
  118. package/skills/cloudflare/references/browser-rendering/configuration.md +78 -0
  119. package/skills/cloudflare/references/browser-rendering/gotchas.md +91 -0
  120. package/skills/cloudflare/references/browser-rendering/patterns.md +93 -0
  121. package/skills/cloudflare/references/c3/README.md +111 -0
  122. package/skills/cloudflare/references/c3/api.md +71 -0
  123. package/skills/cloudflare/references/c3/configuration.md +85 -0
  124. package/skills/cloudflare/references/c3/gotchas.md +97 -0
  125. package/skills/cloudflare/references/c3/patterns.md +84 -0
  126. package/skills/cloudflare/references/cache-reserve/README.md +150 -0
  127. package/skills/cloudflare/references/cache-reserve/api.md +184 -0
  128. package/skills/cloudflare/references/cache-reserve/configuration.md +170 -0
  129. package/skills/cloudflare/references/cache-reserve/gotchas.md +136 -0
  130. package/skills/cloudflare/references/cache-reserve/patterns.md +197 -0
  131. package/skills/cloudflare/references/containers/README.md +87 -0
  132. package/skills/cloudflare/references/containers/api.md +197 -0
  133. package/skills/cloudflare/references/containers/configuration.md +191 -0
  134. package/skills/cloudflare/references/containers/gotchas.md +182 -0
  135. package/skills/cloudflare/references/containers/patterns.md +204 -0
  136. package/skills/cloudflare/references/cron-triggers/README.md +101 -0
  137. package/skills/cloudflare/references/cron-triggers/api.md +224 -0
  138. package/skills/cloudflare/references/cron-triggers/configuration.md +190 -0
  139. package/skills/cloudflare/references/cron-triggers/gotchas.md +207 -0
  140. package/skills/cloudflare/references/cron-triggers/patterns.md +274 -0
  141. package/skills/cloudflare/references/d1/README.md +137 -0
  142. package/skills/cloudflare/references/d1/api.md +213 -0
  143. package/skills/cloudflare/references/d1/configuration.md +198 -0
  144. package/skills/cloudflare/references/d1/gotchas.md +98 -0
  145. package/skills/cloudflare/references/d1/patterns.md +240 -0
  146. package/skills/cloudflare/references/ddos/README.md +42 -0
  147. package/skills/cloudflare/references/ddos/api.md +158 -0
  148. package/skills/cloudflare/references/ddos/configuration.md +94 -0
  149. package/skills/cloudflare/references/ddos/gotchas.md +114 -0
  150. package/skills/cloudflare/references/ddos/patterns.md +220 -0
  151. package/skills/cloudflare/references/decision-trees.md +95 -0
  152. package/skills/cloudflare/references/do-storage/README.md +79 -0
  153. package/skills/cloudflare/references/do-storage/api.md +107 -0
  154. package/skills/cloudflare/references/do-storage/configuration.md +114 -0
  155. package/skills/cloudflare/references/do-storage/gotchas.md +153 -0
  156. package/skills/cloudflare/references/do-storage/patterns.md +210 -0
  157. package/skills/cloudflare/references/do-storage/testing.md +186 -0
  158. package/skills/cloudflare/references/durable-objects/README.md +194 -0
  159. package/skills/cloudflare/references/durable-objects/api.md +205 -0
  160. package/skills/cloudflare/references/durable-objects/configuration.md +160 -0
  161. package/skills/cloudflare/references/durable-objects/gotchas.md +200 -0
  162. package/skills/cloudflare/references/durable-objects/patterns.md +205 -0
  163. package/skills/cloudflare/references/email-routing/README.md +89 -0
  164. package/skills/cloudflare/references/email-routing/api.md +192 -0
  165. package/skills/cloudflare/references/email-routing/configuration.md +187 -0
  166. package/skills/cloudflare/references/email-routing/gotchas.md +203 -0
  167. package/skills/cloudflare/references/email-routing/patterns.md +241 -0
  168. package/skills/cloudflare/references/email-workers/README.md +153 -0
  169. package/skills/cloudflare/references/email-workers/api.md +227 -0
  170. package/skills/cloudflare/references/email-workers/configuration.md +115 -0
  171. package/skills/cloudflare/references/email-workers/gotchas.md +133 -0
  172. package/skills/cloudflare/references/email-workers/patterns.md +108 -0
  173. package/skills/cloudflare/references/graphql-api/README.md +147 -0
  174. package/skills/cloudflare/references/graphql-api/api.md +175 -0
  175. package/skills/cloudflare/references/graphql-api/configuration.md +151 -0
  176. package/skills/cloudflare/references/graphql-api/gotchas.md +111 -0
  177. package/skills/cloudflare/references/graphql-api/patterns.md +276 -0
  178. package/skills/cloudflare/references/hyperdrive/README.md +84 -0
  179. package/skills/cloudflare/references/hyperdrive/api.md +149 -0
  180. package/skills/cloudflare/references/hyperdrive/configuration.md +166 -0
  181. package/skills/cloudflare/references/hyperdrive/gotchas.md +77 -0
  182. package/skills/cloudflare/references/hyperdrive/patterns.md +203 -0
  183. package/skills/cloudflare/references/images/README.md +65 -0
  184. package/skills/cloudflare/references/images/api.md +101 -0
  185. package/skills/cloudflare/references/images/configuration.md +206 -0
  186. package/skills/cloudflare/references/images/gotchas.md +106 -0
  187. package/skills/cloudflare/references/images/patterns.md +126 -0
  188. package/skills/cloudflare/references/kv/README.md +90 -0
  189. package/skills/cloudflare/references/kv/api.md +163 -0
  190. package/skills/cloudflare/references/kv/configuration.md +148 -0
  191. package/skills/cloudflare/references/kv/gotchas.md +133 -0
  192. package/skills/cloudflare/references/kv/patterns.md +195 -0
  193. package/skills/cloudflare/references/miniflare/README.md +113 -0
  194. package/skills/cloudflare/references/miniflare/api.md +204 -0
  195. package/skills/cloudflare/references/miniflare/configuration.md +174 -0
  196. package/skills/cloudflare/references/miniflare/gotchas.md +179 -0
  197. package/skills/cloudflare/references/miniflare/patterns.md +187 -0
  198. package/skills/cloudflare/references/network-interconnect/README.md +104 -0
  199. package/skills/cloudflare/references/network-interconnect/api.md +220 -0
  200. package/skills/cloudflare/references/network-interconnect/configuration.md +123 -0
  201. package/skills/cloudflare/references/network-interconnect/gotchas.md +175 -0
  202. package/skills/cloudflare/references/network-interconnect/patterns.md +174 -0
  203. package/skills/cloudflare/references/observability/README.md +93 -0
  204. package/skills/cloudflare/references/observability/api.md +168 -0
  205. package/skills/cloudflare/references/observability/configuration.md +178 -0
  206. package/skills/cloudflare/references/observability/gotchas.md +125 -0
  207. package/skills/cloudflare/references/observability/patterns.md +105 -0
  208. package/skills/cloudflare/references/pages/README.md +92 -0
  209. package/skills/cloudflare/references/pages/api.md +205 -0
  210. package/skills/cloudflare/references/pages/configuration.md +216 -0
  211. package/skills/cloudflare/references/pages/gotchas.md +218 -0
  212. package/skills/cloudflare/references/pages/patterns.md +215 -0
  213. package/skills/cloudflare/references/pages-functions/README.md +104 -0
  214. package/skills/cloudflare/references/pages-functions/api.md +159 -0
  215. package/skills/cloudflare/references/pages-functions/configuration.md +130 -0
  216. package/skills/cloudflare/references/pages-functions/gotchas.md +102 -0
  217. package/skills/cloudflare/references/pages-functions/patterns.md +148 -0
  218. package/skills/cloudflare/references/pipelines/README.md +109 -0
  219. package/skills/cloudflare/references/pipelines/api.md +214 -0
  220. package/skills/cloudflare/references/pipelines/configuration.md +98 -0
  221. package/skills/cloudflare/references/pipelines/gotchas.md +84 -0
  222. package/skills/cloudflare/references/pipelines/patterns.md +87 -0
  223. package/skills/cloudflare/references/product-index.md +112 -0
  224. package/skills/cloudflare/references/pulumi/README.md +113 -0
  225. package/skills/cloudflare/references/pulumi/api.md +230 -0
  226. package/skills/cloudflare/references/pulumi/configuration.md +213 -0
  227. package/skills/cloudflare/references/pulumi/gotchas.md +205 -0
  228. package/skills/cloudflare/references/pulumi/patterns.md +260 -0
  229. package/skills/cloudflare/references/queues/README.md +99 -0
  230. package/skills/cloudflare/references/queues/api.md +211 -0
  231. package/skills/cloudflare/references/queues/configuration.md +151 -0
  232. package/skills/cloudflare/references/queues/gotchas.md +210 -0
  233. package/skills/cloudflare/references/queues/patterns.md +220 -0
  234. package/skills/cloudflare/references/r2/README.md +97 -0
  235. package/skills/cloudflare/references/r2/api.md +235 -0
  236. package/skills/cloudflare/references/r2/configuration.md +176 -0
  237. package/skills/cloudflare/references/r2/gotchas.md +190 -0
  238. package/skills/cloudflare/references/r2/patterns.md +203 -0
  239. package/skills/cloudflare/references/r2-data-catalog/README.md +157 -0
  240. package/skills/cloudflare/references/r2-data-catalog/api.md +199 -0
  241. package/skills/cloudflare/references/r2-data-catalog/configuration.md +205 -0
  242. package/skills/cloudflare/references/r2-data-catalog/gotchas.md +170 -0
  243. package/skills/cloudflare/references/r2-data-catalog/patterns.md +191 -0
  244. package/skills/cloudflare/references/r2-sql/README.md +138 -0
  245. package/skills/cloudflare/references/r2-sql/SKILL.md.backup +512 -0
  246. package/skills/cloudflare/references/r2-sql/api.md +159 -0
  247. package/skills/cloudflare/references/r2-sql/configuration.md +152 -0
  248. package/skills/cloudflare/references/r2-sql/gotchas.md +228 -0
  249. package/skills/cloudflare/references/r2-sql/patterns.md +230 -0
  250. package/skills/cloudflare/references/realtime-sfu/README.md +66 -0
  251. package/skills/cloudflare/references/realtime-sfu/api.md +164 -0
  252. package/skills/cloudflare/references/realtime-sfu/configuration.md +141 -0
  253. package/skills/cloudflare/references/realtime-sfu/gotchas.md +138 -0
  254. package/skills/cloudflare/references/realtime-sfu/patterns.md +187 -0
  255. package/skills/cloudflare/references/realtimekit/README.md +118 -0
  256. package/skills/cloudflare/references/realtimekit/api.md +234 -0
  257. package/skills/cloudflare/references/realtimekit/configuration.md +226 -0
  258. package/skills/cloudflare/references/realtimekit/gotchas.md +206 -0
  259. package/skills/cloudflare/references/realtimekit/patterns.md +240 -0
  260. package/skills/cloudflare/references/sandbox/README.md +104 -0
  261. package/skills/cloudflare/references/sandbox/api.md +200 -0
  262. package/skills/cloudflare/references/sandbox/configuration.md +154 -0
  263. package/skills/cloudflare/references/sandbox/gotchas.md +201 -0
  264. package/skills/cloudflare/references/sandbox/patterns.md +195 -0
  265. package/skills/cloudflare/references/secrets-store/README.md +77 -0
  266. package/skills/cloudflare/references/secrets-store/api.md +199 -0
  267. package/skills/cloudflare/references/secrets-store/configuration.md +187 -0
  268. package/skills/cloudflare/references/secrets-store/gotchas.md +97 -0
  269. package/skills/cloudflare/references/secrets-store/patterns.md +218 -0
  270. package/skills/cloudflare/references/smart-placement/README.md +143 -0
  271. package/skills/cloudflare/references/smart-placement/api.md +192 -0
  272. package/skills/cloudflare/references/smart-placement/configuration.md +202 -0
  273. package/skills/cloudflare/references/smart-placement/gotchas.md +180 -0
  274. package/skills/cloudflare/references/smart-placement/patterns.md +190 -0
  275. package/skills/cloudflare/references/snippets/README.md +74 -0
  276. package/skills/cloudflare/references/snippets/api.md +214 -0
  277. package/skills/cloudflare/references/snippets/configuration.md +239 -0
  278. package/skills/cloudflare/references/snippets/gotchas.md +104 -0
  279. package/skills/cloudflare/references/snippets/patterns.md +135 -0
  280. package/skills/cloudflare/references/spectrum/README.md +52 -0
  281. package/skills/cloudflare/references/spectrum/api.md +184 -0
  282. package/skills/cloudflare/references/spectrum/configuration.md +203 -0
  283. package/skills/cloudflare/references/spectrum/gotchas.md +155 -0
  284. package/skills/cloudflare/references/spectrum/patterns.md +206 -0
  285. package/skills/cloudflare/references/static-assets/README.md +65 -0
  286. package/skills/cloudflare/references/static-assets/api.md +201 -0
  287. package/skills/cloudflare/references/static-assets/configuration.md +186 -0
  288. package/skills/cloudflare/references/static-assets/gotchas.md +164 -0
  289. package/skills/cloudflare/references/static-assets/patterns.md +189 -0
  290. package/skills/cloudflare/references/stream/README.md +123 -0
  291. package/skills/cloudflare/references/stream/api-live.md +202 -0
  292. package/skills/cloudflare/references/stream/api.md +206 -0
  293. package/skills/cloudflare/references/stream/configuration.md +151 -0
  294. package/skills/cloudflare/references/stream/gotchas.md +139 -0
  295. package/skills/cloudflare/references/stream/patterns.md +217 -0
  296. package/skills/cloudflare/references/tail-workers/README.md +92 -0
  297. package/skills/cloudflare/references/tail-workers/api.md +203 -0
  298. package/skills/cloudflare/references/tail-workers/configuration.md +178 -0
  299. package/skills/cloudflare/references/tail-workers/gotchas.md +206 -0
  300. package/skills/cloudflare/references/tail-workers/patterns.md +190 -0
  301. package/skills/cloudflare/references/terraform/README.md +100 -0
  302. package/skills/cloudflare/references/terraform/api.md +178 -0
  303. package/skills/cloudflare/references/terraform/configuration.md +197 -0
  304. package/skills/cloudflare/references/terraform/gotchas.md +150 -0
  305. package/skills/cloudflare/references/terraform/patterns.md +174 -0
  306. package/skills/cloudflare/references/tunnel/README.md +137 -0
  307. package/skills/cloudflare/references/tunnel/api.md +205 -0
  308. package/skills/cloudflare/references/tunnel/configuration.md +163 -0
  309. package/skills/cloudflare/references/tunnel/gotchas.md +159 -0
  310. package/skills/cloudflare/references/tunnel/networking.md +174 -0
  311. package/skills/cloudflare/references/tunnel/patterns.md +199 -0
  312. package/skills/cloudflare/references/turn/README.md +86 -0
  313. package/skills/cloudflare/references/turn/api.md +236 -0
  314. package/skills/cloudflare/references/turn/configuration.md +181 -0
  315. package/skills/cloudflare/references/turn/gotchas.md +236 -0
  316. package/skills/cloudflare/references/turn/patterns.md +228 -0
  317. package/skills/cloudflare/references/turnstile/README.md +102 -0
  318. package/skills/cloudflare/references/turnstile/api.md +253 -0
  319. package/skills/cloudflare/references/turnstile/configuration.md +242 -0
  320. package/skills/cloudflare/references/turnstile/gotchas.md +253 -0
  321. package/skills/cloudflare/references/turnstile/patterns.md +195 -0
  322. package/skills/cloudflare/references/vectorize/README.md +133 -0
  323. package/skills/cloudflare/references/vectorize/api.md +89 -0
  324. package/skills/cloudflare/references/vectorize/configuration.md +91 -0
  325. package/skills/cloudflare/references/vectorize/gotchas.md +83 -0
  326. package/skills/cloudflare/references/vectorize/patterns.md +92 -0
  327. package/skills/cloudflare/references/waf/README.md +125 -0
  328. package/skills/cloudflare/references/waf/api.md +203 -0
  329. package/skills/cloudflare/references/waf/configuration.md +215 -0
  330. package/skills/cloudflare/references/waf/gotchas.md +208 -0
  331. package/skills/cloudflare/references/waf/patterns.md +236 -0
  332. package/skills/cloudflare/references/web-analytics/README.md +149 -0
  333. package/skills/cloudflare/references/web-analytics/configuration.md +81 -0
  334. package/skills/cloudflare/references/web-analytics/gotchas.md +86 -0
  335. package/skills/cloudflare/references/web-analytics/integration.md +63 -0
  336. package/skills/cloudflare/references/web-analytics/patterns.md +98 -0
  337. package/skills/cloudflare/references/workerd/README.md +85 -0
  338. package/skills/cloudflare/references/workerd/api.md +219 -0
  339. package/skills/cloudflare/references/workerd/configuration.md +200 -0
  340. package/skills/cloudflare/references/workerd/gotchas.md +151 -0
  341. package/skills/cloudflare/references/workerd/patterns.md +205 -0
  342. package/skills/cloudflare/references/workers/README.md +110 -0
  343. package/skills/cloudflare/references/workers/api.md +197 -0
  344. package/skills/cloudflare/references/workers/configuration.md +184 -0
  345. package/skills/cloudflare/references/workers/frameworks.md +200 -0
  346. package/skills/cloudflare/references/workers/gotchas.md +145 -0
  347. package/skills/cloudflare/references/workers/patterns.md +220 -0
  348. package/skills/cloudflare/references/workers-ai/README.md +206 -0
  349. package/skills/cloudflare/references/workers-ai/api.md +115 -0
  350. package/skills/cloudflare/references/workers-ai/configuration.md +98 -0
  351. package/skills/cloudflare/references/workers-ai/gotchas.md +130 -0
  352. package/skills/cloudflare/references/workers-ai/patterns.md +122 -0
  353. package/skills/cloudflare/references/workers-for-platforms/README.md +95 -0
  354. package/skills/cloudflare/references/workers-for-platforms/api.md +212 -0
  355. package/skills/cloudflare/references/workers-for-platforms/configuration.md +178 -0
  356. package/skills/cloudflare/references/workers-for-platforms/gotchas.md +134 -0
  357. package/skills/cloudflare/references/workers-for-platforms/patterns.md +210 -0
  358. package/skills/cloudflare/references/workers-playground/README.md +131 -0
  359. package/skills/cloudflare/references/workers-playground/api.md +101 -0
  360. package/skills/cloudflare/references/workers-playground/configuration.md +169 -0
  361. package/skills/cloudflare/references/workers-playground/gotchas.md +88 -0
  362. package/skills/cloudflare/references/workers-playground/patterns.md +134 -0
  363. package/skills/cloudflare/references/workers-vpc/README.md +130 -0
  364. package/skills/cloudflare/references/workers-vpc/api.md +196 -0
  365. package/skills/cloudflare/references/workers-vpc/configuration.md +151 -0
  366. package/skills/cloudflare/references/workers-vpc/gotchas.md +171 -0
  367. package/skills/cloudflare/references/workers-vpc/patterns.md +235 -0
  368. package/skills/cloudflare/references/workflows/README.md +72 -0
  369. package/skills/cloudflare/references/workflows/api.md +237 -0
  370. package/skills/cloudflare/references/workflows/configuration.md +158 -0
  371. package/skills/cloudflare/references/workflows/gotchas.md +97 -0
  372. package/skills/cloudflare/references/workflows/patterns.md +245 -0
  373. package/skills/cloudflare/references/wrangler/README.md +143 -0
  374. package/skills/cloudflare/references/wrangler/api.md +188 -0
  375. package/skills/cloudflare/references/wrangler/configuration.md +198 -0
  376. package/skills/cloudflare/references/wrangler/gotchas.md +212 -0
  377. package/skills/cloudflare/references/wrangler/patterns.md +211 -0
  378. package/skills/cloudflare/references/zaraz/IMPLEMENTATION_SUMMARY.md +131 -0
  379. package/skills/cloudflare/references/zaraz/README.md +114 -0
  380. package/skills/cloudflare/references/zaraz/api.md +118 -0
  381. package/skills/cloudflare/references/zaraz/configuration.md +94 -0
  382. package/skills/cloudflare/references/zaraz/gotchas.md +88 -0
  383. package/skills/cloudflare/references/zaraz/patterns.md +77 -0
  384. package/skills/docker/SKILL.md +7 -101
  385. package/skills/docker/references/advanced-examples.md +71 -0
  386. package/skills/docker/references/templates.md +34 -0
  387. package/skills/docs-marketer/SKILL.md +178 -0
  388. package/skills/docs-marketer/references/audit-categories.md +328 -0
  389. package/skills/docs-marketer/references/copilot-docs-prompts.md +88 -0
  390. package/skills/docs-marketer/references/copilot-usage.md +16 -0
  391. package/skills/docs-marketer/references/feedback-loop.md +155 -0
  392. package/skills/docs-marketer/references/multi-pass-docs-protocol.md +410 -0
  393. package/skills/drizzle-orm/SKILL.md +82 -0
  394. package/skills/durable-objects/SKILL.md +167 -0
  395. package/skills/durable-objects/references/advanced_features.md +29 -0
  396. package/skills/durable-objects/references/rules.md +300 -0
  397. package/skills/durable-objects/references/testing.md +261 -0
  398. package/skills/durable-objects/references/workers.md +336 -0
  399. package/skills/gcp/SKILL.md +37 -0
  400. package/skills/github-actions/SKILL.md +5 -58
  401. package/skills/github-actions/references/templates.md +65 -0
  402. package/skills/github-commander/SKILL.md +13 -21
  403. package/skills/github-commander/workflows/copilot-audit.md +12 -12
  404. package/skills/github-copilot-cli/SKILL.md +21 -26
  405. package/skills/github-repo-setup/SKILL.md +136 -0
  406. package/skills/github-repo-setup/references/community-standards.md +136 -0
  407. package/skills/github-repo-setup/references/github-automation.md +490 -0
  408. package/skills/github-repo-setup/references/inline-templates.md +205 -0
  409. package/skills/github-repo-setup/references/project-config.md +320 -0
  410. package/skills/gitlab/SKILL.md +7 -2
  411. package/skills/gitlab/package-lock.json +389 -389
  412. package/skills/golang/SKILL.md +8 -1
  413. package/skills/graphql/SKILL.md +30 -0
  414. package/skills/hono/SKILL.md +82 -0
  415. package/skills/journal-optimizer/SKILL.md +206 -0
  416. package/skills/journal-optimizer/references/optimizer-scripts.md +169 -0
  417. package/skills/llm-app-engineering/SKILL.md +18 -0
  418. package/skills/monorepo/SKILL.md +56 -0
  419. package/skills/multi-agent-orchestration/SKILL.md +14 -0
  420. package/skills/mysql/SKILL.md +6 -2
  421. package/skills/next-best-practices/SKILL.md +86 -0
  422. package/skills/next-best-practices/references/cache-components-examples.md +234 -0
  423. package/skills/next-best-practices/references/cache-components.md +210 -0
  424. package/skills/next-best-practices/references/upgrade-decision-tree.md +33 -0
  425. package/skills/next-best-practices/references/upgrade.md +43 -0
  426. package/skills/next-cache-components/SKILL.md +441 -0
  427. package/skills/next-upgrade/SKILL.md +43 -0
  428. package/skills/next-upgrade/references/decision-tree.md +33 -0
  429. package/skills/nodejs/SKILL.md +46 -0
  430. package/skills/opentelemetry/SKILL.md +62 -0
  431. package/skills/package.json +39 -4
  432. package/skills/playwright-standard/SKILL.md +6 -11
  433. package/skills/playwright-standard/references/locators.md +7 -0
  434. package/skills/postgres/SKILL.md +6 -1
  435. package/skills/python/SKILL.md +8 -70
  436. package/skills/python/references/advanced-patterns.md +37 -0
  437. package/skills/python/references/config-templates.md +48 -0
  438. package/skills/rag-pipelines/SKILL.md +14 -0
  439. package/skills/redis/SKILL.md +31 -0
  440. package/skills/render/SKILL.md +35 -0
  441. package/skills/rust/SKILL.md +15 -25
  442. package/skills/rust/references/borrow-checker.md +13 -0
  443. package/skills/rust/references/ecosystem.md +11 -0
  444. package/skills/sandbox-sdk/SKILL.md +186 -0
  445. package/skills/sandbox-sdk/references/api-quick-ref.md +113 -0
  446. package/skills/sandbox-sdk/references/examples.md +52 -0
  447. package/skills/shadcn-ui/SKILL.md +22 -57
  448. package/skills/skill-builder/SKILL.md +23 -424
  449. package/skills/skill-builder/references/tutorial.md +457 -0
  450. package/skills/sqlite/SKILL.md +16 -5
  451. package/skills/table.md +59 -0
  452. package/skills/tailwind-css/SKILL.md +11 -60
  453. package/skills/tailwind-css/references/component-patterns.md +52 -0
  454. package/skills/trpc/SKILL.md +56 -0
  455. package/skills/typescript/SKILL.md +30 -433
  456. package/skills/typescript/references/tutorial.md +453 -0
  457. package/skills/vercel-ai-sdk/SKILL.md +48 -0
  458. package/skills/vitest-standard/SKILL.md +5 -11
  459. package/skills/vitest-standard/references/assertions.md +11 -0
  460. package/skills/web-perf/SKILL.md +207 -0
  461. package/skills/workers-best-practices/SKILL.md +120 -0
  462. package/skills/workers-best-practices/references/anti-patterns.md +18 -0
  463. package/skills/workers-best-practices/references/review.md +174 -0
  464. package/skills/workers-best-practices/references/rules.md +485 -0
  465. package/skills/wrangler/SKILL.md +43 -0
  466. package/skills/wrangler/references/cli-commands.md +861 -0
  467. package/skills/zod/SKILL.md +48 -0
  468. package/dist/tools-P4VGG4FH.js +0 -1
  469. package/skills/react-best-practices/AGENTS.md +0 -2883
  470. package/skills/react-best-practices/SKILL.md +0 -138
  471. /package/skills/{react-best-practices → next-best-practices}/README.md +0 -0
  472. /package/skills/{react-best-practices → next-best-practices}/metadata.json +0 -0
  473. /package/skills/{react-best-practices → next-best-practices}/rules/_sections.md +0 -0
  474. /package/skills/{react-best-practices → next-best-practices}/rules/_template.md +0 -0
  475. /package/skills/{react-best-practices → next-best-practices}/rules/advanced-event-handler-refs.md +0 -0
  476. /package/skills/{react-best-practices → next-best-practices}/rules/advanced-init-once.md +0 -0
  477. /package/skills/{react-best-practices → next-best-practices}/rules/advanced-use-latest.md +0 -0
  478. /package/skills/{react-best-practices → next-best-practices}/rules/async-api-routes.md +0 -0
  479. /package/skills/{react-best-practices → next-best-practices}/rules/async-defer-await.md +0 -0
  480. /package/skills/{react-best-practices → next-best-practices}/rules/async-dependencies.md +0 -0
  481. /package/skills/{react-best-practices → next-best-practices}/rules/async-parallel.md +0 -0
  482. /package/skills/{react-best-practices → next-best-practices}/rules/async-suspense-boundaries.md +0 -0
  483. /package/skills/{react-best-practices → next-best-practices}/rules/bundle-barrel-imports.md +0 -0
  484. /package/skills/{react-best-practices → next-best-practices}/rules/bundle-conditional.md +0 -0
  485. /package/skills/{react-best-practices → next-best-practices}/rules/bundle-defer-third-party.md +0 -0
  486. /package/skills/{react-best-practices → next-best-practices}/rules/bundle-dynamic-imports.md +0 -0
  487. /package/skills/{react-best-practices → next-best-practices}/rules/bundle-preload.md +0 -0
  488. /package/skills/{react-best-practices → next-best-practices}/rules/client-event-listeners.md +0 -0
  489. /package/skills/{react-best-practices → next-best-practices}/rules/client-localstorage-schema.md +0 -0
  490. /package/skills/{react-best-practices → next-best-practices}/rules/client-passive-event-listeners.md +0 -0
  491. /package/skills/{react-best-practices → next-best-practices}/rules/client-swr-dedup.md +0 -0
  492. /package/skills/{react-best-practices → next-best-practices}/rules/js-batch-dom-css.md +0 -0
  493. /package/skills/{react-best-practices → next-best-practices}/rules/js-cache-function-results.md +0 -0
  494. /package/skills/{react-best-practices → next-best-practices}/rules/js-cache-property-access.md +0 -0
  495. /package/skills/{react-best-practices → next-best-practices}/rules/js-cache-storage.md +0 -0
  496. /package/skills/{react-best-practices → next-best-practices}/rules/js-combine-iterations.md +0 -0
  497. /package/skills/{react-best-practices → next-best-practices}/rules/js-early-exit.md +0 -0
  498. /package/skills/{react-best-practices → next-best-practices}/rules/js-hoist-regexp.md +0 -0
  499. /package/skills/{react-best-practices → next-best-practices}/rules/js-index-maps.md +0 -0
  500. /package/skills/{react-best-practices → next-best-practices}/rules/js-length-check-first.md +0 -0
  501. /package/skills/{react-best-practices → next-best-practices}/rules/js-min-max-loop.md +0 -0
  502. /package/skills/{react-best-practices → next-best-practices}/rules/js-set-map-lookups.md +0 -0
  503. /package/skills/{react-best-practices → next-best-practices}/rules/js-tosorted-immutable.md +0 -0
  504. /package/skills/{react-best-practices → next-best-practices}/rules/rendering-activity.md +0 -0
  505. /package/skills/{react-best-practices → next-best-practices}/rules/rendering-animate-svg-wrapper.md +0 -0
  506. /package/skills/{react-best-practices → next-best-practices}/rules/rendering-conditional-render.md +0 -0
  507. /package/skills/{react-best-practices → next-best-practices}/rules/rendering-content-visibility.md +0 -0
  508. /package/skills/{react-best-practices → next-best-practices}/rules/rendering-hoist-jsx.md +0 -0
  509. /package/skills/{react-best-practices → next-best-practices}/rules/rendering-hydration-no-flicker.md +0 -0
  510. /package/skills/{react-best-practices → next-best-practices}/rules/rendering-hydration-suppress-warning.md +0 -0
  511. /package/skills/{react-best-practices → next-best-practices}/rules/rendering-svg-precision.md +0 -0
  512. /package/skills/{react-best-practices → next-best-practices}/rules/rendering-usetransition-loading.md +0 -0
  513. /package/skills/{react-best-practices → next-best-practices}/rules/rerender-defer-reads.md +0 -0
  514. /package/skills/{react-best-practices → next-best-practices}/rules/rerender-dependencies.md +0 -0
  515. /package/skills/{react-best-practices → next-best-practices}/rules/rerender-derived-state-no-effect.md +0 -0
  516. /package/skills/{react-best-practices → next-best-practices}/rules/rerender-derived-state.md +0 -0
  517. /package/skills/{react-best-practices → next-best-practices}/rules/rerender-functional-setstate.md +0 -0
  518. /package/skills/{react-best-practices → next-best-practices}/rules/rerender-lazy-state-init.md +0 -0
  519. /package/skills/{react-best-practices → next-best-practices}/rules/rerender-memo-with-default-value.md +0 -0
  520. /package/skills/{react-best-practices → next-best-practices}/rules/rerender-memo.md +0 -0
  521. /package/skills/{react-best-practices → next-best-practices}/rules/rerender-move-effect-to-event.md +0 -0
  522. /package/skills/{react-best-practices → next-best-practices}/rules/rerender-simple-expression-in-memo.md +0 -0
  523. /package/skills/{react-best-practices → next-best-practices}/rules/rerender-transitions.md +0 -0
  524. /package/skills/{react-best-practices → next-best-practices}/rules/rerender-use-ref-transient-values.md +0 -0
  525. /package/skills/{react-best-practices → next-best-practices}/rules/server-after-nonblocking.md +0 -0
  526. /package/skills/{react-best-practices → next-best-practices}/rules/server-auth-actions.md +0 -0
  527. /package/skills/{react-best-practices → next-best-practices}/rules/server-cache-lru.md +0 -0
  528. /package/skills/{react-best-practices → next-best-practices}/rules/server-cache-react.md +0 -0
  529. /package/skills/{react-best-practices → next-best-practices}/rules/server-dedup-props.md +0 -0
  530. /package/skills/{react-best-practices → next-best-practices}/rules/server-parallel-fetching.md +0 -0
  531. /package/skills/{react-best-practices → next-best-practices}/rules/server-serialization.md +0 -0
@@ -0,0 +1,206 @@
1
+ # Cloudflare Workers AI
2
+
3
+ Expert guidance for Cloudflare Workers AI - serverless GPU-powered AI inference at the edge.
4
+
5
+ ## Overview
6
+
7
+ Workers AI provides:
8
+
9
+ - 50+ pre-trained models (LLMs, embeddings, image generation, speech-to-text, translation)
10
+ - Native Workers binding (no external API calls)
11
+ - Pay-per-use pricing (neurons consumed per inference)
12
+ - OpenAI-compatible REST API
13
+ - Streaming support for text generation
14
+ - Function calling with compatible models
15
+
16
+ **Architecture**: Inference runs on Cloudflare's GPU network. Models load on first request (cold start 1-3s), subsequent requests are faster.
17
+
18
+ ## Quick Start
19
+
20
+ ```typescript
21
+ interface Env {
22
+ AI: Ai
23
+ }
24
+
25
+ export default {
26
+ async fetch(request: Request, env: Env) {
27
+ const response = await env.AI.run('@cf/meta/llama-3.1-8b-instruct', {
28
+ messages: [{ role: 'user', content: 'What is Cloudflare?' }],
29
+ })
30
+ return Response.json(response)
31
+ },
32
+ }
33
+ ```
34
+
35
+ ```bash
36
+ # Setup - add binding to wrangler.jsonc
37
+ wrangler dev --remote # Must use --remote for AI
38
+ wrangler deploy
39
+ ```
40
+
41
+ ## Model Selection Decision Tree
42
+
43
+ ### Text Generation (Chat/Completion)
44
+
45
+ **Quality Priority**:
46
+
47
+ - **Best quality**: `@cf/meta/llama-3.1-70b-instruct` (expensive, ~2000 neurons)
48
+ - **Balanced**: `@cf/meta/llama-3.1-8b-instruct` (good quality, ~200 neurons)
49
+ - **Fastest/cheapest**: `@cf/mistral/mistral-7b-instruct-v0.1` (~50 neurons)
50
+
51
+ **Function Calling**:
52
+
53
+ - Use `@cf/meta/llama-3.1-8b-instruct` or `@cf/meta/llama-3.1-70b-instruct` (native tool support)
54
+
55
+ **Code Generation**:
56
+
57
+ - Use `@cf/deepseek-ai/deepseek-coder-6.7b-instruct` (specialized for code)
58
+
59
+ ### Embeddings (Semantic Search/RAG)
60
+
61
+ **English text**:
62
+
63
+ - **Best**: `@cf/baai/bge-large-en-v1.5` (1024 dims, highest quality)
64
+ - **Balanced**: `@cf/baai/bge-base-en-v1.5` (768 dims, good quality)
65
+ - **Fast**: `@cf/baai/bge-small-en-v1.5` (384 dims, lower quality but fast)
66
+
67
+ **Multilingual**:
68
+
69
+ - Use `@hf/sentence-transformers/paraphrase-multilingual-minilm-l12-v2`
70
+
71
+ ### Image Generation
72
+
73
+ - **Stable Diffusion**: `@cf/stabilityai/stable-diffusion-xl-base-1.0` (~10,000 neurons)
74
+ - **Portraits**: `@cf/lykon/dreamshaper-8-lcm` (optimized for faces)
75
+
76
+ ### Other Tasks
77
+
78
+ - **Speech-to-text**: `@cf/openai/whisper`
79
+ - **Translation**: `@cf/meta/m2m100-1.2b` (100 languages)
80
+ - **Image classification**: `@cf/microsoft/resnet-50`
81
+
82
+ ## SDK Approach Decision Tree
83
+
84
+ ### Native Binding (Recommended)
85
+
86
+ **When**: Building Workers/Pages with TypeScript
87
+ **Why**: Zero external dependencies, best performance, native types
88
+
89
+ ```typescript
90
+ await env.AI.run(model, input)
91
+ ```
92
+
93
+ ### REST API
94
+
95
+ **When**: External services, non-Workers environments, testing
96
+ **Why**: Standard HTTP, works anywhere
97
+
98
+ ```bash
99
+ curl https://api.cloudflare.com/client/v4/accounts/<ACCOUNT_ID>/ai/run/@cf/meta/llama-3.1-8b-instruct \
100
+ -H "Authorization: Bearer <API_TOKEN>" \
101
+ -d '{"messages":[{"role":"user","content":"Hello"}]}'
102
+ ```
103
+
104
+ ### Vercel AI SDK Integration
105
+
106
+ **When**: Using Vercel AI SDK features (streaming UI, tool calling abstractions)
107
+ **Why**: Unified interface across providers
108
+
109
+ ```typescript
110
+ import { openai } from '@ai-sdk/openai'
111
+
112
+ const model = openai('model-name', {
113
+ baseURL: 'https://api.cloudflare.com/client/v4/accounts/<ACCOUNT_ID>/ai/v1',
114
+ headers: { Authorization: 'Bearer <API_TOKEN>' },
115
+ })
116
+ ```
117
+
118
+ ## RAG vs Direct Generation
119
+
120
+ ### Use RAG (Vectorize + Workers AI) When:
121
+
122
+ - Answering questions about specific documents/data
123
+ - Need factual accuracy from known corpus
124
+ - Context exceeds model's window (>4K tokens)
125
+ - Building knowledge base chat
126
+
127
+ ### Use Direct Generation When:
128
+
129
+ - Creative writing, brainstorming
130
+ - General knowledge questions
131
+ - Small context fits in prompt (<4K tokens)
132
+ - Cost optimization (RAG adds embedding + vector search costs)
133
+
134
+ ## Platform Limits
135
+
136
+ | Limit | Free Tier | Paid Plans |
137
+ | ---------------- | ---------------------------- | ------------------------ |
138
+ | Neurons/day | 10,000 | Pay per use |
139
+ | Rate limit | Varies by model | Higher (contact support) |
140
+ | Context window | Model dependent (2K-8K) | Same |
141
+ | Streaming | ✅ Supported | ✅ Supported |
142
+ | Function calling | ✅ Supported (select models) | ✅ Supported |
143
+
144
+ **Pricing**: Free 10K neurons/day, then pay per neuron consumed (varies by model)
145
+
146
+ ## Common Tasks
147
+
148
+ ```typescript
149
+ // Streaming text generation
150
+ const stream = await env.AI.run(model, { messages, stream: true });
151
+ for await (const chunk of stream) {
152
+ console.log(chunk.response);
153
+ }
154
+
155
+ // Embeddings for RAG
156
+ const { data } = await env.AI.run('@cf/baai/bge-base-en-v1.5', {
157
+ text: ['Query text', 'Document 1', 'Document 2']
158
+ });
159
+
160
+ // Function calling
161
+ const response = await env.AI.run('@cf/meta/llama-3.1-8b-instruct', {
162
+ messages: [{ role: 'user', content: 'What is the weather?' }],
163
+ tools: [{
164
+ type: 'function',
165
+ function: { name: 'getWeather', parameters: { ... } }
166
+ }]
167
+ });
168
+ ```
169
+
170
+ ## Development Workflow
171
+
172
+ ```bash
173
+ # Always use --remote for AI (local doesn't have models)
174
+ wrangler dev --remote
175
+
176
+ # Deploy to production
177
+ wrangler deploy
178
+
179
+ # View model catalog
180
+ # https://developers.cloudflare.com/workers-ai/models/
181
+ ```
182
+
183
+ ## Reading Order
184
+
185
+ **Start here**: Quick Start above → configuration.md (setup)
186
+
187
+ **Common tasks**:
188
+
189
+ - First time setup: configuration.md → Add binding + deploy
190
+ - Choose model: Model Selection Decision Tree (above) → api.md
191
+ - Build RAG: patterns.md → Vectorize integration
192
+ - Optimize costs: Model Selection + gotchas.md (rate limits)
193
+ - Debugging: gotchas.md → Common errors
194
+
195
+ ## In This Reference
196
+
197
+ - [configuration.md](./configuration.md) - wrangler.jsonc setup, TypeScript types, bindings, environment variables
198
+ - [api.md](./api.md) - env.AI.run(), streaming, function calling, REST API, response types
199
+ - [patterns.md](./patterns.md) - RAG with Vectorize, prompt engineering, batching, error handling, caching
200
+ - [gotchas.md](./gotchas.md) - Deprecated @cloudflare/ai package, rate limits, pricing, common errors
201
+
202
+ ## See Also
203
+
204
+ - [vectorize](../vectorize/) - Vector database for RAG patterns
205
+ - [ai-gateway](../ai-gateway/) - Caching, rate limiting, analytics for AI requests
206
+ - [workers](../workers/) - Worker runtime and fetch handler patterns
@@ -0,0 +1,115 @@
1
+ # Workers AI API Reference
2
+
3
+ ## Core Method
4
+
5
+ ```typescript
6
+ const response = await env.AI.run(model, input)
7
+ ```
8
+
9
+ ## Text Generation
10
+
11
+ ```typescript
12
+ const result = await env.AI.run('@cf/meta/llama-3.1-8b-instruct', {
13
+ messages: [
14
+ { role: 'system', content: 'You are helpful' },
15
+ { role: 'user', content: 'Hello' },
16
+ ],
17
+ temperature: 0.7, // 0-1
18
+ max_tokens: 100,
19
+ })
20
+ console.log(result.response)
21
+ ```
22
+
23
+ **Streaming:**
24
+
25
+ ```typescript
26
+ const stream = await env.AI.run(model, { messages, stream: true })
27
+ return new Response(stream, { headers: { 'Content-Type': 'text/event-stream' } })
28
+ ```
29
+
30
+ ## Embeddings
31
+
32
+ ```typescript
33
+ const result = await env.AI.run('@cf/baai/bge-base-en-v1.5', {
34
+ text: ['Query', 'Doc 1', 'Doc 2'], // Batch for efficiency
35
+ })
36
+ const [queryEmbed, doc1Embed, doc2Embed] = result.data // 768-dim vectors
37
+ ```
38
+
39
+ ## Function Calling
40
+
41
+ ```typescript
42
+ const tools = [
43
+ {
44
+ type: 'function',
45
+ function: {
46
+ name: 'getWeather',
47
+ description: 'Get weather for location',
48
+ parameters: {
49
+ type: 'object',
50
+ properties: { location: { type: 'string' } },
51
+ required: ['location'],
52
+ },
53
+ },
54
+ },
55
+ ]
56
+
57
+ const response = await env.AI.run(model, { messages, tools })
58
+ if (response.tool_calls) {
59
+ const args = JSON.parse(response.tool_calls[0].function.arguments)
60
+ // Execute function, send result back
61
+ }
62
+ ```
63
+
64
+ ## Image Generation
65
+
66
+ ```typescript
67
+ const image = await env.AI.run('@cf/stabilityai/stable-diffusion-xl-base-1.0', {
68
+ prompt: 'Mountain sunset',
69
+ num_steps: 20, // 1-20
70
+ guidance: 7.5, // 1-20
71
+ })
72
+ return new Response(image, { headers: { 'Content-Type': 'image/png' } })
73
+ ```
74
+
75
+ ## Speech Recognition
76
+
77
+ ```typescript
78
+ const audioArray = Array.from(new Uint8Array(await request.arrayBuffer()))
79
+ const result = await env.AI.run('@cf/openai/whisper', { audio: audioArray })
80
+ console.log(result.text)
81
+ ```
82
+
83
+ ## Translation
84
+
85
+ ```typescript
86
+ const result = await env.AI.run('@cf/meta/m2m100-1.2b', {
87
+ text: 'Hello',
88
+ source_lang: 'en',
89
+ target_lang: 'es',
90
+ })
91
+ console.log(result.translated_text)
92
+ ```
93
+
94
+ ## REST API
95
+
96
+ ```bash
97
+ curl https://api.cloudflare.com/client/v4/accounts/{account_id}/ai/run/@cf/meta/llama-3.1-8b-instruct \
98
+ -H "Authorization: Bearer $TOKEN" \
99
+ -d '{"messages":[{"role":"user","content":"Hello"}]}'
100
+ ```
101
+
102
+ ## Error Codes
103
+
104
+ | Code | Meaning | Fix |
105
+ | ---- | ----------------- | ---------------------- |
106
+ | 7502 | Model not found | Check spelling |
107
+ | 7504 | Validation failed | Verify input schema |
108
+ | 7505 | Rate limited | Reduce rate or upgrade |
109
+ | 7506 | Context exceeded | Reduce input size |
110
+
111
+ ## Performance Tips
112
+
113
+ 1. **Batch embeddings** - single request for multiple texts
114
+ 2. **Stream long responses** - reduce perceived latency
115
+ 3. **Accept cold starts** - first request ~1-3s, subsequent ~100-500ms
@@ -0,0 +1,98 @@
1
+ # Workers AI Configuration
2
+
3
+ ## wrangler.jsonc
4
+
5
+ ```jsonc
6
+ {
7
+ "name": "my-ai-worker",
8
+ "main": "src/index.ts",
9
+ "compatibility_date": "2024-01-01",
10
+ "ai": {
11
+ "binding": "AI",
12
+ },
13
+ }
14
+ ```
15
+
16
+ ## TypeScript
17
+
18
+ ```bash
19
+ npm install --save-dev @cloudflare/workers-types
20
+ ```
21
+
22
+ ```typescript
23
+ interface Env {
24
+ AI: Ai
25
+ }
26
+
27
+ export default {
28
+ async fetch(request: Request, env: Env) {
29
+ const response = await env.AI.run('@cf/meta/llama-3.1-8b-instruct', {
30
+ messages: [{ role: 'user', content: 'Hello' }],
31
+ })
32
+ return Response.json(response)
33
+ },
34
+ }
35
+ ```
36
+
37
+ ## Local Development
38
+
39
+ ```bash
40
+ wrangler dev --remote # Required for AI - no local inference
41
+ ```
42
+
43
+ ## REST API
44
+
45
+ ```typescript
46
+ const response = await fetch(
47
+ `https://api.cloudflare.com/client/v4/accounts/${ACCOUNT_ID}/ai/run/@cf/meta/llama-3.1-8b-instruct`,
48
+ {
49
+ method: 'POST',
50
+ headers: { Authorization: `Bearer ${API_TOKEN}` },
51
+ body: JSON.stringify({ messages: [{ role: 'user', content: 'Hello' }] }),
52
+ }
53
+ )
54
+ ```
55
+
56
+ Create API token at: dash.cloudflare.com/profile/api-tokens (Workers AI - Read permission)
57
+
58
+ ## SDK Compatibility
59
+
60
+ **OpenAI SDK:**
61
+
62
+ ```typescript
63
+ import OpenAI from 'openai'
64
+ const client = new OpenAI({
65
+ apiKey: env.CLOUDFLARE_API_TOKEN,
66
+ baseURL: `https://api.cloudflare.com/client/v4/accounts/${env.ACCOUNT_ID}/ai/v1`,
67
+ })
68
+ ```
69
+
70
+ ## Multi-Model Setup
71
+
72
+ ```typescript
73
+ const MODELS = {
74
+ chat: '@cf/meta/llama-3.1-8b-instruct',
75
+ embed: '@cf/baai/bge-base-en-v1.5',
76
+ image: '@cf/stabilityai/stable-diffusion-xl-base-1.0',
77
+ }
78
+ ```
79
+
80
+ ## RAG Setup (with Vectorize)
81
+
82
+ ```jsonc
83
+ {
84
+ "ai": { "binding": "AI" },
85
+ "vectorize": {
86
+ "bindings": [{ "binding": "VECTORIZE", "index_name": "embeddings-index" }],
87
+ },
88
+ }
89
+ ```
90
+
91
+ ## Troubleshooting
92
+
93
+ | Error | Fix |
94
+ | ---------------------------- | ------------------------------------ |
95
+ | `env.AI is undefined` | Check `ai` binding in wrangler.jsonc |
96
+ | Local AI doesn't work | Use `wrangler dev --remote` |
97
+ | Type 'Ai' not found | Install `@cloudflare/workers-types` |
98
+ | @cloudflare/ai package error | Don't install - use native binding |
@@ -0,0 +1,130 @@
1
+ # Workers AI Gotchas
2
+
3
+ ## Critical: @cloudflare/ai is DEPRECATED
4
+
5
+ ```typescript
6
+ // ❌ WRONG - Don't install @cloudflare/ai
7
+ import Ai from '@cloudflare/ai';
8
+
9
+ // ✅ CORRECT - Use native binding
10
+ export default {
11
+ async fetch(request: Request, env: Env) {
12
+ await env.AI.run('@cf/meta/llama-3.1-8b-instruct', { messages: [...] });
13
+ }
14
+ }
15
+ ```
16
+
17
+ ## Development
18
+
19
+ ### "AI inference doesn't work locally"
20
+
21
+ ```bash
22
+ # ❌ Local AI doesn't work
23
+ wrangler dev
24
+ # ✅ Use remote
25
+ wrangler dev --remote
26
+ ```
27
+
28
+ ### "env.AI is undefined"
29
+
30
+ Add binding to wrangler.jsonc:
31
+
32
+ ```jsonc
33
+ { "ai": { "binding": "AI" } }
34
+ ```
35
+
36
+ ## API Responses
37
+
38
+ ### Embedding response shape varies
39
+
40
+ ```typescript
41
+ // @cf/baai/bge-base-en-v1.5 returns: { data: [[0.1, 0.2, ...]] }
42
+ const embedding = response.data[0] // Get first element
43
+ ```
44
+
45
+ ### Stream returns ReadableStream
46
+
47
+ ```typescript
48
+ const stream = await env.AI.run(model, { messages: [...], stream: true });
49
+ for await (const chunk of stream) { console.log(chunk.response); }
50
+ ```
51
+
52
+ ## Rate Limits & Pricing
53
+
54
+ | Model Type | Neurons/Request |
55
+ | ---------------- | --------------- |
56
+ | Small text (7B) | ~50-200 |
57
+ | Large text (70B) | ~500-2000 |
58
+ | Embeddings | ~5-20 |
59
+ | Image gen | ~10,000+ |
60
+
61
+ **Free tier**: 10,000 neurons/day
62
+
63
+ ```typescript
64
+ // ❌ EXPENSIVE - 70B model
65
+ await env.AI.run('@cf/meta/llama-3.1-70b-instruct', ...);
66
+ // ✅ CHEAPER - Use smallest that works
67
+ await env.AI.run('@cf/meta/llama-3.1-8b-instruct', ...);
68
+ ```
69
+
70
+ ## Model-Specific
71
+
72
+ ### Function calling
73
+
74
+ Only `@cf/meta/llama-3.1-*` and `mistral-7b-instruct-v0.2` support tools.
75
+
76
+ ### Empty response
77
+
78
+ Check context limits (2K-8K tokens). Validate input structure.
79
+
80
+ ### Inconsistent responses
81
+
82
+ Set `temperature: 0` for deterministic outputs.
83
+
84
+ ### Cold start latency
85
+
86
+ First request: 1-3s. Use AI Gateway caching for frequent prompts.
87
+
88
+ ## TypeScript
89
+
90
+ ```typescript
91
+ interface Env {
92
+ AI: Ai // From @cloudflare/workers-types
93
+ }
94
+
95
+ interface TextGenerationResponse {
96
+ response: string
97
+ }
98
+ interface EmbeddingResponse {
99
+ data: number[][]
100
+ shape: number[]
101
+ }
102
+ ```
103
+
104
+ ## Common Errors
105
+
106
+ ### 7502: Model not found
107
+
108
+ Check exact model name at developers.cloudflare.com/workers-ai/models/
109
+
110
+ ### 7504: Input validation failed
111
+
112
+ ```typescript
113
+ // Text gen requires messages array
114
+ await env.AI.run('@cf/meta/llama-3.1-8b-instruct', {
115
+ messages: [{ role: 'user', content: 'Hello' }], // ✅
116
+ })
117
+
118
+ // Embeddings require text
119
+ await env.AI.run('@cf/baai/bge-base-en-v1.5', { text: 'Hello' }) // ✅
120
+ ```
121
+
122
+ ## Vercel AI SDK Integration
123
+
124
+ ```typescript
125
+ import { openai } from '@ai-sdk/openai'
126
+ const model = openai('gpt-3.5-turbo', {
127
+ baseURL: 'https://api.cloudflare.com/client/v4/accounts/<ACCOUNT_ID>/ai/v1',
128
+ headers: { Authorization: 'Bearer <API_TOKEN>' },
129
+ })
130
+ ```
@@ -0,0 +1,122 @@
1
+ # Workers AI Patterns
2
+
3
+ ## RAG (Retrieval-Augmented Generation)
4
+
5
+ ```typescript
6
+ // 1. Embed query
7
+ const embedding = await env.AI.run('@cf/baai/bge-base-en-v1.5', { text: query })
8
+
9
+ // 2. Search vectors
10
+ const results = await env.VECTORIZE.query(embedding.data[0], {
11
+ topK: 5,
12
+ returnMetadata: true,
13
+ })
14
+
15
+ // 3. Build context
16
+ const context = results.matches.map((m) => m.metadata?.text).join('\n\n')
17
+
18
+ // 4. Generate with context
19
+ const response = await env.AI.run('@cf/meta/llama-3.1-8b-instruct', {
20
+ messages: [
21
+ { role: 'system', content: `Answer based on:\n\n${context}` },
22
+ { role: 'user', content: query },
23
+ ],
24
+ })
25
+ ```
26
+
27
+ ## Streaming (SSE)
28
+
29
+ ```typescript
30
+ const stream = await env.AI.run('@cf/meta/llama-3.1-8b-instruct', {
31
+ messages,
32
+ stream: true,
33
+ })
34
+
35
+ const { readable, writable } = new TransformStream()
36
+ const writer = writable.getWriter()
37
+
38
+ ;(async () => {
39
+ for await (const chunk of stream) {
40
+ await writer.write(new TextEncoder().encode(`data: ${JSON.stringify(chunk)}\n\n`))
41
+ }
42
+ await writer.write(new TextEncoder().encode('data: [DONE]\n\n'))
43
+ await writer.close()
44
+ })()
45
+
46
+ return new Response(readable, {
47
+ headers: { 'Content-Type': 'text/event-stream' },
48
+ })
49
+ ```
50
+
51
+ ## Error Handling & Retry
52
+
53
+ ```typescript
54
+ async function runWithRetry(env, model, input, maxRetries = 3) {
55
+ for (let attempt = 0; attempt < maxRetries; attempt++) {
56
+ try {
57
+ return await env.AI.run(model, input)
58
+ } catch (error) {
59
+ if (error.message?.includes('7505') && attempt < maxRetries - 1) {
60
+ await new Promise((r) => setTimeout(r, Math.pow(2, attempt) * 1000))
61
+ continue
62
+ }
63
+ throw error
64
+ }
65
+ }
66
+ }
67
+ ```
68
+
69
+ ## Model Fallback
70
+
71
+ ```typescript
72
+ try {
73
+ return await env.AI.run('@cf/meta/llama-3.1-70b-instruct', { messages })
74
+ } catch {
75
+ return await env.AI.run('@cf/meta/llama-3.1-8b-instruct', { messages })
76
+ }
77
+ ```
78
+
79
+ ## Prompt Patterns
80
+
81
+ ```typescript
82
+ // System prompts
83
+ const PROMPTS = {
84
+ json: 'Respond with valid JSON only.',
85
+ concise: 'Keep responses brief.',
86
+ cot: 'Think step by step before answering.',
87
+ }
88
+
89
+ // Few-shot
90
+ messages: [
91
+ { role: 'system', content: 'Extract as JSON' },
92
+ { role: 'user', content: 'John bought 3 apples for $5' },
93
+ { role: 'assistant', content: '{"name":"John","item":"apples","qty":3}' },
94
+ { role: 'user', content: actualInput },
95
+ ]
96
+ ```
97
+
98
+ ## Parallel Execution
99
+
100
+ ```typescript
101
+ const [sentiment, summary, embedding] = await Promise.all([
102
+ env.AI.run('@cf/mistral/mistral-7b-instruct-v0.1', { messages: sentimentPrompt }),
103
+ env.AI.run('@cf/meta/llama-3.1-8b-instruct', { messages: summaryPrompt }),
104
+ env.AI.run('@cf/baai/bge-base-en-v1.5', { text }),
105
+ ])
106
+ ```
107
+
108
+ ## Cost Optimization
109
+
110
+ | Task | Model | Neurons |
111
+ | -------- | -------------------------------------- | ------- |
112
+ | Classify | `@cf/mistral/mistral-7b-instruct-v0.1` | ~50 |
113
+ | Chat | `@cf/meta/llama-3.1-8b-instruct` | ~200 |
114
+ | Complex | `@cf/meta/llama-3.1-70b-instruct` | ~2000 |
115
+ | Embed | `@cf/baai/bge-base-en-v1.5` | ~10 |
116
+
117
+ ```typescript
118
+ // Batch embeddings
119
+ const response = await env.AI.run('@cf/baai/bge-base-en-v1.5', {
120
+ text: textsArray, // Process multiple at once
121
+ })
122
+ ```