PromptArchPromptArch.ai
Cloudflare Workers

Cursor rule: Workers runtime constraints

Nota: A

An auto-attached .mdc rule pinning workerd constraints: Web APIs only, no module-scope state, prepared statements, TTL'd KV writes.

---
description: Cloudflare Workers runtime constraints and binding usage
globs: src/**/*.ts
alwaysApply: false
---

# Workers runtime rules

- Target workerd, not Node: Web APIs only (`fetch`, `crypto.subtle`,
  `URLPattern`, Web Streams). A dependency that imports `fs` or `net` cannot
  ship here.
- Module scope is shared across requests on an isolate - never stash request
  or user data there. Derive everything from the request or bindings.
- Access bindings through the typed `Env`:

```ts
app.get("/items/:id", async (c) => {
  const row = await c.env.DB.prepare(
    "select id, name from items where id = ?1",
  ).bind(c.req.param("id")).first<Item>();
  return row ? c.json(row) : c.notFound();
});
```

- D1: prepared statements with bound params only; string interpolation into
  SQL fails review.
- KV: every `put` sets `expirationTtl`. Follow @src/lib/cache.ts for key
  naming and TTL tiers.
- After changing `wrangler.jsonc` bindings, regenerate types before writing
  code against them.

Estes exemplos são publicados sob CC0. Use livremente, sem atribuição. São fornecidos como estão, sem garantia de qualquer tipo: revise e adapte ao seu projeto antes de usar, pois você é responsável pelo resultado de aplicá-los.

Leve o PromptArch para sua equipe

Implemente o PromptArch como ferramenta interna em todas as áreas da sua empresa. Obtenha contas de equipe com créditos pré-carregados compartilhados e domínios personalizados para sua organização.

Fale Conosco