sync-docslisted
Install: claude install-skill kompiro/hane
# Sync Docs Skill
コードベースの現状を読み取り、陳腐化した参照用ドキュメントを更新する。
## 対象ドキュメントの決定
ホスト repo の **`CLAUDE.md`** に記載されたドキュメント表(または同等のパス一覧)を読み、対象ファイルを動的に決定する。典型的には以下のような項目が含まれる:
- README(`README.md` など)
- コアコンセプト・アーキテクチャ概要
- 構文・仕様リファレンス
- 要求・要件(requirements)
- API リファレンス
設計記録(ADR・Design Doc)や受け入れテスト記録は **対象外**(変更不可な履歴記録のため)。`CLAUDE.md` が無い repo では、ユーザーに対象ドキュメントを確認する。
## アーキテクチャ
2つの Explore エージェントを並列起動して差分を収集し、メインエージェントが更新案を生成する。
```
/sync-docs(メインエージェント)
├── Explore エージェント A: コードベース現状調査(並列起動)
├── Explore エージェント B: 対象ドキュメント読み込み(並列起動)
└── メインエージェント: 差分分析 → 更新案生成 → ユーザー確認 → PR 作成
```
## 手順
### 0. 対象ドキュメントの収集
`CLAUDE.md` のドキュメント表をパースし、対象ファイル一覧を生成する。`CLAUDE.md` が存在しない / ドキュメント���が無い場合は、ユーザーに対象を確認する。
加えて、**リポジトリルート直下の `README*.md` 全件**(`README.md`, `README.ja.md`, `README.zh-CN.md` 等)も自動的に対象に含める(`CLAUDE.md` 表で言及が無くても)。サブディレクトリの `README*.md` は再帰しない。`README.md` を **canonical(source of truth)** として扱い、それ以外は localized variant とみなす。
### 1. サブエージェントを並列起動する
以下の2つの Explore エージェントを **同時に(1メッセージで)** 起動する。
---
#### サブエージェント A — コードベース現状調査
**プロンプト(要旨)**:
> ホスト repo のソースルート(host の `package.json` の `workspaces` / `main` / `module` フィールドや、典型的な `src/` `packages/*/src/` 等から検出)を調査し、現在実装されている機能を網羅的に把握せよ。
>
> `CLAUDE.md` のドキュメント表で挙がっている各ドキュメントが扱うトピックに対応する実装観点で調べ、結果を報告せよ。例えば「構文リファレンス」が表にあるなら lexer / parser を見て対応するキーワード・ブロック・プロパティを抽出し、「要求・要件」が表にあるなら主要な機能・UI コンポーネントを抽出する。
>
> 結果は以下の形式で返せ(カテゴリは対象ドキュメントに応じて適宜追加せよ):
> ```
> CATEGORY|サブキー|説明
> ```
>
> 例:
> ```
> SYNTAX_KEYWORD|キーワード名|説明
> SYNTAX_BLOCK|ブロック名|説