stitch::upload-to-stitch
Upload local assets (images, mockups, extracted HTML, design markdown) to a Stitch project.
Skill by google-labs-code
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/google-labs-code-stitch-upload-to-stitch
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: documents, design, frontend, agent-building, api-integration
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/stitch-upload-to-stitch
What's inside
- Skill name
stitch::upload-to-stitch- Description
- Upload local assets (images, mockups, extracted HTML, design markdown) to a Stitch project. ALWAYS use this skill when you need to upload visual assets, HTML pages, or design docs to Stitch, particularly when direct MCP tool calls fail or truncate due to base64 token limits.
- License
- Apache-2.0
- Instructions
- 87 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Agent Skills spec issues
- name: only lowercase letters, digits and single hyphens allowed
- name: "stitch::upload-to-stitch" does not match folder "upload-to-stitch"
- allowed-tools: must be a space-separated string
Files (2)
- SKILL.md
- upload_to_stitch.py · scripts/
SKILL.md (first lines)
# Upload-to-Stitch Upload local assets (images, mockups, HTML, and markdown files) to a Stitch project using the provided upload script, which bypasses the MCP tool's base64 output token limits. > [!NOTE] > The AI model cannot upload files via MCP tools directly because the base64 > encoding of even a small file exceeds the model's output token limit (~16K > tokens). This script reads the file and sends it directly over HTTP. ## Steps ### 1. Identify Target Project Use `list_projects` to find the correct `projectId`. ### 2. Get the API Key Locate your active MCP server configuration file and extract the API key: - **Antigravity**: `.gemini/antigravity/mcp_config.json` or `.gemini/jetski/mcp_config.json` - **Gemini CLI**: `~/.gemini/settings.json` or `~/.gemini/extensions/Stitch/gemini-extension.json` - **Claude Code**: `~/.claude.json` Extract: - **API Key**: From the `X-Goog-Api-Key` header or auth argument - **MCP URL** (optional): From the `httpUrl` or endpoint argument (defaults to `https://stitch.googleapis.com`) > [!IMPORTANT] > If you cannot find the API key in any of these locations, or if you cannot access these files, you MUST ask the user to provide the Stitch API key. Do not proceed without a valid API key. ### 3. Run Upload Script > [!WARNING] > **Checkpoint — User Confirmation Required.** > Before running the upload script, you **MUST** pause and present the file(s) > to be uploaded (paths, sizes, and types) to the user and wait for explicit > approval. Do **NOT** execute the upload script until the user confirms. Use `run_command` to execute the Python script: ```bash python3 <SKILL_DIR>/scripts/upload_to_stitch.py \ --project-id <PROJECT_ID> \ --file-path <PATH_TO_FILE> \ --api-key <API_KEY> \ [--api-url <STITCH_API_URL>] \ [--title <SCREEN_TITLE>] \ [--generated-by <GENERATED_BY>] ``` > [!TIP] > **macOS / SSL Certificate Troubleshooting:** > If the upload fails with `ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] unable to get local issuer certificate`, this means your Python installation does not have root certificate authorities configured. > > The script automatically attempts to use the `certifi` package to load the CA bundle if it is installed in your python environment. If `certifi` is not installed, you can either install it (`pip install certifi`) or manually supply the `SSL_CERT_FILE` environment variable when running the script: > ```bash > SSL_CERT_FILE=$(python3 -c "import certifi; print(certifi.where())") python3 <SKILL_DIR>/scripts/upload_to_stitch.py \ > --project-id <PROJECT_ID> \ > --file-path <PATH_TO_FILE> \ > --api-key <API_KEY> \ > [--api-url <STITCH_API_URL>] \ > [--title <SCREEN_TITLE>] \ > [--generated-by <GENERATED_BY>] > ``` ### Supported File Types | Extension | MIME Type | |:---|:---| | `.png` | `image/png` | | `.jpg`, `.jpeg` | `image/jpeg` | | `.webp` | `image/webp` | | `.html`, `.htm` | `text/html` | | `.md` | `text/markdown` | The script auto-detects MIME type from the file extension. ### Script Options - `--project-id`: **Required**. The Stitch project ID. - `--file-path`: **Required**. Path to the local file to upload. - `--api-key`: **Required**. API key for Stitch authorization. - `--api-url`: Optional. Base URL of the Stitch API. Defaults to `https://stitch.googleapis.com`. - `--title`: Optional. Title for the uploaded screen. When uploading extracted HTML from a web app, set this to the **route path** of the page (e.g., `'/dashboard'`, `'/settings/profile'`, `'/inbox'`) so that the screen name/title in Stitch clearly identifies the route. - `--generated-by`: Optional. Specify how the uploaded file was generated (e.g., 'stitch::extract-static-html' skill, 'Claude Code', 'Codex', 'Gemini' etc.).
From google-labs-code/stitch-skills, Apache-2.0.
More from google-labs-code/stitch-skills
- 0.798score
stitch::extract-design-md
google-labs-code
Extract a comprehensive design system (DESIGN.md) directly from frontend source code — React, Vue, Svelte, Angular, plain HTML/CSS, or any web framework.
SkillBFreshness: B★ 8.6KClaude Code +9 - 0.798score
stitch::extract-static-html
google-labs-code
Extract self-contained static HTML from a built web application or React components by inlining CSS and images.
SkillBFreshness: B★ 8.6KClaude Code +9 - 0.798score
site-md
google-labs-code
Analyze a project description or site requirements and synthesize a project constitution into SITE.md for the Stitch Build Loop
SkillBFreshness: B★ 8.6KClaude Code +9 - 0.792score
stitch::code-to-design
google-labs-code
Convert frontend code (Vite, React, Angular, Vue, etc.) to a Stitch Design by chaining static HTML extraction, design system extraction, and file upload.
SkillBFreshness: B★ 8.6KClaude Code +9 - 0.746score
enhance-prompt
google-labs-code
Transforms vague UI ideas into polished, Stitch-optimized prompts.
SkillCFreshness: C★ 8.6KClaude Code +9 - 0.746score
shadcn-ui
google-labs-code
Expert guidance for integrating and building applications with shadcn/ui components, including component discovery, installation, customization, and best…
SkillCFreshness: C★ 8.6KClaude Code +9 - 0.743score
remotion
google-labs-code
Generate walkthrough videos from Stitch projects using Remotion with smooth transitions, zooming, and text overlays
SkillCFreshness: C★ 8.6KClaude Code +9 - 0.740score
taste-design
google-labs-code
Semantic Design System Skill for Google Stitch.
SkillCFreshness: C★ 8.6KClaude Code +9 - 0.740score
react-vite-dashboard
google-labs-code
Convert Stitch designs into production React + Vite dashboards with TanStack Query, accessible tokens from DESIGN.md, and Web3-ready patterns (ethers/viem).
SkillCFreshness: C★ 8.6KClaude Code +9 - 0.737score
stitch::react-native
google-labs-code
Convert Stitch HTML designs to React Native components, or syncs/updates existing native components to align with the latest Stitch designs, using StyleSheet.
SkillCFreshness: C★ 8.6KClaude Code +9 - 0.737score
stitch::react-components
google-labs-code
Converts Stitch designs into modular Vite and React components, or syncs/updates existing React components to align with the latest Stitch designs, using…
SkillCFreshness: C★ 8.6KClaude Code +9 - 0.737score
stitch-loop
google-labs-code
Teaches agents to iteratively build websites using Stitch with an autonomous baton-passing loop pattern
SkillCFreshness: C★ 8.6KClaude Code +9
Signals
- Stars
- 8,572
- Forks
- 1,052
- Open issues
- 10
- Last commit (this folder)
- Jul 29, 2026 (3 months ago)
- Last release
- May 18, 2026 (5 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Apache-2.0
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from google-labs-code
- 0.798score
stitch::extract-static-html
google-labs-code
Extract self-contained static HTML from a built web application or React components by inlining CSS and images.
SkillBFreshness: B★ 8.6KClaude Code +9 - 0.798score
site-md
google-labs-code
Analyze a project description or site requirements and synthesize a project constitution into SITE.md for the Stitch Build Loop
SkillBFreshness: B★ 8.6KClaude Code +9 - 0.798score
stitch::extract-design-md
google-labs-code
Extract a comprehensive design system (DESIGN.md) directly from frontend source code — React, Vue, Svelte, Angular, plain HTML/CSS, or any web framework.
SkillBFreshness: B★ 8.6KClaude Code +9 - 0.792score
stitch::code-to-design
google-labs-code
Convert frontend code (Vite, React, Angular, Vue, etc.) to a Stitch Design by chaining static HTML extraction, design system extraction, and file upload.
SkillBFreshness: B★ 8.6KClaude Code +9 - 0.746score
shadcn-ui
google-labs-code
Expert guidance for integrating and building applications with shadcn/ui components, including component discovery, installation, customization, and best…
SkillCFreshness: C★ 8.6KClaude Code +9 - 0.746score
enhance-prompt
google-labs-code
Transforms vague UI ideas into polished, Stitch-optimized prompts.
SkillCFreshness: C★ 8.6KClaude Code +9
Cite this page
stitch::upload-to-stitch skill. Agent Mart. https://agentmart.dev/skills/google-labs-code-stitch-upload-to-stitch (last updated 2026-10-24)