OverviewHistoryStatsSecurity
npx skills add ...
Documentation
SKILL.md
npx skills add google-labs-code/stitch-sdk --skill stitch-sdk-bug-bash
Find bugs in the Stitch SDK using a real API key. Covers standard functional edges and tricky situations.
npx skills add google-labs-code/stitch-sdk --skill stitch-sdk-bug-bash
This skill provides a framework and instructions for finding bugs in the Stitch SDK using a real API key. It guides you through exploring standard functional edge cases and tricky situations beyond the golden path.
When using this skill, do not just verify that the SDK works. Try to break it!
Stitch)STITCH_API_KEY is present.StitchToolClient and verify that the first call fails with a clear authentication or connection error, not a generic noise error.Project)stitch.project('invalid-id') does not throw (lazy instantiation) but the first call on it fails safely.project.listScreens() do.Screen)Project.generate() are correctly populated on the returned Screen instances without a second fetch.undefined or empty arrays rather than crashing on null property access!DesignSystem)project.designSystem('ds-id') correctly receives the projectId and injects it into calls like ds.apply(...).| Scenario | What to try | Expected Behavior |
|---|---|---|
| Stale Handles | Create a screen, delete the project, then try to edit the screen handle. | Clean API error indicating resource not found, wrapped in StitchError. |
| Empty Prompts | Call project.generate('') or with only whitespace. | Safe rejection or clear API error, no crash in codegen. |
| Projections on null | Force an API call that returns a response without the expected projection field (if you can simulate or find such a tool fallback case). | The SDK should use optional chaining (e.g., raw?.prop) and return undefined rather than throwing TypeError: cannot read property of undefined. |
| Massive arrays | Pass hundreds of screen IDs to ds.apply(). | Check if it hits payload limits gracefully or fails with a clear message. |
try/catch.error.code or error.name to see if it's a StitchError or a generic raw error.TypeError or "cannot read property of undefined", that is a HIGH PRIORITY BUG in the SDK's projection logic!Use this template to run a quick end-to-end bash session.