mcpField
W
wiki-ingest

wiki-ingest

github.com/djalmajr生産性475 回インストール5 週間前に更新
リポジトリ

wiki-ingest について

既存のプロジェクト Wiki に資料を取り込むスキルです。検索、人による確認、ページの振り分け、要約、インデックス更新を案内し、言語や対象読者の規約を保ちます。

主な機能

  1. 01資料の確認と要点抽出
  2. 02QMD検索、未設定時はgrep
  3. 03人による承認ステップ
  4. 04対象読者別のページ整理
  5. 05資料要約とインデックス更新
  6. 06リンクと矛盾の重点確認

活用シーン

  1. 01議事録や文書のWikiへの取り込み
  2. 02新資料を反映する既存ページの特定
  3. 03Wikiページ更新と資料状態の追跡

MCP 対応

利用可能な場合、関連するWikiページの検索にQMDのMCPクエリツールを優先し、grepも代替手段として使います。

インストール

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

$npx skills add https://github.com/djalmajr/skills --skill wiki-ingest

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

詳細

取り込み — ソースを処理して Wiki に反映する

フォーマット規約、フロントマター、命名、言語については wiki/CONVENTIONS.md に従ってください。

言語

成果物はユーザーの言語で作成してください。適切な文法と、必要なダイアクリティカルマークや文字体系固有の文字を使用してください。ユーザーの言語が不明な場合は、出力を生成する前に確認してください。

プロジェクトルート

このスキルは、エージェントの現在の作業ディレクトリではなく、プロジェクトルート(作業対象のリポジトリ)を基準にしたパスに成果物を書き込みます。

  • プロジェクト内から実行する場合は、このスキルに記載されている相対パスを使用してください。
  • 別のディレクトリ(例:隣接するリポジトリ、またはプロジェクトが別の場所にある場合)から実行する場合は、すべての成果物パスの先頭に <project-root>/ を付けてください。
  • プロジェクトルートが明確でない場合は、書き込む前にハーネスの質問ツールを使ってユーザーに確認してください。

プロンプト

CLAUDE.md / AGENTS.md のプロジェクト全体の規約(「Skill Prompting Conventions」)に従ってください。以下の判断が必要な場面では、ハーネスの構造化質問ツール — AskUserQuestion(Claude Code)、ask_user_question(Codex)、または question(OpenCode)— を使用してください。

判断事項構造化質問にする理由推奨される選択肢
新しい内容を統合する既存ページ(または新規作成)Wiki の構成に影響するため一覧から選ぶ · 新規作成
ソースを分割する対象のフォルダー(複数選択可)分離を維持するためbusiness · apps · ops · data
個々の項目を強調するか、省略するか(複数選択可)反映する内容に影響するため見つかった項目から選択

自由形式のプロンプト(構造化質問ツールを使用しないもの):

  • ページタイトル
  • 概要文
  • タグの値

一時停止なしモード:ユーザーがスキル実行中の確認を明示的に無効にしている場合は、構造化プロンプトをすべて 未解決の質問(または同等のセクション)に記載し、作業を中断せずに進めてください。

クエリ言語の調整

ソースと既存の Wiki ページを照合する場合は、ユーザーやソースの言語とは限らない Wiki の言語で検索してください。.wiki-guardrails.yml の query_language または language から Wiki の言語を判定し、ガードレールがない場合は Wiki のフロントマターまたはインデックスを確認してください。製品名、ファイル名、API、スキーマ名、コード識別子は変更しないでください。

  • QMD の intent:、vec:、hyde: は Wiki の言語に翻訳してください。
  • 翻訳されずに記載される可能性がある正確なソース用語は lex: に残してください。
  • 対象ページが明らかに別の言語を使用している場合を除き、Wiki の成果物は Wiki の言語で作成・更新してください。
  • 進捗や質問はユーザーの言語で伝えてください。

検索 — 利用可能な場合は QMD を優先

新しいソースを反映する既存ページを検索する場合、この Wiki で QMD が設定されていれば QMD(ローカルのハイブリッド検索)を使用してください。リポジトリごとのセットアップは一度だけです。docs/wiki/qmd-setup.md を参照してください。

  • 利用可能な場合は、grep/glob の代わりに mcp__qmd__query(MCP)または qmd query --json --files(CLI)を使用してください。
  • QMD には、新しいソースのトピックを説明する intent: 行を必ず渡してください。既存ページとの照合精度が大幅に向上します。
  • QMD が設定されていない場合に限り、grep/Glob に切り替えてください。

取り込みが完了したら、所有者に qmd update(新しいコレクションを追加した場合は qmd embed)を実行して、新しいページをインデックスに反映するよう伝えてください。これらのコマンドを自動実行してはいけません。

手順

  1. ユーザーが処理を依頼したソースを特定します(会話のコンテキストまたは指定されたパスを確認します)。

  2. raw/index.md を確認し、すでに取り込まれているかどうかを調べます。

    • すでに取り込まれている場合(wiki/sources/ に要約がある場合)→ 再取り込みフロー(下記のセクション)に従います。
    • まだの場合 → 通常の取り込みに進みます。
  3. raw/ 内のソースをすべて読みます(コンテキストの制限がある場合は、分割して読みます)。

    • .txt または .md のトランスクリプト → 直接読みます。
    • MCP video-whisper が利用できる場合 → 動画/音声を直接文字起こしします。
    • MCP pdf-docling が利用できる場合 → PDF を Markdown に変換します。
  4. 並行して抽出し、提示します。

    • ソース内で最も重要な点を3~5件特定します。
    • 各ポイントについて、QMD クエリ(または代替手段として grep)を実行し、関連する既存ページを探します。intent: にはポイントそのものを、vec: には短い言い換えを使用します。
    • 見つかったページとともにポイントを人間に提示します。
    • 強調したい点や省略したい点があるか、ユーザーに確認します。
    • 確認が得られるまで次に進みません。
  5. 各ルールの反映先を決めます。対象読者の分離を守ります。

    • wiki/business/ — すべてのビジネス/製品ルール(対象読者:ビジネス)。価格設定、ユーザー体験、ポリシー、収益化、プライバシー/コンプライアンスのルール、顧客向けまたは契約に関わる内容。
    • wiki/apps/ — アプリレベルの技術ドキュメント(対象読者:開発者)。技術スタック、注意点、デプロイの詳細。ビジネスルールはここに含めません。関連する場合は wiki/business/ へのリンクを追加します。
    • wiki/ops/ — 運用手順(対象読者:運用担当者)。
    • wiki/data/ — データモデルとスキーマ(対象読者:開発者)。
    • ソースにビジネスと技術の両方の内容が含まれる場合は、1つのページにまとめず、適切なフォルダーに分けて記載します。
  6. 確認に基づいて Wiki ページを作成/更新します。

    • ページがすでに存在する場合 → 更新します(sources: にソースを追加し、内容を見直し、矛盾があれば明示します)。
    • 存在しない場合 → wiki/CONVENTIONS.md に従って新しいページを作成します。
    • 標準の Markdown リンク [text](./path.md) を使います(Wiki リンクは使いません)。
    • 内容をページ間で重複させないでください。相互参照を使います。
    • 関連リポジトリは、絶対パスではなく Wiki からの相対パス ../<repo>/ で参照します。リポジトリを初めて紹介するときは、GitHub リモートへのリンク [github.com/<org>/<repo>](https://github.com/<org>/<repo>) を追加します。
  7. wiki/sources/<slug>.md にソースの要約を作成します。

    ---
    title: "Summary — <Source Title>"
    audience: mixed
    sources:
      - raw/<subdir>/<filename>
    updated: YYYY-MM-DD
    tags: [source, <relevant-tags>]
    status: stable
    ---
    

    要約の内容:

    • メタデータ(日付、参加者、該当する場合は所要時間)
    • 主なポイントの要約
    • 作成/更新した Wiki ページへのリンク
    • 他のページに記載されていない知見(ある場合)
    • 未決定の事項 — ソースがオーナーの判断を要する疑問を提起している場合、どちらかを暗黙に選ぶのではなく、明確に示します。
  8. インデックスを並行して更新します。

    • raw/index.md — ソースを ✅ Ingested として記録し、要約へのリンクを追加します。
    • wiki/index.md — 新しいページを該当する表に追加し、変更したページの説明を更新します。
    • wiki/log.md — 操作を先頭(ヘッダーの後、既存の項目の前)に記録します。
      ## [YYYY-MM-DD] ingest | <Source Title>
      - Pages created: ...
      - Pages updated: ...
      - Summary: wiki/sources/<slug>.md
      
  9. 取り込み後に対象を絞って lint します。

    • 作成/更新したページの相互参照を確認します(リンク先が実在するか)。
    • 参照したページと比較し、矛盾があれば明示的なセクションを設けて記載します。
    • 完全な lint(孤立ページ、全体の frontmatter など)は実行しません。これは /wiki-lint の対象です。
  10. QMD がこの Wiki 用に設定されている場合に限り、オーナーに QMD インデックスの更新を依頼します。

    qmd update         # 変更/新規ページを取り込みます
    qmd embed          # コレクションを追加/削除した場合にのみ必要です
    

    オーナーに代わってこれらを実行しないでください。最終報告に記載します。

再取り込み(すでにカタログ化されているソース)

ソースに wiki/sources/<slug>.md がすでに存在する場合:

  1. ソースと既存の要約を読みます。
  2. 比較して、不足している内容を特定します:
    • ソースにあり、wiki にない概念や情報(各不足候補について intent: を設定して QMD を使い、存在しないことを確認します)
    • 内容を拡充できるページ
    • 既存の内容との矛盾
  3. 診断結果を人間に提示します:
    ## Re-ingest: <Title>
    ### Identified gaps
    - ...
    ### Pages that can be expanded
    - ...
    
  4. 承認を待ってから実行します。
  5. 要約、raw/index.md、wiki/log.md を更新します。

ルール

  • raw/ 内のファイルは絶対に変更しないでください。
  • 一度に扱うソースは 1 つだけです(ユーザーから明示的に一括処理を求められた場合を除きます)。
  • 常に完全な YAML frontmatter を使用します(wiki/CONVENTIONS.md を参照)。
  • 既存のページとの矛盾が見つかった場合は、必ず明示してください。
  • 常に raw/index.md、wiki/index.md、wiki/log.md を更新してください。
  • ビジネスルールは必ず wiki/business/ に置き、製品やコードのリポジトリ内には置かないでください。ルールが現在製品リポジトリ内(../<product>/docs/ のような場所)にある場合は、取り込み時に wiki/business/ に移し、必要に応じて製品リポジトリの CLAUDE.md / AGENTS.md に相互参照を残してください。
  • qmd embed / qmd update / qmd collection add は、所有者が実行するコマンドのため、自動で実行しないでください。

コメント