Communityライティング&編集github.com

E0min/docanchor

ドキュメントを、それが記述するコードに固定します。13 のコミット時チェック、リンクグラフ、リンクを書き換える移動/分割ツールを提供します。エージェントが主な読者となるリポジトリ向けです。

docanchor とは?

このスキルは、コードベースとドキュメントの間の一貫性を保つための強力なツールです。デプロイ前のバッチ実行を想定しており、構造検証(pnpm docs:validate)では検出できない問題に焦点を当てます。具体的には、コードとドキュメントの双方向の不一致(コードにあってドキュメントにない「欠落」、ドキュメントにあってコードにない「幻覚」)、ADR(Architecture Decision Record)間の矛盾、コードから読み取れる値の重複書き、期限切れの計画書やADR、ガイドに混入した経験記録など、13 のルールに基づいたチェックを行います。検出結果は findings.md に定型フォーマットで追加され、修正自体は行わず、後続の PR で対処されることを前提としています。LLM 単体の精度は約 0.6 であることから、3 件に 1 件は誤検出と見なすよう設計されており、ルールの追加・削除も実績ベースで厳格に管理されます。このスキールは主に Claude Code や Codex などの AI エージェントが利用することを想定しており、エージェントがドキュメントを信頼してコード変更を行えるようにサポートします。

対応~Claude Code~Codex CLI~Cursor
npx skills add E0min/docanchor

Installed? Explore more ライティング&編集 skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

ドキュメント lint

デプロイバッチの直前に一度実行します。構造検査(pnpm docs:validate)ではキャッチできないもののみを対象とします。

最も強力なモデルで実行してください。 ルールを見つける能力とルールに従う能力は別物です。

読み取り範囲

全体は読みません。広く読むとノイズとなるドキュメントが増え、精度が低下します。

  1. 今回のデプロイに関わるコードパスを pnpm docs:related <パス…> に渡してルーティングされたドキュメントを取得します。
  2. そのドキュメントがリンクしている ADR とその領域のアクティブな計画書。
  3. pnpm docs:validate が検証日から90日超過として警告している永続ドキュメント。
  4. docs/findings.md の未解決項目。

確認すること

  • コードとドキュメントの不一致を双方向で。 コードにあってドキュメントにないもの(欠落)と、ドキュメントにあってコードにないもの(幻覚)を別々に確認します。片方だけ見ると半分を見逃します。
  • ADR 矛盾の候補。 同じ領域の Accepted ADR が二つ、逆の結論でありながら代替関係にない場合。 pnpm docs:links <ADR> で代替チェーンを確認します。
  • コードと重複した値の表。 コードから読み取れる値やリストをドキュメントが転記していないか。
  • 90日以上経過した保留計画書。 中止するか再開するかを問う項目として報告します。
  • 14日以上経過した Proposed ADR。 判定が滞っています。
  • ガイドに混ざった経験記録。 「やってみたらダメだった」類のものは docs/flows/ へ移動すべきです。
  • docs/operations/current-state.md の期限切れ行。 確認日が古い行は成功ではなく未確認です。

出力

docs/findings.md に項目を追加します。一項目は五行です。

- 発見 2026-09-04 · docs/policies/xxx.md
  主張: (ドキュメントが何と言っているか)
  根拠: (コードパスまたは ADR 番号)
  提案: (何をすればよいか)
  範囲: (今回のデプロイで修正するか、延期するか)

修正は行いません。解決はその作業を行う PR が行い、その PR が項目を削除します。

読み取った永続ドキュメントの 検証日 を今日に更新します。実際にコードと対照したドキュメントのみ更新します。対照していないドキュメントに今日の日付を記入すると、最新であるという偽のシグナルになります。

予算

見つけたもののうち3つに1つは誤検出だと見なして始めます。LLM 単独での不一致検出の精度は約0.6です。確信が持てない場合は、項目にその旨を記述します。

レポートの最初の行に「未解決の findings 数と最も古い項目の経過日数」を記述します。

ルールの追加と削除

このリストに項目を追加するには、その項目が実際にキャッチした事例を提示する必要があります。根拠のない項目は追加しません。同じ失敗が12ヶ月間発生しておらず、pnpm docs:harness-eval で役に立たない場合は削除します。

関連スキル