Java SDK E2E Test with Replay Snapshot
github/copilot-sdk
Creates a Java SDK end-to-end test for the Copilot SDK that runs against a recorded YAML snapshot through a replay proxy, so CI needs no real authentication.
Run the full Stitch SDK generation pipeline. An agent skill from google-labs-code/stitch-sdk.
$ npx skills add google-labs-code/stitch-sdk --skill stitch-sdk-pipeline -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install google-labs-code/stitch-sdk stitch-sdk-pipeline --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/google-labs-code/stitch-sdk.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/stitch-sdk-pipeline .claude/skills/stitch-sdk-pipeline && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "stitch-sdk-pipeline" agent skill from https://github.com/google-labs-code/stitch-sdk/tree/main/.agents/skills/stitch-sdk-pipeline into .claude/skills/stitch-sdk-pipeline/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "stitch-sdk-pipeline", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/google-labs-code/stitch-sdk/tree/main/.agents/skills/stitch-sdk-pipelineType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add google-labs-code/stitch-sdk --skill stitch-sdk-pipeline -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install google-labs-code/stitch-sdk stitch-sdk-pipeline --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/google-labs-code/stitch-sdk.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/stitch-sdk-pipeline .agents/skills/stitch-sdk-pipeline && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "stitch-sdk-pipeline" agent skill from https://github.com/google-labs-code/stitch-sdk/tree/main/.agents/skills/stitch-sdk-pipeline into .agents/skills/stitch-sdk-pipeline/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "stitch-sdk-pipeline", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add google-labs-code/stitch-sdk --skill stitch-sdk-pipeline -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install google-labs-code/stitch-sdk stitch-sdk-pipeline --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/google-labs-code/stitch-sdk.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/stitch-sdk-pipeline .cursor/skills/stitch-sdk-pipeline && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "stitch-sdk-pipeline" agent skill from https://github.com/google-labs-code/stitch-sdk/tree/main/.agents/skills/stitch-sdk-pipeline into .cursor/skills/stitch-sdk-pipeline/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "stitch-sdk-pipeline", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/google-labs-code/stitch-sdk.git --path .agents/skills/stitch-sdk-pipeline--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add google-labs-code/stitch-sdk --skill stitch-sdk-pipeline -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install google-labs-code/stitch-sdk stitch-sdk-pipeline --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/google-labs-code/stitch-sdk.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/stitch-sdk-pipeline .gemini/skills/stitch-sdk-pipeline && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "stitch-sdk-pipeline" agent skill from https://github.com/google-labs-code/stitch-sdk/tree/main/.agents/skills/stitch-sdk-pipeline into .gemini/skills/stitch-sdk-pipeline/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "stitch-sdk-pipeline", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install google-labs-code/stitch-sdk stitch-sdk-pipelineInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add google-labs-code/stitch-sdk --skill stitch-sdk-pipeline -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/google-labs-code/stitch-sdk.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/stitch-sdk-pipeline .github/skills/stitch-sdk-pipeline && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "stitch-sdk-pipeline" agent skill from https://github.com/google-labs-code/stitch-sdk/tree/main/.agents/skills/stitch-sdk-pipeline into .github/skills/stitch-sdk-pipeline/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "stitch-sdk-pipeline", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add google-labs-code/stitch-sdk --skill stitch-sdk-pipeline -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install google-labs-code/stitch-sdk stitch-sdk-pipeline --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/google-labs-code/stitch-sdk.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/stitch-sdk-pipeline .opencode/skills/stitch-sdk-pipeline && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "stitch-sdk-pipeline" agent skill from https://github.com/google-labs-code/stitch-sdk/tree/main/.agents/skills/stitch-sdk-pipeline into .opencode/skills/stitch-sdk-pipeline/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "stitch-sdk-pipeline", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
stitch-sdk-pipelineRun the full Stitch SDK generation pipeline. An agent skill from google-labs-code/stitch-sdk.
Stitch SDK Pipeline is an agent skill from google-labs-code/stitch-sdk, published by the product's own GitHub organization. Run the full Stitch SDK generation pipeline. Use when a new tool is added, or the SDK needs to be regenerated end-to-end.
Its SKILL.md is about 2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Testing & QA, covering End-to-end testing. It works with Google Stitch and TypeScript. The repository describes itself as: Generate UI screens from text prompts and extract their HTML and screenshots programmatically. The licence is Apache-2.0.
9 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit e3f8ece. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
npmFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npm, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
STITCH_API_KEYGEMINI_API_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Stitch SDK Pipeline loads about 2k tokens when it runs. Until then it costs about 35 tokens; SKILL.md has 754 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from google-labs-code/stitch-sdk at commit e3f8ece, republished under its Apache-2.0 licence (© google-labs-code). 754 words, ~1,953 tokens.
.claude/skills/stitch-sdk-pipeline/SKILL.md (or your agent's skills folder).This skill orchestrates the full SDK generation pipeline — from capturing MCP tool schemas to publishing a tested, validated package. Use this when:
[!IMPORTANT] Stage 2 is the only step requiring agent intelligence. All other stages are deterministic scripts. For Stage 2, use the
stitch-sdk-domain-designskill.
STITCH_API_KEY environment variable setbun installedstitch-sdk/)// turbo
npm run captureConnects to the Stitch MCP server, calls tools/list, and writes the raw schemas to packages/sdk/generated/tools-manifest.json. Updates the manifest section of stitch-sdk.lock.
Output: packages/sdk/generated/tools-manifest.json (includes inputSchema + outputSchema for every tool)
When to skip: If tools-manifest.json is already up to date and no server-side changes occurred.
Use the stitch-sdk-domain-design skill for this stage.
Read tools-manifest.json and edit packages/sdk/generated/domain-map.json to map tools → classes → methods.
Key decisions at this stage:
Input: tools-manifest.json + scripts/ir-schema.ts (the canonical IR contract)
Output: packages/sdk/generated/domain-map.json
When to skip: If domain-map.json already has the correct bindings and you only changed ir-schema.ts or generate-sdk.ts.
// turbo
npm run generateValidates the IR (Zod schema) and every projection (against outputSchema), then emits TypeScript files via ts-morph into packages/sdk/generated/src/.
Output: packages/sdk/generated/src/*.ts + updated stitch-sdk.lock
If this fails with a projection error, go back to Stage 2 and fix domain-map.json.
// turbo
npm run buildTypeScript compilation: packages/sdk/ → packages/sdk/dist/.
// turbo
npm run testRuns core unit tests (vitest) — mocked callTool, verifying generated method signatures, caching, and error handling.
// turbo
npm run test:scriptsRuns contract tests (IR schema acceptance/rejection) and logic tests (expression builders) using bun:test.
npm run test:e2eLive API tests against the built package. Requires STITCH_API_KEY (and GEMINI_API_KEY for AI SDK tests). Two test suites:
live.test.ts — Direct SDK calls: create projects, generate screens, verify responses.ai-sdk-e2e.test.ts — AI SDK integration via stitchTools(): Gemini autonomously calls Stitch tools, generates designs, extracts HTML + Tailwind config, produces modular React components, validates via SWC, and scaffolds a Vite preview app at .stitch/preview/.// turbo
npm run validate:generatedVerifies that stitch-sdk.lock hashes match the actual generated files. Catches drift (someone edited generated files manually or forgot to regenerate).
[!IMPORTANT] Always run after Stage 3 (Generate). If you run Capture (Stage 1) then Validate without re-generating, the hashes will mismatch because the manifest hash changed.
After the pipeline passes, audit agent skills for freshness. Read the current source of truth and update any skills that reference stale methods, args, or examples.
Inputs:
packages/sdk/src/index.ts (public surface)packages/sdk/generated/src/packages/sdk/src/spec/errors.ts (error codes)packages/sdk/src/spec/client.ts (config schema)Skills to audit (in priority order):
stitch-sdk-usage — highest churn, references specific methods and constructor signaturesstitch-sdk-readme — must document stitchTools(), toolDefinitions, and AI SDK integration examplesstitch-sdk-development — check cache examples match current domain-map patternsstitch-sdk-domain-design — check code examples in the cache sectionSkills to skip: stitch-sdk-pipeline (self-referential), red-green-yellow (generic methodology).
What to check:
index.tsStitchConfigSchemaStitchErrorCodeWhen to skip: If only infrastructure code changed (packages/sdk/src/client.ts, packages/sdk/src/proxy/) and no public API surface changed.
npm run pipelineRuns Stage 1 → 3 → 4 → 5 in sequence. Does not include Stage 2 (agent), Stage 7 (e2e), or Stage 9 (skill audit).
| Scenario | Start from |
|---|---|
| New tool added to MCP server | Stage 1 |
| Need to change how a tool maps to a method | Stage 2 |
Changed ir-schema.ts or generate-sdk.ts | Stage 3 |
Changed code in packages/sdk/src/ (client, errors) | Stage 4 |
| Just want to verify everything works | Stage 5 |
| Changed AI SDK tools adapter or tool definitions | Stage 5 |
| Public API surface changed | Stage 9 |
| File | Location | Role |
|---|---|---|
tools-manifest.json | packages/sdk/generated/ | Raw MCP tool schemas (Stage 1 output) |
domain-map.json | packages/sdk/generated/ | IR: tool → class → method mappings (Stage 2 output) |
tool-definitions.ts | packages/sdk/generated/src/ | Generated JSON Schema tool definitions for AI SDK |
tools-adapter.ts | packages/sdk/src/ | stitchTools() — AI SDK v6 adapter (imported via @google/stitch-sdk/ai) |
ir-schema.ts | scripts/ | Zod schema defining valid IR structure |
tool-schema.ts | scripts/ | TypeScript types for JSON Schema |
generate-sdk.ts | scripts/ | ts-morph codegen (Stage 3) |
stitch-sdk.lock | packages/sdk/generated/ | Integrity hashes for drift detection |
stitch-html.ts | packages/sdk/test/helpers/ | Stitch HTML parser (Tailwind config + font extraction) |
component-validator.ts | packages/sdk/test/helpers/ | SWC AST validator for generated React components |
© google-labs-code, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .agents/skills/stitch-sdk-pipeline of google-labs-code/stitch-sdk.
Open the folder on GitHubat commit e3f8ece
Stitch SDK Pipeline next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Stitch SDK Pipeline this skillgoogle-labs-code/stitch-sdk | 1.8k | — | ~2k | Automated safety check: Pass | Apache-2.0 | |
| Java SDK E2E Test with Replay Snapshotgithub/copilot-sdk | 11k | — | ~1.8k | Automated safety check: Pass | MIT | |
| RStudio Selenium to Playwright Migrationrstudio/rstudio | 5.1k | — | ~3.6k | Automated safety check: Pass | Custom licence | |
| Interactive CLI Testing With tui-testslopus/happy | 24k | — | ~603 | Automated safety check: Pass | MIT | |
| Svelte Testingspences10/sveltest | 113 | — | ~579 | Automated safety check: Pass | MIT | |
| E2E Testcrowdin/crowdin-api-client-js | 139 | — | ~893 | Automated safety check: Notes | MIT |
github/copilot-sdk
Creates a Java SDK end-to-end test for the Copilot SDK that runs against a recorded YAML snapshot through a replay proxy, so CI needs no real authentication.
rstudio/rstudio
Converts RStudio Python Selenium electron tests into TypeScript Playwright tests, checking each against a live RStudio before counting it as migrated.
slopus/happy
Tests interactive CLI and TUI programs with Microsoft's tui-test, driving prompts, arrow keys and screen output in a real pseudo-terminal.
spences10/sveltest
Fix and create Svelte 5 tests with vitest-browser-svelte and Playwright.
crowdin/crowdin-api-client-js
Run end-to-end tests against the real Crowdin or Crowdin Enterprise API using credentials from .env.
andrewyng/context-hub
Collects reusable Playwright patterns for logging in during end-to-end tests: password forms, OAuth redirects, saved browser state and TOTP two-factor codes.
google-labs-code/stitch-sdk
Develop the Stitch SDK. An agent skill from google-labs-code/stitch-sdk.
google-labs-code/stitch-sdk
Design the domain model for the Stitch SDK. An agent skill from google-labs-code/stitch-sdk.
google-labs-code/stitch-sdk
Generate or update the README for the Stitch SDK. An agent skill from google-labs-code/stitch-sdk.
google-labs-code/stitch-sdk
Use the Stitch SDK to generate, edit, and iterate on UI screens from text prompts, manage projects, and retrieve screen HTML/images.
google-labs-code/stitch-sdk
Enforces a disciplined Red-Green-Refactor (TDD) workflow in TypeScript/Node.js.
google-labs-code/stitch-sdk
Architecture standard for building robust, type-safe TypeScript services using the "Spec and Handler" pattern.
Works with
Categories
Run the full Stitch SDK generation pipeline. An agent skill from google-labs-code/stitch-sdk. Stitch SDK Pipeline is an agent skill from google-labs-code/stitch-sdk, published by the product's own GitHub organization. Run the full Stitch SDK generation pipeline.
Stitch SDK Pipeline fits situations like: A new tool is added; the SDK needs to be regenerated end-to-end.
Run `npx skills add google-labs-code/stitch-sdk --skill stitch-sdk-pipeline -a claude-code`. Or copy the skill folder (.agents/skills/stitch-sdk-pipeline in google-labs-code/stitch-sdk) into .claude/skills/stitch-sdk-pipeline in your project. Claude Code loads it when a task matches its description.
Run `npx skills add google-labs-code/stitch-sdk --skill stitch-sdk-pipeline -a codex`. Or copy the skill folder (.agents/skills/stitch-sdk-pipeline in google-labs-code/stitch-sdk) into .agents/skills/stitch-sdk-pipeline in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add google-labs-code/stitch-sdk --skill stitch-sdk-pipeline -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/stitch-sdk-pipeline, .gemini/skills/stitch-sdk-pipeline, .github/skills/stitch-sdk-pipeline and .opencode/skills/stitch-sdk-pipeline in your project.
Going by SKILL.md and its folder, Stitch SDK Pipeline needs the command-line tools its instructions call (npm) and credentials named STITCH_API_KEY and GEMINI_API_KEY. Our summary lists: A credential in STITCH_API_KEY; A credential in GEMINI_API_KEY.
SKILL.md contains no URLs. Its commands use npm, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Stitch SDK Pipeline is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2k tokens (SKILL.md is roughly 7.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Stitch SDK Pipeline: Java SDK E2E Test with Replay Snapshot (github/copilot-sdk, 11k stars), RStudio Selenium to Playwright Migration (rstudio/rstudio, 5.1k stars), Interactive CLI Testing With tui-test (slopus/happy, 24k stars) and Svelte Testing (spences10/sveltest, 113 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
google-labs-code (a GitHub organization, an official publisher) maintains it in google-labs-code/stitch-sdk, which has 1,826 GitHub stars. The repository holds 9 skills in this directory. The repository was last updated on October 1, 2026.
Source: google-labs-code/stitch-sdk on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.