Communitygithub.com

luci-efe/skills

在功能、重构或设计存在规格不足或相互冲突的方案时使用——在处理涉及数据形态、安全边界、公共接口或影响多个文件的工作之前,请应用此技能。不适用于微小的拼写错误修复。

skills 是什么?

此AI Agent技能(名为 "luci-efe/skills",核心为 `/crucible` 流程)旨在帮助开发者或AI Agent在着手编码前,系统性地理清复杂、模糊或存在争议的设计问题。它尤其适用于那些涉及数据形状、安全边界、公共接口或跨多个文件的变更,而不适用于简单的拼写错误修复。 该技能通过一个由五个严格步骤组成的结构化流程来工作: 1. **只读不提问**:首先仅基于现有代码陈述事实(包括路径和行号),这构成了后续所有决策的基础。 2. **优先复用**:在对任何新代码进行提案之前,遵循一个优先级阶梯——首先考虑是否可以跳过或删除,其次考虑是否可复用现有组件或模式,再次考虑标准库或已有依赖,最后才考虑编写最小量的新代码,并明确回避猜测性的选项或抽象。 3. **五轴分析**:对变更的五个关键维度进行逐个分析:范围(明确纳入和排除的内容)、数据与状态不变量、故障模式、安全与信任边界、以及验证证明。每个轴被标记为“已解决”(有代码或需求支撑)或“待定”。 4. **精准提问**:仅针对“待定”的设计领域向人类提问,每次最多三个问题,并附带AI的推荐方案及其权衡,以便人类可以快速决策或确认。 5. **记录决策**:将最终结果以Markdown文档的形式记录在项目的 `.ramos/decisions/<topic>.md` 路径下,包含事实、复用决策、各轴的最终状态、范围排除项以及证明命令。 完成标准是所有设计维度的状态均已明确(已解决、已假定或已回答),且生成了决策记录。如果存在未解决的、会改变设计的问题,则流程会被阻塞,并报告给人类,而不会开始编写代码。 该技能通常用于Claude Code、Cursor、Codex等AI Agent开发平台,通过强制性但高效的结构来防止过早编码和设计遗漏,从而提升复杂软件变更的质量和稳定性。

兼容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/luci-efe/skills/tree/HEAD/skills/crucible

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

/crucible

先阅读,最后再提问。人类只回答代码无法解答的问题。

步骤 1:阅读(暂不提问)

以 path:line 的形式记录代码已经明确决定的事实。后续所有提问必须基于这些事实仍无法解答的情况。

步骤 2:决策阶梯(在提出任何新方案之前)

对于所请求变更的每一个部分,在第一个“是”处停止:

  1. 能否跳过或删除? 需求是否已满足或不再需要?→ 如实说明。
  2. 仓库中是否已有? 现有的辅助函数、组件或模式 → 复用(注明 path:line)。
  3. 是否在标准库或现有依赖中? → 使用它。
  4. 仅此之后: 编写最精简的新代码,不包含任何推测性选项或抽象。

步骤 3:五个维度

对于每个维度,标记其为 已确定(引用代码或请求)或 未确定:

  1. 范围:包含哪些内容,明确排除哪些内容。
  2. 数据与状态不变量:必须始终成立的条件。是否需要数据迁移?
  3. 失败模式:在输入错误、超时、部分失败、重试时会发生什么。
  4. 安全与信任边界:谁可以调用此功能,使用什么数据,校验在哪里进行。
  5. 验证证明:哪种检查能证明任务已完成(供 /proof 使用)。

步骤 4:仅询问未确定的问题

  • 是否有维度未确定,且其答案会影响设计?→ 提问。每批最多 3 个问题。每个问题需附上你的推荐答案及其权衡,以便人类只需说“可以”。
  • 维度未确定但影响不大?→ 自行决定,并记录为 assumed(假设)。
  • 所有维度都已确定?→ 不提问,直接进入步骤 5。
  • 是否存在值得让其他模型参与的真正架构分叉?→ 以当前记录作为制品提交 /council。

步骤 5:记录

编写 .ramos/decisions/<topic>.md:

# <主题>(<日期>)
## 事实(来自代码)        - …(path:line)
## 决策阶梯结果           - 复用 X / 标准库 Y / 新建 Z(原因)
## 维度                     | 维度 | 已确定/假设/已回答 | 决策 | 来源 |
## 排除范围             - …
## 证明                    - /proof 将运行的确切命令

完成条件

当每个维度都已确定、假设或已回答,记录已存在,且证明命令已被命名时,任务完成。如果存在未回答且影响设计的问题 → 停止并向人类报告 blocked。不要开始编码。

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

相关技能