architecture-decision-records
Capture architectural decisions made during coding sessions as structured ADRs.
Skill by petemcw
Chalk Labs
Need help deploying architecture-decision-records?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/petemcw-architecture-decision-records
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/architecture-decision-records
What's inside
- Skill name
architecture-decision-records- Description
- Capture architectural decisions made during coding sessions as structured ADRs. Auto-detects decision moments, records context, alternatives considered, and rationale. Maintains an ADR log so future developers understand why the codebase is shaped the way it is.
- License
- MIT
- Instructions
- 139 lines in SKILL.md · view on GitHub
Files (3)
- SKILL.md
- openai.yml · agents/
- adr-format.md · references/
SKILL.md (first lines)
# Architecture Decision Records
Capture architectural decisions as they happen during coding sessions. Instead of decisions living only in Slack threads, PR comments, or someone's memory, this skill produces structured ADR documents that live alongside the code.
## When to Activate
- User explicitly says "let's record this decision" or "ADR this"
- User chooses between significant alternatives (framework, library, pattern, database, API design)
- User says "we decided to..." or "the reason we're doing X instead of Y is..."
- User asks "why did we choose X?" (read existing ADRs)
- During planning phases when architectural trade-offs are discussed
All three of these must be true:
1. Hard to reverse: the cost of changing your mind later is meaningful
2. Surprising without context: a future reader will look at the code and wonder "why on earth did they do it this way?"
3. The result of a real trade-off: there were genuine alternatives and you picked one for specific reasons
If a decision is easy to reverse, skip it: you'll just reverse it. If it's not surprising, nobody will wonder why. If there was no real alternative, there's nothing to record beyond "we did the obvious thing."
## ADR Format
Use the lightweight ADR format referenced in [ADR Format](./references/adr-format.md).
## Workflow
### Capturing a New ADR
When a decision moment is detected:
1. **Initialize (first time only)** — if `.farseer/adr/` does not exist, ask the user for confirmation before creating the directory, a `README.md` seeded with the index table header (see ADR Index Format below), and a blank `template.md` for manual use. Do not create files without explicit consent.
2. **Identify the decision** — extract the core architectural choice being made
3. **Gather context** — what problem prompted this? What constraints exist?
4. **Document alternatives** — what other options were considered? Why were they rejected?
5. **State consequences** — what are the trade-offs? What becomes easier/harder?
6. **Assign a number** — scan existing ADRs in `.farseer/adr/` and increment
7. **Confirm and write** — present the draft ADR to the user for review. Only write to `.farseer/adr/NNNN-decision-title.md` after explicit approval. If the user declines, discard the draft without writing any files.
8. **Update the index** — append to `.farseer/adr/README.md`
### Reading Existing ADRs
When a user asks "why did we choose X?":
1. Check if `.farseer/adr/` exists — if not, respond: "No ADRs found in this project. Would you like to start recording architectural decisions?"
2. If it exists, scan `.farseer/adr/README.md` index for relevant entries
3. Read matching ADR files and present the Context and Decision sections
4. If no match is found, respond: "No ADR found for that decision. Would you like to record one now?"
### ADR Directory Structure
```
.farseer/
└── adr/
├── README.md ← index of all ADRs
├── 0001-use-nextjs.md
├── 0002-postgres-over-mongo.md
├── 0003-rest-over-graphql.md
└── template.md ← blank template for manual use
```
### ADR Index Format
```markdown
# Architecture Decision Records
| ADR | Title | Status | Date |
| ----------------------------------- | --------------------------------------------- | -------- | ---------- |
| [0001](0001-use-nextjs.md) | Use Next.js as frontend framework | accepted | 2026-01-15 |
| [0002](0002-postgres-over-mongo.md) | PostgreSQL over MongoDB for primary datastore | accepted | 2026-01-20 |
| [0003](0003-rest-over-graphql.md) | REST API over GraphQL | accepted | 2026-02-01 |
```
## Decision Detection Signals
Watch for these patterns in conversation that indicate an architectural decision:
**Explicit signals**
- "Let's go with X"
- "We should use X instead of Y"
- "The trade-off is worth it because..."
- "Record this as an ADR"
**Implicit signals** (suggest recording an ADR — do not auto-create without user confirmation)
- Comparing two frameworks or libraries and reaching a conclusion
- Making a database schema design choice with stated rationale
- Choosing between architectural patterns (monolith vs microservices, REST vs GraphQL)
- Deciding on authentication/authorization strategy
- Selecting deployment infrastructure after evaluating alternatives
## What Makes a Good ADR
### Do
- **Be specific** — "Use Prisma ORM" not "use an ORM"
- **Record the why** — the rationale matters more than the what
- **Include rejected alternatives** — future developers need to know what was considered
- **State consequences honestly** — every decision has trade-offs
- **Keep it short** — an ADR should be readable in 2 minutes
- **Use present tense** — "We use X" not "We will use X"
### Don't
- Record trivial decisions — variable naming or formatting choices don't need ADRs
- Write essays — if the context section exceeds 10 lines, it's too long
- Omit alternatives — "we just picked it" is not a valid rationale
- Backfill without marking it — if recording a past decision, note the original date
- Let ADRs go stale — superseded decisions should reference their replacement
## ADR Lifecycle
```text
proposed → accepted → [deprecated | superseded by ADR-NNNN]
```
- **proposed**: decision is under discussion, not yet committed
- **accepted**: decision is in effect and being followed
- **deprecated**: decision is no longer relevant (e.g., feature removed)From petemcw/farseer, MIT.
More from petemcw/farseer
- 0.570score
illustrations
petemcw
Generate hand-drawn, Xiaohei-style in-article illustrations, or a shot list of where an article needs them.
SkillAFreshness: AClaude Code +9 - 0.570score
git-guardrails
petemcw
Set up Claude Code hooks to block dangerous Git commands (push, reset --hard, clean, branch -D, etc.) before they execute.
SkillAFreshness: AClaude Code +9 - 0.570score
prototype
petemcw
Build a throwaway but polished prototype that answers a design question.
SkillAFreshness: AClaude Code +9 - 0.567score
triage
petemcw
Move issues through a state machine of issue roles, categorize, verify, interview if needed, and write agent-ready briefs.
SkillAFreshness: AClaude Code +9 - 0.565score
interviewer
petemcw
Question the user relentlessly about a plan, decision, or an idea to uncover hidden assumptions, risks, and edge cases.
SkillAFreshness: AClaude Code +9 - 0.565score
repo-setup
petemcw
One-time interactive setup to configure a repository for autonomous development.
SkillAFreshness: AClaude Code +9 - 0.561score
farseer
petemcw
Plan a new project or a chunk of work too big for one agent session as a shared map of decision tickets on your issue tracker, then resolve them one at a time…
SkillAFreshness: AClaude Code +9 - 0.558score
humanize
petemcw
Cut out AI tells from any writing.
SkillAFreshness: AClaude Code +9 - 0.555score
planner
petemcw
Create structured implementation plans for autonomous TDD development.
SkillAFreshness: AClaude Code +9 - 0.555score
orchestrate
petemcw
Execute implementation plans with parallel TDD workers.
SkillAFreshness: AClaude Code +9 - 0.544score
domain-modeling
petemcw
Build and sharpen a project's domain model.
SkillAFreshness: AClaude Code +9 - 0.538score
teach
petemcw
Teach the user a new skill or concept, within this workspace.
SkillAFreshness: AClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Oct 15, 2026 (15 days ago)
- Last release
- Oct 15, 2026 (15 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/petemcw/farseer
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from petemcw
- 0.570score
illustrations
petemcw
Generate hand-drawn, Xiaohei-style in-article illustrations, or a shot list of where an article needs them.
SkillAFreshness: AClaude Code +9 - 0.570score
prototype
petemcw
Build a throwaway but polished prototype that answers a design question.
SkillAFreshness: AClaude Code +9 - 0.570score
git-guardrails
petemcw
Set up Claude Code hooks to block dangerous Git commands (push, reset --hard, clean, branch -D, etc.) before they execute.
SkillAFreshness: AClaude Code +9 - 0.567score
triage
petemcw
Move issues through a state machine of issue roles, categorize, verify, interview if needed, and write agent-ready briefs.
SkillAFreshness: AClaude Code +9 - 0.565score
repo-setup
petemcw
One-time interactive setup to configure a repository for autonomous development.
SkillAFreshness: AClaude Code +9 - 0.565score
interviewer
petemcw
Question the user relentlessly about a plan, decision, or an idea to uncover hidden assumptions, risks, and edge cases.
SkillAFreshness: AClaude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get architecture-decision-records running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
architecture-decision-records skill. Agent Mart. https://agentmart.dev/skills/petemcw-architecture-decision-records (last updated 2026-10-24)