Generated: 2026-01-12 Commit: d22f19ea218c
Documentation/skill repository for Cloudflare platform—structured reference docs for AI/LLM consumption. No executable code.
./
└── skill/
└── cloudflare/
├── SKILL.md # Main skill manifest + decision trees
├── patterns.md # Architecture patterns
└── references/ # 60 product subdirs
└── <product>/
├── README.md
├── api.md
├── configuration.md
├── patterns.md
└── gotchas.md
| Task | Location | Notes |
|---|---|---|
| Find a product | skill/cloudflare/SKILL.md |
Decision trees + full index |
| Product reference | skill/cloudflare/references/<product>/ |
5-file structure |
| Platform overview | docs/products.md |
All 101 products listed |
# CORRECT
jj status
jj log
jj new
jj commit -m "msg"
# WRONG - do not use
git status # .jj/ present = use jjEvery product follows 5-file pattern:
README.md— Overview, when to useapi.md— Runtime API referenceconfiguration.md—wrangler.toml+ binding setuppatterns.md— Usage patternsgotchas.md— Pitfalls, limitations
Some products use monolithic SKILL.md instead (migration in progress): ai-gateway, c3, email-workers, pipelines, r2-sql, tail-workers, turn, vectorize, workers-ai, workers-vpc, zaraz
SKILL.md files use frontmatter for machine parsing:
---
name: product-name
description: Brief description
references:
- related-product
---// NEVER - string interpolation
const result = await db.prepare(`SELECT * FROM users WHERE id = ${id}`).all();
// ALWAYS - prepared statements with bind()
const result = await db.prepare("SELECT * FROM users WHERE id = ?").bind(id).all();# NEVER commit .dev.vars (contains secrets)
# NEVER hardcode secrets in code// ALWAYS close browser in finally block (browser-rendering)
const browser = await puppeteer.launch();
try {
// ...
} finally {
await browser.close();
}
// ALWAYS call proxyToSandbox() first (sandbox)
await proxyToSandbox();# ALWAYS set compatibility_date for new projects (workers)
compatibility_date = "2026-01-12"JSD (JavaScript Detection) cannot be used on first page visit—requires HTML page loaded first.
- No CI/CD configured (docs-only repo)
- No linting/formatting (no code to lint)
.opencode/contains plugin config, not project code- Two index locations exist:
SKILL.md(primary) vsdocs/products.md(overview)