Guide · Agent skill
How to use the Manage Stitch Design Systems agent skill
Updated · written with AI from the project's own documentation and checked against our catalogue data
This guide explains what the stitch::manage-design-system agent skill does, how to install it, and how to ask an agent to use it. It is for designers and front-end developers who work with Google Stitch and want new screens to share one set of colours, fonts and roundness values. By the end you will know how the skill builds a DESIGN.md file, uploads it to Stitch with your approval, and applies the design system to existing screens.
Quick start
- 1Get a Stitch account and API key. Create or sign in to your Google Stitch account and obtain an API key. Confirm that the Stitch MCP tools are available to your agent.
- 2Install the skill. Download the ZIP from this page and unzip it into ~/.claude/skills/ or a project's .claude/skills/ folder, or upload it under Settings → Capabilities → Skills in the Claude apps.
- 3Make the stitch-utilities plugin available. Confirm you have access to the design-md and generate-design skills from the stitch-utilities plugin, since the skill relies on them.
- 4Ask for a design system. Describe the look you want in plain language, or point the agent at an existing Stitch project whose screens it should read.
- 5Review the summary and approve. The agent presents the display name, key colours, fonts and roundness. Approve only when the summary matches what you want.
- 6Upload and create the design system. The agent runs upload_to_stitch.py, then calls create_design_system_from_design_md with the returned screen instance.
- 7Apply to screens and check metadata. Ask the agent to apply the design system to your screens and confirm .stitch/metadata.json reflects the project.
What does the skill make the agent do?
The skill turns a project's visual style into a single source of truth for Google Stitch. That source is a DESIGN.md file describing colours, fonts, roundness and similar rules. Once the design system exists in Stitch, the tokens are held at project level, so later generation prompts do not need to repeat them.
The agent can work from two starting points. If the project already has screens, it reads them through the Stitch MCP tools and extracts a design system. If the project is new or you give a plain-language description, such as dark theme, blue and purple, rounded, Inter font, it maps those words to concrete hex codes, font families and roundness values and writes the DESIGN.md file. It also keeps a small .stitch/metadata.json file in sync with the project.
- Retrieve a project, its screens and their assets from Stitch
- Generate .stitch/DESIGN.md from existing screens or a written description
- Upload DESIGN.md and create the design system in Stitch
- Apply the design system to existing screens
- Record the project ID, title, screens and design system summary in .stitch/metadata.json
Install the skill from the ZIP or the Claude apps
Option one is a local install. Download the ZIP from this page and unzip it into ~/.claude/skills/ for all your projects, or into a project's .claude/skills/ folder to limit it to that project. Start a new agent session afterwards so the skill is picked up.
Option two is the Claude apps. Upload the ZIP under Settings → Capabilities → Skills.
- Personal install: ~/.claude/skills/
- Project install: .claude/skills/ inside your project folder
- Claude apps: Settings → Capabilities → Skills
What you need before you start
The skill depends on several things outside its own files. Check each one before you ask the agent to create a design system.
The skill references the stitch-utilities plugin, specifically its design-md and generate-design skills. These are not included in the files this page provides, so the skill will not fully work without them.
- A Google Stitch account and API key
- Stitch MCP tools, including list_projects, list_screens, get_screen, get_project, list_design_systems, create_design_system_from_design_md and apply_design_system
- Python 3, to run the upload_to_stitch.py script
- Access to the stitch-utilities plugin (design-md and generate-design skills)
How to ask the agent to use it
You do not need a special command. Describe the outcome in plain language and mention Stitch and the design system. The skill's description covers managing design systems in Stitch, retrieving assets, creating or updating design systems and applying them to screens, so requests of that kind are the ones it fits.
Examples of requests that match the skill's purpose:
- Create a design system in my Stitch project from this brief: dark theme, blue and purple, rounded corners, Inter font.
- Read the screens in my Stitch project and extract a design system from them.
- Apply the existing design system to the Home and Settings screens in this Stitch project.
- Update the design system in .stitch/DESIGN.md and sync it to Stitch.
Walk through the upload with approval
Before anything is uploaded, the skill requires a checkpoint. The agent must present a summary of the design system it is about to create, covering the display name, key colours, fonts and roundness, and wait for your explicit approval. It must not upload until you confirm.
Once you approve, the preferred method is the upload_to_stitch.py script. It base64-encodes the markdown in-process and sends it to the Stitch API. The script returns a sourceScreen ID and a screenInstance ID. The agent then calls create_design_system_from_design_md with the project ID and the selected screen instance. The skill also lists a direct upload_design_md MCP tool for DESIGN.md files under about 5KB, but the script is recommended.
- Set --generated-by to the calling skill name, such as stitch::code-to-design, or to the agent name, such as Claude Code. If you omit it, the script defaults to UserUploadedDesignMd.
- Read the summary carefully at the checkpoint before you approve.
python3 stitch-skills/plugins/stitch-design/skills/upload-to-stitch/scripts/upload_to_stitch.py --project-id <PROJECT_ID> --file-path /path/to/DESIGN.md --api-key <API_KEY> --generated-by <GENERATED_BY>Apply the design system to screens
To apply a design system to existing screens, the agent calls apply_design_system. The request must include only the id and sourceScreen of each selected screen instance. Position and size fields such as x, y, width and height cause the request to fail with an invalid argument error.
The agent gets the screen instance IDs from get_project and the design system's assetId from list_design_systems. Instances marked as DESIGN_SYSTEM_INSTANCE are filtered out, so only real screens are passed.
- Use get_project to list screenInstances
- Use list_design_systems to find the name in the form assets/{assetId}
- Skip any instance with type DESIGN_SYSTEM_INSTANCE
Keep .stitch/metadata.json in sync
After writing .stitch/DESIGN.md, the agent creates or updates .stitch/metadata.json. It records the projectId, the title, all known screens and a summary of the design system. Look at examples/metadata.json in the skill folder to see the expected format. For the full designSystem object and its options, see reference/tool-schema.md.
Safety notes: scripts and network access
This skill runs scripts and uses the network. The upload script sends DESIGN.md content to Google's Stitch API, so do not use it on projects whose design files must stay offline. The skill's allowed tools include Bash, Read, Write, web_fetch and the Stitch tools, so review the actions the agent proposes.
The approval checkpoint is part of the design. Do not configure the agent to skip it, because an upload without review would send design data to Stitch without your sign-off. The API key is passed on the command line in the example, so keep it out of shared logs and shared files.
- Never skip the user confirmation before upload
- Do not use the upload script for offline-only projects
- Check that the API key is not committed to version control
What people use it for
- Give a new Stitch project a consistent brand look before generating any screens
- Extract a design system from an existing Stitch project and reuse it across new screens
- Standardise colours, fonts and roundness across a team's generated screens
- Apply one design system to a set of existing screens in a single request
Frequently asked questions
How do I install the stitch manage design system skill?
Download the ZIP from this page and unzip it into ~/.claude/skills/ for personal use, or into a project's .claude/skills/ folder. In the Claude apps, you can instead upload the ZIP under Settings → Capabilities → Skills.
What do I need to run this skill?
You need a Google Stitch account and API key, the Stitch MCP tools, and Python 3 for the upload script. You also need access to the stitch-utilities plugin, because the skill references its design-md and generate-design skills, which are not included in these files.
Is the Manage Stitch Design Systems skill free?
The skill is licensed under Apache-2.0. Using Google Stitch itself requires your own account and API key, and this page does not state Stitch pricing.
Does the skill upload my designs automatically?
No. The skill requires you to review a summary of the design system and explicitly approve it before any upload. The upload script sends DESIGN.md content to Google's Stitch API over the network.
Why does apply_design_system fail with an invalid argument error?
The most common cause is extra position or size fields in selectedScreenInstances. Each entry should contain only the id and sourceScreen. Get those values from get_project and skip instances marked DESIGN_SYSTEM_INSTANCE.
Can I use this skill without Stitch?
No. Every step depends on Stitch tools and an API key, so the skill is not useful without a Stitch account. If your project must stay offline, this skill is not a fit.
New agent skills, repos and AI tools — every week
The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.
Our verdict
Use this skill if you work in Google Stitch and want several screens to share one documented visual system, and you are comfortable reviewing and approving each upload. Pick something else if you need fully offline design work, want uploads to happen without review, or do not have a Stitch account and API key.
Download the skill