Build Your Own Brand Kit.
Scaffold an AI-readable brand kit (design system) for yourself or a client. Seven folders, a brand spec, design tokens, and a Claude Skill so every agent in your fleet renders in-brand by default. Built across a half day to a full day.
- A seven-folder brand-kit repo with a BRAND-SPEC, design tokens, a components folder, slide templates, and an assets library. A standard, reusable design-system shape.
- A Claude Skill manifest (SKILL.md) that points any agent at your brand context. Drop a deck request into Claude and the output already uses your colors, your typography, your voice rules.
- A pattern you can sell to clients as a deliverable. The same scaffold ships your personal brand and a paid client engagement. One pattern, two markets.
Build this with Claude.
Hand the pattern off to Claude in one paste. Claude walks you through scaffolding your own brand kit from Step 01, pausing for your confirmation between steps.
How this fits in the OS.
Your CLAUDE.md from Stage 01 (so your agent knows whose brand it is rendering), a GitHub account for the new repo, and a Claude Code skills location (global at ~/.claude/skills/ or per-project at .claude/skills/) so the SKILL.md can be discovered. Optional, but useful: one finished slide deck or one-pager you already like the look of, to anchor the visual rules.
A new private GitHub repo, an Obsidian or markdown editor for the BRAND-SPEC, a CSS file for design tokens (design tokens are reusable CSS variables for your colors, type, and spacing), and a Claude Skill manifest that points agents at the rest. No new tools beyond what the workshop already installed.
Every agent-generated surface inherits the brand by default. The Morning Brief dashboard, your one-pagers, your slide decks, your client proposals, all of it. The brand becomes a layer of the OS, not a thing you reapply by hand on every artifact.
What changes for you.
The artifact is the seven folders. The bigger thing is what shifts internally the first time you ask Claude for a deck and it comes back already on-brand. Three changes, in order of how soon you'll feel them:
- You stop redoing visual decisions on every artifact. The colors are picked. The type stack is picked. The voice rules are written down. The agent reads them once, every surface inherits.
- You start treating your brand as code. A new accent color is a one-line change in
tokens/colors_and_type.css, not a hunt through fifteen documents. The brand stops being a folder of files and starts being a system you can update in one place. - You earn a deliverable you can sell. The same scaffold ships your personal brand and a paid client engagement. Once you've built it once for yourself, you can build it again for a client in an afternoon.
This is the moment the brand stops being something you maintain and starts being something your fleet maintains for you.
The two reasons to do this.
Most students land on this card for one of two reasons. Either reason is the right reason. The pattern is identical.
- Your own brand becomes consistent across every agent-generated surface. Your portfolio site, your one-pagers, your slide decks, your social posts, your Morning Brief dashboard, all of them inherit the same colors, typography, and voice. You stop being the bottleneck for "make this on-brand."
- You can sell this to clients as a deliverable. Small businesses and solo operators have visual identity that lives in their head or in a Canva file. Once you've shipped your own, you can scaffold one for a client in an afternoon. The deliverable is a private GitHub repo, a brand spec, a token file, and a SKILL.md their team and their agents can both read going forward.
Either way, the scaffold is the same. The difference is whose voice gets written into the BRAND-SPEC.
The seven-folder shape.
Every good brand kit follows the same skeleton. The shape below is the standard one, and your repo has it too. The contents are yours, the structure is the reusable part.
The order matters. The BRAND-SPEC is written first because every other folder is downstream of the decisions in it. Tokens are second because the components and slides reference them. SKILL.md is third because it needs the spec and the tokens to point at. Assets and slides come last because they consume everything above.
You could collapse this into a single brand spec and a token file. The seven-folder shape exists because each folder has a different audience. The BRAND-SPEC is for humans. The tokens are for code. The components are for designers. The preview folder is for sanity-checking. The assets are for slides and social. The slide templates are for decks. The SKILL.md is the bridge that makes all of it legible to an agent in one read.
The AI-native unlock.
The difference between a brand kit and an agent-readable brand kit is the SKILL.md. Without it, your repo is a static asset library, useful when a human opens it. With it, every agent in your fleet can read the brand context in one shot and render in-brand by default.
| Static design system | Agent-readable design system |
|---|---|
| Author surface | Human opens a folder, reads PDFs, copies hex codes by hand. |
| Agent surface | Claude reads SKILL.md, follows the file order, internalizes the brand in one pass. |
| First artifact | Already on-brand. Colors, type, voice rules applied without you naming them in the prompt. |
| Update flow | Change the spec, change the tokens. Every future agent run inherits the change automatically. |
The SKILL.md is short on purpose. A few hundred words. It tells the agent the file order to read, names the non-negotiables (no em dashes, dark backgrounds only, font stack), and points at the components folder for shape patterns. The agent does the rest. If your SKILL.md grows past a thousand words, it has stopped being a manifest and started being documentation. Move the depth into BRAND-SPEC.md and trim the SKILL.md back down. The agent reads the SKILL first. Everything else gets read on demand.
A good SKILL.md is short and names the file-read order explicitly. Keep yours to the four sections in Step 04 below. The shape is small. The leverage is large.
Before you start.
Three things specific to this build
- A new private GitHub repo for the brand kit. Name it after your brand or your client (for example,
your-name-studioorclient-name-studio). - A markdown editor you like (Obsidian, VS Code, anything that renders headings cleanly). The BRAND-SPEC is a long markdown file, you'll spend an hour or two in it.
- A Claude Code skills location for the SKILL.md. Global at
~/.claude/skills/if you want every project to inherit the brand, or per-project at.claude/skills/if the kit is client-specific.
The build.
Seven steps. The BRAND-SPEC comes before tokens because the tokens are downstream of the visual decisions in the spec. The SKILL.md comes after both because it points at them. Each step has a duration and a recovery line.
The agent does most of the typing. Your job is the decisions. Voice rules, palette picks, the no-em-dash equivalent for your brand. Claude handles the file creation, the directory structure, and the boilerplate.
Create the repo and scaffold the seven folders
10 minCreate a new private GitHub repo. Clone it locally. Then ask Claude to scaffold the seven folders.
In my new local brand-kit repo, scaffold this seven-folder structure: a design-system/ folder containing BRAND-SPEC.md, SKILL.md, tokens/, components/, and preview/; an assets/ folder with subfolders for logos, photography, fonts, and icons; and a slides/templates/ folder. Create empty placeholder files in each so the structure is visible. Add a README at the root that explains what each folder is for.
Write the BRAND-SPEC.md
60 to 90 minThis is the longest step and the most important one. The BRAND-SPEC is where your voice, tone, and visual rules get written down. The AI Build Lab's spec is your reference for shape, not content.
The spec lives in roughly four sections. Use them as headings:
- Content fundamentals. Tone (what's your equivalent of "candid, builder-forward, a little punk"?), voice rules (what's your equivalent of "no em dashes"?), pronouns ("we" vs "I", "you" vs "users"), and three to five phrase examples that sound exactly like the brand.
- Visual foundations. Palette (primary plus two or three secondary accents), typography stack (display, body, mono if you use one), and the rules for backgrounds, borders, shadows, corner radii.
- Iconography. Which icon library (Lucide is a good default), stroke weight, size range, and whether emoji are allowed in headlines (probably not).
- What not to do. The anti-pattern list. The phrases your brand never uses, the visual moves it never makes. This section is shorter than the rest, and it's the one that prevents 80% of off-brand drift.
The agent does this for you. Hand Claude the AI Build Lab BRAND-SPEC as a structural reference and have it ask you each section's questions in sequence. You answer, Claude drafts, you edit. Two passes usually gets you to a usable v1.
Read aibuild-lab/the-studio/design-system/BRAND-SPEC.md as a structural reference (not the content, the shape). Then ask me each section's questions in order: tone and voice rules first, then visual foundations, then iconography, then what-not-to-do. Draft my answers into design-system/BRAND-SPEC.md as we go. Pause after each section so I can edit before we move on.
Define your design tokens
30 minDesign tokens are reusable CSS variables for your colors, type stack, and spacing. The file is small (about 150 lines), and everything downstream references it.
Open aibuild-lab/the-studio/design-system/tokens/colors_and_type.css as the shape reference. Your file has the same sections:
- Font imports. Google Fonts at the top, local fallbacks below. Three font families is the maximum (display, body, mono).
- Neutrals. Your background scale, from the deepest background up through borders. Five steps is usually right.
- Brand accents. Your primary, then two or three secondaries. Each accent gets a
-dimvariant at low alpha for backgrounds. - Spacing and radii. A small scale (8px, 16px, 24px, 32px, 48px) and a small set of corner radii.
Paste the file into design-system/tokens/colors_and_type.css. Have Claude swap the AI Build Lab values for yours.
Read aibuild-lab/the-studio/design-system/tokens/colors_and_type.css as the structural reference. Create my design-system/tokens/colors_and_type.css with the same sections (font imports, neutrals, brand accents with dim variants, spacing and radii), but use the palette, type stack, and spacing scale we decided in BRAND-SPEC.md. Inline comments where the choice came from the spec.
Write the SKILL.md manifest
20 minThis is the load-bearing step. The SKILL.md is what makes the brand kit AI-readable. Open aibuild-lab/the-studio/design-system/SKILL.md alongside your draft. Yours is the same shape, with your name and your file paths.
The manifest has four parts:
- Frontmatter. A short
name(kebab-case), a one-sentencedescriptionthat tells the agent when to invoke the skill, anduser-invocable: trueso you can call it by slash command. - The file-read order. Numbered. BRAND-SPEC first, tokens second, components third, preview fourth, assets fifth, slides last. Each line names the file and one sentence on what's in it.
- Brand non-negotiables. A short bullet list of the hard rules. Voice rules, palette rules, type rules. This is the cheat sheet the agent uses on every render.
- Workflow tip. One paragraph telling the agent how to choose between matching an existing component or building from tokens. The AI Build Lab's says "match the closest shipped page first, then adapt." Yours says whatever the equivalent is for your work.
Keep it short. A few hundred words. If it grows past a thousand, the depth belongs in BRAND-SPEC.md. The SKILL is the manifest, not the documentation.
Read aibuild-lab/the-studio/design-system/SKILL.md as the structural reference. Draft my design-system/SKILL.md with the same four sections (frontmatter, file-read order, brand non-negotiables, workflow tip), pulling the non-negotiables from my BRAND-SPEC.md and the file paths from my repo. Keep it under 400 words. If a section wants more depth, push the depth back into BRAND-SPEC.md.
Install the SKILL so every agent reads it
10 minThe SKILL.md is only useful if the agent can find it. Two install options:
- Global install. Copy or symlink the SKILL.md into
~/.claude/skills/your-brand-design/. Every Claude Code session on your computer inherits it. This is what you want for your personal brand. - Per-project install. Drop it at
.claude/skills/client-brand-design/inside the specific project. Only sessions opened in that project inherit it. This is what you want for a client engagement, so client A's brand doesn't leak into client B's deck.
Install my brand-kit SKILL.md so Claude can discover it. For my personal brand, symlink design-system/SKILL.md into ~/.claude/skills/your-brand-design/. For a client brand, copy it into .claude/skills/client-brand-design/ inside the client project. Tell me which install you ran and confirm the slash command shows up when I type / in Claude Code.
~/.claude/skills/ and confirm the manifest frontmatter parses cleanly. Missing name or description kills the discovery.
Test the loop, ask for something on-brand
15 minThis is the moment the kit becomes real. Ask Claude to draft a small artifact (a title slide, a one-pager hero, a social post) and verify the output follows your spec without you naming the rules in the prompt.
Using my brand-kit skill, draft a title slide and a hero section for a one-pager. The headline is "First quarter recap." Do not ask me about colors or type. Pull everything from my brand-kit. Output as static HTML I can open in a browser.
Open the output. Check three things:
- The colors match your token file. No off-brand hex values snuck in.
- The font stack matches your BRAND-SPEC. Display font on the headline, body font everywhere else.
- The voice rules held. No em dashes if your spec banned them, no emoji in headlines if your spec banned those.
If any of the three failed, the SKILL.md isn't tight enough. Go back to Step 04, name the failed rule explicitly in the non-negotiables, and re-run the test.
design-system/tokens/colors_and_type.css, never hardcode hex values" line in the non-negotiables.
Extend to slides or new surfaces (optional, 8D)
~1 to 2 hoursOnce the four primary files (BRAND-SPEC, tokens, SKILL, one rendered artifact) are working, the 8D extension is to populate the rest. Three places to spend the extra hours:
- Slide templates. Build a title slide, a stats slide, a quote slide, a section divider, and a close slide. Five templates cover 80% of decks. The AI Build Lab's
slides/templates/has fourteen if you want a richer reference. - Components folder. A handful of reference HTML files (a hero, a card, a CTA button, a badge). Each one becomes a shape Claude can copy and adapt instead of building from scratch.
- Preview folder. One standalone HTML file per pattern so you can open a single page and see every component rendered. Useful for sanity-checking when you change a token value.
None of these block the kit being useful. The kit ships at Step 06. The 8D extensions make it faster every time you reach for it.
When it works.
You'll know the brand kit is live when three things hold without you doing anything:
- You ask Claude for a slide deck, a one-pager, a social post, an email signature, anything. The first draft comes back on-brand without you naming the rules in the prompt.
- You change a token value and the next render picks it up. Swap the primary accent in
tokens/colors_and_type.css, ask for the same deck again, every accent in the new deck moved. - A new agent in your fleet (a sub-agent, a research agent, a different CLI session) inherits the brand without you re-explaining it. The SKILL.md is doing the work. You stopped being the bottleneck.
Run the loop on three different prompts. The third clean render is when the pattern is yours. Now apply it to a client. The afternoon you spend on a client brand kit pays for the half day you spent on yours.
If you get stuck.
Common failure modes, ranked by how often they bite the first time through:
- The SKILL.md grew past a thousand words and Claude stopped using it well. A manifest that long stops being a manifest. Trim it back to the four short sections. Push the depth into BRAND-SPEC.md. The SKILL is the index, not the encyclopedia.
- The brand voice rules contradict each other. "Sentence case for headings" plus a phrase example with title case in it. "No emoji in headlines" plus a hero example with a rocket in it. Claude will follow one or the other, not both. Walk through the spec one more pass and resolve every contradiction. A rule with no exception is worth ten rules with carve-outs.
- Tokens don't propagate to a downstream file. The file isn't linking
tokens/colors_and_type.cssat the top. Have Claude grep for hardcoded hex values across the repo and replace them with token references. Add a line to the SKILL.md non-negotiables banning hardcoded hex. - The skill doesn't appear in Claude Code. Either the install location is wrong, the frontmatter is malformed, or the session hasn't been restarted since install. Walk through Step 05 in order.
- Two clients' brands leak into each other's decks. You installed both SKILLs globally. Move one to per-project at
.claude/skills/inside the client repo. Global skills inherit everywhere, per-project skills don't. - The kit feels like a static asset library, not an agent-readable system. The SKILL.md isn't doing enough. Read the AI Build Lab's SKILL.md side-by-side with yours. Theirs is short, names the file-read order explicitly, and lists the non-negotiables. If yours is longer and vaguer, you wrote documentation where a manifest belongs.
Still stuck? Post a screenshot, the prompt you ran, and what Claude returned in the workshop Slack. Someone on the team has hit the same thing.
Where to go next.
The brand kit is a layer of the OS. The natural next moves apply the layer to surfaces you already shipped, or to new ones.