Token导航 LogoToken导航TokenDH.com
研究检索需要联网github未标认证来源可访问许可证需确认审计通过

easysdd-decisionsEasySDD 决策

Agent Skill

easysdd-decisions 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

2,187

周安装

93

GitHub Stars

147

下载量

766
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

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

请帮我安装这个 Agent Skill:easysdd-decisions(EasySDD 决策)
来源仓库:https://github.com/liuzhengdongfortest/easysdd
仓库路径:skills/easysdd-decisions
安装命令:
npx skills add https://github.com/liuzhengdongfortest/easysdd --skill easysdd-decisions
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

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

skills.shnpx skills
npx skills add https://github.com/liuzhengdongfortest/easysdd --skill easysdd-decisions

简介

easysdd-decisions 用于归档项目中的重要技术决策,包括选型、架构方向和硬约束等。

  • 适用于记录 tech-stack、architecture、constraint 和 policy 四类决定,防止知识丢失。
  • 每条决策需包含“是什么、为什么、替代方案、后果”四要素,避免 AI 替用户拍板。
  • 产物存于 easysdd/compound/,文件名带日期和 slug,frontmatter 标注 doc_type 和 category。
  • 建议定期 review 决策文档,评估修改影响,确保团队理解来龙去脉。

SKILL.md

easysdd-decisions

项目里"有意做出的选择"——技术选型、架构决定、长期约束、编码规约——特别容易丢失。它不会触发报错、没人会注意到它消失了,但消失的代价很具体:

  • 新人(或六个月后的自己)不知道约束的来龙去脉,在"已经决定过的问题"上重复耗时讨论
  • AI 在没有决策上下文的情况下给出"合理但与项目规约冲突"的方案
  • 当约束需要修改时找不到当初的理由,无法评估修改的影响范围

本工作流的职责就是让每一条重要的"已经决定了"都有完整存档:是什么、为什么、考虑过什么替代方案、后果是什么

共享路径与命名约定看 easysdd/reference/shared-conventions.md。本技能的产物写入 easysdd/compound/,文件命名 YYYY-MM-DD-decision-{slug}.md,frontmatter 带 doc_type: decision

四种决策类型

每条决策文档归属下面四类之一,在 frontmatter 的 category 字段标注:

类型适用情境示例
tech-stack技术 / 库 / 框架的选型"使用 Vite 而非 Webpack"、"状态管理用 Pinia"
architecture系统结构、模块划分、数据流方向"前后端完全分离"、"事件总线只在顶层使用"
constraint硬约束——某些事情不允许"不引入 jQuery"、"所有 API 调用必须通过统一的 http 模块"
convention软规约——某些事情统一这样做"组件命名用 PascalCase"、"副作用集中在 composables/"

类型在实际查询时各有用途:

  • 查"我们用什么工具"→ tech-stack
  • 查"系统是怎么组织的"→ architecture
  • 查"这里为什么不能改"→ constraint
  • 查"统一的做法是什么"→ convention

文档格式

决策文档的 frontmatter、正文模板和示例已拆到同目录 reference.md。本技能只保留流程约束:

  • category 只允许 tech-stack / architecture / constraint / convention
  • status 只允许 active / superseded / deprecated
  • 考虑过的替代方案相关文档 是可选节,用户说"没什么"就省略

工作流阶段

Phase 1:识别决策(和用户对话)

一个问题确认关键信息,不要给用户一张大表格:

  1. "这个决定是关于什么的?(技术选型 / 架构结构 / 约束 / 规约)" → 确定 category
  2. "这个决定是已经拍板了,还是还在讨论中?" → 本工作流只归档已拍板的决定,讨论中的不归档(建议用户讨论完再来)。理由是讨论中的方案如果归档,下次有人查到会以为已经定了,反而误导
  3. 如果用户描述不够清楚,问"当时为什么选这个而不选别的?"

Phase 1.5:查重叠与意图分流(必做)

easysdd/reference/shared-conventions.md §6 第 5 / 6 条执行:

  • 用户话里含"改 / 更新 / 推翻 / 某条决策 / 某个选型"或明确指向某份旧决策 → 直接走更新或 supersede 路径。决策文档的特性是:结论本身变更几乎总要 supersede(旧结论要留痕,不能原地覆盖);只是补背景 / 替代方案 / 影响描述时才走"更新已有条目"
  • 否则用下面"搜索工具"按 category + 关键词查一遍,命中相近旧决策时把候选列给用户,让用户选:更新 / supersede / 确实不同主题

判断 update vs supersede 的简单规则:结论变了 → supersede;结论没变只补充 → update。拿不准就问用户。

Phase 2:提炼要点(一次一个问题)

按下面顺序问,用户可以随时说"没什么"跳过:

  1. "当时面对的背景或问题是什么?"
  2. "决定的结论是什么?"(用户已经说清楚就跳过)
  3. "为什么选这个?最重要的理由是什么?"
  4. "有没有考虑过其他方案?为什么没选?"(鼓励写,哪怕只是直觉——后人最想知道的就是"为什么不选 X")
  5. "这个决定对后续工作有什么影响或约束?"

Phase 3:确认内容(AI 起草,用户 review)

  • AI 根据对话起草完整文档(含 YAML frontmatter + 所有正文节)
  • 一次性展示给用户 review,别逐节展示逐节问——用户拿到完整版才能判断节之间的逻辑是否自洽
  • 用户确认后写入文件;有修改就按用户意见调整再写

Phase 4:归档

  • 新建路径:文件写入 easysdd/compound/,命名 YYYY-MM-DD-decision-{slug}.md,frontmatter 顶部带 doc_type: decision(见 reference.md
  • 更新路径:写回 Phase 1.5 定位到的原文件,frontmatter 补 updated: YYYY-MM-DD
  • supersede 路径:按 shared-conventions.md §6 第 5 条处理;旧文档 status=superseded 并加 superseded-by(和本技能守护规则 #2 一致)
  • 写完后报告完整文件路径

Phase 5:相关工作流更新提示

写完后检查这两项,有则提示用户(不自作主张改文件——这两个文件都是高影响入口):

  1. easysdd/architecture/DESIGN.md 的"关键架构决定"节是否应该引用这条决策——architecturetech-stack 类型通常应该
  2. AGENTS.md 的"禁止事项"或"代码规范"节是否应该追加这条约束——constraintconvention 类型通常应该

搜索工具

完整语法和示例见 easysdd/reference/tools.md。本节只列 decisions 特有的典型查询。
# 列出所有当前有效的决策
python easysdd/tools/search-yaml.py --dir easysdd/compound --filter doc_type=decision --filter status=active

# 按类型 + 状态组合筛选
python easysdd/tools/search-yaml.py --dir easysdd/compound --filter doc_type=decision --filter category=constraint --filter status=active

# 归档后查重叠
python easysdd/tools/search-yaml.py --dir easysdd/compound --filter doc_type=decision --query "{关键词}" --json

和项目架构文档的关系

architecture/DESIGN.md 是架构总览(高层次、跨模块、长期稳定);decision 文档是单条决策的完整存档(含理由和替代方案)。DESIGN.md 的"关键架构决定"节应链接到相关的 decision 文档(Phase 5 的可发现性检查会提示用户更新)。


守护规则

归档类工作流共享守护规则(只增不删、宁缺毋滥、不替用户写、可发现性、归档后查重叠)见 easysdd/reference/shared-conventions.md 第 6 节。本技能特有或细化的规则:
  1. 只归档已拍板的决定——讨论中的方案不归档;"也许我们应该用 X"不归档
  2. status=superseded 不等于删除——被取代的决策保留原文,加 superseded-by 字段,正文顶部加一行"[已取代] 见 {新文档 slug}"
  3. 不替用户写理由——用户说不出理由的写"未做系统评估",不要 AI 编造看起来合理的理由(编造的理由会变成历史"事实"误导后人)
  4. 不主动修改 AGENTS.md 和 DESIGN.md——Phase 5 只提示,由用户决定是否追加。这两个文件的内容必须项目 owner 拍板
  5. 跨技能一致性——某条 decision 文档和 AGENTS.md 的禁止事项描述不同时,以 decision 文档为详细版,AGENTS.md 为摘要版,两者应链接,不应矛盾
  6. 只认自己的 doc_type——只读写 doc_type: decision 的文档,不感知 compound/ 目录里其他 doc_type 的文档

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

36.47%
按下载量换算279

Claude

27.36%
按下载量换算210

Cursor

18.42%
按下载量换算141

Gemini CLI

8.49%
按下载量换算65

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

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

来源信息

继续浏览同类 Skills