mcpField
G
grill-with-docs

grill-with-docs

github.com/karasukaigan開発29037 回インストール24 週間前に更新
リポジトリ

grill-with-docs について

要件の明確化とドメインモデリングを支援するスキルです。一問ずつ質問し、コードや文書を確認して計画上の判断と用語を明確にします。用語集を随時更新し、条件を満たす場合に限ってADRを提案します。

主な機能

  1. 01一度に一問だけ尋ね、回答を待つ
  2. 02コードベースを調査して回答を確認
  3. 03CONTEXT.mdとADR文書を確認
  4. 04用語の不一致を指摘し、ドメイン語彙を明確化
  5. 05用語の確定に合わせてCONTEXT.mdを更新
  6. 06条件を満たす場合のみADRを提案

活用シーン

  1. 01実装前に計画上の判断を一つずつ明確化
  2. 02具体例でドメイン概念の境界を整理
  3. 03コードの動作と説明が一致するか確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/karasukaigan/skills-zh --skill grill-with-docs

インストール後、Claude Code で/grill-with-docsを入力して読み込まれたか確認します。

同梱ファイルADR-FORMAT.mdCONTEXT-FORMAT.md

詳細

プロジェクトの README より

无情地面试我关于这个计划的每个方面,直到我们达成共同理解。遍历设计树的每个分支,逐一解决决策之间的依赖关系。对于每个问题,提供你推荐的答案。

一次问一个问题,在继续之前等待每个问题的反馈。

如果可以通过探索代码库来回答问题,则探索代码库。

领域意识

在代码库探索期间,还要查找现有文档:

文件结构

大多数仓库只有一个上下文:

/
├── CONTEXT.md
├── docs/
│   └── adr/
│       ├── 0001-event-sourced-orders.md
│       └── 0002-postgres-for-write-model.md
└── src/

如果根目录存在 CONTEXT-MAP.md,则该仓库有多个上下文。映射指向每个上下文的所在位置:

/
├── CONTEXT-MAP.md
├── docs/
│   └── adr/                          ← 系统级决策
├── src/
│   ├── ordering/
│   │   ├── CONTEXT.md
│   │   └── docs/adr/                 ← 特定于上下文的决策
│   └── billing/
│       ├── CONTEXT.md
│       └── docs/adr/

惰性创建文件——仅当你有内容要写时才创建。如果不存在 CONTEXT.md,则在解析第一个术语时创建一个。如果不存在 docs/adr/,则在需要第一个 ADR 时创建它。

在会话期间

根据词汇表挑战

当用户使用与 CONTEXT.md 中现有语言冲突的术语时,立即指出。"你的词汇表将'取消'定义为 X,但你似乎指的是 Y——到底是哪个?"

精炼模糊语言

当用户使用模糊或重载的术语时,提出精确的标准术语。"你说的是'账户'——你指的是客户还是用户?这些是不同的东西。"

讨论具体场景

当讨论领域关系时,用特定场景进行压力测试。发明探测边缘情况的场景,迫使用户对概念之间的边界保持精确。

与代码交叉引用

当用户陈述某物的工作方式时,检查代码是否一致。如果发现矛盾,将其暴露出来:"你的代码取消整个订单,但你刚才说部分取消是可能的——哪个是正确的?"

内联更新 CONTEXT.md

当术语被解析时,立即更新 CONTEXT.md。不要批量处理——在它们发生时捕获它们。使用 CONTEXT-FORMAT.md 中的格式。

CONTEXT.md 应该完全没有实现细节。不要将 CONTEXT.md 视为规范、草稿板或实现决策的存储库。它只是词汇表。

谨慎提供 ADR

仅当以下三个条件都为真时才提供创建 ADR:

  1. 难以逆转——稍后改变主意的成本是有意义的
  2. 没有上下文时令人惊讶——未来的读者会想知道"他们为什么这样做?"
  3. 真正权衡的结果——存在真正的替代方案,你出于特定原因选择了一个

如果三个条件中任何一个缺失,跳过 ADR。使用 ADR-FORMAT.md 中的格式。

コメント