Tooluck logoTooluck
SKILL.md

api-design

Agent skill fromAaronontheweb/dotnet-skills

Design stable, compatible public APIs using extend-only design principles. Manage API compatibility, wire compatibility, and versioning for NuGet packages and distributed systems.

How to install api-design

install api-design
# install the dotnet-skills pack with the skills CLI
npx skills add Aaronontheweb/dotnet-skills

# or add only this skill to Claude Code: copy the folder

skills/csharp-api-design/

# into

~/.claude/skills/csharp-api-design/ (all projects)

.claude/skills/csharp-api-design/ (one project)

skills/csharp-api-design/SKILL.md

MITFull file
1# Public API Design and Compatibility
2
3## When to Use This Skill
4
5Use this skill when:
6- Designing public APIs for NuGet packages or libraries
7- Making changes to existing public APIs
8- Planning wire format changes for distributed systems
9- Implementing versioning strategies
10- Reviewing pull requests for breaking changes
11
12---
13
14## The Three Types of Compatibility
15
16| Type | Definition | Scope |
17|------|------------|-------|
18| **API/Source** | Code compiles against newer version | Public method signatures, types |
19| **Binary** | Compiled code runs against newer version | Assembly layout, method tokens |
20| **Wire** | Serialized data readable by other versions | Network protocols, persistence formats |
21
22Breaking any of these creates upgrade friction for users.
23
24---
25
26## Extend-Only Design
27
28The foundation of stable APIs: **never remove or modify, only extend**.
29
30### Three Pillars
31
321. **Previous functionality is immutable** - Once released, behavior and signatures are locked
332. **New functionality through new constructs** - Add overloads, new types, opt-in features
343. **Removal only after deprecation period** - Years, not releases
35
36### Benefits
37
38- Old code continues working in new versions
39- New and old pathways coexist
40- Upgrades are non-breaking by default
41- Users upgrade on their schedule
42
43**Resources:**
44- [Extend-Only Design](https://aaronstannard.com/extend-only-design/)
45- [OSS Compatibility Standards](https://aaronstannard.com/oss-compatibility-standards/)
46
47---
48…

Excerpt shown under the repository's MIT license.

More skills in dotnet-skills

Keep exploring

Similar skill repositories

thedotmack /

claude-mem
116k

Persistent Context Across Sessions for Every Agent – Captures everything your agent does during sessions, compresses it with AI, and injects relevant context back into future sessions. Works with Claude Code, OpenClaw, Codex, Gemini, Hermes, Copilot, OpenCode + More

CCCXGHGM+135 skills

Leonxlnx /

taste-skill
113k

Agent skills that give coding agents taste: art direction, reference images and a browser check instead of generic AI pages

CCCXCU1 skill

Newsletter

Join the Community

Subscribe to our newsletter for the latest news and updates