Adr Decision Extraction
/install adr-decision-extraction
ADR Decision Extraction
Extract architectural decisions from conversation context for ADR generation.
Detection Signals
| Signal Type | Examples |
|---|---|
| Explicit markers | [ADR], "decided:", "the decision is" |
| Choice patterns | "let's go with X", "we'll use Y", "choosing Z" |
| Trade-off discussions | "X vs Y", "pros/cons", "considering alternatives" |
| Problem-solution pairs | "the problem is... so we'll..." |
Extraction Rules
Explicit Tags (Guaranteed Inclusion)
Text marked with [ADR] is always extracted:
[ADR] Using PostgreSQL for user data storage due to ACID requirements
These receive confidence: "high" automatically.
AI-Detected Decisions
Patterns detected without explicit tags require confidence assessment:
| Confidence | Criteria |
|---|---|
| high | Clear statement of choice with rationale |
| medium | Implied decision from action taken |
| low | Contextual inference, may need verification |
Output Format
{
"decisions": [
{
"title": "Use PostgreSQL for user data",
"problem": "Need ACID transactions for financial records",
"chosen_option": "PostgreSQL",
"alternatives_discussed": ["MongoDB", "SQLite"],
"drivers": ["ACID compliance", "team familiarity"],
"confidence": "high",
"source_context": "Discussion about database selection in planning phase"
}
]
}
Field Definitions
| Field | Required | Description |
|---|---|---|
title |
Yes | Concise decision summary |
problem |
Yes | Problem or context driving the decision |
chosen_option |
Yes | The selected solution or approach |
alternatives_discussed |
No | Other options mentioned (empty array if none) |
drivers |
No | Factors influencing the decision |
confidence |
Yes | high, medium, or low |
source_context |
No | Brief description of where decision appeared |
Extraction Workflow
- Scan for explicit markers - Find all
[ADR]tagged content - Identify choice patterns - Look for decision language
- Extract trade-off discussions - Capture alternatives and reasoning
- Assess confidence - Rate each non-explicit decision
- Capture context - Note surrounding discussion for ADR writer
Hard gates
Run these in order after the workflow above and before returning output. Each step has an objective pass condition.
- Explicit
[ADR]inventory — Capture every[ADR]segment from the full source (verbatim in working notes). Pass: a second pass over the same source adds no new[ADR]blocks. - De-duplicate — Merge or drop inferred rows that repeat an explicit
[ADR]decision (see Merge Related Decisions). Pass: at most one row per distinct decision. - Schema validity — Serialized JSON matches Output Format and Field Definitions. Pass: parse succeeds; every
decisions[]item has non-emptytitle,problem,chosen_option;confidence∈ {high,medium,low};alternatives_discussedis an array (use[]if none); other optional fields per table. - Low-confidence audit — For any
confidence: "low",source_contextstates what was missing, weak, or contradictory. Pass: a reader can see why the rating is not higher.
Pattern Examples
High Confidence
"We decided to use Redis for caching because of its sub-millisecond latency
and native TTL support. Memcached was considered but lacks persistence."
Extracts:
- Title: Use Redis for caching
- Problem: Need fast caching with TTL
- Chosen: Redis
- Alternatives: Memcached
- Drivers: sub-millisecond latency, native TTL, persistence
- Confidence: high
Medium Confidence
"Let's go with TypeScript for the frontend since we're already using it
in the backend."
Extracts:
- Title: Use TypeScript for frontend
- Problem: Language choice for frontend
- Chosen: TypeScript
- Alternatives: (none stated)
- Drivers: consistency with backend
- Confidence: medium
Low Confidence
"The API seems to be working well with REST endpoints."
Extracts:
- Title: REST API architecture
- Problem: API design approach
- Chosen: REST
- Alternatives: (none stated)
- Drivers: (none stated)
- Confidence: low
Best Practices
Context Capture
Always capture sufficient context for the ADR writer:
- What was the discussion about?
- Who was involved (if known)?
- What prompted the decision?
Merge Related Decisions
If multiple statements relate to the same decision, consolidate them:
- Combine alternatives from different mentions
- Aggregate drivers
- Use highest confidence level
Flag Ambiguity
When decisions are unclear or contradictory:
- Note the ambiguity in
source_context - Set confidence to
low - Include all interpretations if multiple exist
When to Use This Skill
- Analyzing session transcripts for ADR generation
- Reviewing conversation history for documentation
- Extracting decisions from design discussions
- Preparing input for ADR writing tools
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install adr-decision-extraction - 安装完成后,直接呼叫该 Skill 的名称或使用
/adr-decision-extraction触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
Adr Decision Extraction 是什么?
Use when you need to mine a conversation, session transcript, or design discussion for architectural decisions before writing ADRs. Identifies problem-soluti... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 207 次。
如何安装 Adr Decision Extraction?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install adr-decision-extraction」即可一键安装,无需额外配置。
Adr Decision Extraction 是免费的吗?
是的,Adr Decision Extraction 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。
Adr Decision Extraction 支持哪些平台?
Adr Decision Extraction 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 Adr Decision Extraction?
由 Kevin Anderson(@anderskev)开发并维护,当前版本 v1.0.2。