Help us improve
Share bugs, ideas, or general feedback.
From repowise
Queries and records architectural decisions (the 'why' behind code) using Repowise. Activates on decision markers like WHY:, DECISION:, ADR: and when making architectural changes.
npx claudepluginhub repowise-dev/repowise --plugin repowiseHow this skill is triggered — by the user, by Claude, or both
Slash command
/repowise:architectural-decisionsThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Repowise captures architectural decisions — the *why* behind how code is built.
Captures architectural decisions as structured ADR files during development sessions. Detects decision moments, records context and trade-offs, and maintains a searchable decision log.
Captures architectural decisions in Claude Code sessions as structured ADRs. Auto-detects choices between alternatives and maintains a docs/adr log for codebase rationale.
Creates Architecture Decision Records (ADRs) documenting technical decisions, context, alternatives considered, and consequences. Use for architectural choices, library/framework selections, or system component designs.
Share bugs, ideas, or general feedback.
Repowise captures architectural decisions — the why behind how code is built.
get_why has four modes — pick by what you pass:
get_why(query="why is auth using JWT?") — keyword + semantic decision search.get_why(query="src/auth/service.py") — decisions governing that file, plus
its origin story and an alignment score (does the file still follow its own ADRs?).get_why(query="why was caching added?", targets=["src/auth/cache.py"]) —
target-anchored search; decisions touching the targets get boosted.get_why() — the decision-health dashboard.Decisions are mined from eight sources (ADR files, CHANGELOG, PR/commit bodies,
inline markers, git archaeology, README/docs, code comments, and the doc pass)
and linked by supersedes / refines / relates_to / conflicts_with edges,
so a single answer can return a whole lineage chain. When no decision exists for
a path, get_why falls back to git archaeology so the call is never empty.
Call get_why(query="X").
get_why(query="the specific area you're changing") to find existing decisions that govern that area.Call get_why() with no arguments to get the decision-health dashboard:
The same signals surface in the CLI via repowise decision health, and you can
review auto-proposed decisions with repowise decision confirm.
If you see # WHY:, # DECISION:, # TRADEOFF:, or # ADR: comments in code, call get_context(targets=["that_file.py"]) to see the full decision record with context and affected modules.
If the user makes an architectural decision during the conversation, suggest: "Want to record this decision? Add a # DECISION: comment in the relevant code, or run repowise decision add to capture it formally."