Site forge
Build a distinctive, production-grade website (single-page or multi-page) — and an optional Remotion promo video — for any business, product, or person, then deploy it free. Use whenever the user wants to build, design, mock up, prototype, or pitch a website, landing page, demo/spec site, or portfolio — for a local business, a product launch, cold-outreach demos, or themselves — even if they never say "site-forge". Adapts a unique aesthetic and structure to each brief (never a template). Two modes: auto (fast, autonomous, free agent-made media) and full (interactive, best quality, Gemini + Veo media).From its SKILL.md
npx -y skills add adamjali/claude-skills --skill site-forgeAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
3 things to look at
- skips confirmationTells the agent to proceed without asking first, 1 time: "After the one plan/approval gate (Phase 3), run to completion without asking".
- 1 stars1 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 6 commands, including `ls ~/.claude/skills` and 5 more.
SKILL.md
11.0 KB, ~2.6k tokens by cl100k_base, as published. Nobody here has run it
Site Forge
<objective> Turn a one-line brief into a finished, deployed, award-quality website. The output is a self-contained site with no build step on a CDN stack — a single `index.html` for a one-pager, or a multi-page set that shares one byte-identical shell (head, nav, footer, scripts) — optionally paired with a Remotion promo video. The rule that makes this worth running: **every site is designed fresh for its brief** — a plumber's one-pager and a SaaS launch must look nothing alike (different palette, fonts, layout, sections, motion). The references here are a **capability library you draw from**, never a checklist you fill in. Start from a clean, fast, responsive floor and add only what the brief earns; the references are a starting point, not a ceiling — exceed them when the brief calls for it. </objective><execution_context> Phase 0 resolves the mode:
- auto (fast): Do as much as possible yourself. After the one plan/approval gate (Phase 3), run to completion without asking. Use only media you can make yourself for free (jina; MCP/Higgsfield if present). If a step blocks, needs interaction, or fails — skip it, keep going, list it under "Skipped / upgrade later" at the end. Bias to shipping.
- full (best quality): Interactive. Ask whenever a choice meaningfully changes the result, and use the best free media even when it needs the user (Google/Gemini for images, Veo 3.1 Fast in Flow for video — hand them exact prompts, they generate, drop the files). A blocked step → ask them to step in.
Both modes:
- 🟢 Auto: explore the environment, design, write code, extract frames, run ffmpeg, local-preview, and deploy after approval.
- 🟡 One mandatory gate: the Phase 3 plan (what runs, installs, spends credits, needs the user) must be approved before building — in both modes.
- 🔴 Never: invent fake credentials/keys; publish claims the user flagged as unverified without a disclaimer; enter the user's secrets into forms. </execution_context>
Single-page vs multi-page. A one-pager ships as a single index.html. A brief
with distinct audiences or real depth (a business site with patient / physician /
pricing / about sections, a marketing site with a Science page) earns a multi-page
set instead — separate *.html pages sharing one chrome. With no build step the
shared blocks are hand-copied, so drift is a real bug: keep the <head> (incl.
the no-FOUC theme snippet), nav, footer, and <script> tags byte-identical across
every page, and verify by hashing them before deploy — a page that quietly diverges
(different fonts, a missing toggle, a dead link) is the classic failure. Give each
page its own self-referential canonical/og:url + <title>/description, emit a
sitemap.xml + robots.txt, and noindex any private/app mockup pages. If the page
count or shared-block size makes hand-copying fragile, a tiny include step (Node
concat, or Eleventy/Astro) is a fair trade — but only when the brief earns it;
default to no-build.
</phase>
Reference map (read on demand — do NOT preload all of these)
| Need | File |
|---|---|
| GSAP+Lenis wiring, reduced-motion, CDN/SRI | references/stack-and-wiring.md |
| Scroll scrub (frames), before/after, progress bar + back-to-top ring, reveals, perf rules | references/scroll-effects.md |
| Canvas pseudo-3D (no bundler, default) + Three.js (capability-gated) | references/interactive-3d.md |
| Carousel, video player, counters, Netlify Forms | references/components.md |
| frontend-design — full skill, verbatim (offline fallback) | references/frontend-design.md |
| Theme system, fonts, deriving a unique look | references/aesthetics.md |
| AI image/video gen (auto vs full), free-vs-paid | references/ai-media.md |
| Image handling, height:auto fix, ffmpeg crop/scale | references/images.md |
| Remotion VO→captions→mix→render→stitch, macOS fix | references/remotion-video.md |
| Bug checklist before shipping | references/quality-checklist.md |
| Netlify deploy, Forms API, rename | references/deploy.md |
This is a toolkit, not a sequence. Use what the brief earns; ignore the rest.
<error_handling>
- Missing skill/tool →
autofalls back to the baked-in reference and notes it;fulloffers to install or asks. - Install fails / needs interaction →
autoskips + surfaces;fullasks. - macOS < 15 Remotion render abort → sequence-render + ffmpeg-stitch path
(
references/remotion-video.md), never the direct mp4 mux. - AI media unavailable / out of credits →
autoships image-only + flags upgrade;fullroutes to Gemini/Flow. - Netlify form not detected → set
ignore_html_forms:falsevia API + redeploy (references/deploy.md). </error_handling>
<success_criteria>
- Design is unique to the brief — not a reuse of a prior site's look.
- frontend-design applied (invoked, or its principles via aesthetics.md).
- Self-contained site (one index.html, or a multi-page set sharing byte-identical chrome); console-clean; mobile passes.
- Only brief-earned capabilities included (no gratuitous effects).
- Plan approved before build (both modes).
- Deployed; live URL reported;
autolists any skips/upgrades. </success_criteria>
What ships with it: 46 files
470.3 KB alongside SKILL.md, 16 of them executable
.claude-plugin/
- plugin.json502 B
assets/
evals/
- trigger-evals.json2.5 KB
references/
- aesthetics.md3.9 KB
- ai-media.md8.1 KB
- cms-options.md5.5 KB
- components.md52.2 KB
- deploy.md15.5 KB
- design-profiles.md7.4 KB
- design-stack.md13.9 KB
- frontend-design.md8.4 KB
- images.md6.4 KB
- interactive-3d.md24.1 KB
- page-composition.md24.8 KB
- profile-creative-portfolio.md12.8 KB
- profile-personal-agency.md2.6 KB
- quality-checklist.md65.4 KB
- reference-sites.md11.9 KB
- remotion-video.md11.9 KB
- scroll-effects.md12.5 KB
- scroll-performance.md12.1 KB
- seo-security-audit.md5.3 KB
- stack-and-wiring.md7.3 KB
- svg-line-work.md9.9 KB
- twilio-a2p-10dlc.md6.6 KB
scripts/
- audit-seo.pyruns7.6 KB
- build-captions.pyruns1.9 KB
- check-crops.pyruns3.6 KB
- check-shaders.jsruns2.8 KB
- colour-system.pyruns5.9 KB
- deploy-netlify.shruns2.5 KB
- extract-frames.shruns867 B
- hero-scrim.pyruns3.0 KB
6 more files not listed here. See all 46 in the repository.