Slide 1 — Design-as-Code and the Tool Landscape
Welcome to Module 5. So far this course has been about practice — the loop, the brief, the harness. This module is about the ground all of that stands on: the formats your design work lives in, and the tools that can reach them. We will start with the property that decides everything — whether the artifact is diffable text or an opaque binary — then compare the four agent platforms and the connected canvases honestly, including prices and limits. And we will finish with a decision path for picking a starting stack, plus a clear-eyed look at what migrating an existing system actually involves. The tools will change. The way you choose between them does not have to.
Slide 2 — The artifact decides what the agent can do
Here is the question to ask before comparing any tools: can the agent open the file your design actually lives in? Agents work on text. They read it, change it precisely, and show you the change. So the design-as-code move is to let decisions live as text — token JSON, generated CSS variables, a DESIGN.md — and increasingly to let the surfaces live as text too: .pen and .op canvas files, HTML, component code, SVG. When the source of truth is a binary only one app can open, the agent improvises the missing decisions, and you spend review correcting work that was never grounded in your system. Where the design lives decides what the agent can do. Everything else in this module follows from that.
Slide 3 — Why binary files block agents
What actually breaks with a binary design file? Three things. The agent cannot read it — it sees an exported picture or a partial API copy, never the artifact. It cannot edit it precisely — every change goes through a translation layer where values get re-typed and drift. And nobody can review it honestly — git only knows that a binary changed, so review collapses to looks fine to me. Make the artifact text and all of that comes back: line-level diffs, blame, revert, CI checks. In the worked example from this course's source material, changing one semantic token produced a two-line diff and the components followed automatically. One caveat: not every text diff is readable. A forty-node layout change still gets reviewed by screenshot. The decisions, though — tokens, variables, components — those diff like sentences.
Slide 4 — The design-as-code stack
Here is the whole module in one picture. At the base: diffable design artifacts — .pen and .op files, HTML and components, token JSON, design docs — text that lives in your repository. Above them: the agent platforms — Claude Code, Codex CLI, OpenCode, Gemini CLI — reading and editing those files directly, so every change is a reviewable diff. The bridge layer is the connected canvases and MCP servers — Paper, Pencil, OpenPencil, Open Design, Figma's MCP — giving agents a visual surface to read and write through one shared protocol. And at the top, the outputs: prototypes, production UI, decks, audits. Read it bottom-up when you choose tools and top-down when you work. The base is where your investment belongs, because it is the layer that survives when anything above it changes.
Slide 5 — Agent platforms compared, as of June 2026
Here are the four platforms on the dimensions that matter. First, what is identical: all four read an instruction file, all four support skills, all four speak MCP — which is exactly why your harness ports and the choice stays reversible. The differences are operational. Claude Code has the richest skills and MCP ecosystem, on a subscription with usage windows. Codex CLI has the clearest sandbox model and cloud sandbox tasks, metered as token credits inside ChatGPT plans. OpenCode is open source with seventy-five-plus model providers — maximum flexibility, and the cost and security decisions become yours. Gemini CLI has huge context and a free tier, and is mid-transition to Antigravity, which is your reminder that vendors retire tools. Every price here carries a date. Re-check it before you budget anything.
Slide 6 — Canvases and formats: the diffability test
Now the canvases, run through the diffability test. Paper makes the canvas HTML and CSS — the artifact is already markup — with a local MCP server of about twenty tools; the document lives in Paper's cloud, so review uses screenshots rather than diffs. Pencil and OpenPencil keep the canvas in your repository as .pen and .op JSON files — diffable, git-trackable, agent-editable through MCP; one proprietary and free during early access, one open source with concurrent agent teams. Open Design wraps the agents you already run with a library of skills and design systems. Huashu Design ships an entire design tool as a single skill file. And Figma: real MCP server, genuinely useful, but the artifact stays in its cloud behind an API. The pattern is consistent — the closer the design is to text in your repo, the more an agent can honestly do with it.
Slide 7 — MCP in one slide
MCP — the Model Context Protocol — is how an agent reaches tools it does not contain. A server announces a few named tools: give me this frame's variables, take a screenshot, write this HTML back. The agent calls them mid-conversation and the results land in its context. Local servers run on your machine, inside Paper or Pencil or a browser driver; remote ones, like Figma's, live at a URL behind OAuth. The same server works on all four agent platforms — only the config syntax changes. And it is not one vendor's plugin system: the protocol sits under neutral governance with an official registry. What it removes is the copy-paste tax — exported PNGs and re-typed hex values. What it requires is the same hygiene as any dependency: official servers first, write access behind permission prompts.
Slide 8 — Where Figma still fits, and where it does not
So where does Figma fit? Honestly: it still wins at the things it has spent a decade building — multiplayer collaboration with non-technical people, mature component tooling, and being where your stakeholders already are. And it is moving toward this stack, with an official MCP server that can now write, and announced token export. What has not changed is the architecture: the file lives in Figma's cloud, changes are not diffs, and agents work on an API copy of the decision rather than the decision itself. The pragmatic answer for most teams is both, with tokens as the bridge — decisions in DTCG JSON, consumed by Figma variables on one side and the codebase on the other. Do not rip out a real collaboration surface to satisfy a diagram. And do not pretend an agent can fully work on a file it cannot open.
Slide 9 — Cost models in plain terms
What does this cost? The sticker prices have converged: entry tiers around twenty dollars, daily-use tiers around a hundred, all-day tiers around two hundred — figures dated June 2026, so check the pricing pages before you decide anything. The real difference is metering. Claude's subscription windows fail by making you wait when a heavy day exhausts the allowance. Credit metering on Codex and Google never stalls, but a screenshot-heavy review day costs several normal days. Bring-your-own-key on OpenCode tracks usage exactly — and tracking it becomes someone's job. The canvases add their own line: Paper has a capped free tier and a Pro plan, Pencil is free during early access, Figma's MCP pricing lands after beta. Pick the failure mode you can manage, and measure one real week before upgrading.
Slide 10 — Choosing a starting stack: a decision path, not a verdict
How do you actually choose? Five questions, in order. What does the team already pay for — because the agent inside an existing plan is the cheapest one to evaluate. What are the safety requirements — client work and regulated environments push you toward the platforms with real sandboxing. What is the deliverable — marketing pages suit an HTML-native canvas, product UI suits a repo-resident design file, an existing Figma system suits its MCP server plus tokens. How much model and licensing flexibility do you need — open source buys freedom and hands you the cost and security work. And how exposed are you to churn — assume something in your stack changes terms within a year. Then the footer, which matters most: keep the artifacts and the harness in open formats. That is what makes every one of these answers reversible, and a reversible choice does not deserve months of deliberation.
Slide 11 — Migration reality: what moving an existing system involves
What does migration actually involve? Less than a rewrite, more than a demo. The first wall is naming: generated token names rarely match the variables already in production, so you map, migrate surface by surface, or rename — and none of those is free. Start small: tokenize the decisions that change most, enforce them with CI checks, and route changes through normal pull requests. The two classic stalls are the big-bang rename and the attempt to tokenize everything on day one. And when you later switch tools — you will — the token JSON, the harness, and your MCP list move in about an hour; permissions and pricing get rebuilt; and the team's muscle memory takes a couple of weeks to recover. Budget for the unglamorous parts. That is the difference between adoption and a stalled project.
Slide 12 — Exercise: run your toolchain through the diffability test
Time to apply this to your own setup. Take one page and thirty minutes. First, list every place a design decision actually lives — the canvas file, the theme CSS, the wiki, the deck, somebody's memory. Score each one: is it diffable, git-trackable, agent-readable, reachable over MCP? Then mark the single source of truth for colour, type, spacing, and components — or admit that there is more than one, which is the most common and most useful finding. Next, pick a candidate starting stack using the five questions from the decision path, and write one sentence defending it. Finally, note the first migration step you could take this month and the cost you expect it to carry. Keep the page. Module 6 builds its quality gates on exactly the artifacts you just mapped.
Slide 13 — Summary, and what comes next
Let's close the module. The artifact decides what the agent can do — diffable text is the foundation, and binary files block reading, precise edits, and honest review. The four platforms have converged on open standards and differ in governance, sandboxing, and how you pay; because the harness ports, the choice stays reversible. Connected canvases give you visual editing on top of readable files, and MCP is the protocol that ties platforms, canvases, and tools together. Figma keeps winning at collaboration; text wins at review and agent participation; tokens bridge the two. Choose your starting stack with the five questions, keep the knowledge in open formats, and budget honestly for migration. Module 6 is the last one: critique, quality gates, and what agents are still bad at. See you there.