Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add Plazmodium/odin-workflow --skill api-and-interface-designgit clone --depth 1 https://github.com/Plazmodium/odin-workflowWrote 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/plazmodium/odin-workflow/api-and-interface-design)<a href="https://agentmods.dev/skills/plazmodium/odin-workflow/api-and-interface-design"><img src="https://agentmods.dev/badge/skills/plazmodium/odin-workflow/api-and-interface-design/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/plazmodium/odin-workflow/api-and-interface-design"><img src="https://agentmods.dev/badge/skills/plazmodium/odin-workflow/api-and-interface-design.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.00026 | $0.00310 |
| Opus 5.5 | $0.00010 | $0.00124 |
| Sonnet 5.5 | $0.00005 | $0.00062 |
| Haiku 4.5 | $0.00003 | $0.00031 |
Grade A, and why
api-and-interface-design 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 1mo 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
api-and-interface-design
When To Use
- Creating or changing an API, CLI, exported function, event, schema, or module boundary.
- Behavior may be consumed by other code, users, scripts, or services.
- Inputs cross a trust or version boundary.
Workflow
- Identify consumers and observable behavior.
- Define the contract before implementation: inputs, outputs, errors, side effects, and compatibility.
- Apply Hyrum's Law: assume every observable behavior may become depended on.
- Validate inputs at the boundary.
- Make illegal states unrepresentable where practical.
- Design error semantics that help callers recover.
- Add contract tests or examples for expected and failure paths.
Anti-Rationalization
| Excuse | Rebuttal |
|---|---|
| "This is internal." | Internal APIs still gain consumers and implicit contracts. |
| "Callers should pass valid data." | Boundaries must defend themselves. |
| "Changing this behavior is harmless." | Observable behavior can have hidden dependents. |
Verification
- Contract is documented in code, tests, types, schema, or command help.
- Invalid inputs fail predictably.
- Compatibility risk is called out.
Exit Criteria
- Consumers can rely on the interface without guessing behavior.
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.
- 1mo ago First seen · 43 lines · 26 tokens per session scan A ff623d824a78
api-and-interface-design is a skill published in the GitHub repository Plazmodium/odin-workflow (0 stars, last pushed 4mo ago), licensed MIT. It adds 26 tokens to every session and 310 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-09-01.
Other skills, from other repositories
nornweave-api
Give AI agents their own email inboxes using the NornWeave API. Use when building email agents, sending/receiving emails programmatically, managing inboxes, retrieving threads, searching messages, or integrating with email providers (Mailgun, SES, SendGrid, Resend). NornWeave provides LLM-ready markdown parsing and…
user-usecases
Database of real user use cases for APIbase platform. Contains detailed examples of how specific APIs are onboarded, wrapped, and served to AI agents. Use this skill when you need to reference real integration examples, explain the APIbase onboarding process, or design new API wrappers based on proven patterns.
cloudflare-worker-api
Structure Worker API routes and handlers. Use this skill when defining Cloudflare Worker routes, building response helpers, or implementing typed handler patterns — even if they just say "set up the worker routes" or "add an API endpoint to the worker". Auth belongs to secure-invite-and-access. Not for…
secure-invite-and-access
Implement access control, authentication, and authorization patterns. Use this skill when building auth endpoints, managing permissions, implementing session/token logic, or generating signed URLs — even if they just say "add auth" or "secure this endpoint". Generic template adaptable to any project's auth needs. Not…
spotify-exhaustive-feature-sweep
Exhaustive feature sweep across Spotify domains — enumerate all endpoints into quantity-first tool proposals with quota flags and batched GitHub logging.
api-context
Canonical reference for the unified Context object passed to every tool and resource handler in @cyanheads/mcp-ts-core. Covers the full interface, its RequestContext base, all sub-APIs (ctx.log, ctx.state, ctx.requestInput, ctx.inputs, ctx.clientCapabilities, ctx.enrich, ctx.content), and when to use each.