Agent skill
microsite-builder
Generates the personalized microsite for one account from a research packet.
Filed under Content and SEO.
From V00nikos/microsite-factory · 4 skill entries · 1 · pushed 2026-09-11
What it does when it runs
Generates the personalized microsite for one account from a research packet. Use whenever a pipeline task requires building, generating, or regenerating a microsite, GTM page, landing page, or outreach page for a target account. Takes the account-researcher JSON packet plus the operator's positioning memory; outputs a single self-contained HTML file with the tracking beacon embedded. Contains the mandatory storytelling spine and design language — always load this skill before writing any microsite HTML, never freestyle a page.
Automated analysis of the skill and the 0 files bundled beside it. A skill’s own description is written to be selected by an agent, so it describes the job and not the dependencies.
- Keys and connectors you must supply
- None found.
- Hosts it reaches
- No third-party host appears in the skill or its bundled files.
- Tool permissions it declares
- No
allowed-toolsin the frontmatter. It only issues instructions, so there is nothing to bound. - Actions present in the files
- None. Instructions only.
Install it
View source on GitHub ↗git clone --depth 1 --filter=blob:none --sparse https://github.com/V00nikos/microsite-factory.git /tmp/microsite-factory git -C /tmp/microsite-factory sparse-checkout set "skills/microsite-builder" mkdir -p ~/.claude/skills/microsite-builder cp -R "/tmp/microsite-factory/skills/microsite-builder/." ~/.claude/skills/microsite-builder/
Picked up without a restart. A project skill of the same name is shadowed by your personal one. For one repository only, swap ~/.claude/skills for .claude/skills. Claude Code docs ↗
The folder is the same in every client that implements the format — 46 of them — so if yours is not above, only the destination changes.
The skill
Source on GitHub ↗Reproduced in full from V00nikos/microsite-factory/blob/05c2a30773cf42f8621435dc35b9deb9882e727c/skills/microsite-builder/SKILL.md, which is licensed MIT (repository). 688 words, 6 headings.
Microsite builder
You build one page per invocation. Inputs: the research packet (JSON), the operator's positioning (from memory: one-liner, proof points, tone rules, forbidden claims), and the design system assignment. Output: ONE self-contained HTML file, no external framework, loads in under 1 second.
Step 1 — choose the angle (storytelling)
Pick exactly one archetype based on the strongest findings (hook_strength)
and the likely_objection:
| Archetype | Use when findings show… |
|---|---|
| cost | funding pressure, efficiency hires, consolidation news |
| speed | aggressive roadmap, competitive launches, eng hiring spikes |
| risk | regulatory vertical, security posture, compliance signals |
| talent | hard-to-fill roles open long, team scaling pains |
| competition | a named rival moved recently |
Log the choice: {"angle": "...", "because_findings": [indices], "objection_addressed": "..."}.
This log is what the operator reviews and regenerates against — the angle IS
the editable surface of this product.
Step 2 — the narrative spine (fixed order, five sections max)
- Their world — hero states a thesis about THEIR business in the first line, built from the top finding. Their company name in text. Not about us.
- Their pressure — 2–3 sourced findings woven into one tension. Every claim carries a visible citation link. Citations are the anti-spam proof.
- The bridge — the operator's product enters ONLY here, framed as the specific answer to the pressure above. Use positioning memory verbatim for claims; never invent capabilities.
- One proof — a single proof point from positioning memory, chosen to match the reader lens (technical proof for CTO, ROI proof for CFO).
- One CTA — named for what happens: "See the 20-minute teardown for {Company}", never "Learn more". One CTA only.
Copy rules: active voice, sentence case, no filler adjectives, the page speaks
about them for the first two-thirds. Echo their_phrase from brand hints once,
naturally. Word budget: 250–400 words total. Dense pages read as brochures.
Step 3 — design language (mandatory)
Derive, don't decorate. The page's identity comes from the TARGET's world
via brand_hints, mapped to one of four fixed design systems:
| System | Register | Display face | Body face | Character |
|---|---|---|---|---|
| ledger | precise/serious (finserv, legal) | Fraunces | Inter | disciplined grid, generous white, one hairline accent in their hue |
| terminal | technical (devtools, infra) | JetBrains Mono | Söhne-like grotesk (fallback: Inter) | mono display, code-block signature, dark-on-light NOT dark theme |
| clinic | calm/clinical (health, edtech) | Source Serif 4 | Source Sans 3 | soft radius, muted palette, spacious line-height |
| signal | bold (consumer-ish B2B, martech) | Space Grotesk | Inter | oversized display type, one saturated accent from their hue |
Load faces from Google Fonts with display=swap; subset to used weights (400/500 only).
One signature element per page — spend all boldness in exactly one place, derived from the research: an inline diagram of THEIR stack, a small interactive before/after of THEIR workflow, a live-feeling counter tied to THEIR metric. Everything else stays quiet. No signature = QA fail.
Banned looks (auto-fail): warm-cream bg + high-contrast serif + terracotta accent; near-black bg + acid green; hairline broadsheet with zero radius and dense columns. These are AI tells. If your draft resembles one, redesign.
Floor (non-negotiable): responsive to 360px, visible keyboard focus,
prefers-reduced-motion respected, semantic headings, single HTML file,
no logo or trademark styling of the target — their name in text only, with a
"Prepared for {Company} by {Operator}" line in the footer and a contact link
for takedown requests.
Step 4 — impressions beacon (hooks tracking)
Embed exactly this instrumentation before </body>, pointing at the fleet
state endpoint (Convex HTTP endpoint or the API server URL passed in config):
<script>
(function(){var e="{BEACON_URL}",a="{ACCOUNT_ID}";
function s(t,d){try{navigator.sendBeacon(e,JSON.stringify({a:a,t:t,d:d||null,ts:Date.now()}))}catch(_){}}
s("view");var f=!1;addEventListener("scroll",function(){if(!f&&scrollY>document.body.scrollHeight*0.5){f=!0;s("scroll50")}},{passive:!0});
document.addEventListener("click",function(ev){var c=ev.target.closest("[data-cta]");if(c)s("cta")});
})();
</script>
Tag the CTA anchor with data-cta. Three events only — view, scroll50, cta.
Do not add fingerprinting, identity capture, or extra trackers; visits are
intent signal, not surveillance.
Output contract
{"html_path": "sites/{account_id}/index.html",
"angle_log": {...},
"design_system": "ledger|terminal|clinic|signal",
"signature_element": "one-line description",
"word_count": 0,
"claims_cited": 0}
Other skills for the same job
Different authors, same problem. Matched on the words in the skill name, across every library in the catalogue except this one.
- microsite by octavehq · 11
Need help setting it up?
This page tells you what microsite-builder does and what it needs. Cheetah builds the agent setup it runs inside: data, CRM, sequencing and the guardrails.
Book a call →The directory stays free. There is nothing gated behind this.