documentation-and-adrs
Skill2 starsChanged 40 days agoMITView on GitHub
Use when making architectural trade-offs, changing public APIs, shipping user-facing features, or onboarding developers. Guides writing ADRs, inline documentation, and API docs.
68 other projects use a version of this.
Adopted by
Most recently taken up by
- ishandutta2007/Awesome-Agent-Skillstheir own version, first seen Nov 8, 2026
- MMACABRE/SKILLStheir own version, first seen Nov 8, 2026
- Rvey/agent-engineering-kittheir own version, first seen Nov 2, 2026
- celestialdust/achilles-skillstheir own version, first seen Nov 1, 2026
- steven123397/nexuskit-skillstheir own version, first seen Nov 1, 2026
- AgnesAI-Labs/agnet-skills-cntheir own version, first seen Nov 1, 2026
Used with
Projects with it also use minimalist-ui, web-design-guidelines and 3 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
AnasX7Skillminimalist-ui
Clean editorial-style interfaces. Warm monochrome palette, typographic contrast, flat bento grids, muted pastels. No gradients, no heavy shadows.
Also in 3 projects that use this
VercelSkillweb-design-guidelines
Review UI code for Web Interface Guidelines compliance. Use when asked to "review my UI", "check accessibility", "audit design", "review UX", or "check my site against best practices".
Also in 4 projects that use this
MicrosoftSkillplaywright-cli
Automate browser interactions, test web pages and work with Playwright tests.
Also in 3 projects that use this
MicrosoftSkillimpeccable
Use when the user wants to design, redesign, shape, critique, audit, polish, simplify, harden, animate, or otherwise improve a frontend interface: websites, landing pages, dashboards, product UI, components, forms, settings, onboarding, empty states, and native iOS or Android screens. Handles UX review, hierarchy, layout, typography, color, motion, UX copy, accessibility, responsive behavior, edge cases, and capturing or documenting design systems (DESIGN.md, tokens). Also for making bland UI bolder, loud UI quieter, or ambitious visual effects. Not for backend-only or non-UI tasks.
Also in 3 projects that use this
OpenAISkillbrainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation.
Also in 4 projects that use this
Other versions68 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 68
- addyosmani/agent-skills★ 114ksame name
- ollaya-dev/ollaya★ 1.4ksame name
- shashankswe2020-ux/whoop-mcp★ 174same name
- muratgur/ordinus★ 111same name
- vinvcn/addyosmani-agent-skills-zh★ 46same name
- jmxt3/gitscape.ai★ 33same name
- sampleXbro/agentsmesh★ 27same name
- jaskirat1616/grok-skills★ 22same name
- ishandutta2007/Awesome-Agent-Skills★ 21same name
- JPeetz/agent-skills★ 14same name
58 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository31 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- android-accessibilitySkill
- android-architectureSkill
- android-background-workSkill
- android-data-persistenceSkill
- android-device-testingSkill
- android-e2e-verificationSkill
- android-ui-engineeringSkill
- api-and-interface-designSkill
- ci-cd-and-automationSkill
- code-review-and-qualitySkill
- code-simplificationSkill
- constraint-driven-developmentSkill
- context-engineeringSkill
- debugging-and-error-recoverySkill
- deprecation-and-migrationSkill
- doubt-driven-developmentSkill
- git-workflow-and-versioningSkill
- idea-refineSkill
- incremental-implementationSkill
- interview-meSkill
- observability-and-instrumentationSkill
- performance-optimizationSkill
- planning-and-task-breakdownSkill
- security-and-hardeningSkill
- shipping-and-launchSkill
- source-driven-developmentSkill
- spec-driven-developmentSkill
- test-driven-developmentSkill
- using-agent-skillsSkill
The file
We split this skill into the rules it gives an agent
4 rules. 0 are common, 3 are distinctive, and 1 is very specific to this project.
0
Common
Most of the 62 edited versions we read keep these.
3
Distinctive
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 13
Document the *why* behind decisions, not just the code.
- Distinctive: line 21
After a post-mortem or incident that changed the architecture
- Very specific: line 29
Match the existing convention first: Before creating an ADR, look for one already in the repo — existing ADRs, rules in …
- Distinctive: line 34
If the evidence conflicts, surface the conflict instead of silently adding another scheme.
“Common” is measured: kept by at least 6 in 10 of the 62 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Documentation and ADRs
Overview
Document the why behind decisions, not just the code. Architecture Decision Records (ADRs) capture the context, alternatives, and consequences of significant decisions so future developers understand why the system is shaped the way it is.
When to Use
- Making an architectural trade-off (e.g., Room vs DataStore, Compose vs XML)
- Changing a public API or module boundary
- Shipping a user-facing feature with non-obvious implementation choices
- Onboarding new developers to the project
- After a post-mortem or incident that changed the architecture
Skip when: The change is self-explanatory from the code and commit message.
Core Process
Architecture Decision Records (ADRs)
Match the existing convention first. Before creating an ADR, look for one already in the repo — existing ADRs, rules in
AGENTS.md/CLAUDE.md, ADR tooling such as an.adr-dirfile. An established convention overrides the defaults below:- Location and format — e.g.
docs/adr/,docs/architecture/decisions/, a MADR layout, anadr-toolssetup. Match the directory, extension, and markup. - Numbering and naming — continue the existing sequence and filename pattern; don't restart at 0001 or introduce a second scheme.
- Section headings — reuse the project's heading set rather than imposing this template's.
If the evidence conflicts, surface the conflict instead of silently adding another scheme.
- Location and format — e.g.
- With no convention, ADRs live in
docs/decisions/with sequential numbering:docs/decisions/ ├── 0001-use-compose-over-xml.md ├── 0002-adopt-mvi-for-complex-screens.md ├── 0003-room-migration-strategy.md └── 0004-modularization-approach.md - ADR template: (new ADRs start at
Proposed; move toAcceptedonce agreed)
# ADR-NNNN: Title
## Status
Proposed | Accepted | Deprecated | Superseded by ADR-XXXX
## Context
What is the issue or decision we're facing? What forces are at play?
## Decision
What did we decide to do?
## Alternatives Considered
### Alternative A: [Name]
- Pros: ...
- Cons: ...
### Alternative B: [Name]
- Pros: ...
- Cons: ...
## Consequences
### Positive
- ...
### Negative
- ...
### Risks
- ...- Never delete old ADRs — supersede them with new ones that reference the old decision:
## Status Superseded by [ADR-0007](0007-switch-to-kmp.md)
Inline Documentation
- Document intent, not mechanics:
// BAD: increments counter by one
counter++
// GOOD: Rate-limit API calls to avoid 429 responses from the backend.
// The backend enforces a 10-request-per-second limit per client.
if (requestCount >= MAX_REQUESTS_PER_SECOND) {
delay(rateLimitWindow)
}- When to add inline comments:
- Non-obvious business logic
- Platform workarounds (
// Workaround for API 28 camera permission bug) - Performance-critical code paths
- Regex patterns or complex algorithms
- When NOT to add comments:
- Code that reads clearly (self-documenting)
- Commented-out code (delete it — git has history)
- "TODO" without an issue reference (create the issue)
API Documentation
- Public APIs get KDoc:
/**
* Fetches the user's profile from the remote API, falling back to
* the local cache if the network is unavailable.
*
* @param userId The unique identifier of the user.
* @return The user profile, or `null` if not found in cache or remote.
* @throws NetworkException if the request fails and no cache exists.
*/
suspend fun getUserProfile(userId: String): UserProfile?- Document module boundaries — each module's
README.mdshould describe:- Purpose of the module
- Public API surface
- Dependencies (what it depends on, what depends on it)
Common Rationalizations
| Shortcut | Why It Fails |
| "The code is self-documenting" | Code shows what, not why. Trade-offs and constraints aren't in the code. |
| "We'll document later" | You won't. Context fades. Document decisions when you make them. |
| "ADRs are bureaucratic overhead" | A 10-minute ADR prevents hours of "why did we do it this way?" conversations. |
| "Everyone knows why we chose this" | Everyone who was in the room. New hires, future maintainers, and your future self don't. |
Red Flags
- Architectural decisions without ADRs
- Inline comments explain what instead of why
- Commented-out code blocks
- TODOs without issue references
- Public APIs without KDoc
- Stale documentation that contradicts current implementation
- ADRs deleted instead of superseded
- A second ADR location or numbering scheme introduced next to an existing one
Verification
- Significant architectural decisions have ADRs — in the project's existing ADR location and numbering, or
docs/decisions/if none exists - ADRs include context, alternatives, and consequences
- Old ADRs are superseded, not deleted
- Inline comments explain why, not what
- No commented-out code
- Public APIs have KDoc with
@param,@return,@throws - Module boundaries documented
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

