Skip to content

All work

Two people, a team of agents

Two people built Aether's products with agents covering the roles a team would fill, and sales staff make their own decks and videos from a self-serve brief.

Role
Co-founder; design, frontend and AI workflow lead
Team
2 builders; sales staff run the briefs
Timeline
2025 - 2026
Tools
Claude CodeClaude DesignChatGPTGemini APIAgent SkillsFigma

Problem

Two of us built Aether’s products: I handled design and frontend, and my co-founder handled data and API. A product also needs everything around it, which usually means a team: writing, images, industry knowledge, marketing, pitch decks and demos.

Getting AI to produce something was easy. The real problem was getting reliable output to our standard from tools that lose context, then putting that output in the hands of people who would never open a code editor.

Key decisions

I. Give each tool one job

Each tool does the work it is best at, and the design calls stay mine.

Claude Code in VS Code does all repo and codebase work. Claude Design turns brand kits into design systems and generates graphics and pages from them. ChatGPT stays open for writing, because it gives the most human-sounding interface text, user instructions and concept names. Gemini handles image work, such as quick logo and icon mockups.

II. Make CLAUDE.md a map, not a manual

Two small files carry most of the weight: one gives the agent its map, the other holds it to the standard.

CLAUDE.md is loaded into every session, so every line in it costs context. I keep it clean and objective: a sentence or two on the project, then paths such as “Component work” to the document that covers it, so Claude fetches only what the task needs. It ends with the checks that prove the work: lint, typecheck and a successful build.

Standards that a machine can check moved out of the documents and into a lint hook that runs on every edit. The rest stay written down, because not every rule fits a linter: “comments should be short and mean something after this session” is still a judgement call.

III. Package the work so anyone can run it

Attach a Numen folder, say “read the brief,” and Claude takes it from there.

I mock up large brand kits in Figma and feed them to Claude Design, which creates a design system to build from. I spent about a week fine-tuning Aether’s by building Numen, a set of small projects in one clean format. Each folder holds example assets to generate from, fixed assets that never change, and a BRIEF.md with instructions from start to finish.

To make a pitch deck or an animated product demo, someone drags the folder into the chat and says “read the brief.” Claude asks a few plain questions, one step at a time, using the app’s own text boxes, checkboxes and switches, then produces the finished piece. The brief limits the choices and spells out what must not change, so the result stays on brand. Sales staff can run it without a designer.

IV. Borrow the expertise we didn’t have

I added skills to Claude, such as SaaS and B2B marketing, so I can feed in a large concept and get back insights grounded in how the industry works. That let us learn industry concepts and keep every part of the startup moving, including the parts a larger company would hand to a specialist.

V. Put the same care into the product

Agents aren’t only how we work. Zenith uses the Gemini API so a dealer can upload poor-quality photos or odd angles and place the vehicle in a clean parking lot or an empty white garage. It keeps scratches, dents and seat stains in every image, so the listing looks professional and stays accurate, which also helps with liability.

Result

Agents carry the work a team would normally cover, and sales can produce finished decks and videos without waiting on us. Without them, we couldn’t have done half of what we did.

Building two products, from design and frontend to data and API
2people
Each given the one job it does best
4AI tools
Fine-tuning the Aether design system in Claude Design
1week

What I’d do differently

I wrote the standard down before I made it enforceable. Early CLAUDE.md files grew into manuals, and long sessions drifted from them anyway, so time went into restating rules that a lint hook now catches the moment they break. Next time, I’d move every rule a machine can check into tooling on day one, and keep the documents for judgement calls.

I’d also hand the briefs to the people using them sooner. I tuned Numen’s format mostly on my own runs, and someone who has never seen the brand reads a question differently from the person who wrote it.