From Prompt to Pull Request: 5 Ways Using Claude & GitHub


Product development has a dirty secret that most teams learn the hard way: the gap between a finished design and a working implementation is where good ideas go to lose their fidelity. A designer spends hours getting every pixel right in Figma, only to watch an engineer rebuild it from scratch in React, making dozens of micro-decisions about spacing, color, and behavior that the original mockup never addressed. This article breaks down five practical ways to make that workflow work for your team.

claude design pull request

What Claude Design Actually Is

Claude Design lives at claude.ai/design as a separate surface from the regular Claude chat interface. It is not a plugin or a mode switch. It is a standalone environment where you describe what you want in natural language and Claude renders it on an interactive canvas as real HTML, CSS, and JavaScript. The tool belongs to Anthropic Labs, meaning it ships as a research preview, and it runs on Claude Opus 4.7 — the same model family that powers the rest of the platform.

Anthropic made this tool public in mid-April 2026, and it has already changed how many teams think about prototyping. Because everything is code under the hood, the output does not need to be translated into something an engineer can use. It already is something an engineer can use. That alone collapses what has historically been the most expensive step in product work: the handoff from a design artifact to a working implementation.

The output types go well beyond simple mockups. You can generate slides, landing pages, interactive prototypes, mobile app screens, full design systems, and even presentation decks. The export options include ZIP archives, PDF files, PPTX, standalone HTML documents, Canva integration through a formal partnership, share URLs with view or comment or edit permissions, and — most critically — direct handoff to Claude Code. Your quota for Claude Design is independent of your regular Claude chat usage, so experimenting with it does not eat into your daily conversation allowance.

Why the Design System Determines Everything

The single biggest factor in output quality is your design system. Claude Design without a design system produces generic, AI-flavored output that could belong to any product. It looks competent but anonymous. Claude Design with a real, well-crafted design system produces output that looks like it belongs to your specific product — the same spacing, the same color language, the same typographic voice, the same component logic.

This distinction matters because most AI design tools on the market produce visually plausible but brand-blind results. They generate beautiful things that do not match your identity. Claude Design avoids this trap by letting you feed it your actual design language before you ask it to build anything. The difference between generic and on-brand is not a matter of luck. It is a matter of setup.

Way 1: Establish Your Design System as the Source of Truth

Before you generate a single screen, you need to give Claude Design a reference for what your product looks like. You have four distinct paths to set this up, and each one suits a different team situation.

The first path asks you to generate a design system from scratch. You upload brand assets — a logo, a color palette, typography samples, style guide snapshots, or even inspiration images — and Claude extracts the colors, type scales, spacing units, and component patterns it finds. This works well when you have brand materials but not a formal design system file.

The second path lets you upload an existing design system. You can provide a folder of components and tokens, a Figma.fig export, or any structured design artifact you already maintain. Claude reads the file and rebuilds the system inside its own environment. This is the fastest route if your team already has a well-documented design system in Figma or Storybook.

The third path connects directly to your GitHub repository. Claude reads your real components and design tokens straight from your codebase. This is the most accurate option because it removes any translation layer. What Claude sees is exactly what your engineers use. The fourth option is pragmatic: you pick an open-source design system as a starting point. Options include shadcn/ui, Material Design, Radix UI, and others. You then customize the colors and type to match your brand.

Publishing and Inheriting the System

Once you have your design system assembled inside Claude Design, you open your organization settings, locate the design system panel, and refine it using the Remix chat panel on the left side of the screen. You can adjust colors, tweak spacing rules, rename components, and define token values. When everything looks right, you flip the Published toggle on. After that point, every new project inside that workspace inherits the design system automatically. Your team does not need to reconfigure anything. The system just applies itself.

A practical tip that experienced users have discovered: when extracting from brand assets, include real finished work. Upload a live landing page, a marketing site screenshot, or a shipped screen from your production app. A color palette and a logo are not enough on their own. Brands have a feel, a texture, a visual rhythm, and that feel comes from seeing finished work, not from individual tokens. Including one or two real screens gives Claude a much richer signal about what your product should look like.

Way 2: Build Prototypes with Specific, Structured Prompts

With your design system published, you start a new project and describe what you want to build. The prompts that produce the best results are specific about both scope and structure. Vague prompts produce generic output. Detailed prompts produce output that looks like it came from your team’s sprint backlog.

Consider the difference between these two approaches. A weak prompt says “Design a settings page.” Claude generates something reasonable but shallow — a generic settings layout with placeholder content and no real structure. A strong prompt says “Design a settings page for a SaaS dashboard with a left sidebar navigation containing Account, Billing, Notifications, and Integrations sections. The main content panel should show one section at a time with expandable subsections inside each one. Place a sticky save bar at the bottom that stays visible when the user scrolls.” That second prompt gives Claude enough constraint to produce something production-ready.

The same principle applies to flows. Instead of asking for “a signup flow,” describe the full journey: “Map out the flow for a user upgrading from free to paid. Generate each screen in sequence — a dashboard upgrade prompt, a plan comparison page with three tiers, a payment form with card input and billing address, a confirmation screen with a success animation, and finally the updated dashboard with premium features unlocked.” Claude Design respects sequence and context. Each screen carries knowledge of the previous one.

You can also use this tool for experimentation. A common technique is to ask for variations: “Build a landing page hero in two variations — one feature-led with bullet points and specs, another outcome-led with a customer quote and a results graphic — so I can A/B test them.” Claude generates both versions simultaneously, and you can compare them on the canvas before deciding which direction to pursue. This kind of exploration used to take a designer a full day. Now it takes a few minutes.

Way 3: Refine Through Comments, Edits, and Custom Controls

The initial generation is rarely perfect. The refinement phase is where Claude Design earns its keep. Three tools work together to let you shape the output precisely without ever leaving the browser.

Inline comments let you annotate any element on the canvas. You click on a component, type a comment like “Make this button wider” or “Change the card shadow to be softer,” and Claude adjusts that specific element without regenerating the entire page. This targeted feedback loop preserves everything else you already liked about the design.

Direct edits work at the code level. You can open the underlying HTML or CSS panel, make a manual change, and see the result update on the canvas instantly. This is useful when you know exactly what property you want to change — adjusting a margin value from 16 to 24 pixels, for example, or swapping a font family for a specific heading style. Direct edits give you surgical control without needing to re-prompt the model.

The tweaks panel is the most distinctive of the three tools. It provides sliders, color pickers, and toggle switches for properties like spacing, corner radius, color, shadow depth, and typography scale. You can attach these controls to any element or group of elements on the canvas.

The Real Superpower of the Tweaks Panel

Most AI design tools ship with a fixed property panel. You get the controls the vendor decided to give you, and if you need something different, you are out of luck. Claude Design works differently. You can ask Claude to add new controls to the panel itself. If you need a glow slider for a button hover state, you say “Add a glow intensity slider to the tweaks panel for this button.” Claude creates the control on the fly. If you want a density toggle that switches between compact and comfortable spacing, you ask for it. The panel grows to match your needs.

This extensibility changes how teams iterate. A designer no longer needs to request a new control from an engineering team or wait for a software update. They just ask the model to add what they need, and the control appears immediately. The tweaks panel becomes a living interface that adapts to the specific requirements of each project.

You may also enjoy reading: 7 Ways to Secure Torrent Upload via OAuth2 Authentication.

During refinement, experienced users follow a simple rule: make one request at a time and inspect the result before making the next request. This gives Claude clear context about what changed and what still needs attention. Batch requests — asking for five changes at once — tend to produce muddy results where some changes land perfectly and others miss the mark. Single-turn refinement keeps the output predictable.

Way 4: Execute the Claude Design Pull Request Handoff

Once your prototype looks right and you have walked through the common user paths, the next step is to hand it off to engineering. This is where the claude design pull request handoff transforms the workflow. You do not export flat images or write spec documents. You pass the design directly to Claude Code, which is the same model family speaking the same internal representation of your design.

Inside Claude Design, you locate the handoff option and select “Send to Claude Code.” The tool packages the entire design context — the component structure, the styling rules, the interactions, the variants, and the design system tokens — and passes it to the coding agent. Claude Code receives this context as a structured brief. It knows exactly what to build because it saw the design being built.

This continuity matters enormously. Traditional handoffs lose information at every boundary. The designer’s intent about hover states, the exact measurement of a modal’s padding, the behavior of a dropdown when the data set is empty — these details either get documented in a verbose spec that nobody reads or get lost entirely and rediscovered during QA. Claude Design eliminates these boundaries. The same model that generated the design also generates the implementation, so nothing gets lost.

Claude Code takes the design context and begins implementing it in your codebase. It reads the repository structure, understands the existing patterns, and writes code that fits alongside your existing components. It does not drop random files into your project. It builds within your established architecture. The output is not a separate prototype. It is production code written to the same standards your engineering team already follows.

Way 5: Automate Your Claude Design Pull Request Cycle on GitHub

The final step brings everything together. Claude Code, having received the full design context from Claude Design, generates the implementation and opens a pull request directly on your GitHub repository. This is the endpoint of the entire pipeline — a fully automated claude design pull request that your team can review, comment on, test, and merge without anyone needing to translate a design artifact into code.

The PR arrives with structure. Claude Code includes a description of what was built, screenshots of the implemented screens, notes about any decisions it made during implementation, and flags for areas that need human review. Your engineering team can open the PR, see exactly what changed, review the diff, and either approve it or request adjustments. If adjustments are needed, the feedback loop stays inside the same toolchain. An engineer leaves a comment, Claude Code makes the update, and the PR reflects the change.

This automation does not replace code review. It replaces the manual translation step that has always been the bottleneck. The engineer still reviews the code, still verifies edge cases, still ensures the implementation matches the design intent. But they start from a working implementation instead of an empty file. The difference in velocity is dramatic.

Edge Cases You Must Check Before Handoff

Before you trigger the handoff, you need to run through edge cases explicitly. Claude Design handles the happy path reliably, but the unhappy paths require human attention. Experienced teams check five categories before sending a design to Claude Code.

Empty states come first. What does the screen look like when there is no data? Does the empty state communicate clearly, or does it leave the user confused? Error states come next. What happens when an API call fails, when a form submission times out, when a user enters invalid data? Loading states matter too. Does the skeleton loading match the final layout? Does the transition from loading to loaded feel smooth?

Different data volumes deserve scrutiny. The prototype probably looks beautiful with three sample items. What happens when the screen shows 200 items? Does the layout hold up? Can the user scroll comfortably? Does pagination work? Responsive variants complete the checklist. Does the design work on a 13-inch laptop, a 27-inch monitor, and a 10-inch tablet? Are the breakpoints sensible? Do the components reflow or break at narrow widths?

Teams that run through these five checks before handoff catch about 80 percent of the issues that would otherwise surface during code review. Catching them at the design stage rather than the PR stage saves an enormous amount of rework. The habit takes about 15 minutes per screen and eliminates hours of back-and-forth later in the cycle.

How the Full Pipeline Fits Together

When all five ways work together, the pipeline looks like this. A product manager or designer publishes a design system to Claude Design. They build a prototype using a structured natural language prompt. They refine it through comments, direct edits, and custom tweak controls. They hand the final design to Claude Code, which implements the screens using the real components and patterns already in the GitHub repository. Claude Code opens a pull request with the complete implementation, and the engineering team reviews and merges it.

The entire process preserves fidelity at every step. The design system ensures brand consistency. The structured prompt ensures the right scope. The refinement tools ensure precise output. The handoff ensures zero translation loss. The automated PR ensures the implementation lands in the right place with the right context. Each stage feeds into the next without the information loss that has plagued design-to-engineering workflows for as long as product teams have existed.

Anthropic built Claude Design to solve a specific problem: the most expensive step in product work is not designing or coding, but translating between the two. By keeping the same model family at every step, by treating designs as code from the start, and by automating the handoff into GitHub pull requests, they have created a pipeline that changes what a small product team can ship in a single day. The five ways outlined here give you a practical starting point. Pick one, try it with a real project, and see how much of the translation cost disappears.


Add Comment