Borrowing it
Nothing to install: this file belongs to mdrideout/junjo. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/mdrideout/junjo/master/.agents/skills/studio-api-contracts/SKILL.mdgit clone --depth 1 https://github.com/mdrideout/junjoWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/mdrideout/junjo/studio-api-contracts)<a href="https://agentmods.dev/skills/mdrideout/junjo/studio-api-contracts"><img src="https://agentmods.dev/badge/skills/mdrideout/junjo/studio-api-contracts/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/mdrideout/junjo/studio-api-contracts"><img src="https://agentmods.dev/badge/skills/mdrideout/junjo/studio-api-contracts.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00035 | $0.00341 |
| Opus 5.5 | $0.00014 | $0.00136 |
| Sonnet 5.5 | $0.00007 | $0.00068 |
| Haiku 4.5 | $0.00003 | $0.00034 |
Grade A, and why
studio-api-contracts scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 17d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
Studio API Contracts
Contract Decisions
- Backend routes and their Rust request and response types own REST contracts.
- Generated OpenAPI is a transport artifact, not a hand-edited source.
- Frontend Zod schemas and request code are consumers and change with the backend contract.
- Authentication, cookies, status codes, and the
{code, message}error body are part of the endpoint contract. - A cross-boundary change is incomplete until the producer and every affected consumer are validated together.
Surface To Inspect
apps/studio/backend/server/src/features/and the owning backend testsapps/studio/backend/server/src/app.rs, where every route is registeredapps/studio/backend/scripts/validate_rest_api_contracts.sh, which exports the OpenAPI documentapps/studio/frontend/backend/openapi.jsonapps/studio/frontend/src/features/orapps/studio/frontend/src/auth/apps/studio/frontend/src/__tests__/contracts/apps/studio/frontend/src/__tests__/integration/- SDK or CLI clients that call the same route
Routing
Use studio-backend-rust for backend implementation,
studio-frontend-react for browser implementation, and
studio-security-auth when the contract includes credentials or sessions.
Validation commands remain owned by scoped AGENTS.md files; concrete
behavior remains owned by code and tests.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 17d ago Changed · +2 lines 655fc7f45093
- 1mo ago First seen · 36 lines · 35 tokens per session scan A f955f8f33522
studio-api-contracts is a skill published in the GitHub repository mdrideout/junjo (20 stars, last pushed 17d ago), licensed Apache-2.0. It adds 35 tokens to every session and 341 once invoked, about $0.0001 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
developing-genkit-tooling
Best practices for authoring Genkit tooling, including CLI commands and MCP server tools. Covers naming conventions, architectural patterns, and consistency guidelines.
emulate-seed
Generate emulate seed configs for stateful API emulation. Wraps Vercel's emulate tool for GitHub, Vercel, Google OAuth, Slack, Apple Auth, Microsoft Entra, AWS, Okta, Clerk, Resend, Stripe, and MongoDB Atlas APIs — full state machines, not mocks. Use when setting up test environments, CI pipelines, integration tests…
performance
Performance optimization patterns covering Core Web Vitals, React render optimization, lazy loading, image optimization, backend profiling, LLM inference, and sustainability UX. Use when improving page speed, debugging slow renders, optimizing bundles, reducing image payload, profiling backend, deploying LLMs…
api-design
API contract design for REST and GraphQL, covering resource shape, URL and header versioning with deprecation windows, RFC 9457 Problem Details error handling, and OpenAPI specs. Use when specifying the wire contract an endpoint exposes, choosing a versioning scheme, or standardizing error response bodies across…
architecture-patterns
Architecture validation and patterns for clean architecture, backend structure enforcement, project structure validation, test standards, and context-aware sizing. Use when designing system boundaries, enforcing layered architecture, validating project structure, defining test standards, or choosing the right…
distributed-systems
Distributed systems patterns for locking, resilience, idempotency, and rate limiting. Use when implementing distributed locks, circuit breakers, retry policies, idempotency keys, token bucket rate limiters, or fault tolerance patterns.