agentleFS
ImYourBoyRoyImYourBoyRoy/Portable_Web_toolkit/skills/site-starter/SKILL.md

site-starter

Skill2 starsChanged 4 months agoMITView on GitHub

Bootstraps a brand-new Astro + Cloudflare client site from Portable_Web_toolkit site-starter templates. Use when creating a new client project folder, copying package.json/wrangler.toml, linking Web_Toolkit, or choosing Workers vs Pages deploy target.

  • Reads credentials

The file

We split this skill into the rules it gives an agent

6 rules. About 0 are common, 5 are distinctive, and 1 is very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈5

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use the repository's current Node version on Windows, macOS, or Linux.

    line 17
  2. Distinctive:

    Prefer Workers when the site will collect form submissions or need server APIs.

    line 34
  3. Very specific:

    After choosing a target, copy .env.example from site-starter/ (sections A–D: required APIs, agent+user naming, recommended PostHog+GA4, …

    line 36
  4. Distinctive:

    Create the target only after the plan is accepted, then move the staged scaffold into the empty target.

    line 46
  5. Distinctive:

    Create the site profile, run read-only readiness, and review its report.

    line 59
  6. Distinctive:

    Never overwrite an existing project from a starter template

    line 81

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Site Starter

Creates a new client site outside the toolkit repo. Never use Portable_Web_toolkit root as the website.

Preflight

Resolve applicable instructions for the parent workspace and intended client repository. Select an exact target path, inspect it, and preserve unrelated work. Refuse a non-empty target unless the user separately approves every collision and its recovery plan.

Use the repository's current Node version on Windows, macOS, or Linux. Prefer portable Node commands; adapt only path and shell quoting to the active host.

Workers vs Pages

Always ask the user before scaffolding which deploy target they want:

WorkersPages (static)
Ask whenNeed SSR, API routes, built-in forms, Turnstile/server handlers, KV/D1/R2/cron, or other edge logicPure marketing/static site with no server runtime
Astro outputoutput: 'server'output: 'static'
Packagesite-starter/workers.package.json → package.jsonsite-starter/pages.package.json → package.json
Wranglerworkers.wrangler.toml → wrangler.tomlpages.wrangler.toml → wrangler.toml
Astro configastro.config.workers.example.mjs → astro.config.mjsastro.config.pages.example.mjs → astro.config.mjs
Profile"deployTarget": "workers""deployTarget": "pages"
Discovery doctor./dist/client./dist

Prefer Workers when the site will collect form submissions or need server APIs. Prefer Pages static only when the user confirms a static-only site.

After choosing a target, copy .env.example from site-starter/ (sections A–D: required APIs, agent+user naming, recommended PostHog+GA4, optional features). User pastes section A secrets; agent proposes section B with the user; explain analytics early; do not require Porkbun.

Portable scaffold transaction

  1. Resolve the toolkit root, exact empty site target, deploy target, and source template files.
  2. Produce a file plan for package.json, wrangler.toml, astro.config.mjs, .env.example, and src/styles/.
  3. Stage those files outside the target and verify their source names and expected destination paths.
  4. Create the target only after the plan is accepted, then move the staged scaffold into the empty target. Use the agent's ordinary filesystem tools or native host commands; do not present Bash syntax as cross-platform.
  5. Link Web_Toolkit with:
node "<toolkit-root>/scripts/link-web-toolkit.mjs" --toolkit-path "<toolkit-root>/Web_Toolkit" --project-root "<site-root>"
  1. Copy and customize discovery templates according to Web_Toolkit/templates/discovery/README.md.
  2. Obtain separate authorization before dependency installation or project-init apply-safe.
  3. Create the site profile, run read-only readiness, and review its report.

npm scripts → Web_Toolkit

Starter package.json calls toolkit CLIs directly (./Web_Toolkit/...). No local scripts/ copy for headers, cache, wrangler check, or readiness.

Discovery layer

Copy from Web_Toolkit/templates/discovery/ per README: robots, sitemap, llms, humans, security.txt, content/search APIs, Schema.astro, middleware. Customize site-config.ts — no client-specific data in toolkit source.

After scaffold

  1. BRAND_GUIDE.md + *.site-profile.json
  2. .env from .env.example (never commit)
  3. npm run build → npm run discovery:doctor
  4. site-readiness → portable-web-toolkit for deploy

Rules

  • Secrets in client .env only
  • Link Web_Toolkit at project root before running npm scripts
  • Structural tokens.css only — visual identity comes from each client's Brand Guide
  • Never overwrite an existing project from a starter template

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.