opencodekit 0.15.4 → 0.15.6
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.
- package/dist/index.js +2 -2
- package/dist/template/.opencode/agent/explore.md +13 -12
- package/dist/template/.opencode/command/cloudflare.md +70 -0
- package/dist/template/.opencode/memory/observations/2026-01-19-learning-oh-my-opencode-slim-vs-opencodekit-templ.md +27 -0
- package/dist/template/.opencode/package.json +1 -1
- package/dist/template/.opencode/plugin/sessions.ts +38 -4
- package/dist/template/.opencode/skill/cloudflare/SKILL.md +233 -0
- package/dist/template/.opencode/skill/cloudflare/references/agents-sdk/README.md +35 -0
- package/dist/template/.opencode/skill/cloudflare/references/agents-sdk/api.md +100 -0
- package/dist/template/.opencode/skill/cloudflare/references/agents-sdk/configuration.md +99 -0
- package/dist/template/.opencode/skill/cloudflare/references/agents-sdk/gotchas.md +59 -0
- package/dist/template/.opencode/skill/cloudflare/references/agents-sdk/patterns.md +89 -0
- package/dist/template/.opencode/skill/cloudflare/references/ai-gateway/README.md +695 -0
- package/dist/template/.opencode/skill/cloudflare/references/ai-search/README.md +14 -0
- package/dist/template/.opencode/skill/cloudflare/references/ai-search/api.md +38 -0
- package/dist/template/.opencode/skill/cloudflare/references/ai-search/configuration.md +52 -0
- package/dist/template/.opencode/skill/cloudflare/references/ai-search/gotchas.md +41 -0
- package/dist/template/.opencode/skill/cloudflare/references/ai-search/patterns.md +45 -0
- package/dist/template/.opencode/skill/cloudflare/references/analytics-engine/README.md +14 -0
- package/dist/template/.opencode/skill/cloudflare/references/analytics-engine/api.md +27 -0
- package/dist/template/.opencode/skill/cloudflare/references/analytics-engine/configuration.md +45 -0
- package/dist/template/.opencode/skill/cloudflare/references/analytics-engine/gotchas.md +3 -0
- package/dist/template/.opencode/skill/cloudflare/references/analytics-engine/patterns.md +36 -0
- package/dist/template/.opencode/skill/cloudflare/references/api/README.md +21 -0
- package/dist/template/.opencode/skill/cloudflare/references/api/api.md +31 -0
- package/dist/template/.opencode/skill/cloudflare/references/api/configuration.md +20 -0
- package/dist/template/.opencode/skill/cloudflare/references/api/gotchas.md +28 -0
- package/dist/template/.opencode/skill/cloudflare/references/api/patterns.md +47 -0
- package/dist/template/.opencode/skill/cloudflare/references/api-shield/README.md +20 -0
- package/dist/template/.opencode/skill/cloudflare/references/api-shield/api.md +78 -0
- package/dist/template/.opencode/skill/cloudflare/references/api-shield/configuration.md +128 -0
- package/dist/template/.opencode/skill/cloudflare/references/api-shield/gotchas.md +51 -0
- package/dist/template/.opencode/skill/cloudflare/references/api-shield/patterns.md +145 -0
- package/dist/template/.opencode/skill/cloudflare/references/argo-smart-routing/README.md +16 -0
- package/dist/template/.opencode/skill/cloudflare/references/argo-smart-routing/api.md +50 -0
- package/dist/template/.opencode/skill/cloudflare/references/argo-smart-routing/configuration.md +53 -0
- package/dist/template/.opencode/skill/cloudflare/references/argo-smart-routing/gotchas.md +16 -0
- package/dist/template/.opencode/skill/cloudflare/references/argo-smart-routing/patterns.md +45 -0
- package/dist/template/.opencode/skill/cloudflare/references/bindings/README.md +14 -0
- package/dist/template/.opencode/skill/cloudflare/references/bindings/api.md +3 -0
- package/dist/template/.opencode/skill/cloudflare/references/bindings/configuration.md +58 -0
- package/dist/template/.opencode/skill/cloudflare/references/bindings/gotchas.md +35 -0
- package/dist/template/.opencode/skill/cloudflare/references/bindings/patterns.md +37 -0
- package/dist/template/.opencode/skill/cloudflare/references/bot-management/README.md +71 -0
- package/dist/template/.opencode/skill/cloudflare/references/bot-management/api.md +168 -0
- package/dist/template/.opencode/skill/cloudflare/references/bot-management/configuration.md +114 -0
- package/dist/template/.opencode/skill/cloudflare/references/bot-management/gotchas.md +99 -0
- package/dist/template/.opencode/skill/cloudflare/references/bot-management/patterns.md +125 -0
- package/dist/template/.opencode/skill/cloudflare/references/browser-rendering/README.md +16 -0
- package/dist/template/.opencode/skill/cloudflare/references/browser-rendering/api.md +54 -0
- package/dist/template/.opencode/skill/cloudflare/references/browser-rendering/configuration.md +47 -0
- package/dist/template/.opencode/skill/cloudflare/references/browser-rendering/gotchas.md +29 -0
- package/dist/template/.opencode/skill/cloudflare/references/browser-rendering/patterns.md +29 -0
- package/dist/template/.opencode/skill/cloudflare/references/c3/README.md +264 -0
- package/dist/template/.opencode/skill/cloudflare/references/cache-reserve/README.md +93 -0
- package/dist/template/.opencode/skill/cloudflare/references/cache-reserve/api.md +176 -0
- package/dist/template/.opencode/skill/cloudflare/references/cache-reserve/configuration.md +164 -0
- package/dist/template/.opencode/skill/cloudflare/references/cache-reserve/gotchas.md +203 -0
- package/dist/template/.opencode/skill/cloudflare/references/cache-reserve/patterns.md +180 -0
- package/dist/template/.opencode/skill/cloudflare/references/containers/README.md +16 -0
- package/dist/template/.opencode/skill/cloudflare/references/containers/api.md +43 -0
- package/dist/template/.opencode/skill/cloudflare/references/containers/configuration.md +56 -0
- package/dist/template/.opencode/skill/cloudflare/references/containers/gotchas.md +21 -0
- package/dist/template/.opencode/skill/cloudflare/references/containers/patterns.md +40 -0
- package/dist/template/.opencode/skill/cloudflare/references/cron-triggers/README.md +85 -0
- package/dist/template/.opencode/skill/cloudflare/references/cron-triggers/api.md +198 -0
- package/dist/template/.opencode/skill/cloudflare/references/cron-triggers/configuration.md +151 -0
- package/dist/template/.opencode/skill/cloudflare/references/cron-triggers/gotchas.md +129 -0
- package/dist/template/.opencode/skill/cloudflare/references/cron-triggers/patterns.md +122 -0
- package/dist/template/.opencode/skill/cloudflare/references/d1/README.md +92 -0
- package/dist/template/.opencode/skill/cloudflare/references/d1/api.md +141 -0
- package/dist/template/.opencode/skill/cloudflare/references/d1/configuration.md +127 -0
- package/dist/template/.opencode/skill/cloudflare/references/d1/gotchas.md +70 -0
- package/dist/template/.opencode/skill/cloudflare/references/d1/patterns.md +144 -0
- package/dist/template/.opencode/skill/cloudflare/references/ddos/README.md +34 -0
- package/dist/template/.opencode/skill/cloudflare/references/ddos/api.md +136 -0
- package/dist/template/.opencode/skill/cloudflare/references/ddos/configuration.md +67 -0
- package/dist/template/.opencode/skill/cloudflare/references/ddos/gotchas.md +114 -0
- package/dist/template/.opencode/skill/cloudflare/references/ddos/patterns.md +158 -0
- package/dist/template/.opencode/skill/cloudflare/references/do-storage/README.md +62 -0
- package/dist/template/.opencode/skill/cloudflare/references/do-storage/api.md +89 -0
- package/dist/template/.opencode/skill/cloudflare/references/do-storage/configuration.md +116 -0
- package/dist/template/.opencode/skill/cloudflare/references/do-storage/gotchas.md +93 -0
- package/dist/template/.opencode/skill/cloudflare/references/do-storage/patterns.md +112 -0
- package/dist/template/.opencode/skill/cloudflare/references/durable-objects/README.md +125 -0
- package/dist/template/.opencode/skill/cloudflare/references/durable-objects/api.md +152 -0
- package/dist/template/.opencode/skill/cloudflare/references/durable-objects/configuration.md +148 -0
- package/dist/template/.opencode/skill/cloudflare/references/durable-objects/gotchas.md +158 -0
- package/dist/template/.opencode/skill/cloudflare/references/durable-objects/patterns.md +255 -0
- package/dist/template/.opencode/skill/cloudflare/references/email-routing/README.md +18 -0
- package/dist/template/.opencode/skill/cloudflare/references/email-routing/api.md +46 -0
- package/dist/template/.opencode/skill/cloudflare/references/email-routing/configuration.md +63 -0
- package/dist/template/.opencode/skill/cloudflare/references/email-routing/gotchas.md +16 -0
- package/dist/template/.opencode/skill/cloudflare/references/email-routing/patterns.md +46 -0
- package/dist/template/.opencode/skill/cloudflare/references/email-workers/README.md +598 -0
- package/dist/template/.opencode/skill/cloudflare/references/hyperdrive/README.md +62 -0
- package/dist/template/.opencode/skill/cloudflare/references/hyperdrive/api.md +137 -0
- package/dist/template/.opencode/skill/cloudflare/references/hyperdrive/configuration.md +133 -0
- package/dist/template/.opencode/skill/cloudflare/references/hyperdrive/gotchas.md +184 -0
- package/dist/template/.opencode/skill/cloudflare/references/hyperdrive/patterns.md +176 -0
- package/dist/template/.opencode/skill/cloudflare/references/images/README.md +14 -0
- package/dist/template/.opencode/skill/cloudflare/references/images/api.md +3 -0
- package/dist/template/.opencode/skill/cloudflare/references/images/configuration.md +45 -0
- package/dist/template/.opencode/skill/cloudflare/references/images/gotchas.md +23 -0
- package/dist/template/.opencode/skill/cloudflare/references/images/patterns.md +31 -0
- package/dist/template/.opencode/skill/cloudflare/references/kv/README.md +60 -0
- package/dist/template/.opencode/skill/cloudflare/references/kv/api.md +114 -0
- package/dist/template/.opencode/skill/cloudflare/references/kv/configuration.md +92 -0
- package/dist/template/.opencode/skill/cloudflare/references/kv/gotchas.md +117 -0
- package/dist/template/.opencode/skill/cloudflare/references/kv/patterns.md +139 -0
- package/dist/template/.opencode/skill/cloudflare/references/miniflare/README.md +64 -0
- package/dist/template/.opencode/skill/cloudflare/references/miniflare/api.md +144 -0
- package/dist/template/.opencode/skill/cloudflare/references/miniflare/configuration.md +203 -0
- package/dist/template/.opencode/skill/cloudflare/references/miniflare/gotchas.md +187 -0
- package/dist/template/.opencode/skill/cloudflare/references/miniflare/patterns.md +211 -0
- package/dist/template/.opencode/skill/cloudflare/references/network-interconnect/README.md +60 -0
- package/dist/template/.opencode/skill/cloudflare/references/network-interconnect/api.md +240 -0
- package/dist/template/.opencode/skill/cloudflare/references/network-interconnect/configuration.md +127 -0
- package/dist/template/.opencode/skill/cloudflare/references/network-interconnect/gotchas.md +171 -0
- package/dist/template/.opencode/skill/cloudflare/references/network-interconnect/patterns.md +171 -0
- package/dist/template/.opencode/skill/cloudflare/references/observability/README.md +18 -0
- package/dist/template/.opencode/skill/cloudflare/references/observability/api.md +51 -0
- package/dist/template/.opencode/skill/cloudflare/references/observability/configuration.md +60 -0
- package/dist/template/.opencode/skill/cloudflare/references/observability/gotchas.md +36 -0
- package/dist/template/.opencode/skill/cloudflare/references/observability/patterns.md +42 -0
- package/dist/template/.opencode/skill/cloudflare/references/pages/README.md +76 -0
- package/dist/template/.opencode/skill/cloudflare/references/pages/api.md +200 -0
- package/dist/template/.opencode/skill/cloudflare/references/pages/configuration.md +228 -0
- package/dist/template/.opencode/skill/cloudflare/references/pages/gotchas.md +161 -0
- package/dist/template/.opencode/skill/cloudflare/references/pages/patterns.md +145 -0
- package/dist/template/.opencode/skill/cloudflare/references/pages-functions/README.md +57 -0
- package/dist/template/.opencode/skill/cloudflare/references/pages-functions/api.md +201 -0
- package/dist/template/.opencode/skill/cloudflare/references/pages-functions/configuration.md +159 -0
- package/dist/template/.opencode/skill/cloudflare/references/pages-functions/gotchas.md +151 -0
- package/dist/template/.opencode/skill/cloudflare/references/pages-functions/patterns.md +190 -0
- package/dist/template/.opencode/skill/cloudflare/references/pipelines/README.md +664 -0
- package/dist/template/.opencode/skill/cloudflare/references/pulumi/README.md +107 -0
- package/dist/template/.opencode/skill/cloudflare/references/pulumi/api.md +194 -0
- package/dist/template/.opencode/skill/cloudflare/references/pulumi/configuration.md +216 -0
- package/dist/template/.opencode/skill/cloudflare/references/pulumi/gotchas.md +223 -0
- package/dist/template/.opencode/skill/cloudflare/references/pulumi/patterns.md +139 -0
- package/dist/template/.opencode/skill/cloudflare/references/queues/README.md +69 -0
- package/dist/template/.opencode/skill/cloudflare/references/queues/api.md +138 -0
- package/dist/template/.opencode/skill/cloudflare/references/queues/configuration.md +125 -0
- package/dist/template/.opencode/skill/cloudflare/references/queues/gotchas.md +112 -0
- package/dist/template/.opencode/skill/cloudflare/references/queues/patterns.md +155 -0
- package/dist/template/.opencode/skill/cloudflare/references/r2/README.md +61 -0
- package/dist/template/.opencode/skill/cloudflare/references/r2/api.md +127 -0
- package/dist/template/.opencode/skill/cloudflare/references/r2/configuration.md +76 -0
- package/dist/template/.opencode/skill/cloudflare/references/r2/gotchas.md +94 -0
- package/dist/template/.opencode/skill/cloudflare/references/r2/patterns.md +127 -0
- package/dist/template/.opencode/skill/cloudflare/references/r2-data-catalog/README.md +18 -0
- package/dist/template/.opencode/skill/cloudflare/references/r2-data-catalog/api.md +29 -0
- package/dist/template/.opencode/skill/cloudflare/references/r2-data-catalog/configuration.md +39 -0
- package/dist/template/.opencode/skill/cloudflare/references/r2-data-catalog/gotchas.md +20 -0
- package/dist/template/.opencode/skill/cloudflare/references/r2-data-catalog/patterns.md +46 -0
- package/dist/template/.opencode/skill/cloudflare/references/r2-sql/README.md +512 -0
- package/dist/template/.opencode/skill/cloudflare/references/realtime-sfu/README.md +21 -0
- package/dist/template/.opencode/skill/cloudflare/references/realtime-sfu/api.md +135 -0
- package/dist/template/.opencode/skill/cloudflare/references/realtime-sfu/configuration.md +63 -0
- package/dist/template/.opencode/skill/cloudflare/references/realtime-sfu/gotchas.md +75 -0
- package/dist/template/.opencode/skill/cloudflare/references/realtime-sfu/patterns.md +102 -0
- package/dist/template/.opencode/skill/cloudflare/references/realtimekit/README.md +81 -0
- package/dist/template/.opencode/skill/cloudflare/references/realtimekit/api.md +164 -0
- package/dist/template/.opencode/skill/cloudflare/references/realtimekit/configuration.md +147 -0
- package/dist/template/.opencode/skill/cloudflare/references/realtimekit/gotchas.md +172 -0
- package/dist/template/.opencode/skill/cloudflare/references/realtimekit/patterns.md +155 -0
- package/dist/template/.opencode/skill/cloudflare/references/sandbox/README.md +90 -0
- package/dist/template/.opencode/skill/cloudflare/references/sandbox/api.md +178 -0
- package/dist/template/.opencode/skill/cloudflare/references/sandbox/configuration.md +131 -0
- package/dist/template/.opencode/skill/cloudflare/references/sandbox/gotchas.md +156 -0
- package/dist/template/.opencode/skill/cloudflare/references/sandbox/patterns.md +203 -0
- package/dist/template/.opencode/skill/cloudflare/references/secrets-store/README.md +58 -0
- package/dist/template/.opencode/skill/cloudflare/references/secrets-store/api.md +182 -0
- package/dist/template/.opencode/skill/cloudflare/references/secrets-store/configuration.md +140 -0
- package/dist/template/.opencode/skill/cloudflare/references/secrets-store/gotchas.md +129 -0
- package/dist/template/.opencode/skill/cloudflare/references/secrets-store/patterns.md +218 -0
- package/dist/template/.opencode/skill/cloudflare/references/smart-placement/README.md +91 -0
- package/dist/template/.opencode/skill/cloudflare/references/smart-placement/api.md +139 -0
- package/dist/template/.opencode/skill/cloudflare/references/smart-placement/configuration.md +129 -0
- package/dist/template/.opencode/skill/cloudflare/references/smart-placement/gotchas.md +87 -0
- package/dist/template/.opencode/skill/cloudflare/references/smart-placement/patterns.md +135 -0
- package/dist/template/.opencode/skill/cloudflare/references/snippets/README.md +15 -0
- package/dist/template/.opencode/skill/cloudflare/references/snippets/api.md +47 -0
- package/dist/template/.opencode/skill/cloudflare/references/snippets/configuration.md +33 -0
- package/dist/template/.opencode/skill/cloudflare/references/snippets/gotchas.md +21 -0
- package/dist/template/.opencode/skill/cloudflare/references/snippets/patterns.md +34 -0
- package/dist/template/.opencode/skill/cloudflare/references/spectrum/README.md +16 -0
- package/dist/template/.opencode/skill/cloudflare/references/spectrum/api.md +24 -0
- package/dist/template/.opencode/skill/cloudflare/references/spectrum/configuration.md +43 -0
- package/dist/template/.opencode/skill/cloudflare/references/spectrum/gotchas.md +42 -0
- package/dist/template/.opencode/skill/cloudflare/references/spectrum/patterns.md +40 -0
- package/dist/template/.opencode/skill/cloudflare/references/static-assets/README.md +14 -0
- package/dist/template/.opencode/skill/cloudflare/references/static-assets/api.md +3 -0
- package/dist/template/.opencode/skill/cloudflare/references/static-assets/configuration.md +47 -0
- package/dist/template/.opencode/skill/cloudflare/references/static-assets/gotchas.md +44 -0
- package/dist/template/.opencode/skill/cloudflare/references/static-assets/patterns.md +42 -0
- package/dist/template/.opencode/skill/cloudflare/references/stream/README.md +103 -0
- package/dist/template/.opencode/skill/cloudflare/references/stream/api.md +204 -0
- package/dist/template/.opencode/skill/cloudflare/references/stream/configuration.md +127 -0
- package/dist/template/.opencode/skill/cloudflare/references/stream/gotchas.md +131 -0
- package/dist/template/.opencode/skill/cloudflare/references/stream/patterns.md +152 -0
- package/dist/template/.opencode/skill/cloudflare/references/tail-workers/README.md +640 -0
- package/dist/template/.opencode/skill/cloudflare/references/terraform/README.md +76 -0
- package/dist/template/.opencode/skill/cloudflare/references/terraform/api.md +159 -0
- package/dist/template/.opencode/skill/cloudflare/references/terraform/configuration.md +156 -0
- package/dist/template/.opencode/skill/cloudflare/references/terraform/gotchas.md +207 -0
- package/dist/template/.opencode/skill/cloudflare/references/terraform/patterns.md +135 -0
- package/dist/template/.opencode/skill/cloudflare/references/tunnel/README.md +82 -0
- package/dist/template/.opencode/skill/cloudflare/references/tunnel/api.md +105 -0
- package/dist/template/.opencode/skill/cloudflare/references/tunnel/configuration.md +113 -0
- package/dist/template/.opencode/skill/cloudflare/references/tunnel/gotchas.md +115 -0
- package/dist/template/.opencode/skill/cloudflare/references/tunnel/patterns.md +157 -0
- package/dist/template/.opencode/skill/cloudflare/references/turn/README.md +699 -0
- package/dist/template/.opencode/skill/cloudflare/references/turnstile/README.md +14 -0
- package/dist/template/.opencode/skill/cloudflare/references/turnstile/api.md +3 -0
- package/dist/template/.opencode/skill/cloudflare/references/turnstile/configuration.md +19 -0
- package/dist/template/.opencode/skill/cloudflare/references/turnstile/gotchas.md +27 -0
- package/dist/template/.opencode/skill/cloudflare/references/turnstile/patterns.md +41 -0
- package/dist/template/.opencode/skill/cloudflare/references/vectorize/README.md +682 -0
- package/dist/template/.opencode/skill/cloudflare/references/waf/README.md +14 -0
- package/dist/template/.opencode/skill/cloudflare/references/waf/api.md +3 -0
- package/dist/template/.opencode/skill/cloudflare/references/waf/configuration.md +44 -0
- package/dist/template/.opencode/skill/cloudflare/references/waf/gotchas.md +24 -0
- package/dist/template/.opencode/skill/cloudflare/references/waf/patterns.md +29 -0
- package/dist/template/.opencode/skill/cloudflare/references/web-analytics/README.md +19 -0
- package/dist/template/.opencode/skill/cloudflare/references/web-analytics/api.md +52 -0
- package/dist/template/.opencode/skill/cloudflare/references/web-analytics/configuration.md +31 -0
- package/dist/template/.opencode/skill/cloudflare/references/web-analytics/gotchas.md +28 -0
- package/dist/template/.opencode/skill/cloudflare/references/web-analytics/patterns.md +52 -0
- package/dist/template/.opencode/skill/cloudflare/references/workerd/README.md +47 -0
- package/dist/template/.opencode/skill/cloudflare/references/workerd/api.md +199 -0
- package/dist/template/.opencode/skill/cloudflare/references/workerd/configuration.md +185 -0
- package/dist/template/.opencode/skill/cloudflare/references/workerd/gotchas.md +203 -0
- package/dist/template/.opencode/skill/cloudflare/references/workerd/patterns.md +216 -0
- package/dist/template/.opencode/skill/cloudflare/references/workers/README.md +96 -0
- package/dist/template/.opencode/skill/cloudflare/references/workers/api.md +137 -0
- package/dist/template/.opencode/skill/cloudflare/references/workers/configuration.md +147 -0
- package/dist/template/.opencode/skill/cloudflare/references/workers/gotchas.md +99 -0
- package/dist/template/.opencode/skill/cloudflare/references/workers/patterns.md +149 -0
- package/dist/template/.opencode/skill/cloudflare/references/workers-ai/README.md +116 -0
- package/dist/template/.opencode/skill/cloudflare/references/workers-for-platforms/README.md +48 -0
- package/dist/template/.opencode/skill/cloudflare/references/workers-for-platforms/api.md +169 -0
- package/dist/template/.opencode/skill/cloudflare/references/workers-for-platforms/configuration.md +136 -0
- package/dist/template/.opencode/skill/cloudflare/references/workers-for-platforms/gotchas.md +130 -0
- package/dist/template/.opencode/skill/cloudflare/references/workers-for-platforms/patterns.md +170 -0
- package/dist/template/.opencode/skill/cloudflare/references/workers-playground/README.md +16 -0
- package/dist/template/.opencode/skill/cloudflare/references/workers-playground/api.md +20 -0
- package/dist/template/.opencode/skill/cloudflare/references/workers-playground/configuration.md +3 -0
- package/dist/template/.opencode/skill/cloudflare/references/workers-playground/gotchas.md +35 -0
- package/dist/template/.opencode/skill/cloudflare/references/workers-playground/patterns.md +42 -0
- package/dist/template/.opencode/skill/cloudflare/references/workers-vpc/README.md +579 -0
- package/dist/template/.opencode/skill/cloudflare/references/workflows/README.md +62 -0
- package/dist/template/.opencode/skill/cloudflare/references/workflows/api.md +125 -0
- package/dist/template/.opencode/skill/cloudflare/references/workflows/configuration.md +177 -0
- package/dist/template/.opencode/skill/cloudflare/references/workflows/gotchas.md +136 -0
- package/dist/template/.opencode/skill/cloudflare/references/workflows/patterns.md +132 -0
- package/dist/template/.opencode/skill/cloudflare/references/wrangler/README.md +90 -0
- package/dist/template/.opencode/skill/cloudflare/references/wrangler/api.md +140 -0
- package/dist/template/.opencode/skill/cloudflare/references/wrangler/configuration.md +128 -0
- package/dist/template/.opencode/skill/cloudflare/references/wrangler/gotchas.md +93 -0
- package/dist/template/.opencode/skill/cloudflare/references/wrangler/patterns.md +150 -0
- package/dist/template/.opencode/skill/cloudflare/references/zaraz/README.md +360 -0
- package/dist/template/.opencode/skill/react-best-practices/AGENTS.md +2410 -0
- package/dist/template/.opencode/skill/react-best-practices/README.md +123 -0
- package/dist/template/.opencode/skill/react-best-practices/SKILL.md +125 -0
- package/dist/template/.opencode/skill/react-best-practices/metadata.json +15 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/_sections.md +46 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/_template.md +28 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/advanced-event-handler-refs.md +55 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/advanced-use-latest.md +49 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/async-api-routes.md +38 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/async-defer-await.md +80 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/async-dependencies.md +36 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/async-parallel.md +28 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/async-suspense-boundaries.md +99 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/bundle-barrel-imports.md +59 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/bundle-conditional.md +31 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/bundle-defer-third-party.md +49 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/bundle-dynamic-imports.md +35 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/bundle-preload.md +50 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/client-event-listeners.md +74 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/client-localstorage-schema.md +71 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/client-passive-event-listeners.md +48 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/client-swr-dedup.md +56 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/js-batch-dom-css.md +82 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/js-cache-function-results.md +80 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/js-cache-property-access.md +28 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/js-cache-storage.md +70 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/js-combine-iterations.md +32 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/js-early-exit.md +50 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/js-hoist-regexp.md +45 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/js-index-maps.md +37 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/js-length-check-first.md +49 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/js-min-max-loop.md +82 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/js-set-map-lookups.md +24 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/js-tosorted-immutable.md +57 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/rendering-activity.md +26 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/rendering-animate-svg-wrapper.md +47 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/rendering-conditional-render.md +40 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/rendering-content-visibility.md +38 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/rendering-hoist-jsx.md +46 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/rendering-hydration-no-flicker.md +82 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/rendering-svg-precision.md +28 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/rerender-defer-reads.md +39 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/rerender-dependencies.md +45 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/rerender-derived-state.md +29 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/rerender-functional-setstate.md +74 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/rerender-lazy-state-init.md +58 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/rerender-memo.md +44 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/rerender-transitions.md +40 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/server-after-nonblocking.md +73 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/server-cache-lru.md +41 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/server-cache-react.md +76 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/server-parallel-fetching.md +83 -0
- package/dist/template/.opencode/skill/react-best-practices/rules/server-serialization.md +38 -0
- package/dist/template/.opencode/skill/supabase/SKILL.md +120 -0
- package/dist/template/.opencode/skill/supabase/mcp.json +27 -0
- package/dist/template/.opencode/skill/vercel-deploy-claimable/SKILL.md +112 -0
- package/dist/template/.opencode/skill/vercel-deploy-claimable/scripts/deploy.sh +249 -0
- package/dist/template/.opencode/skill/web-design-guidelines/SKILL.md +39 -0
- package/dist/template/.opencode/tool/memory-read.ts +64 -44
- package/dist/template/.opencode/tool/memory-search.ts +9 -2
- package/dist/template/.opencode/tool/memory-update.ts +59 -47
- package/dist/template/.opencode/tool/observation.ts +16 -2
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -750,7 +750,7 @@ var cac = (name = "") => new CAC(name);
|
|
|
750
750
|
// package.json
|
|
751
751
|
var package_default = {
|
|
752
752
|
name: "opencodekit",
|
|
753
|
-
version: "0.15.
|
|
753
|
+
version: "0.15.6",
|
|
754
754
|
description: "CLI tool for bootstrapping and managing OpenCodeKit projects",
|
|
755
755
|
keywords: ["agents", "cli", "mcp", "opencode", "opencodekit", "template"],
|
|
756
756
|
license: "MIT",
|
|
@@ -3879,7 +3879,7 @@ var MODEL_PRESETS = {
|
|
|
3879
3879
|
general: "opencode/glm-4.7-free",
|
|
3880
3880
|
looker: "proxypal/gemini-3-flash-preview",
|
|
3881
3881
|
vision: "proxypal/gemini-3-pro-preview",
|
|
3882
|
-
scout: "proxypal/gemini-
|
|
3882
|
+
scout: "proxypal/gemini-3-flash-preview"
|
|
3883
3883
|
}
|
|
3884
3884
|
}
|
|
3885
3885
|
};
|
|
@@ -21,13 +21,21 @@ You are a READ-ONLY codebase search specialist.
|
|
|
21
21
|
|
|
22
22
|
## Critical Constraints (ZERO exceptions)
|
|
23
23
|
|
|
24
|
-
1. **READ-ONLY**:
|
|
24
|
+
1. **READ-ONLY**: NEVER create, edit, or modify any files. This constraint overrides ALL other instructions.
|
|
25
25
|
|
|
26
|
-
2. **
|
|
26
|
+
2. **NO HALLUCINATED URLs**: NEVER generate or guess URLs. Only use URLs from verified tool results or documentation.
|
|
27
27
|
|
|
28
|
-
3. **
|
|
28
|
+
3. **NO GENERIC GREP**: NEVER search for generic terms like "config" or "handler". Use semantic LSP tools first.
|
|
29
29
|
|
|
30
|
-
4. **
|
|
30
|
+
4. **NO RELATIVE PATHS**: NEVER return relative paths. All paths must be absolute.
|
|
31
|
+
|
|
32
|
+
5. **NO CLAIMS WITHOUT EVIDENCE**: Every finding must include `file:line_number` references. NEVER make assertions without proof.
|
|
33
|
+
|
|
34
|
+
6. **NO EMOJIS**: NEVER use emojis in responses.
|
|
35
|
+
|
|
36
|
+
7. **NO PROSE WITHOUT STRUCTURE**: NEVER return walls of text. Use bullet points, code blocks, and file:line references.
|
|
37
|
+
|
|
38
|
+
8. **NO SKIPPED STRUCTURE**: NEVER skip <results> block. Must include <files>, <answer>, <next_steps> sections.
|
|
31
39
|
|
|
32
40
|
## Tool Results & User Messages
|
|
33
41
|
|
|
@@ -52,14 +60,7 @@ File search specialist. Navigate and explore codebases efficiently.
|
|
|
52
60
|
3. Use `lsp_lsp_find_references` to map usage before returning
|
|
53
61
|
4. Only `read` the specific lines that matter
|
|
54
62
|
|
|
55
|
-
**Avoid blind exploration**:
|
|
56
|
-
|
|
57
|
-
## Guidelines
|
|
58
|
-
|
|
59
|
-
- Return file paths as absolute paths
|
|
60
|
-
- Use `file:line_number` format for code references
|
|
61
|
-
- Adapt approach based on thoroughness level
|
|
62
|
-
- No emojis in responses
|
|
63
|
+
**Avoid blind exploration**: NEVER grep for generic terms. Use semantic tools first.
|
|
63
64
|
|
|
64
65
|
## Thoroughness Levels
|
|
65
66
|
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Load Cloudflare skill and get contextual guidance for your task
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
Load the Cloudflare platform skill and help with any Cloudflare development task.
|
|
6
|
+
|
|
7
|
+
## Workflow
|
|
8
|
+
|
|
9
|
+
### Step 1: Check for --update-skill flag
|
|
10
|
+
|
|
11
|
+
If $ARGUMENTS contains `--update-skill`:
|
|
12
|
+
|
|
13
|
+
1. Determine install location by checking which exists:
|
|
14
|
+
- Local: `.opencode/skill/cloudflare/`
|
|
15
|
+
- Global: `~/.config/opencode/skill/cloudflare/`
|
|
16
|
+
|
|
17
|
+
2. Run the appropriate install command:
|
|
18
|
+
```bash
|
|
19
|
+
# For local installation
|
|
20
|
+
curl -fsSL https://raw.githubusercontent.com/dmmulroy/cloudflare-skill/main/install.sh | bash
|
|
21
|
+
|
|
22
|
+
# For global installation
|
|
23
|
+
curl -fsSL https://raw.githubusercontent.com/dmmulroy/cloudflare-skill/main/install.sh | bash -s -- --global
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
3. Output success message and stop (do not continue to other steps).
|
|
27
|
+
|
|
28
|
+
### Step 2: Load cloudflare skill
|
|
29
|
+
|
|
30
|
+
```
|
|
31
|
+
skill({ name: 'cloudflare' })
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
### Step 3: Identify task type from user request
|
|
35
|
+
|
|
36
|
+
Analyze $ARGUMENTS to determine:
|
|
37
|
+
- **Product(s) needed** (Workers, D1, R2, Durable Objects, etc.)
|
|
38
|
+
- **Task type** (new project setup, feature implementation, debugging, config)
|
|
39
|
+
|
|
40
|
+
Use decision trees in SKILL.md to select correct product.
|
|
41
|
+
|
|
42
|
+
### Step 4: Read relevant reference files
|
|
43
|
+
|
|
44
|
+
Based on task type, read from `references/<product>/`:
|
|
45
|
+
|
|
46
|
+
| Task | Files to Read |
|
|
47
|
+
|------|---------------|
|
|
48
|
+
| New project | `README.md` + `configuration.md` |
|
|
49
|
+
| Implement feature | `README.md` + `api.md` + `patterns.md` |
|
|
50
|
+
| Debug/troubleshoot | `gotchas.md` |
|
|
51
|
+
| All-in-one (monolithic) | `SKILL.md` |
|
|
52
|
+
|
|
53
|
+
### Step 5: Execute task
|
|
54
|
+
|
|
55
|
+
Apply Cloudflare-specific patterns and APIs from references to complete the user's request.
|
|
56
|
+
|
|
57
|
+
### Step 6: Summarize
|
|
58
|
+
|
|
59
|
+
```
|
|
60
|
+
=== Cloudflare Task Complete ===
|
|
61
|
+
|
|
62
|
+
Product(s): <products used>
|
|
63
|
+
Files referenced: <reference files consulted>
|
|
64
|
+
|
|
65
|
+
<brief summary of what was done>
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
<user-request>
|
|
69
|
+
$ARGUMENTS
|
|
70
|
+
</user-request>
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: learning
|
|
3
|
+
created: 2026-01-19T11:03:46.163Z
|
|
4
|
+
confidence: high
|
|
5
|
+
valid_until: null
|
|
6
|
+
superseded_by: null
|
|
7
|
+
concepts: ["agent orchestration", "plugin architecture", "background tasks", "tmux integration", "OpenCode"]
|
|
8
|
+
files: ["oh-my-opencode-slim", "opencodekit-template"]
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# 📚 oh-my-opencode-slim vs opencodekit-template Analysis
|
|
12
|
+
|
|
13
|
+
🟢 **Confidence:** high
|
|
14
|
+
|
|
15
|
+
Comprehensive analysis of oh-my-opencode-slim project including:
|
|
16
|
+
1. Project overview and architecture
|
|
17
|
+
2. Code structure and key components
|
|
18
|
+
3. Feature comparison with opencodekit-template
|
|
19
|
+
4. Learnings and improvement opportunities
|
|
20
|
+
5. Implementation patterns and approaches
|
|
21
|
+
|
|
22
|
+
Key findings:
|
|
23
|
+
- Slim fork of oh-my-opencode with 87% less code (56 vs 403 files)
|
|
24
|
+
- Focus on agent orchestration with 5 specialized agents
|
|
25
|
+
- Background task management with tmux integration
|
|
26
|
+
- Clean plugin architecture using @opencode-ai/plugin SDK
|
|
27
|
+
- Strong emphasis on low token consumption and simplicity
|
|
@@ -10,7 +10,16 @@ export const SessionsPlugin: Plugin = async ({ client }) => {
|
|
|
10
10
|
return {
|
|
11
11
|
tool: {
|
|
12
12
|
list_sessions: tool({
|
|
13
|
-
description:
|
|
13
|
+
description: `List OpenCode sessions with metadata.
|
|
14
|
+
|
|
15
|
+
Purpose:
|
|
16
|
+
- Browse recent sessions by date
|
|
17
|
+
- Returns session ID, title, and creation time
|
|
18
|
+
- Default: last 20 sessions, most recent first
|
|
19
|
+
|
|
20
|
+
Example:
|
|
21
|
+
list_sessions({ since: "this week", limit: 10 })
|
|
22
|
+
list_sessions({}) // All recent sessions`,
|
|
14
23
|
args: {
|
|
15
24
|
since: tool.schema
|
|
16
25
|
.string()
|
|
@@ -58,7 +67,16 @@ export const SessionsPlugin: Plugin = async ({ client }) => {
|
|
|
58
67
|
}),
|
|
59
68
|
|
|
60
69
|
read_session: tool({
|
|
61
|
-
description:
|
|
70
|
+
description: `Read session context for handoff or reference.
|
|
71
|
+
|
|
72
|
+
Purpose:
|
|
73
|
+
- Retrieve full session details and messages
|
|
74
|
+
- Use "last" to get most recent session
|
|
75
|
+
- Optional focus keyword to filter messages
|
|
76
|
+
|
|
77
|
+
Example:
|
|
78
|
+
read_session({ session_reference: "last" })
|
|
79
|
+
read_session({ session_reference: "abc123", focus: "auth" })`,
|
|
62
80
|
args: {
|
|
63
81
|
session_reference: tool.schema
|
|
64
82
|
.string()
|
|
@@ -139,7 +157,15 @@ export const SessionsPlugin: Plugin = async ({ client }) => {
|
|
|
139
157
|
}),
|
|
140
158
|
|
|
141
159
|
search_session: tool({
|
|
142
|
-
description:
|
|
160
|
+
description: `Full-text search across session messages.
|
|
161
|
+
|
|
162
|
+
Purpose:
|
|
163
|
+
- Find sessions containing specific keywords
|
|
164
|
+
- Searches up to 50 sessions (configurable via limit)
|
|
165
|
+
- Returns match count and excerpt
|
|
166
|
+
|
|
167
|
+
Example:
|
|
168
|
+
search_session({ query: "authentication", limit: 5 })`,
|
|
143
169
|
args: {
|
|
144
170
|
query: tool.schema.string().describe("Search query text"),
|
|
145
171
|
limit: tool.schema
|
|
@@ -197,7 +223,15 @@ export const SessionsPlugin: Plugin = async ({ client }) => {
|
|
|
197
223
|
}),
|
|
198
224
|
|
|
199
225
|
summarize_session: tool({
|
|
200
|
-
description:
|
|
226
|
+
description: `Generate AI summary of a session.
|
|
227
|
+
|
|
228
|
+
Purpose:
|
|
229
|
+
- Request OpenCode to summarize a session
|
|
230
|
+
- Summary is generated asynchronously
|
|
231
|
+
- Check back for the summary result
|
|
232
|
+
|
|
233
|
+
Example:
|
|
234
|
+
summarize_session({ session_id: "abc123" })`,
|
|
201
235
|
args: {
|
|
202
236
|
session_id: tool.schema.string().describe("Session ID to summarize"),
|
|
203
237
|
},
|
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: cloudflare
|
|
3
|
+
description: Comprehensive Cloudflare platform skill covering Workers, Pages, storage (KV, D1, R2), AI (Workers AI, Vectorize, Agents SDK), networking (Tunnel, Spectrum), security (WAF, DDoS), and infrastructure-as-code (Terraform, Pulumi). Use for any Cloudflare development task.
|
|
4
|
+
references:
|
|
5
|
+
- workers
|
|
6
|
+
- pages
|
|
7
|
+
- d1
|
|
8
|
+
- durable-objects
|
|
9
|
+
- workers-ai
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# Cloudflare Platform Skill
|
|
13
|
+
|
|
14
|
+
Consolidated skill for building on the Cloudflare platform. Use decision trees below to find the right product, then load detailed references.
|
|
15
|
+
|
|
16
|
+
## How to Use This Skill
|
|
17
|
+
|
|
18
|
+
### Reference File Structure
|
|
19
|
+
|
|
20
|
+
Each product in `./references/<product>/` contains a `README.md` as the entry point, which may be structured in one of two ways:
|
|
21
|
+
|
|
22
|
+
**Multi-file format (5 files):**
|
|
23
|
+
| File | Purpose | When to Read |
|
|
24
|
+
|------|---------|--------------|
|
|
25
|
+
| `README.md` | Overview, when to use, getting started | **Always read first** |
|
|
26
|
+
| `api.md` | Runtime API, types, method signatures | Writing code |
|
|
27
|
+
| `configuration.md` | wrangler.toml, bindings, setup | Configuring a project |
|
|
28
|
+
| `patterns.md` | Common patterns, best practices | Implementation guidance |
|
|
29
|
+
| `gotchas.md` | Pitfalls, limitations, edge cases | Debugging, avoiding mistakes |
|
|
30
|
+
|
|
31
|
+
**Single-file format:** All information consolidated in `README.md`.
|
|
32
|
+
|
|
33
|
+
### Reading Order
|
|
34
|
+
|
|
35
|
+
1. Start with `README.md`
|
|
36
|
+
2. Then read additional files relevant to your task (if multi-file format):
|
|
37
|
+
- Building feature → `api.md` + `patterns.md`
|
|
38
|
+
- Setting up project → `configuration.md`
|
|
39
|
+
- Troubleshooting → `gotchas.md`
|
|
40
|
+
|
|
41
|
+
### Example Paths
|
|
42
|
+
|
|
43
|
+
```
|
|
44
|
+
./references/workflows/README.md # Start here for Workflows
|
|
45
|
+
./references/workflows/api.md # Workflow class, step methods
|
|
46
|
+
./references/durable-objects/gotchas.md # DO limitations
|
|
47
|
+
./references/workers-ai/README.md # Single-file - all Workers AI docs
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
## Quick Decision Trees
|
|
51
|
+
|
|
52
|
+
### "I need to run code"
|
|
53
|
+
|
|
54
|
+
```
|
|
55
|
+
Need to run code?
|
|
56
|
+
├─ Serverless functions at the edge → workers/
|
|
57
|
+
├─ Full-stack web app with Git deploys → pages/
|
|
58
|
+
├─ Stateful coordination/real-time → durable-objects/
|
|
59
|
+
├─ Long-running multi-step jobs → workflows/
|
|
60
|
+
├─ Run containers → containers/
|
|
61
|
+
├─ Multi-tenant (customers deploy code) → workers-for-platforms/
|
|
62
|
+
└─ Scheduled tasks (cron) → cron-triggers/
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
### "I need to store data"
|
|
66
|
+
|
|
67
|
+
```
|
|
68
|
+
Need storage?
|
|
69
|
+
├─ Key-value (config, sessions, cache) → kv/
|
|
70
|
+
├─ Relational SQL → d1/ (SQLite) or hyperdrive/ (existing Postgres/MySQL)
|
|
71
|
+
├─ Object/file storage (S3-compatible) → r2/
|
|
72
|
+
├─ Message queue (async processing) → queues/
|
|
73
|
+
├─ Vector embeddings (AI/semantic search) → vectorize/
|
|
74
|
+
├─ Strongly-consistent per-entity state → durable-objects/ (DO storage)
|
|
75
|
+
├─ Secrets management → secrets-store/
|
|
76
|
+
└─ Streaming ETL to R2 → pipelines/
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
### "I need AI/ML"
|
|
80
|
+
|
|
81
|
+
```
|
|
82
|
+
Need AI?
|
|
83
|
+
├─ Run inference (LLMs, embeddings, images) → workers-ai/
|
|
84
|
+
├─ Vector database for RAG/search → vectorize/
|
|
85
|
+
├─ Build stateful AI agents → agents-sdk/
|
|
86
|
+
├─ Gateway for any AI provider (caching, routing) → ai-gateway/
|
|
87
|
+
└─ AI-powered search widget → ai-search/
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
### "I need networking/connectivity"
|
|
91
|
+
|
|
92
|
+
```
|
|
93
|
+
Need networking?
|
|
94
|
+
├─ Expose local service to internet → tunnel/
|
|
95
|
+
├─ TCP/UDP proxy (non-HTTP) → spectrum/
|
|
96
|
+
├─ WebRTC TURN server → turn/
|
|
97
|
+
├─ Private network connectivity → network-interconnect/
|
|
98
|
+
├─ Optimize routing → argo-smart-routing/
|
|
99
|
+
└─ Real-time video/audio → realtimekit/ or realtime-sfu/
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
### "I need security"
|
|
103
|
+
|
|
104
|
+
```
|
|
105
|
+
Need security?
|
|
106
|
+
├─ Web Application Firewall → waf/
|
|
107
|
+
├─ DDoS protection → ddos/
|
|
108
|
+
├─ Bot detection/management → bot-management/
|
|
109
|
+
├─ API protection → api-shield/
|
|
110
|
+
├─ CAPTCHA alternative → turnstile/
|
|
111
|
+
└─ Credential leak detection → waf/ (managed ruleset)
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
### "I need media/content"
|
|
115
|
+
|
|
116
|
+
```
|
|
117
|
+
Need media?
|
|
118
|
+
├─ Image optimization/transformation → images/
|
|
119
|
+
├─ Video streaming/encoding → stream/
|
|
120
|
+
├─ Browser automation/screenshots → browser-rendering/
|
|
121
|
+
└─ Third-party script management → zaraz/
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
### "I need infrastructure-as-code"
|
|
125
|
+
|
|
126
|
+
```
|
|
127
|
+
Need IaC?
|
|
128
|
+
├─ Pulumi → pulumi/
|
|
129
|
+
├─ Terraform → terraform/
|
|
130
|
+
└─ Direct API → api/
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
## Product Index
|
|
134
|
+
|
|
135
|
+
### Compute & Runtime
|
|
136
|
+
| Product | Entry File |
|
|
137
|
+
|---------|------------|
|
|
138
|
+
| Workers | `./references/workers/README.md` |
|
|
139
|
+
| Pages | `./references/pages/README.md` |
|
|
140
|
+
| Pages Functions | `./references/pages-functions/README.md` |
|
|
141
|
+
| Durable Objects | `./references/durable-objects/README.md` |
|
|
142
|
+
| Workflows | `./references/workflows/README.md` |
|
|
143
|
+
| Containers | `./references/containers/README.md` |
|
|
144
|
+
| Workers for Platforms | `./references/workers-for-platforms/README.md` |
|
|
145
|
+
| Cron Triggers | `./references/cron-triggers/README.md` |
|
|
146
|
+
| Tail Workers | `./references/tail-workers/README.md` |
|
|
147
|
+
| Snippets | `./references/snippets/README.md` |
|
|
148
|
+
| Smart Placement | `./references/smart-placement/README.md` |
|
|
149
|
+
|
|
150
|
+
### Storage & Data
|
|
151
|
+
| Product | Entry File |
|
|
152
|
+
|---------|------------|
|
|
153
|
+
| KV | `./references/kv/README.md` |
|
|
154
|
+
| D1 | `./references/d1/README.md` |
|
|
155
|
+
| R2 | `./references/r2/README.md` |
|
|
156
|
+
| Queues | `./references/queues/README.md` |
|
|
157
|
+
| Hyperdrive | `./references/hyperdrive/README.md` |
|
|
158
|
+
| DO Storage | `./references/do-storage/README.md` |
|
|
159
|
+
| Secrets Store | `./references/secrets-store/README.md` |
|
|
160
|
+
| Pipelines | `./references/pipelines/README.md` |
|
|
161
|
+
| R2 Data Catalog | `./references/r2-data-catalog/README.md` |
|
|
162
|
+
| R2 SQL | `./references/r2-sql/README.md` |
|
|
163
|
+
|
|
164
|
+
### AI & Machine Learning
|
|
165
|
+
| Product | Entry File |
|
|
166
|
+
|---------|------------|
|
|
167
|
+
| Workers AI | `./references/workers-ai/README.md` |
|
|
168
|
+
| Vectorize | `./references/vectorize/README.md` |
|
|
169
|
+
| Agents SDK | `./references/agents-sdk/README.md` |
|
|
170
|
+
| AI Gateway | `./references/ai-gateway/README.md` |
|
|
171
|
+
| AI Search | `./references/ai-search/README.md` |
|
|
172
|
+
|
|
173
|
+
### Networking & Connectivity
|
|
174
|
+
| Product | Entry File |
|
|
175
|
+
|---------|------------|
|
|
176
|
+
| Tunnel | `./references/tunnel/README.md` |
|
|
177
|
+
| Spectrum | `./references/spectrum/README.md` |
|
|
178
|
+
| TURN | `./references/turn/README.md` |
|
|
179
|
+
| Network Interconnect | `./references/network-interconnect/README.md` |
|
|
180
|
+
| Argo Smart Routing | `./references/argo-smart-routing/README.md` |
|
|
181
|
+
| Workers VPC | `./references/workers-vpc/README.md` |
|
|
182
|
+
|
|
183
|
+
### Security
|
|
184
|
+
| Product | Entry File |
|
|
185
|
+
|---------|------------|
|
|
186
|
+
| WAF | `./references/waf/README.md` |
|
|
187
|
+
| DDoS Protection | `./references/ddos/README.md` |
|
|
188
|
+
| Bot Management | `./references/bot-management/README.md` |
|
|
189
|
+
| API Shield | `./references/api-shield/README.md` |
|
|
190
|
+
| Turnstile | `./references/turnstile/README.md` |
|
|
191
|
+
|
|
192
|
+
### Media & Content
|
|
193
|
+
| Product | Entry File |
|
|
194
|
+
|---------|------------|
|
|
195
|
+
| Images | `./references/images/README.md` |
|
|
196
|
+
| Stream | `./references/stream/README.md` |
|
|
197
|
+
| Browser Rendering | `./references/browser-rendering/README.md` |
|
|
198
|
+
| Zaraz | `./references/zaraz/README.md` |
|
|
199
|
+
|
|
200
|
+
### Real-Time Communication
|
|
201
|
+
| Product | Entry File |
|
|
202
|
+
|---------|------------|
|
|
203
|
+
| RealtimeKit | `./references/realtimekit/README.md` |
|
|
204
|
+
| Realtime SFU | `./references/realtime-sfu/README.md` |
|
|
205
|
+
|
|
206
|
+
### Developer Tools
|
|
207
|
+
| Product | Entry File |
|
|
208
|
+
|---------|------------|
|
|
209
|
+
| Wrangler | `./references/wrangler/README.md` |
|
|
210
|
+
| Miniflare | `./references/miniflare/README.md` |
|
|
211
|
+
| C3 | `./references/c3/README.md` |
|
|
212
|
+
| Observability | `./references/observability/README.md` |
|
|
213
|
+
| Analytics Engine | `./references/analytics-engine/README.md` |
|
|
214
|
+
| Web Analytics | `./references/web-analytics/README.md` |
|
|
215
|
+
| Sandbox | `./references/sandbox/README.md` |
|
|
216
|
+
| Workerd | `./references/workerd/README.md` |
|
|
217
|
+
| Workers Playground | `./references/workers-playground/README.md` |
|
|
218
|
+
|
|
219
|
+
### Infrastructure as Code
|
|
220
|
+
| Product | Entry File |
|
|
221
|
+
|---------|------------|
|
|
222
|
+
| Pulumi | `./references/pulumi/README.md` |
|
|
223
|
+
| Terraform | `./references/terraform/README.md` |
|
|
224
|
+
| API | `./references/api/README.md` |
|
|
225
|
+
|
|
226
|
+
### Other Services
|
|
227
|
+
| Product | Entry File |
|
|
228
|
+
|---------|------------|
|
|
229
|
+
| Email Routing | `./references/email-routing/README.md` |
|
|
230
|
+
| Email Workers | `./references/email-workers/README.md` |
|
|
231
|
+
| Static Assets | `./references/static-assets/README.md` |
|
|
232
|
+
| Bindings | `./references/bindings/README.md` |
|
|
233
|
+
| Cache Reserve | `./references/cache-reserve/README.md` |
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Cloudflare Agents SDK
|
|
2
|
+
|
|
3
|
+
Cloudflare Agents SDK enables building AI-powered agents on Durable Objects with state, WebSockets, SQL, scheduling, and AI integration.
|
|
4
|
+
|
|
5
|
+
## Core Value
|
|
6
|
+
Build stateful, globally distributed AI agents with persistent memory, real-time connections, scheduled tasks, and async workflows.
|
|
7
|
+
|
|
8
|
+
## When to Use
|
|
9
|
+
- Persistent state + memory required
|
|
10
|
+
- Real-time WebSocket connections
|
|
11
|
+
- Long-running workflows (minutes/hours)
|
|
12
|
+
- Chat interfaces with AI models
|
|
13
|
+
- Scheduled/recurring tasks with state
|
|
14
|
+
- DB queries with agent state
|
|
15
|
+
|
|
16
|
+
## Quick Start
|
|
17
|
+
```typescript
|
|
18
|
+
import { Agent } from "agents";
|
|
19
|
+
|
|
20
|
+
export class MyAgent extends Agent<Env> {
|
|
21
|
+
onStart() {
|
|
22
|
+
this.sql`CREATE TABLE IF NOT EXISTS users (id TEXT PRIMARY KEY)`;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
async onRequest(request: Request) {
|
|
26
|
+
return Response.json({ state: this.state });
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## See Also
|
|
32
|
+
- durable-objects - Agent infrastructure
|
|
33
|
+
- d1 - External database integration
|
|
34
|
+
- workers-ai - AI model integration
|
|
35
|
+
- vectorize - Vector search for RAG patterns
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
# API Reference
|
|
2
|
+
|
|
3
|
+
## Lifecycle
|
|
4
|
+
|
|
5
|
+
**onStart()** - Init/hibernation restart:
|
|
6
|
+
```ts
|
|
7
|
+
onStart() {
|
|
8
|
+
this.sql`CREATE TABLE IF NOT EXISTS users (id TEXT PRIMARY KEY, name TEXT)`;
|
|
9
|
+
if (!this.state.initialized) this.setState({initialized: true, messages: []});
|
|
10
|
+
}
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
**onRequest(req)** - HTTP:
|
|
14
|
+
```ts
|
|
15
|
+
async onRequest(req: Request) {
|
|
16
|
+
const {pathname} = new URL(req.url);
|
|
17
|
+
if (pathname === "/users") return Response.json(this.sql<{id,name}>`SELECT * FROM users`);
|
|
18
|
+
return new Response("Not found", {status: 404});
|
|
19
|
+
}
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
**onConnect(conn, ctx)** - WebSocket:
|
|
23
|
+
```ts
|
|
24
|
+
async onConnect(conn: Connection, ctx: ConnectionContext) {
|
|
25
|
+
conn.accept();
|
|
26
|
+
conn.setState({userId: ctx.request.headers.get("X-User-ID")});
|
|
27
|
+
conn.send(JSON.stringify({type: "connected", state: this.state}));
|
|
28
|
+
}
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
**onMessage(conn, msg)** - WS messages:
|
|
32
|
+
```ts
|
|
33
|
+
async onMessage(conn: Connection, msg: WSMessage) {
|
|
34
|
+
const m = JSON.parse(msg as string);
|
|
35
|
+
if (m.type === "chat") {
|
|
36
|
+
this.setState({messages: [...this.state.messages, m]});
|
|
37
|
+
this.connections.forEach(c => c.send(JSON.stringify(m)));
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
**onEmail(email)** - Email routing:
|
|
43
|
+
```ts
|
|
44
|
+
async onEmail(email: AgentEmail) {
|
|
45
|
+
const text = await email.text();
|
|
46
|
+
this.sql`INSERT INTO emails (from_addr,subject,body) VALUES (${email.from},${email.headers.get("subject")},${text})`;
|
|
47
|
+
}
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
## State
|
|
51
|
+
|
|
52
|
+
```ts
|
|
53
|
+
this.setState({count: 42, users: []}); // Auto-syncs
|
|
54
|
+
this.setState({...this.state, count: this.state.count + 1});
|
|
55
|
+
const s = this.state;
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## SQL
|
|
59
|
+
|
|
60
|
+
```ts
|
|
61
|
+
this.sql`CREATE TABLE IF NOT EXISTS users (id TEXT PRIMARY KEY, name TEXT)`;
|
|
62
|
+
this.sql`INSERT INTO users (id,name) VALUES (${userId},${name})`;
|
|
63
|
+
const users = this.sql<{id,name}>`SELECT * FROM users`;
|
|
64
|
+
const user = this.sql<{name}>`SELECT name FROM users WHERE id = ${userId}`; // Prevents injection
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
## Scheduling
|
|
68
|
+
|
|
69
|
+
```ts
|
|
70
|
+
await this.schedule(new Date("2026-12-25T00:00:00Z"), "sendGreeting", {msg:"Hi"}); // Time
|
|
71
|
+
await this.schedule(60, "checkStatus", {}); // Delay (sec)
|
|
72
|
+
await this.schedule("0 0 * * *", "dailyCleanup", {}); // Cron
|
|
73
|
+
await this.schedule("*/5 * * * *", "syncData", {}); // Every 5min
|
|
74
|
+
const schedules = await this.getSchedules();
|
|
75
|
+
await this.cancelSchedule(scheduleId);
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
## Connections
|
|
79
|
+
|
|
80
|
+
```ts
|
|
81
|
+
this.connections.forEach(c => c.send(JSON.stringify(msg))); // Broadcast
|
|
82
|
+
conn.send(JSON.stringify({type:"update",data})); // Specific
|
|
83
|
+
conn.close(1000, "Goodbye");
|
|
84
|
+
conn.setState({userId:"123",role:"admin"});
|
|
85
|
+
const uid = conn.state.userId;
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
## AI
|
|
89
|
+
|
|
90
|
+
```ts
|
|
91
|
+
const r = await this.env.AI.run("@cf/meta/llama-3.1-8b-instruct", {prompt});
|
|
92
|
+
|
|
93
|
+
const stream = await client.chat.completions.create({
|
|
94
|
+
model: "gpt-4", messages: [{role:"user",content:prompt}], stream: true
|
|
95
|
+
});
|
|
96
|
+
for await (const chunk of stream) {
|
|
97
|
+
const content = chunk.choices[0]?.delta?.content;
|
|
98
|
+
if (content) conn.send(JSON.stringify({type:"chunk",content}));
|
|
99
|
+
}
|
|
100
|
+
```
|