← ClaudeAtlas

dry-ssot-textlisted

Collapses repeated explanations of one concept into a single source of truth plus cross-references, while keeping navigation aids like TOCs and progress tables. Use when an AI-generated document (plan / design doc / RFC / PR description) has grown long with the same concept explained in multiple places, or when the user says "この文書の重複をまとめて" / "この文書を DRY にして" / "同じ説明が何回も出てくるので整理して". Code duplication / refactoring is out of scope (documents only).
YasuakiOmokawa/skills · ★ 1 · Data & Documents · score 72
Install: claude install-skill YasuakiOmokawa/skills
# DRY/SSOT Text Refactor AI 生成の長文 (plan / design doc / RFC / PR / README) で同一概念が複数箇所で繰り返される症状を、1 箇所に集約 (Single Source of Truth) + 他箇所をクロスリファレンスに置換することで解消する。同時に navigation aid (TOC / checklist / progress table) は残す。 **核心原則**: 「同じ事実を 2 度書かない」だが「ナビゲーション目的の重複は別物」。 ## Task complexity tier | Tier | 判定 | アクション | |---|---|---| | **skip** | 文書 <100 行 / 重複箇所数 ≤2 / 外向き説明資料 (顧客向け・ブログ) / API ref のような網羅列挙文書 | **skip** (集約効果薄) | | **lite** | 100-300 行, 重複 3-5 箇所 | dry-run 省略、直接 Edit 可 (4. の dry-run レポートは出力しない) | | **standard** (default) | 300+ 行 or 共有前文書 or 重複 6+ 箇所 | dry-run レポート必須 → 承認後 Edit | | **deep** | 600+ 行 / 複数 doc 跨り (plan + design doc 一致) / 既存 cross-reference に依存 | dry-run + 各 reference 先のアンカー疎通検証 + 適用後の `grep -c` 重複ゼロ確認 | **複数 tier 該当時の優先**: 1 文書が複数 tier の条件に該当する場合 (例: 55 行で skip の「<100 行」に該当するが重複 3 箇所で lite の「3-5 箇所」にも該当) は、**重複箇所数を優先**する。skip は「重複箇所数 ≤2」が必須条件 — 行数が短くても重複が 3+ なら lite 以上として集約に進む。 **tier 名規約**: 4 tier (skip / lite / standard / deep) は本 skill 内の判定軸であり、他 skill の "standard" / "lite" 命名と直接対応しない (本 skill では 300+ 行が standard、100-300 行は lite)。other skill から「standard median な文書」と呼ばれる 200 行・3 箇所重複ケースは本 skill では **lite** tier として処理する。 ## Core Pattern: 必要重複 vs 不要重複 | 種類 | 例 | DRY 化するか | 理由 | |---|---|---|---| | **不要: 説明文** | 同じ設計判断を PR1/PR2/PR3 で再記述 | **する** | 1 箇所更新で済む | | **不要: 表/コード** | 同じ table が 2 箇所、片方に「再掲」 | **する** | 1 箇所更新で済む | | **不要: 引用文** | 公式ドキュメントの同一一節を 2 箇所引用 | **する** | 引用元に集約 | | **必要: TOC / 進捗 table** | 章立て一覧、PR 進捗表 | **しない** | 俯瞰 navigation | | **必要