22.3k
GitHub Stars
1
Bundled Files
2 months ago
Catalog Refreshed
4 months ago
First Indexed
Readme & install
Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.
Installation
Preview and clipboard use veilstrat where the catalogue uses aiagentskills.
npx veilstrat add skill vercel/ai --skill capture-api-response-test-fixture- SKILL.md2.0 KB
Overview
This skill captures real API response test fixtures for language-model provider integrations. It helps teams record true provider outputs (or trimmed equivalents) so parser and behavior tests run against realistic data. The goal is reliable, reproducible tests for generate and stream flows.
How this skill works
The skill logs and saves raw provider responses into a __fixtures__ folder alongside the provider code. For standard generateText calls you serialize the response body; for streaming responses you enable includeRawChunks and use a helper that writes the raw chunks to disk. Saved fixtures become canonical inputs for parsing and unit tests.
When to use it
- Creating unit tests for provider response parsing
- Verifying behavior changes after model upgrades
- Reproducing edge-case provider outputs observed in production
- Building CI regression tests that depend on provider responses
- Sharing standardized sample responses across repositories
Best practices
- Store fixtures under a __fixtures__ subfolder next to the provider code for discoverability
- Keep fixtures as raw as possible; only trim very large fields without changing semantics
- Name files consistently to reflect provider, model, and endpoint
- Use generateText logging for non-streamed responses and includeRawChunks + save helper for streams
- Add a short test or helper that validates fixtures remain parsable to catch schema drift
Example use cases
- Run a script that calls generateText, console.log the response.body, and paste JSON into packages/openai/src/responses/__fixtures__
- Execute a streamText script with includeRawChunks:true and saveRawChunks to capture chunked outputs for streaming tests
- Capture rare error payloads from a noisy model to reproduce and fix parsing bugs
- Use example app outputs (examples/ai-functions/output) as the basis for official fixtures
- Create CI checks that compare current parsing results against stored fixtures to detect regressions
FAQ
Trim fields that don't affect parsed semantics, but keep structure and representative content intact. Document any trimming in the fixture filename or an adjacent README.
How do I capture streaming responses?
Enable includeRawChunks on the streamText call and use the provided saveRawChunks helper to write the raw chunks to the examples output folder, then move the saved file into the fixtures directory.