Files
dotfiles/dot_agents/skills/cloudflare/references/bindings/README.md
T
Prad Nukala 6406208b35 shell: fish functions -> ~/.local/bin executables + bash/zsh ports; manage ~/.agents
- 16 cross-shell utilities converted to sh/bash chezmoi executables:
  ai c2p cp-appid extract_agents fab gdc gh-sonr-org-migrate ghg-clone
  ghn gho git-summary launch_omp_livediff_overlay lc-elir mdcp mdp pj
  (ghg-clone not named ghg: unrelated cargo binary owns that name)
- cwd/history helpers stay per-shell: yy c cd clip-last + ghg/ghn/gho
  cd-wrappers in bash/functions/ and zsh/functions/, loaded by rc files
- fish keeps only shell-state functions; converted ones now hit PATH
- cp-appid ignore gating moved to .local/bin path
- dot_agents/skills: 82 skills materialized from dotstate storage so
  dot_claude skill symlinks resolve on fresh bootstrap; dotstate
  profile/symlinks.json released .agents/skills .bashrc .zshrc
2026-08-10 15:15:06 -04:00

3.9 KiB

Cloudflare Bindings Skill Reference

Expert guidance on Cloudflare Workers Bindings - the runtime APIs that connect Workers to Cloudflare platform resources.

What Are Bindings?

Bindings are how Workers access Cloudflare resources (storage, compute, services) via the env object. They're configured in wrangler.jsonc, type-safe via TypeScript, and zero-overhead at runtime.

Reading Order

  1. This file - Binding catalog and selection guide
  2. api.md - TypeScript types and env access patterns
  3. configuration.md - Complete wrangler.jsonc examples
  4. patterns.md - Best practices and common patterns
  5. gotchas.md - Critical pitfalls and troubleshooting

Binding Catalog

Storage Bindings

Binding Use Case Access Pattern
KV Key-value cache, CDN-backed reads env.MY_KV.get(key)
R2 Object storage (S3-compatible) env.MY_BUCKET.get(key)
D1 SQL database (SQLite) env.DB.prepare(sql).all()
Durable Objects Coordination, real-time state env.MY_DO.get(id)
Vectorize Vector embeddings search env.VECTORIZE.query(vector)
Queues Async message processing env.MY_QUEUE.send(msg)

Compute Bindings

Binding Use Case Access Pattern
Service Worker-to-Worker RPC env.MY_SERVICE.fetch(req)
Workers AI LLM inference env.AI.run(model, input)
Browser Rendering Headless Chrome env.BROWSER.fetch(url)

Platform Bindings

Binding Use Case Access Pattern
Analytics Engine Custom metrics env.ANALYTICS.writeDataPoint(data)
mTLS Client certificates env.MY_CERT (string)
Hyperdrive Database pooling env.HYPERDRIVE.connectionString
Rate Limiting Request throttling env.RATE_LIMITER.limit(id)
Workflows Long-running workflows env.MY_WORKFLOW.create()

Configuration Bindings

Binding Use Case Access Pattern
Environment Variables Non-sensitive config env.API_URL (string)
Secrets Sensitive values env.API_KEY (string)
Text/Data Blobs Static files env.MY_BLOB (string)
WASM WebAssembly modules env.MY_WASM (WebAssembly.Module)

Quick Selection Guide

Need persistent storage?

  • Key-value < 25MB → KV
  • Files/objects → R2
  • Relational data → D1
  • Real-time coordination → Durable Objects

Need AI/compute?

  • LLM inference → Workers AI
  • Scraping/PDFs → Browser Rendering
  • Call another Worker → Service binding

Need async processing?

  • Background jobs → Queues

Need config?

  • Public values → Environment Variables
  • Secrets → Secrets (never commit)

Quick Start

  1. Add binding to wrangler.jsonc:
{
  "kv_namespaces": [
    { "binding": "MY_KV", "id": "your-kv-id" }
  ]
}
  1. Generate types:
npx wrangler types
  1. Access in Worker:
export default {
  async fetch(request, env, ctx) {
    await env.MY_KV.put('key', 'value');
    return new Response('OK');
  }
}

Type Safety

Bindings are fully typed via wrangler types. See api.md for details.

Limits

  • 64 bindings max per Worker (all types combined)
  • See gotchas.md for per-binding limits

Key Concepts

Zero-overhead access: Bindings compiled into Worker, no network calls to access Type-safe: Full TypeScript support via wrangler types Per-environment: Different IDs for dev/staging/production Secrets vs Vars: Secrets encrypted at rest, never in config files

See Also