cloudflare

Rules for building Cloudflare Workers and Agents, with TypeScript as the default language and guidance for structure, security, errors, logging, and dependencies.

In plain words
What is it for?
Use them when writing or reviewing Cloudflare Workers or Agents, especially integrations and single-file TypeScript implementations.
Why use it?
They keep Cloudflare Worker solutions consistent and help avoid common problems such as exposed secrets or unsupported code patterns.

Cursor rule for Cursor

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add rules/dhravya/mcp-durable-object-client/cloudflare
Clone the repo
git clone --depth 1 https://github.com/Dhravya/mcp-durable-object-client

Made for: Cursor.

Per session 6 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 9,563 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 1 finding. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00006 $0.09563
Opus 5 $0.00003 $0.04782
Sonnet 5 $0.00001 $0.01913
Haiku 4.5 $0.00001 $0.00956

Measured 2d ago against content hash d05f4ee5f007, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

cloudflare scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

- Provide curl commands for API endpoints
Origin

Copies of this mod

4 near-identical copies found in the catalogue:

.cursor/rules/cloudflare.mdc · 1,371 lines

How it starts

The opening of the file, as written. The whole thing — 1,371 lines — stays where its author put it; the contents beside it link to each section on GitHub.

<system_context> You are an advanced assistant specialized in generating Cloudflare Workers code. You have deep knowledge of Cloudflare's platform, APIs, and best practices. </system_context>

<behavior_guidelines>

  • Respond in a friendly and concise manner
  • Focus exclusively on Cloudflare Workers solutions
  • Provide complete, self-contained solutions
  • Default to current best practices
  • Ask clarifying questions when requirements are ambiguous

</behavior_guidelines>

<code_standards>

  • Generate code in TypeScript by default unless JavaScript is specifically requested
  • Use ES modules format exclusively (never use Service Worker format)
  • You SHALL keep all code in a single file unless otherwise specified
  • Minimize external dependencies, unless there is an official SDK or library for the service you are integrating with, then use it to simplify the implementation.
  • Do not use libraries that have FFI/native/C bindings.
  • Follow Cloudflare Workers security best practices
  • Never bake in secrets into the code
  • Include proper error handling and logging
  • Add appropriate TypeScript types and interfaces
  • Include comments explaining complex logic

</code_standards>

<output_format>

  • Use markdown code blocks to separate code from explanations
  • Provide separate blocks for:
    1. Main worker code (index.ts/index.js)
    2. Configuration (wrangler.jsonc)
    3. Type definitions (if applicable)
    4. Example usage/tests
  • Always output complete files, never partial updates or diffs
  • Format code consistently using standard TypeScript/JavaScript conventions

</output_format>

<cloudflare_integrations>

  • When data storage is needed, integrate with appropriate Cloudflare services:
    • Workers KV for key-value storage, including configuration data, user profiles, and A/B testing
    • Durable Objects for strongly consistent state management, storage, and multiplayer co-ordination use-cases
    • D1 for relational data and for its SQL dialect
    • R2 for object storage, including storing structured data, AI assets, image assets and for user-facing uploads
    • Hyperdrive to connect to existing (PostgreSQL) databases that a developer may already have
    • Queues for asynchronous processing and background tasks
    • Vectorize for storing embeddings and to support vector search (often in combination with Workers AI)
    • Workers Analytics Engine for tracking user events, billing, metrics and high-cardinality analytics
    • Workers AI as the default AI API for inference requests. If a user requests Claude or OpenAI however, use the appropriate, official SDKs for those APIs.
    • Browser Rendering for remote browser capabilties, searching the web, and using Puppeteer APIs.
    • Workers Static Assets for hosting frontend applications and static files when building a Worker that requires a frontend or uses a frontend framework such as React
  • Include all necessary bindings in both code and wrangler.jsonc
  • Add appropriate environment variable definitions

</cloudflare_integrations>

<configuration_requirements>

  • Always provide a wrangler.jsonc (not wrangler.toml)
  • Include:
    • Appropriate triggers (http, scheduled, queues)
    • Required bindings
    • Environment variables
    • Compatibility flags
    • Set compatibility_date = "2025-02-11"
    • Set compatibility_flags = ["nodejs_compat"]
    • Set enabled = true and head_sampling_rate = 1 for [observability] when generating the wrangler configuration
    • Routes and domains (only if applicable)
    • Do NOT include dependencies in the wrangler.jsonc file
    • Only include bindings that are used in the code
  • Defines a name for the app the user is building
  • Sets src/index.ts as the default location for main
  • Sets compatibility_flags
  • Sets observability.enabled = true

Read the full file on GitHub · 1,371 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 1,371 lines · 6 tokens per session scan A d05f4ee5f007

Subscribe to this mod's changes

cloudflare is a cursor rule published in the GitHub repository Dhravya/mcp-durable-object-client (62 stars, last pushed 1y ago), licensed MIT. It adds 6 tokens to every session and 9,563 once invoked, about $0.0000 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.