Token导航 LogoToken导航

Agent Skill · 效率

bookforge-architecture-decision-record-creator(Bookforge 建筑决策记录创建者)

bookforge-architecture-decision-record-creator 用于整理文档、README、Markdown 和说明材料,适合在 OpenClaw 中需要把零散信息整理成结构清晰的文档时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

bookforge-architecture-decision-record-creator 是效率类 Agent Skill,可用宿主为 OpenClaw,通过ClawHub获取,权限为调用外部服务;许可证为 MIT-0,第三方扫描已通过,按安装量在效率类的 21,003 个 Skill 里排第 15,645。

总安装 3,060周安装 125GitHub Stars 公开资料未说明下载 980核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
MIT-0
版本
1.0.0

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:bookforge-architecture-decision-record-creator(Bookforge 建筑决策记录创建者)
来源仓库:https://github.com/quochungto/bookforge-architecture-decision-record-creator
安装命令:
openclaw skills install bookforge-architecture-decision-record-creator
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install bookforge-architecture-decision-record-creator

这个 Skill 是做什么的

效率类 Skill 把重复的整理、汇总、转换工作交给助手完成,减少手工复制粘贴。

bookforge-architecture-decision-record-creator 生成七部分结构化架构决策记录 (ADR)。适用于记录关键架构选择及其理由,便于团队协作追溯。模板包含现状、选项、决策与后果等要素。输出为 Markdown 格式,可直接纳入文档仓库。决策内容需人工确认,工具仅提供格式化框架。

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 OpenClaw;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 openclaw skills install bookforge-architecture-decision-record-creator;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要调用外部服务,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

bookforge-architecture-decision-record-creator 怎么安装?

在终端执行 openclaw skills install bookforge-architecture-decision-record-creator。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

bookforge-architecture-decision-record-creator 支持哪些 AI 工具?

公开资料标注支持 OpenClaw。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

bookforge-architecture-decision-record-creator 需要什么权限?

权限级别是调用外部服务。该 Skill 可能调用第三方服务、云服务或外部模型 API,使用前需要确认账号、额度、数据发送范围和服务条款。

bookforge-architecture-decision-record-creator 是免费的吗?

来源标注的许可证是 MIT-0。本站不代收任何费用,也不托管安装包;能否商用、要不要署名,以许可证原文为准。

bookforge-architecture-decision-record-creator 用的人多吗?

公开数据是累计安装 3,060 次,近一周安装 125 次,下载 980 次。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

bookforge-architecture-decision-record-creator 安全吗?

第三方扫描结果为通过,但这只覆盖已知的静态检查项,不能替代自己读一遍源码和安装命令。

值得选的地方和要先想清楚的地方

值得选的地方

  • 专注 OpenClaw 一种宿主,触发方式和使用习惯不用来回切换。
  • 许可证明确为 MIT-0,商用和分发边界好判断。
  • 第三方扫描已通过,常见的高风险行为没有命中。

先想清楚的地方

  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 OpenClaw,想直接扩展它能力的人。
  • 需要处理效率类任务、又不想每次都手写提示词的人。
  • 需要许可证清楚、并且有第三方扫描结果的团队项目。

不太适合

  • 需要厂商级技术支持和 SLA 的生产系统。

效率类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
github

GitHub 代码协作 · OpenClaw

7,632,918545需要联网MIT-0通过
nano-pdf

Nano PDF 文档 · OpenClaw

4,249,476231需要联网MIT-0通过
auto-updater

自动更新程序 · OpenClaw

2,964,063386操作浏览器MIT-0通过
video-frames

视频帧 · OpenClaw

2,621,304112需要联网MIT-0通过
gemini

Gemini 助手 · OpenClaw

2,547,39648需要联网MIT-0有提醒
bookforge-architecture-decision-record-creator

Bookforge 建筑决策记录创建者 · 本页

3,060—调用外部服务MIT-0通过

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

name
architecture-decision-record-creator
description
Create structured Architecture Decision Records (ADRs) with 7 sections to document architecture decisions with full justification. Use this skill whenever the user has made or needs to make an architecture decision, wants to document why a technical choice was made, is choosing between technologies or patterns, needs to create an ADR, or is experiencing repeated debates about past decisions — even if they don't explicitly mention "ADR" or "architecture decision record.
version
1.0.0
homepage
https://github.com/bookforge-ai/bookforge-skills/tree/main/books/fundamentals-of-software-architecture/skills/architecture-decision-record-creator
metadata
{"openclaw":{"emoji":"📚","homepage":"https://github.com/bookforge-ai/bookforge-skills"}}
status
draft
depends-on
source-books
title
Fundamentals of Software Architecture
authors
["Mark Richards", "Neal Ford"]
chapters
[19]
tags
[software-architecture, architecture, decisions, documentation, adr, governance]
execution
tier
1
mode
full
inputs
description
An architecture decision that needs to be documented — the choice, the context, and the alternatives
tools-required
[Write]
tools-optional
[Read, Grep, Glob]
mcps-required
[]
environment
Any agent environment. If a codebase exists, can check for existing ADRs and suggest numbering.

Architecture Decision Record Creator

When to Use

An architecture decision has been made (or needs to be made) and it should be documented. Typical situations:

  • A technology or pattern choice has been decided — needs formal documentation
  • A decision keeps getting revisited ("didn't we already decide this?") — the Groundhog Day anti-pattern
  • A stakeholder asks "why did we choose X?" and nobody can answer — missing documentation
  • Before implementing a significant technical change — document BEFORE building
  • An existing decision needs to be superseded by a new one

Before starting, verify:

  • Is there actually a DECISION to document? (If it's still an open question, use architecture-tradeoff-analyzer first to analyze trade-offs, then come back here to document the result)
  • Is this decision architecturally significant? (Step 1 below helps determine this)

Context

Required Context (must have before proceeding)

  • The decision: What was decided (or what needs to be decided). Ask the user if not stated.
  • The alternatives: What options were considered. If only one option was considered, that's a red flag — push back and identify at least one alternative.

Observable Context (gather from environment if available)

  • Existing ADRs: Check for prior decisions in the project

→ Look for: docs/adr/, docs/decisions/, architecture/, *.adr.md, files matching ADR-*.md or *-adr.md → If found: determine the next sequential number, check for related/conflicting prior decisions → If none: this will be ADR 1, suggest establishing an ADR directory

  • Codebase context: What technologies, patterns, and structures currently exist

→ Look for: package.json, pyproject.toml, docker-compose, CI configs → This informs the Context section of the ADR

Default Assumptions

  • If no existing ADR numbering → start at ADR 1
  • If no approval process exists → default to "Accepted" status (solo dev or small team)
  • If compliance mechanism is unclear → suggest manual review as the starting point

Process

Step 1: Assess Architectural Significance

ACTION: Determine if this decision is architecturally significant by evaluating against 5 dimensions.

WHY: Not every technical decision needs an ADR. Over-documenting trivial choices creates noise and dilutes the value of ADRs. A decision is architecturally significant if it affects at least one of these dimensions — and it's the significance that justifies the effort of formal documentation.

Evaluate the decision against:

DimensionQuestion
StructureDoes this affect the patterns or styles of architecture?
Nonfunctional characteristicsDoes this impact a quality attribute that matters to the system?
DependenciesDoes this create or change coupling between components/services?
InterfacesDoes this affect how services or components are accessed?
Construction techniquesDoes this impact platforms, frameworks, tools, or processes?

IF the decision affects at least one dimension → it's architecturally significant, proceed to write the ADR. IF it affects none → it's a technical implementation detail, not an architecture decision. Document it in code comments or a tech spec instead.

IMPORTANT: Show your work. Include the significance assessment as a visible section in your output BEFORE the ADR itself. This is not just an internal check — it demonstrates rigor and helps stakeholders understand why this decision warrants formal documentation.

Output the assessment as:

## Significance Assessment
| Dimension | Affected? | How |
|-----------|:---------:|-----|
| Structure | Yes/No | {explanation} |
| Nonfunctional characteristics | Yes/No | {explanation} |
| Dependencies | Yes/No | {explanation} |
| Interfaces | Yes/No | {explanation} |
| Construction techniques | Yes/No | {explanation} |

**Verdict:** Architecturally significant — affects {N} of 5 dimensions.

CAUTION: Don't assume technology decisions aren't architectural. If choosing Kafka over RabbitMQ directly supports a performance or scalability characteristic, it IS an architecture decision — the technology choice supports the architecture.

Step 2: Determine Status

ACTION: Set the appropriate ADR status based on the decision's approval context.

WHY: Status isn't just metadata — it communicates where the decision is in its lifecycle and what action is needed. Setting the wrong status (e.g., "Accepted" when approval is needed) can lead to unauthorized implementations. Setting "Proposed" when the architect can self-approve adds unnecessary bureaucracy.

StatusWhen to use
ProposedDecision needs approval from a governance body or senior architect
AcceptedDecision is approved and ready for implementation
Superseded by ADR NDecision has been replaced (link to the new ADR)
RFC (with deadline)Architect wants broader input before deciding. MUST include a deadline date — otherwise it becomes an open-ended discussion that never concludes (Analysis Paralysis).

Escalation triggers — the decision should be Proposed (not self-approved) when:

  • Cost exceeds the team's authority (significant purchases, licensing)
  • Cross-team impact — it affects other teams or systems
  • Security implications — any security-relevant change needs governance review

Step 3: Write the Context Section

ACTION: Describe the forces at play — what situation is forcing this decision? Include the alternatives considered.

WHY: Context serves double duty: it explains WHY the decision is needed AND documents the architecture. A future developer reading this ADR learns both the decision and the architectural context it applies to. Keep it concise — if alternatives need detailed analysis, add a separate Alternatives section or reference a trade-off analysis.

Format: A clear, concise statement of the situation + the alternatives.

Good: *"The order service must pass information to the payment service. This could be done using REST (synchronous) or asynchronous messaging via Kafka."*

Bad: *"We need to figure out how services should communicate."* (Too vague — which services? What are the options?)

Before writing context, diagnose the situation for anti-patterns. Check if the scenario shows signs of:

  • Covering Your Assets — Has this decision been deferred repeatedly? Is the architect afraid to commit?
  • Groundhog Day — Is this a decision that was already made but nobody recorded WHY, so it's being revisited?
  • Email-Driven Architecture — Was a prior decision made but lost in email/Slack, so it's being re-made?

If an anti-pattern is present, NAME IT explicitly in the Context section and note how this ADR addresses it. For example: *"This decision is being re-made because the original rationale (ADR-12) did not document WHY the monolith was chosen — a classic Groundhog Day anti-pattern. This ADR includes full justification to prevent recurrence."*

Step 4: Write the Decision Section

ACTION: State the decision in active, commanding voice with full justification emphasizing WHY.

WHY: "Why is more important than how" (Second Law of Software Architecture). Anyone can look at the system and figure out HOW it works. What they can't figure out is WHY it was built that way. Without WHY, future developers may undo good decisions — like the architect who replaced gRPC with messaging for "better decoupling," not knowing the original gRPC choice was specifically to reduce latency, causing timeouts throughout the system.

  • Use affirmative, commanding voice: "We will use..." not "I think we should..."
  • Lead with the decision, then justify
  • Include BOTH technical AND business justification
  • Apply the business value litmus test: if the decision provides no business value (cost savings, time to market, user satisfaction, or strategic positioning), reconsider whether it should be made at all

Step 5: Write the Consequences Section

ACTION: Document BOTH positive and negative impacts of the decision.

WHY: Every architecture decision has trade-offs — this is the First Law. Documenting only positives is dishonest and sets up future surprises. Documenting negatives explicitly forces the architect to think about whether the impacts outweigh the benefits. It also prevents the Groundhog Day anti-pattern — when someone questions the decision later, the consequences are already documented with the reasoning.

For each consequence, indicate whether it's positive or negative:

  • Positive: What improves because of this decision?
  • Negative: What gets worse or becomes more complex? What new risks are introduced?
  • Trade-off: What are we accepting in exchange for the benefits?

Step 6: Write the Compliance Section

ACTION: Specify HOW the decision will be measured and governed.

WHY: A decision without enforcement is a suggestion. Many architecture decisions erode over time because nobody checks whether they're being followed. The Compliance section forces the architect to think about governance at decision time, not as an afterthought. This is the difference between "we decided to use layered architecture" and "we decided to use layered architecture, AND here's the ArchUnit test that enforces it."

Two types of compliance:

TypeWhen to useExample
ManualDecision is hard to check automatically, involves judgment"Review service boundaries during quarterly architecture review"
Automated fitness functionDecision can be verified programmatically"ArchUnit test ensures shared services reside in the services layer"

For automated compliance, specify:

  • How the fitness function would be written
  • Where the test lives
  • How and when it's executed (CI pipeline, pre-commit, scheduled)

Step 7: Write the Notes Section

ACTION: Add metadata: original author, approval date, last modified, approvers, supersession history.

WHY: Notes provide the audit trail. When a decision is questioned months later, the Notes section shows who made it, who approved it, and what changed. This is especially important in regulated environments where decision provenance matters.

Inputs

  • The decision to document (from user or from a completed trade-off analysis)
  • Context: what alternatives were considered, what constraints apply
  • Optionally: existing ADR directory for numbering and cross-referencing

Outputs

Architecture Decision Record

## Significance Assessment
| Dimension | Affected? | How |
|-----------|:---------:|-----|
| Structure | Yes/No | {explanation} |
| Nonfunctional characteristics | Yes/No | {explanation} |
| Dependencies | Yes/No | {explanation} |
| Interfaces | Yes/No | {explanation} |
| Construction techniques | Yes/No | {explanation} |

**Verdict:** Architecturally significant — affects {N} of 5 dimensions.

---

# ADR {N}: {Short Descriptive Title}

## Status
{Proposed | Accepted | Superseded by ADR N | RFC, Deadline YYYY-MM-DD}

## Context
{Clear, concise description of the situation and forces at play.
What alternatives were considered?}

## Decision
{Active voice. Affirmative. Full justification emphasizing WHY.
Both technical and business justification.}

## Consequences

### Positive
- {What improves}

### Negative
- {What gets worse or becomes more complex}

### Trade-offs
- {What we're accepting in exchange}

## Compliance
{How this decision will be enforced}
- **Type:** Manual review | Automated fitness function
- **Mechanism:** {Specific enforcement mechanism}
- **Frequency:** {When/how often compliance is checked}

## Notes
- **Author:** {name}
- **Date:** {YYYY-MM-DD}
- **Approved by:** {name(s), if applicable}
- **Last modified:** {YYYY-MM-DD}
- **Supersedes:** {ADR N, if applicable}
- **Superseded by:** {ADR N, if applicable}

Key Principles

  • WHY over HOW — The Decision section's most powerful aspect is the justification. Anyone can see how a system works; only the ADR explains why it was built that way. Without WHY, good decisions get undone by well-meaning but uninformed future developers.
  • Decisions without enforcement are suggestions — The Compliance section is what separates an ADR from a wish. If you can automate compliance (fitness functions, ArchUnit tests), do it. If not, schedule manual reviews. But never leave enforcement unspecified.
  • Both positive AND negative consequences — Every decision has trade-offs. Documenting only positives is dishonest. The negative consequences, acknowledged upfront, prevent surprise later and provide ammunition when someone asks "did you consider X?"
  • Name the anti-pattern when you see it — If a team avoids deciding (Covering Your Assets), revisits decisions repeatedly (Groundhog Day), or loses decisions in email (Email-Driven Architecture), name the dysfunction. These three anti-patterns form a progressive chain — overcoming one often reveals the next.
  • Last responsible moment, not last possible moment — Decide when you have enough information to justify the choice, but before development teams are blocked. Too early = premature commitment. Too late = analysis paralysis. The sweet spot is "last responsible moment."
  • Business value litmus test — If a decision provides no business value (cost, time to market, user satisfaction, strategic positioning), reconsider making it. Architecture decisions exist to serve business outcomes, not architectural purity.

Examples

Scenario: Documenting a messaging decision for an auction system Trigger: "We decided to use asynchronous messaging between the order and payment services. Can you write an ADR for this?" Process: Assessed significance — affects structure (async vs sync), dependencies (service coupling), and nonfunctional characteristics (performance, reliability). Set status: Accepted (small team, self-approved). Context: order → payment communication, REST vs async messaging. Decision: "We will use asynchronous messaging via RabbitMQ" with WHY: reduces latency from 3,100ms to 25ms for review posting, decouples services. Consequences: positive (responsiveness, decoupling), negative (complex error handling for bad content). Compliance: automated test verifying no direct REST calls between these services. Output: Complete ADR with all 7 sections, filed as ADR-42.

Scenario: Superseding a previous technology decision Trigger: "We originally chose gRPC for service communication but now want to switch to messaging. There's an existing ADR for the gRPC decision." Process: Assessed significance — affects structure and dependencies. Created new ADR with status "Accepted, supersedes ADR 23." Documented WHY the original decision (latency reduction) is no longer the priority and why decoupling now matters more. Explicitly noted the consequence: latency will increase, and upstream timeouts must be reconfigured. Updated ADR 23 status to "Superseded by ADR 45." Output: New ADR-45 + updated status on ADR-23, creating a traceable decision history.

Scenario: Decision that needs broader input Trigger: "I think we should adopt event sourcing for our audit trail, but I want the team's input before committing." Process: Assessed significance — affects structure (event store pattern), construction techniques (new tooling). Set status: RFC, Deadline 2026-04-15. Wrote Context explaining the audit requirements and alternatives (event sourcing vs append-only table vs CDC). Decision section presents the architect's recommendation with justification, inviting comments. Noted in Compliance: "if adopted, automated test verifying all state changes emit events." Output: ADR in RFC status with deadline, ready for team review. After deadline, architect incorporates feedback and moves to Accepted.

References

License

This skill is licensed under CC-BY-SA-4.0. Source: BookForge — Fundamentals of Software Architecture by Mark Richards, Neal Ford.

Related BookForge Skills

Install related skills from ClawhHub:

  • clawhub install bookforge-architecture-tradeoff-analyzer

Or install the full book set from GitHub: bookforge-skills

平台分布

OpenClaw

82.37%
按下载量换算807

安全审计

VirusTotal

通过

ClawScan

通过

Static analysis

通过

权限和风险

调用外部服务

该 Skill 可能调用第三方服务、云服务或外部模型 API,使用前需要确认账号、额度、数据发送范围和服务条款。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills