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,109 @@
1
+ # Cloudflare Pipelines
2
+
3
+ ETL streaming platform for ingesting, transforming, and loading data into R2 with SQL transformations.
4
+
5
+ ## Overview
6
+
7
+ Pipelines provides:
8
+
9
+ - **Streams**: Durable event buffers (HTTP/Workers ingestion)
10
+ - **Pipelines**: SQL-based transformations
11
+ - **Sinks**: R2 destinations (Iceberg tables or Parquet/JSON files)
12
+
13
+ **Status**: Open beta (Workers Paid plan)
14
+ **Pricing**: No charge beyond standard R2 storage/operations
15
+
16
+ ## Architecture
17
+
18
+ ```
19
+ Data Sources → Streams → Pipelines (SQL) → Sinks → R2
20
+ ↑ ↓ ↓
21
+ HTTP/Workers Transform Iceberg/Parquet
22
+ ```
23
+
24
+ | Component | Purpose | Key Feature |
25
+ | --------- | ------------------ | -------------------------------------- |
26
+ | Streams | Event ingestion | Structured (validated) or unstructured |
27
+ | Pipelines | Transform with SQL | Immutable after creation |
28
+ | Sinks | Write to R2 | Exactly-once delivery |
29
+
30
+ ## Quick Start
31
+
32
+ ```bash
33
+ # Interactive setup (recommended)
34
+ npx wrangler pipelines setup
35
+ ```
36
+
37
+ **Minimal Worker example:**
38
+
39
+ ```typescript
40
+ interface Env {
41
+ STREAM: Pipeline
42
+ }
43
+
44
+ export default {
45
+ async fetch(request: Request, env: Env, ctx: ExecutionContext): Promise<Response> {
46
+ const event = { user_id: '123', event_type: 'purchase', amount: 29.99 }
47
+
48
+ // Fire-and-forget pattern
49
+ ctx.waitUntil(env.STREAM.send([event]))
50
+
51
+ return new Response('OK')
52
+ },
53
+ } satisfies ExportedHandler<Env>
54
+ ```
55
+
56
+ ## Which Sink Type?
57
+
58
+ ```
59
+ Need SQL queries on data?
60
+ → R2 Data Catalog (Iceberg)
61
+ ✅ ACID transactions, time-travel, schema evolution
62
+ ❌ More setup complexity (namespace, table, catalog token)
63
+
64
+ Just file storage/archival?
65
+ → R2 Storage (Parquet)
66
+ ✅ Simple, direct file access
67
+ ❌ No built-in SQL queries
68
+
69
+ Using external tools (Spark/Athena)?
70
+ → R2 Storage (Parquet with partitioning)
71
+ ✅ Standard format, partition pruning for performance
72
+ ❌ Must manage schema compatibility yourself
73
+ ```
74
+
75
+ ## Common Use Cases
76
+
77
+ - **Analytics pipelines**: Clickstream, telemetry, server logs
78
+ - **Data warehousing**: ETL into queryable Iceberg tables
79
+ - **Event processing**: Mobile/IoT with enrichment
80
+ - **Ecommerce analytics**: User events, purchases, views
81
+
82
+ ## Reading Order
83
+
84
+ **New to Pipelines?** Start here:
85
+
86
+ 1. [configuration.md](./configuration.md) - Setup streams, sinks, pipelines
87
+ 2. [api.md](./api.md) - Send events, TypeScript types, SQL functions
88
+ 3. [patterns.md](./patterns.md) - Best practices, integrations, complete example
89
+ 4. [gotchas.md](./gotchas.md) - Critical warnings, troubleshooting
90
+
91
+ **Task-based routing:**
92
+
93
+ - Setup pipeline → [configuration.md](./configuration.md)
94
+ - Send/query data → [api.md](./api.md)
95
+ - Implement pattern → [patterns.md](./patterns.md)
96
+ - Debug issue → [gotchas.md](./gotchas.md)
97
+
98
+ ## In This Reference
99
+
100
+ - [configuration.md](./configuration.md) - wrangler.jsonc bindings, schema definition, sink options, CLI commands
101
+ - [api.md](./api.md) - Pipeline binding interface, send() method, HTTP ingest, SQL function reference
102
+ - [patterns.md](./patterns.md) - Fire-and-forget, schema validation with Zod, integrations, performance tuning
103
+ - [gotchas.md](./gotchas.md) - Silent validation failures, immutable pipelines, latency expectations, limits
104
+
105
+ ## See Also
106
+
107
+ - [r2](../r2/) - R2 storage backend for sinks
108
+ - [queues](../queues/) - Compare with Queues for async processing
109
+ - [workers](../workers/) - Worker runtime for event ingestion
@@ -0,0 +1,214 @@
1
+ # Pipelines API Reference
2
+
3
+ ## Pipeline Binding Interface
4
+
5
+ ```typescript
6
+ // From @cloudflare/workers-types
7
+ interface Pipeline {
8
+ send(data: object | object[]): Promise<void>
9
+ }
10
+
11
+ interface Env {
12
+ STREAM: Pipeline
13
+ }
14
+
15
+ export default {
16
+ async fetch(request: Request, env: Env): Promise<Response> {
17
+ // send() returns Promise<void> - no result data
18
+ await env.STREAM.send([event])
19
+ return new Response('OK')
20
+ },
21
+ } satisfies ExportedHandler<Env>
22
+ ```
23
+
24
+ **Key points:**
25
+
26
+ - `send()` accepts single object or array
27
+ - Always returns `Promise<void>` (no confirmation data)
28
+ - Throws on network/validation errors (wrap in try/catch)
29
+ - Use `ctx.waitUntil()` for fire-and-forget pattern
30
+
31
+ ## Writing Events
32
+
33
+ ### Single Event
34
+
35
+ ```typescript
36
+ await env.STREAM.send([
37
+ {
38
+ user_id: '12345',
39
+ event_type: 'purchase',
40
+ product_id: 'widget-001',
41
+ amount: 29.99,
42
+ },
43
+ ])
44
+ ```
45
+
46
+ ### Batch Events
47
+
48
+ ```typescript
49
+ const events = [
50
+ { user_id: 'user1', event_type: 'view' },
51
+ { user_id: 'user2', event_type: 'purchase', amount: 50 },
52
+ ]
53
+ await env.STREAM.send(events)
54
+ ```
55
+
56
+ **Limits:**
57
+
58
+ - Max 1 MB per request
59
+ - 5 MB/s per stream
60
+
61
+ ### Fire-and-Forget Pattern
62
+
63
+ ```typescript
64
+ export default {
65
+ async fetch(request: Request, env: Env, ctx: ExecutionContext): Promise<Response> {
66
+ const event = {
67
+ /* ... */
68
+ }
69
+
70
+ // Don't block response on send
71
+ ctx.waitUntil(env.STREAM.send([event]))
72
+
73
+ return new Response('OK')
74
+ },
75
+ }
76
+ ```
77
+
78
+ ### Error Handling
79
+
80
+ ```typescript
81
+ try {
82
+ await env.STREAM.send([event])
83
+ } catch (error) {
84
+ console.error('Pipeline send failed:', error)
85
+ // Log to another system, retry, or return error response
86
+ return new Response('Failed to track event', { status: 500 })
87
+ }
88
+ ```
89
+
90
+ ## HTTP Ingest API
91
+
92
+ ### Endpoint Format
93
+
94
+ ```
95
+ https://{stream-id}.ingest.cloudflare.com
96
+ ```
97
+
98
+ Get `{stream-id}` from: `npx wrangler pipelines streams list`
99
+
100
+ ### Request Format
101
+
102
+ **CRITICAL:** Must send array, not single object
103
+
104
+ ```bash
105
+ # ✅ Correct
106
+ curl -X POST https://{stream-id}.ingest.cloudflare.com \
107
+ -H "Content-Type: application/json" \
108
+ -d '[{"user_id": "123", "event_type": "purchase"}]'
109
+
110
+ # ❌ Wrong - will fail
111
+ curl -X POST https://{stream-id}.ingest.cloudflare.com \
112
+ -H "Content-Type: application/json" \
113
+ -d '{"user_id": "123", "event_type": "purchase"}'
114
+ ```
115
+
116
+ ### Authentication
117
+
118
+ ```bash
119
+ curl -X POST https://{stream-id}.ingest.cloudflare.com \
120
+ -H "Content-Type: application/json" \
121
+ -H "Authorization: Bearer YOUR_API_TOKEN" \
122
+ -d '[{"event": "data"}]'
123
+ ```
124
+
125
+ **Required permission:** Workers Pipeline Send
126
+
127
+ Create token: Dashboard → Workers → API tokens → Create with Pipeline Send permission
128
+
129
+ ### Response Codes
130
+
131
+ | Code | Meaning | Action |
132
+ | ---- | ----------------- | ---------------------------------- |
133
+ | 200 | Accepted | Success |
134
+ | 400 | Invalid format | Check JSON array, schema match |
135
+ | 401 | Auth failed | Verify token valid |
136
+ | 413 | Payload too large | Split into smaller batches (<1 MB) |
137
+ | 429 | Rate limited | Back off, retry with delay |
138
+ | 5xx | Server error | Retry with exponential backoff |
139
+
140
+ ## SQL Functions Quick Reference
141
+
142
+ Available in `INSERT INTO sink SELECT ... FROM stream` transformations:
143
+
144
+ | Function | Example | Use Case |
145
+ | ---------------------------- | --------------------------------------------------- | ------------------------- |
146
+ | `UPPER(s)` | `UPPER(event_type)` | Normalize strings |
147
+ | `LOWER(s)` | `LOWER(email)` | Case-insensitive matching |
148
+ | `CONCAT(...)` | `CONCAT(user_id, '_', product_id)` | Generate composite keys |
149
+ | `CASE WHEN ... THEN ... END` | `CASE WHEN amount > 100 THEN 'high' ELSE 'low' END` | Conditional enrichment |
150
+ | `CAST(x AS type)` | `CAST(timestamp AS string)` | Type conversion |
151
+ | `COALESCE(x, y)` | `COALESCE(amount, 0.0)` | Default values |
152
+ | Math operators | `amount * 1.1`, `price / quantity` | Calculations |
153
+ | Comparison | `amount > 100`, `status IN ('active', 'pending')` | Filtering |
154
+
155
+ **String types for CAST:** `string`, `int32`, `int64`, `float32`, `float64`, `bool`, `timestamp`
156
+
157
+ Full reference: [Pipelines SQL Reference](https://developers.cloudflare.com/pipelines/sql-reference/)
158
+
159
+ ## SQL Transform Examples
160
+
161
+ ### Filter Events
162
+
163
+ ```sql
164
+ INSERT INTO my_sink
165
+ SELECT * FROM my_stream
166
+ WHERE event_type = 'purchase' AND amount > 100
167
+ ```
168
+
169
+ ### Select Specific Fields
170
+
171
+ ```sql
172
+ INSERT INTO my_sink
173
+ SELECT user_id, event_type, timestamp, amount
174
+ FROM my_stream
175
+ ```
176
+
177
+ ### Transform and Enrich
178
+
179
+ ```sql
180
+ INSERT INTO my_sink
181
+ SELECT
182
+ user_id,
183
+ UPPER(event_type) as event_type,
184
+ timestamp,
185
+ amount * 1.1 as amount_with_tax,
186
+ CONCAT(user_id, '_', product_id) as unique_key,
187
+ CASE
188
+ WHEN amount > 1000 THEN 'high_value'
189
+ WHEN amount > 100 THEN 'medium_value'
190
+ ELSE 'low_value'
191
+ END as customer_tier
192
+ FROM my_stream
193
+ WHERE event_type IN ('purchase', 'refund')
194
+ ```
195
+
196
+ ## Querying Results (R2 Data Catalog)
197
+
198
+ ```bash
199
+ export WRANGLER_R2_SQL_AUTH_TOKEN=YOUR_CATALOG_TOKEN
200
+
201
+ npx wrangler r2 sql query "warehouse_name" "
202
+ SELECT
203
+ event_type,
204
+ COUNT(*) as event_count,
205
+ SUM(amount) as total_revenue
206
+ FROM default.my_table
207
+ WHERE event_type = 'purchase'
208
+ AND timestamp >= '2025-01-01'
209
+ GROUP BY event_type
210
+ ORDER BY total_revenue DESC
211
+ LIMIT 100"
212
+ ```
213
+
214
+ **Note:** Iceberg tables support standard SQL queries with GROUP BY, JOINs, WHERE, ORDER BY, etc.
@@ -0,0 +1,98 @@
1
+ # Pipelines Configuration
2
+
3
+ ## Worker Binding
4
+
5
+ ```jsonc
6
+ // wrangler.jsonc
7
+ {
8
+ "pipelines": [{ "pipeline": "<STREAM_ID>", "binding": "STREAM" }],
9
+ }
10
+ ```
11
+
12
+ Get stream ID: `npx wrangler pipelines streams list`
13
+
14
+ ## Schema (Structured Streams)
15
+
16
+ ```json
17
+ {
18
+ "fields": [
19
+ { "name": "user_id", "type": "string", "required": true },
20
+ { "name": "event_type", "type": "string", "required": true },
21
+ { "name": "amount", "type": "float64", "required": false },
22
+ { "name": "timestamp", "type": "timestamp", "required": true }
23
+ ]
24
+ }
25
+ ```
26
+
27
+ **Types:** `string`, `int32`, `int64`, `float32`, `float64`, `bool`, `timestamp`, `json`, `binary`, `list`, `struct`
28
+
29
+ ## Stream Setup
30
+
31
+ ```bash
32
+ # With schema
33
+ npx wrangler pipelines streams create my-stream --schema-file schema.json
34
+
35
+ # Unstructured (no validation)
36
+ npx wrangler pipelines streams create my-stream
37
+
38
+ # List/get/delete
39
+ npx wrangler pipelines streams list
40
+ npx wrangler pipelines streams get <ID>
41
+ npx wrangler pipelines streams delete <ID>
42
+ ```
43
+
44
+ ## Sink Configuration
45
+
46
+ **R2 Data Catalog (Iceberg):**
47
+
48
+ ```bash
49
+ npx wrangler pipelines sinks create my-sink \
50
+ --type r2-data-catalog \
51
+ --bucket my-bucket --namespace default --table events \
52
+ --catalog-token $TOKEN \
53
+ --compression zstd --roll-interval 60
54
+ ```
55
+
56
+ **R2 Raw (Parquet):**
57
+
58
+ ```bash
59
+ npx wrangler pipelines sinks create my-sink \
60
+ --type r2 --bucket my-bucket --format parquet \
61
+ --path analytics/events \
62
+ --partitioning "year=%Y/month=%m/day=%d" \
63
+ --access-key-id $KEY --secret-access-key $SECRET
64
+ ```
65
+
66
+ | Option | Values | Guidance |
67
+ | ----------------- | ------------------------ | ----------------------------------- |
68
+ | `--compression` | `zstd`, `snappy`, `gzip` | `zstd` best ratio, `snappy` fastest |
69
+ | `--roll-interval` | Seconds | Low latency: 10-60, Query perf: 300 |
70
+ | `--roll-size` | MB | Larger = better compression |
71
+
72
+ ## Pipeline Creation
73
+
74
+ ```bash
75
+ npx wrangler pipelines create my-pipeline \
76
+ --sql "INSERT INTO my_sink SELECT * FROM my_stream WHERE event_type = 'purchase'"
77
+ ```
78
+
79
+ **⚠️ Pipelines are immutable** - cannot modify SQL. Must delete/recreate.
80
+
81
+ ## Credentials
82
+
83
+ | Type | Permission | Get From |
84
+ | ----------------- | --------------------- | ---------------------------------- |
85
+ | Catalog token | R2 Admin Read & Write | Dashboard → R2 → API tokens |
86
+ | R2 credentials | Object Read & Write | `wrangler r2 bucket create` output |
87
+ | HTTP ingest token | Workers Pipeline Send | Dashboard → Workers → API tokens |
88
+
89
+ ## Complete Example
90
+
91
+ ```bash
92
+ npx wrangler r2 bucket create my-bucket
93
+ npx wrangler r2 bucket catalog enable my-bucket
94
+ npx wrangler pipelines streams create my-stream --schema-file schema.json
95
+ npx wrangler pipelines sinks create my-sink --type r2-data-catalog --bucket my-bucket ...
96
+ npx wrangler pipelines create my-pipeline --sql "INSERT INTO my_sink SELECT * FROM my_stream"
97
+ npx wrangler deploy
98
+ ```
@@ -0,0 +1,84 @@
1
+ # Pipelines Gotchas
2
+
3
+ ## Critical Issues
4
+
5
+ ### Events Silently Dropped
6
+
7
+ **Most common issue.** Events accepted (HTTP 200) but never appear in sink.
8
+
9
+ **Causes:**
10
+
11
+ 1. Schema validation fails - structured streams drop invalid events silently
12
+ 2. Waiting for roll interval (10-300s) - expected behavior
13
+
14
+ **Solution:** Validate client-side with Zod:
15
+
16
+ ```typescript
17
+ const EventSchema = z.object({ user_id: z.string(), amount: z.number() })
18
+ try {
19
+ const validated = EventSchema.parse(rawEvent)
20
+ await env.STREAM.send([validated])
21
+ } catch (e) {
22
+ /* get immediate feedback */
23
+ }
24
+ ```
25
+
26
+ ### Pipelines Are Immutable
27
+
28
+ Cannot modify SQL after creation. Must delete and recreate.
29
+
30
+ ```bash
31
+ npx wrangler pipelines delete old-pipeline
32
+ npx wrangler pipelines create new-pipeline --sql "..."
33
+ ```
34
+
35
+ **Tip:** Use version naming (`events-pipeline-v1`) and keep SQL in version control.
36
+
37
+ ### Worker Binding Not Found
38
+
39
+ **`env.STREAM is undefined`**
40
+
41
+ 1. Use **stream ID** (not pipeline ID) in `wrangler.jsonc`
42
+ 2. Redeploy after adding binding
43
+
44
+ ```bash
45
+ npx wrangler pipelines streams list # Get stream ID
46
+ npx wrangler deploy
47
+ ```
48
+
49
+ ## Common Errors
50
+
51
+ | Error | Cause | Fix |
52
+ | -------------------------- | ----------------------------- | ----------------------------------- |
53
+ | Events not in R2 | Roll interval not elapsed | Wait 10-300s, check `roll_interval` |
54
+ | Schema validation failures | Type mismatch, missing fields | Validate client-side |
55
+ | Rate limit (429) | >5 MB/s per stream | Batch events, request increase |
56
+ | Payload too large (413) | >1 MB request | Split into smaller batches |
57
+ | Cannot delete stream | Pipeline references it | Delete pipelines first |
58
+ | Sink credential errors | Token expired | Recreate sink with new credentials |
59
+
60
+ ## Limits (Open Beta)
61
+
62
+ | Resource | Limit |
63
+ | ----------------------------------- | ---------- |
64
+ | Streams/Sinks/Pipelines per account | 20 each |
65
+ | Payload size | 1 MB |
66
+ | Ingest rate per stream | 5 MB/s |
67
+ | Event retention | 24 hours |
68
+ | Recommended batch size | 100 events |
69
+
70
+ ## SQL Limitations
71
+
72
+ - **No JOINs** - single stream per pipeline
73
+ - **No window functions** - basic SQL only
74
+ - **No subqueries** - must use `INSERT INTO ... SELECT ... FROM`
75
+ - **No schema evolution** - cannot modify after creation
76
+
77
+ ## Debug Checklist
78
+
79
+ - [ ] Stream exists: `npx wrangler pipelines streams list`
80
+ - [ ] Pipeline healthy: `npx wrangler pipelines get <ID>`
81
+ - [ ] SQL syntax matches schema
82
+ - [ ] Worker redeployed after binding added
83
+ - [ ] Waited for roll interval
84
+ - [ ] Accepted vs processed count matches (no validation drops)
@@ -0,0 +1,87 @@
1
+ # Pipelines Patterns
2
+
3
+ ## Fire-and-Forget
4
+
5
+ ```typescript
6
+ export default {
7
+ async fetch(request, env, ctx) {
8
+ const event = { user_id: '...', event_type: 'page_view', timestamp: new Date().toISOString() }
9
+ ctx.waitUntil(env.STREAM.send([event])) // Don't block response
10
+ return new Response('OK')
11
+ },
12
+ }
13
+ ```
14
+
15
+ ## Schema Validation with Zod
16
+
17
+ ```typescript
18
+ import { z } from 'zod'
19
+
20
+ const EventSchema = z.object({
21
+ user_id: z.string(),
22
+ event_type: z.enum(['purchase', 'view']),
23
+ amount: z.number().positive().optional(),
24
+ })
25
+
26
+ const validated = EventSchema.parse(rawEvent) // Throws on invalid
27
+ await env.STREAM.send([validated])
28
+ ```
29
+
30
+ **Why:** Structured streams drop invalid events silently. Client validation gives immediate feedback.
31
+
32
+ ## SQL Transform Patterns
33
+
34
+ ```sql
35
+ -- Filter early (reduce storage)
36
+ INSERT INTO my_sink
37
+ SELECT user_id, event_type, amount
38
+ FROM my_stream
39
+ WHERE event_type = 'purchase' AND amount > 10
40
+
41
+ -- Select only needed fields
42
+ INSERT INTO my_sink
43
+ SELECT user_id, event_type, timestamp FROM my_stream
44
+
45
+ -- Enrich with CASE
46
+ INSERT INTO my_sink
47
+ SELECT user_id, amount,
48
+ CASE WHEN amount > 1000 THEN 'vip' ELSE 'standard' END as tier
49
+ FROM my_stream
50
+ ```
51
+
52
+ ## Pipelines + Queues Fan-out
53
+
54
+ ```typescript
55
+ await Promise.all([
56
+ env.ANALYTICS_STREAM.send([event]), // Long-term storage
57
+ env.PROCESS_QUEUE.send(event), // Immediate processing
58
+ ])
59
+ ```
60
+
61
+ | Need | Use |
62
+ | ------------------------------ | --------------- |
63
+ | Long-term storage, SQL queries | Pipelines |
64
+ | Immediate processing, retries | Queues |
65
+ | Both | Fan-out pattern |
66
+
67
+ ## Performance Tuning
68
+
69
+ | Goal | Config |
70
+ | ----------------- | ---------------------------------------- |
71
+ | Low latency | `--roll-interval 10` |
72
+ | Query performance | `--roll-interval 300 --roll-size 100` |
73
+ | Cost optimal | `--compression zstd --roll-interval 300` |
74
+
75
+ ## Schema Evolution
76
+
77
+ Pipelines are immutable. Use versioning:
78
+
79
+ ```bash
80
+ # Create v2 stream/sink/pipeline
81
+ npx wrangler pipelines streams create events-v2 --schema-file v2.json
82
+
83
+ # Dual-write during transition
84
+ await Promise.all([env.EVENTS_V1.send([event]), env.EVENTS_V2.send([event])]);
85
+
86
+ # Query across versions with UNION ALL
87
+ ```
@@ -0,0 +1,112 @@
1
+ # Product Index
2
+
3
+ ### Compute & Runtime
4
+
5
+ | Product | Reference |
6
+ | --------------------- | ----------------------------------- |
7
+ | Workers | `references/workers/` |
8
+ | Pages | `references/pages/` |
9
+ | Pages Functions | `references/pages-functions/` |
10
+ | Durable Objects | `references/durable-objects/` |
11
+ | Workflows | `references/workflows/` |
12
+ | Containers | `references/containers/` |
13
+ | Workers for Platforms | `references/workers-for-platforms/` |
14
+ | Cron Triggers | `references/cron-triggers/` |
15
+ | Tail Workers | `references/tail-workers/` |
16
+ | Snippets | `references/snippets/` |
17
+ | Smart Placement | `references/smart-placement/` |
18
+
19
+ ### Storage & Data
20
+
21
+ | Product | Reference |
22
+ | --------------- | ----------------------------- |
23
+ | KV | `references/kv/` |
24
+ | D1 | `references/d1/` |
25
+ | R2 | `references/r2/` |
26
+ | Queues | `references/queues/` |
27
+ | Hyperdrive | `references/hyperdrive/` |
28
+ | DO Storage | `references/do-storage/` |
29
+ | Secrets Store | `references/secrets-store/` |
30
+ | Pipelines | `references/pipelines/` |
31
+ | R2 Data Catalog | `references/r2-data-catalog/` |
32
+ | R2 SQL | `references/r2-sql/` |
33
+
34
+ ### AI & Machine Learning
35
+
36
+ | Product | Reference |
37
+ | ---------- | ------------------------ |
38
+ | Workers AI | `references/workers-ai/` |
39
+ | Vectorize | `references/vectorize/` |
40
+ | Agents SDK | `references/agents-sdk/` |
41
+ | AI Gateway | `references/ai-gateway/` |
42
+ | AI Search | `references/ai-search/` |
43
+
44
+ ### Networking & Connectivity
45
+
46
+ | Product | Reference |
47
+ | -------------------- | ---------------------------------- |
48
+ | Tunnel | `references/tunnel/` |
49
+ | Spectrum | `references/spectrum/` |
50
+ | TURN | `references/turn/` |
51
+ | Network Interconnect | `references/network-interconnect/` |
52
+ | Argo Smart Routing | `references/argo-smart-routing/` |
53
+ | Workers VPC | `references/workers-vpc/` |
54
+
55
+ ### Security
56
+
57
+ | Product | Reference |
58
+ | --------------- | ---------------------------- |
59
+ | WAF | `references/waf/` |
60
+ | DDoS Protection | `references/ddos/` |
61
+ | Bot Management | `references/bot-management/` |
62
+ | API Shield | `references/api-shield/` |
63
+ | Turnstile | `references/turnstile/` |
64
+
65
+ ### Media & Content
66
+
67
+ | Product | Reference |
68
+ | ----------------- | ------------------------------- |
69
+ | Images | `references/images/` |
70
+ | Stream | `references/stream/` |
71
+ | Browser Rendering | `references/browser-rendering/` |
72
+ | Zaraz | `references/zaraz/` |
73
+
74
+ ### Real-Time Communication
75
+
76
+ | Product | Reference |
77
+ | ------------ | -------------------------- |
78
+ | RealtimeKit | `references/realtimekit/` |
79
+ | Realtime SFU | `references/realtime-sfu/` |
80
+
81
+ ### Developer Tools
82
+
83
+ | Product | Reference |
84
+ | --------------------- | -------------------------------- |
85
+ | Wrangler | `references/wrangler/` |
86
+ | Miniflare | `references/miniflare/` |
87
+ | C3 | `references/c3/` |
88
+ | Observability | `references/observability/` |
89
+ | GraphQL Analytics API | `references/graphql-api/` |
90
+ | Analytics Engine | `references/analytics-engine/` |
91
+ | Web Analytics | `references/web-analytics/` |
92
+ | Sandbox | `references/sandbox/` |
93
+ | Workerd | `references/workerd/` |
94
+ | Workers Playground | `references/workers-playground/` |
95
+
96
+ ### Infrastructure as Code
97
+
98
+ | Product | Reference |
99
+ | --------- | ----------------------- |
100
+ | Pulumi | `references/pulumi/` |
101
+ | Terraform | `references/terraform/` |
102
+ | API | `references/api/` |
103
+
104
+ ### Other Services
105
+
106
+ | Product | Reference |
107
+ | ------------- | --------------------------- |
108
+ | Email Routing | `references/email-routing/` |
109
+ | Email Workers | `references/email-workers/` |
110
+ | Static Assets | `references/static-assets/` |
111
+ | Bindings | `references/bindings/` |
112
+ | Cache Reserve | `references/cache-reserve/` |