decision
Use this skill when the user asks you to start, extend, or record a decision record — ideation around a design problem, architectural choice, trade-off…
Skill by asabina-de
Install
Works with Claude Code. Read the repository before you give any tool access to your data.
npx agentmarket install skill/asabina-de-decision
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
Use cases: documents, design, writing, productivity
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/decision
Tools it pre-approves 20
From allowed-tools in SKILL.md: the agent may use these without asking you each time.
TaskWebSearchWebFetchAskUserQuestionGlobGrepReadWriteEditmcp__claude_ai_Linear__list_issuesmcp__claude_ai_Linear__get_issuemcp__claude_ai_Linear__list_comments
Show 8 more
mcp__claude_ai_Linear__list_documentsmcp__claude_ai_Linear__get_documentmcp__claude_ai_Linear__save_documentmcp__claude_ai_Linear__list_projectsmcp__claude_ai_Linear__get_projectmcp__claude_ai_Linear__list_teamsmcp__claude_ai_Linear__get_teammcp__claude_ai_Linear__search_documentation
What's inside
- Skill name
decision- Description
- Use this skill when the user asks you to start, extend, or record a decision record — ideation around a design problem, architectural choice, trade-off analysis, open question, or a decision that needs long-term awareness. Trigger for prompts like 'take a note on X', 'design note for X', 'let's think through X', 'capture the options for X', 'document this decision', 'explore trade-offs for X', 'start a dnote for X', 'write up the problem of X', 'we should think about X and park it', 'note the constraints around X', 'ideate on X'. Also trigger when the user invokes `/decision`. The skill reads existing records, related Linear tickets, and the repo's TODO.md, researches open questions in parallel via subagents, and writes (or extends) a decision record in `docs/decisions/` — OR, for strategy/process/team-facing content, a Linear document. It batches clarifying questions into ONE up-front round so the user can walk away and return to a finished artifact. Do NOT trigger for quick factual questions (use qsearch or answer directly), for code changes (just do the work), for small one-liners that belong in TODO.md (add the line directly without invoking the skill), for operational status updates on existing Linear tickets, or for creating Linear issues from an existing record's action items (that's the issue skill).
- License
- CC-BY-4.0
- Allowed tools
- Task, WebSearch, WebFetch, AskUserQuestion, Glob, Grep, Read, Write, Edit, mcp__claude_ai_Linear__list_issues, mcp__claude_ai_Linear__get_issue, mcp__claude_ai_Linear__list_comments, mcp__claude_ai_Linear__list_documents, mcp__claude_ai_Linear__get_document, mcp__claude_ai_Linear__save_document, mcp__claude_ai_Linear__list_projects, mcp__claude_ai_Linear__get_project, mcp__claude_ai_Linear__list_teams, mcp__claude_ai_Linear__get_team, mcp__claude_ai_Linear__search_documentation
- Instructions
- 384 lines in SKILL.md · view on GitHub
Agent Skills spec issues
- description: longer than 1024 characters
Files (1)
- SKILL.md
SKILL.md (first lines)
# decision
Draft or extend a **decision record** — a living, evolving document that records a problem, the options considered, the reasoning, the chosen approach, and any open questions that may be revisited. Decision records are the canonical surface for long-lived architectural thinking in this workflow. Records start in `status: exploring` and graduate to `status: decided` when the decision is made.
The defining design principles of this skill are:
> **Batch every clarifying question into one up-front round, then run to completion uninterrupted.**
>
> **Persist findings to the decision record as the single source of truth. No parallel work-plan files. No duplicate task representations.**
>
> **Prefer extending an existing record to creating a new one. Duplication erodes the knowledge base.**
The user should be able to kick this off, answer a small batch of up-front questions, walk away, and return to a decision record they can review, edit, and then hand off to the `issue` skill for execution.
## How this fits the broader workflow
```
prompt
│
▼
decision skill → decision record (with action items in canonical sections) ← you are here
│
▼
[HITL gate: human reviews, edits, greenlights the record]
│
▼
issue → proposes tickets in chat → confirms with the user → creates tickets
│
▼
Linear: LIN-NNN annotations written back into the record
```
This skill produces the artifact that `issue` consumes. The two skills share no runtime state — the decision record file is the only interface between them. After `decision` finishes, the human reviews and edits the record. Only then does `issue` read it.
## Context on the artifact
A decision record is a markdown file in `docs/decisions/` following the MADR-style convention:
- **Filename:** `nnnn-kebab-slug.md` where `nnnn` is the next serial number in the directory. Check `ls docs/decisions/ | sort -n | tail -1` before creating. New records start with the next available number.
- **Front matter:** YAML block with `title`, `tags` (lowercase, kebab-case where multi-word), `status` (`exploring | decided | superseded | deprecated`), `decision` (one-line TL;DR, filled when status becomes `decided`), `review_date` (YYYY-MM-DD), `related_to` (list of serial numbers), `supersedes` (serial number or empty).
- **Status Log:** table tracking lifecycle transitions with `Status | Date | Author | Related Tickets | Notes`.
- **Template sections:** `## Context`, `## Exploration`, `## Decision`, `## Consequences`, `## Confirmation`. Records may add custom sections like `## Open Questions`, `## Trigger Points`, `## Action items`, `## Upstream References`, `## Related Design Notes`.
New records start in `status: exploring` with the Decision, Consequences, and Confirmation sections empty or carrying `_No decision yet._`. When the decision is made (HITL), the status transitions to `decided` and those sections are populated.
### Slug generation protocol
The filename slug must be:
- **Clearly scoped** — captures the core concern, not a vague umbrella term
- **Reproducible** — different wordings of the same problem should converge on the same slug
- **General enough to survive reframing** — if the solution pivots, the slug should still apply
- **Stable** — once created, never renamed (the serial number is the stable reference anyway)
Heuristic: extract the 2–4 most distinguishing nouns/noun-phrases from the problem statement. Drop verbs, articles, and generic qualifiers. Join with hyphens. Examples:
- "Should we consolidate decisions/ and design-notes/?" → `decisions-dir-consolidation`
- "Which APM tool should we use?" → `select-apm`
- "How should we handle .envrc in repos?" → `envrc-template-pattern`
## Tools declared in allowed-tools
- Parallel subagents — investigate independent web research questions concurrently
- Web search and page fetching — direct research from the main agent when needed
- User clarification — the one-shot batched-clarification mechanism
- File search and reading — scope discovery across `docs/decisions/**`, `docs/TODO.md`, `CLAUDE.md`
- File writing and editing — creating new records and extending existing ones
- Linear MCP read tools — discovering related tickets and existing Linear docs
- Linear document saving (e.g. `save_document`) — for the strategy/process routing path
The `allowed-tools` declaration pre-approves tool *categories*. For scoped file writes, the user should configure Claude Code settings to pre-approve paths (see **Required grants** at the bottom).
## Phase 0 — Preflight
### Verify repo convention
- `docs/decisions/` exists and is writable. If not, stop and ask: "This repo doesn't have `docs/decisions/`. Bootstrap it from the kb convention, or bail?" Do not silently create the directory.
- Read the repo's `CLAUDE.md` / `AGENTS.md` at the root for project-specific HITL policies (especially around git and external dependencies).
- Note whether `docs/TODO.md` exists (it may not — the skill degrades gracefully).
### Permission preflight
Read the Claude Code settings files that may exist (in override order):
1. `~/.claude/settings.json`
2. `.claude/settings.json` (workspace)
3. `.claude/settings.local.json` (local override)
Check `permissions.allow` for entries matching `Write(docs/decisions/**)` and `Edit(docs/decisions/**)`. If either grant is missing, warn the user:
> The following permissions are not pre-approved in your Claude Code settings:
> - `Write(docs/decisions/**)` (needed to create new records)
> - `Edit(docs/decisions/**)` (needed to extend existing records)
>
> Each write will trigger a permission prompt, breaking the walk-away UX.
>
> To fix, add to your settings:
> ```jsonc
> { "permissions": { "allow": ["Write(docs/decisions/**)", "Edit(docs/decisions/**)"] } }
> ```
Offer two options to the user: **Proceed with prompts** / **Bail — I'll configure first**. If the grants are present, skip this entirely.
### Tool availability
If web search, page fetching, parallel subagents, or the Linear MCP tools are unavailable for policy or environment reasons, degrade gracefully: produce a note based on existing context only, and flag in the Status Log that web/Linear/subagent research was skipped.
## Phase 1 — Interpret and route
Restate the prompt in one or two sentences. Be explicit about the kind of design question it is.
Then apply the **routing test** from the asabina kb framework:
- **Code-adjacent** — architecture, implementation, tech stack, APIs, deployment, testing, tooling, developer experience, data model, security patterns → **repo** (`docs/decisions/`)
- **Strategy / process / team** — business strategy, positioning, marketing/GTM, team process, product prioritization rationale, cross-project org decisions → **Linear document** (saved via Linear's document API, e.g. `save_document`)
- **Ambiguous** → flag explicitly; ask in Phase 2 rather than silently defaulting
The kb's key test: *"Does this decision affect how code is written, deployed, or maintained?"* → repo. *"Is this about what to build or how to operate as a team?"* → Linear.
Write out the routing decision explicitly in your Phase 4 "locked decisions" commitment so the user can see and override.From asabina-de/kb, CC-BY-4.0.
More from asabina-de/kb
- 0.587score
comment
asabina-de
Use this skill when another skill or the user needs to post a structured comment to a Linear issue.
SkillAFreshness: A★ 1Claude Code +9 - 0.587score
design
asabina-de
Use this skill when the user wants to do visual design work — exploring brand graphics, creating Figma compositions, iterating on visual concepts, or working…
SkillAFreshness: A★ 1Claude Code +9 - 0.574score
pair
asabina-de
Use this skill when the user wants to pair-program on a ticket — working through a Linear issue collaboratively with the AI driving and the human navigating.
SkillAFreshness: A★ 1Claude Code - 0.558score
align
asabina-de
Use this skill when the user wants to bring a repo's conventions into alignment with the KB standards.
SkillAFreshness: A★ 1Claude Code - 0.549score
issue
asabina-de
Use this skill when the user asks you to turn a design note's action items into Linear issues, OR when the user wants to iterate on an existing Linear issue…
SkillAFreshness: A★ 1Claude Code - 0.549score
pr
asabina-de
Use this skill when the user wants to create a pull request for the current branch.
SkillAFreshness: A★ 1Claude Code +9 - 0.497score
figma-conventions
asabina-de
Use this skill when the user is about to do design work in Figma — creating or editing components, building layouts, working with variables/tokens, or…
SkillCFreshness: C★ 1Claude Code +9 - 0.472score
imagegen
asabina-de
Use this skill when the user wants to generate design concept images, visual references, or mood boards for design exploration.
SkillCFreshness: C★ 1Claude Code +9 - 0.467score
ping
asabina-de
Use this skill when the user says something nonsensical, says 'ping', 'blah', or sends a message without clear intent or additional context.
SkillCFreshness: C★ 1Claude Code +9 - 0.464score
commit
asabina-de
Use this skill when the user asks for a commit message suggestion, staging advice, or guidance on how to structure a commit — or when the user invokes…
SkillCFreshness: C★ 1Claude Code +9
Signals
- Stars
- 1
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Jul 14, 2026 (3 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- CC-BY-4.0
- Repository
- github.com/asabina-de/kb
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from asabina-de
- 0.587score
comment
asabina-de
Use this skill when another skill or the user needs to post a structured comment to a Linear issue.
SkillAFreshness: A★ 1Claude Code +9 - 0.587score
design
asabina-de
Use this skill when the user wants to do visual design work — exploring brand graphics, creating Figma compositions, iterating on visual concepts, or working…
SkillAFreshness: A★ 1Claude Code +9 - 0.574score
pair
asabina-de
Use this skill when the user wants to pair-program on a ticket — working through a Linear issue collaboratively with the AI driving and the human navigating.
SkillAFreshness: A★ 1Claude Code - 0.558score
align
asabina-de
Use this skill when the user wants to bring a repo's conventions into alignment with the KB standards.
SkillAFreshness: A★ 1Claude Code - 0.549score
issue
asabina-de
Use this skill when the user asks you to turn a design note's action items into Linear issues, OR when the user wants to iterate on an existing Linear issue…
SkillAFreshness: A★ 1Claude Code - 0.549score
pr
asabina-de
Use this skill when the user wants to create a pull request for the current branch.
SkillAFreshness: A★ 1Claude Code +9
Cite this page
decision skill. Agent Mart. https://agentmart.dev/skills/asabina-de-decision (last updated 2026-10-24)