api-and-interface-design from outlinedriven/outline-driven-development is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.
Use when asked to design or change a public API, route, CLI flag, or module boundary. Not for remote, credential, publish, deploy, or irreversible changes.
Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.
What the file says
# API and interface design
## Contract
| Field | Bound contract |
|---|---|
| Trigger | Designing or changing a public API, route, CLI flag, or module boundary. |
| Authority | Reversible local: writes only named local interface definitions and contract docs, edits consumer files onto the new contract, and deletes legacy paths (old signatures, aliases, re-exports, deprecated entry points) during cutover; rollback is undo (discard the uncommitted draft) or version control. No remote mutation. No credential, paid, published, or deployed change, and no VCS history rewrite. |
| Side effect | Interface definitions and contract docs written before implementation; consumer files edited onto the new contract and legacy paths (old signatures, aliases, re-exports, deprecated entry points) deleted during cutover; no build, publish, or remote mutation. |
| Done | Contract is documented with semantics and errors, every consumer is migrated, and no legacy path remains. |
## Inputs
…
The line at the top of this page pins the label git:20260905.1f63894, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.
GET https://markdownregistry.com/api/v1/artifacts/art_xejkysiqnpc37j5p
GET https://markdownregistry.com/api/v1/resolve?ref=outlinedriven/outline-driven-development/api-and-interface-design
GET https://markdownregistry.com/api/v1/blob/ad6adaf639f0b51721bc0191dc3730de39b94fbfb1c8a558dee8577d3e670ec1
Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.
outlinedriven/outline-driven-development · .devin/skills/abi-and-calling-conventions/SKILL.md · Use when explaining System V AMD64, ARM AAPCS, RISC-V psABI, stack frames, variadic calls, or FFI register rules. Not…
outlinedriven/outline-driven-development · .devin/skills/abstract-well/SKILL.md · Use when the user wants to classify abstractions as useful, bad, or busy and keep one shallow level. Not for tasks…
outlinedriven/outline-driven-development · .devin/skills/adc-dac-baremetal/SKILL.md · Use when configuring ADC sampling time, DMA-driven ADC, calibration, or DAC channel setup on bare-metal MCUs. Not for…
outlinedriven/outline-driven-development · .devin/skills/address-sanitizer/SKILL.md · Use when building or running native code under AddressSanitizer, interpreting an existing ASan report, or debugging a…
outlinedriven/outline-driven-development · .devin/skills/af-xdp/SKILL.md · Use when creating AF_XDP sockets, configuring UMEM and XSK rings, writing an XDP redirect program, or choosing copy…
outlinedriven/outline-driven-development · .devin/skills/agent-environment-retrospective/SKILL.md · Use when a completed session needs an agent-environment retrospective. Not for an engineering retrospective from…
outlinedriven/outline-driven-development · .devin/skills/agent-surface-forge/SKILL.md · Use when asked to audit or repair agent surfaces (plugins, agents, skills, CLAUDE.md/AGENTS.md, docs, prompts…
outlinedriven/outline-driven-development · .devin/skills/agent-transcript/SKILL.md · Use when a redacted, trimmed agent transcript must be appended to a GitHub PR or issue body, with human approval and…
outlinedriven/outline-driven-development · .devin/skills/agents-md/SKILL.md · Use when a repo needs agent setup, AGENTS.md added or made lean, CLAUDE.md audited, or agent instructions scored or…
outlinedriven/outline-driven-development · .devin/skills/ai-collab-protocols/SKILL.md · Use when the user describes an AI workflow gap or uses an ambiguous cross-session reference such as ''the PR Bob…
outlinedriven/outline-driven-development · .devin/skills/all-scenarios-storm/SKILL.md · Use when a user wants to enumerate plausible designs, configurations, scenarios, and paths and diagram the field before…
outlinedriven/outline-driven-development · .devin/skills/analysis-artifacts/SKILL.md · Use when the user requests a deep dive, exploratory analysis, or data analysis on BigQuery. Not for credential…
addyosmani/agent-skills · skills/api-and-interface-design/SKILL.md · Guides stable API and interface design. Use when designing APIs, module boundaries, or any public interface. Use when…
sickn33/agentic-awesome-skills · plugins/agentic-awesome-skills-claude/skills/api-and-interface-design/SKILL.md · Guides stable API and interface design. Use when designing APIs, module boundaries, or any public interface. Use when…
shashankswe2020-ux/whoop-mcp · .github/skills/api-and-interface-design/SKILL.md · Guides stable API and interface design. Use when designing APIs, module boundaries, or any public interface. Use when…
nota-america/forgecat-agent-profiles · profiles/addyosmani/agent-skills/for-codex/.agents/skills/api-and-interface-design/SKILL.md · Guides stable API and interface design. Use when designing APIs, module boundaries, or any public interface. Use when…
nota-america/forgecat-agent-profiles · profiles/addyosmani/agent-skills/for-forgecat/platforms/cursor/.cursor/skills/api-and-interface-design/SKILL.md · Guides stable API and interface design. Use when designing APIs, module boundaries, or any public interface. Use when…
nota-america/forgecat-agent-profiles · profiles/addyosmani/agent-skills/for-forgecat/skills/api-and-interface-design/SKILL.md · Guides stable API and interface design. Use when designing APIs, module boundaries, or any public interface. Use when…
nota-america/forgecat-agent-profiles · profiles/addyosmani/agent-skills/for-forgecat/platforms/codex/.agents/skills/api-and-interface-design/SKILL.md · Guides stable API and interface design. Use when designing APIs, module boundaries, or any public interface. Use when…
nota-america/forgecat-agent-profiles · profiles/addyosmani/agent-skills/for-claude/.claude/skills/api-and-interface-design/SKILL.md · Guides stable API and interface design. Use when designing APIs,