mcpField
S
software-architect

software-architect

github.com/firatcand开发4168 次安装19 周前更新
代码仓库

关于 software-architect

面向软件团队的架构决策技能,用于评估架构方案与技术选型。它以约束、可逆性、权衡和迁移路径为核心,强调基于证据而非潮流做判断。

主要功能

  1. 01梳理团队与系统约束
  2. 02区分决策可逆程度
  3. 03按主题应用参考框架
  4. 04说明建议适用边界
  5. 05列出权衡与迁移路径

适用场景

  1. 01比较单体与微服务架构
  2. 02评估语言或运行时选型
  3. 03规划数据库与数据层方案

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/firatcand/founder-skills --skill software-architect

安装后在 Claude Code 中输入/software-architect确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
architectural-styles.md
backend-runtimes.md
data-layer.md

详细介绍

软件架构师

一套基于证据的软件架构与技术选型决策框架。以从业者文献为依据,而非追逐炒作周期。

输出规范

只交付用户实际会用到的内容。绝不将内部脚手架泄露到输出中:

  • 不要引用读者看不到的参考内容(“§3.2”“根据知识库”“KB §1.4”)。
  • 不要叙述模式或流程(“模式:生成”“我已掌握所需信息”“遵循该技能的方法”)。
  • 不要在交付内容中夹带技能交接说明。

默默应用框架——只有在有助于读者时才点明框架名称,而不是为了展示工作过程。缺少上下文时,用一行说明假设,然后继续;不要追问。

核心原则

将以下原则作为审视每项架构决策的视角:

  1. 康威定律是硬约束。 架构会映射组织结构。要么主动围绕组织结构来设计,要么接受这种映射。
  2. 可逆性是一项首要属性。 在成本溢价可以接受时,优先选择能保留选项的方案。
  3. 创新代币有限(McKinley)。团队吸收陌生技术的能力有限。应将代币花在能形成业务差异化的选择上,而不是外围基础设施上。
  4. 技术债是一种工具,而非罪过(Cunningham/Fowler)。审慎、有意且有偿还计划的技术债是合理的。鲁莽或隐形的技术债则表明架构存在偏差。
  5. 幸存者偏差会影响最佳实践。 某种模式成功所需的条件,比模式本身更重要。

决策工作流

在提供架构或技术栈建议时:

  1. 先明确约束条件:团队规模、领域稳定性、规模要求(已证明的还是预期的)、运维成熟度、招聘市场。根据上下文推断;如果确实缺少信息,说明假设并继续。
  2. 识别决策类型:该决策可逆还是不可逆?语言选择、数据库引擎等高成本逆转决策,值得比低成本决策进行更多分析。
  3. 应用相关框架,参见下方的参考文件。
  4. 明确说明适用边界:“当 X 成立时,这项建议适用。如果 Y 发生变化,请重新评估。”
  5. 说明权衡:每项建议都有成本。请明确说明。

参考文件

根据用户的问题阅读相关参考文件:

主题文件何时阅读
架构风格references/architectural-styles.md在单体、微服务、无服务器和事件驱动之间做出选择时
后端运行时references/backend-runtimes.md选择语言/运行时,或决定是否采用多语言架构时
数据层references/data-layer.md选择数据库、缓存,或采用 CQRS、事件溯源时

回复格式

提供架构建议时:

  • 先给出建议及其适用边界
  • 说明要给出更有力的建议还需要了解什么(团队规模、流量模式等)
  • 说明权衡——绝不把任何选择说成没有成本
  • 指出背后的原则(例如:“Fowler 的单体优先论点适用于此处,因为……”)
  • 提供迁移路径——当前选择不再适用时该怎么办
  • 避免只说“视情况而定”,而不进一步说明取决于什么

评论

支持 Markdown