Scaffold
Bootstrap a new web project on a strictly opinionated Cloudflare Workers stack — Next.js 16 or Astro 6, TypeScript strict, pnpm, Biome, Tailwind. No fallbacks: no Vercel/Netlify, no ESLint/Prettier, no swap. Skip if the user wants any of these. Use when the user says "start a new project", "bootstrap", "init", "scaffold", "create a new site", or is working in an empty directory and wants production-ready foundations.From its SKILL.md
npx -y skills add coroboros/agent-skills --skill scaffoldAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
3 things to look at
- reads credentialsReads from 1 credential source: `.dev.vars`.
- 3 stars3 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
- runs commandsInstructs the agent to run 3 commands, including `bash "$SKILL_DIR"/scripts/preflight.sh {project_dir}` and 2 more.
What its file declares
Copied from the file, not written here
The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
4.7 KB, 919 tokens by cl100k_base, as published. Nobody here has run it
Scaffold
Bootstrap $ARGUMENTS with the opinionated stack.
The deterministic work — environment preflight, template overlay, package.json merge, post-scaffold verification — happens in three bundled scripts. This skill parses $ARGUMENTS, runs the framework CLI, invokes the scripts in order, and turns their RESULT: lines into a concise report.
Available scaffolds
| Scaffold | Framework | Infra | Stack highlights |
|---|---|---|---|
next-cloudflare | Next.js 16 (App Router) | Cloudflare Workers via OpenNext | Drizzle + Neon, Better-Auth, shadcn/ui, Vitest + Playwright |
astro-cloudflare | Astro 6 (SSG-first, islands) | Cloudflare Workers | Zero JS by default, Content Collections, SEO rules |
Shared across all scaffolds: TypeScript strict, pnpm, Biome (no ESLint/Prettier), Tailwind CSS, .node-version 22.
If the user does not specify a scaffold or is ambiguous, show this table and ask which one.
Workflow
$SKILL_DIR = this skill's folder — ${CLAUDE_SKILL_DIR} in Claude Code, the directory containing this SKILL.md elsewhere.
1. Parse arguments
Extract {scaffold} and {project_name} from $ARGUMENTS. Aliases: next-cf → next-cloudflare, astro-cf → astro-cloudflare. Missing {scaffold} → show the Available scaffolds table and ask. Missing {project_name} → derive from cwd or ask. {project_dir} defaults to ..
2. Preflight
bash "$SKILL_DIR"/scripts/preflight.sh {project_dir} → check RESULT: lines. Stop-conditions: pnpm=no → suggest corepack enable && corepack prepare pnpm@latest --activate; node=too-old → ask user to upgrade; target=occupied → confirm before proceeding; ok=true → continue.
3. Install
Per-scaffold steps (framework CLI, conflict removal, dependency installs, CSS-token setup): references/setup-{scaffold}.md. Then apply the shared overlay:
bash "$SKILL_DIR"/scripts/overlay_templates.sh {scaffold} {project_name} {project_dir}
Writes opinionated configs (biome.json, .gitignore, .worktreeinclude, CLAUDE.md, wrangler.jsonc, framework configs), merges package.json scripts, sets "type": "module" / "private": true. Idempotent — skips existing files unless --force; ok=partial → show the skipped list, ask whether to rerun or keep partial. Requires jq.
4. Verify and summarize
bash "$SKILL_DIR"/scripts/verify_scaffold.sh {project_dir} runs pnpm biome check --write . and pnpm typecheck. On failure, surface the first 60 diagnostic lines + a fix; do not mark the scaffold complete. On success, report files created and next steps: configure .dev.vars, run /award-design <brief>, then /design-system audit DESIGN.md, finally pnpm dev.
Rules
- NEVER install ESLint or Prettier — Biome handles everything.
- NEVER use CommonJS — ES modules only (
"type": "module"). - ALWAYS use pnpm as package manager.
target=occupiedis a warning, not a hard stop — ask before proceeding.- Do NOT create
README.md— the user writes it. - Do NOT initialize git — the user manages their own git workflow.
- For project-level decisions the scaffold deliberately does not make (i18n, dual auth, search, rich text, OG, MT, theme persistence, cache invalidation, admin uploads, CRM sync), read
"$SKILL_DIR"/references/decisions.mdand surface the relevant ones to the user after the summary report.
astro-cloudflare specifics
When scaffolding astro-cloudflare or later editing its astro.config.mjs / wrangler.jsonc, read "$SKILL_DIR"/references/astro-cloudflare-notes.md — covers imageService, assets.directory, the pre-build shim, and the Sharp pitfall.
What ships with it: 20 files
36.7 KB alongside SKILL.md, 3 of them executable
references/
- astro-cloudflare-notes.md1.3 KB
- decisions.md5.5 KB
- setup-astro-cloudflare.md1.3 KB
- setup-next-cloudflare.md1.3 KB
scripts/
- overlay_templates.shruns4.9 KB
- preflight.shruns1.8 KB
- verify_scaffold.shruns1.6 KB
templates/
- astro-cloudflare/astro.config.mjs.template397 B
- astro-cloudflare/CLAUDE.md3.4 KB
- astro-cloudflare/scripts.json387 B
- astro-cloudflare/seo.md485 B
- astro-cloudflare/wrangler.jsonc.template358 B
- next-cloudflare/CLAUDE.md5.7 KB
- next-cloudflare/open-next.config.ts.template823 B
- next-cloudflare/scripts.json832 B
- next-cloudflare/wrangler.jsonc.template2.5 KB
- shared/biome.json.template1.1 KB
- shared/cloudflare-tooling.md2.3 KB
- shared/gitignore414 B
- shared/worktreeinclude435 B
Gives 0 of the 12 instructions most project setup skills give in 919 tokens
Counted across 1,553 of the 3,091 authors here whose files we hold, read 2026-09-06
- Write the configuration filein 36 of 1553
- Create the directory structurein 35 of 1553, across 33 files
- Verify the setupin 31 of 1553, across 28 files
- Run the setup scriptin 30 of 1553, across 29 files
- Pre-determine the required sample sizein 29 of 1553, across 12 files
- Check if the configuration already existsin 29 of 1553
- Document every testin 26 of 1553, across 10 files
- Start with a hypothesisin 26 of 1553, across 11 files
- Ask one question at a timein 22 of 1553
- Test a single variable per testin 21 of 1553, across 9 files
- Read product marketing context before asking questionsin 19 of 1553, across 8 files
- Do not peek and stop earlyin 18 of 1553, across 7 files
Said here and by no other author read
- Run the framework CLI
- Invoke the scripts in order
- Use Biome for linting and formatting
- Use pnpm
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.