wiki-init について
wiki-init は、リポジトリに Wiki、QMD、エージェントフックの構成を導入または移行するスキルです。状態確認とドライランで変更を示し、書き込み前に Wiki の場所とインデックス名の確認を求めます。
主な機能
- 01doctor によるリポジトリ診断
- 02インストールと移行のドライラン
- 03ローカル/共有 Wiki の設定
- 04管理対象 QMD チェックアウトとラッパー
- 05Harness ごとのフックと設定
活用シーン
- 01Wiki 構成と QMD の状態確認
- 02リポジトリの Wiki 基盤準備
- 03新しい Wiki 構成へのリポジトリ移行
MCP 対応
リポジトリ基盤の一部として MCP とエージェントの設定ファイルを構成します。MCP サーバーを提供するとは記載されていません。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ djalmajr/ skills --skill wiki-initインストール後、Claude Code で/wiki-initを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
agents/openai.yamlreferences/presets.mdscripts/qmd-doctor.tsvalidate-wiki-init.tswiki-init.test.tswiki-init.tstemplates/agents-block.md.tmplantigravity-hooks.json.tmplclaude-settings.json.tmplcodex-config.toml.tmplcodex-hooks.json.tmplmcp.json.tmplopencode-config.json.tmplopencode-plugin.js.tmplwiki-guardrails.yml.tmpltemplates/hooks/claude/wiki-suggest-ingest.sh.tmpltemplates/hooks/codex/wiki-consider.sh.tmpltemplates/hooks/shared/wiki-drift-audit.sh.tmplwiki-policy-check.sh.tmplwiki-reindex.sh.tmpl詳細
wiki-init
このスキルは、リポジトリを wiki + QMD + エージェントフックのパターンに初期化または移行する際に使用します。
ユーザーは自然言語で指示する場合があります。意図に応じて次のように対応してください。
- 「構造はどうなっていますか?」「移行が必要ですか?」「doctor」「qmdは正常ですか?」→
doctorを実行します。 - 「インストールして」「このリポジトリを準備して」「フックを設定して」→ まず
installをドライランで実行し、提案された wiki の場所とインデックスをユーザーに確認してから--writeを実行します。 - 「新しい形式に移行して」→ まず
migrateをドライランで実行し、提案された wiki の場所とインデックスをユーザーに確認してから--writeを実行します。 - 「qmdを修正して」「managed qmd」「qmdにパッチを適用して」→
doctorを実行してから、明示的な承認を得てinstall --writeまたはupdate-hooks --writeを使用し、管理対象の QMD チェックアウトとラッパーを準備します。
プロジェクトルート
このスキル内のすべてのパス(wiki/、AGENTS.md、CLAUDE.md、.mcp.json、フックスクリプトなど)は、エージェントの現在の作業ディレクトリではなく、--project <path> で指定されたプロジェクトルートからの相対パスです。
- スクリプトには必ず
--project <absolute-or-relative-path>を渡してください。スクリプトは暗黙的に CWD を使用しません。 - QMD ラッパーコマンド(
<wrapper> collection add <wiki-path>)は絶対パスを受け付けます。エージェントの CWD がプロジェクトルートと異なる可能性がある場合は、絶対パスを優先してください。 - 隣接するリポジトリ(例:対象プロジェクトが別の場所にある状態での meta/skills リポジトリ)から呼び出す場合は、
--writeの前に--projectの値をユーザーに確認してください。
ワークフロー
- まず
scripts/wiki-init.ts doctor --project <path>を実行します。 - レポートを確認します。wiki の構成、AGENTS/CLAUDE、ハーネス、フック、キャッシュの移行、インストール済みファイルとのドリフト、QMD の状態を確認します。
- 変更する場合は、
--writeを付けずにinstallまたはmigrateを実行し、予定されているファイル操作と提案された構成を提示します。 - ローカル wiki と共有 wiki のどちらにするか、明示的にユーザーに尋ねてください。 隣接パスを暗黙的に既定値として使用してはいけません。ハーネスの構造化質問ツールを使用してください(プロンプトを参照)。
- ローカル — このリポジトリ内の
wiki/に wiki を配置します。単独のプロジェクトや個人的な実験では、これが既定です。 - 共有 — このリポジトリの外部(隣接ディレクトリ、中央のナレッジベース、モノレポ内の場所)に wiki を配置します。ユーザーが共有を選んだ場合は、自由記述で絶対パスまたは相対パスを尋ねてください。検出された隣接パス(
../knowledge-baseなど)はあくまで 候補 であり、ユーザーが確認または変更する必要があります。
- ローカル — このリポジトリ内の
- QMD のインデックス名をユーザーに確認します(自由入力)。妥当な既定値(ローカルの場合はプロジェクトのベース名、共有の場合は組織名または製品名)を提案しますが、ユーザーが変更できるようにしてください。
--wikiと--indexを明示的に指定した後に限り、--writeを付けて実行します。スクリプトは、これらのフラグなしでは書き込みを行いません。- 書き込み後に
doctorを再実行します。 --writeは、スキルキャッシュ(~/.local/share/skills/qmd/checkouts/qmd)の下に管理対象の QMD チェックアウトを準備し、プロジェクトのラッパーがそのチェックアウトを参照するようにします。存在しない場合はhttps://github.com/tobi/qmd.gitをクローンし、依存関係をインストールします。- 対象プロジェクトにインデックスが必要な場合は、生成されたラッパーで QMD を初期化します。
<wrapper> collection add <wiki-path> --name <index> --mask "**/*.md"を実行し、続けて<wrapper> updateと<wrapper> embedを実行します。 - 再利用可能なテンプレートまたはスクリプトを変更する前に、
scripts/validate-wiki-init.tsを実行します。
プロンプト作成
CLAUDE.md / AGENTS.md(「Skill Prompting Conventions」)のプロジェクト全体の規約に従ってください。以下の判断が必要な箇所では、ハーネスの構造化質問ツール(Claude Code の AskUserQuestion、Codex の ask_user_question、または OpenCode の question)を使用してください。自由形式のテキストは、パスや識別子が必要な場合にのみ使用します。
| 判断が必要な箇所 | 構造化する理由 | 推奨オプション |
|---|---|---|
| Wiki の場所 | インストール全体(パス、フック、プリセット)を左右します | ローカル(リポジトリ内の wiki/)・共有(別のパス) |
| レガシーキャッシュ検出時の移行 | 元に戻すのが難しいコピー操作です | 今すぐコピー(レガシーを保持)・移行をスキップ |
| インストール済みファイルに差分がある場合の修正方法 | update-hooks --write が実行されます | すべて更新・先に差分を表示・無視 |
| 複数のハーネスが検出された場合のハーネス選択(複数選択) | ユーザーが望まないエージェントの設定を避けられます | claude・codex・opencode・antigravity |
回答後、--write を実行する前に、選択内容を自分の言葉で言い換えて確認してください。
自由形式で質問する項目(構造化ツールなし):
- 共有 Wiki のパス
- QMD インデックス名
- カスタム QMD コマンド(
--qmd-command) - スキルが選択肢を列挙できず、ユーザーが値を入力する必要がある項目
doctor のレポート内容
doctor は常に安全に実行できるエントリーポイントです。以下をレポートします。
- wiki_path、qmd_index、推奨トポロジー、ハーネスの対応状況。
- 基準となるファイル(
AGENTS.md、CLAUDE.md、.wiki-guardrails.yml、MCP/エージェント設定)の有無。 - Markdown の差分 — 設定された Wiki パス外にある、追跡対象の
.mdファイル。 - キャッシュの移行 — レガシーの
~/.local/share/essential-skills/qmdキャッシュを検出し、--writeによって現在の~/.local/share/skills/qmdの場所にコピーされるかどうかをレポートします。安全のため、レガシーディレクトリは削除せず保持します。 - インストール済みファイルの差分 — 最新のテンプレートが生成する各ファイルについて、ディスク上の内容と望ましい内容を比較します。古いパス(例:レガシーキャッシュへの参照)、
AGENTS.md/CLAUDE.md内の古い管理ブロック、テンプレートに追従していないフック/設定をレポートします。推奨される修正コマンドはwiki-init update-hooks --writeです。 - QMD の状態 — 管理対象チェックアウトの場所、バージョン、パッチレポート、インデックスの状態。
- 予定されるアクション — 次回の
install/migrate/update-hooksの実行で作成または更新されるすべてのファイル。
スクリプト
主なスクリプト:
bun skills/wiki-init/scripts/wiki-init.ts doctor --project .
QMD に特化したエイリアス:
bun skills/wiki-init/scripts/qmd-doctor.ts --project .
このスクリプトは意図的にデフォルトでドライランになります。--write を指定した場合にのみ書き込みを行います。
一般的な使用例:
bun skills/wiki-init/scripts/wiki-init.ts doctor --project /path/to/project
bun test skills/wiki-init/scripts/wiki-init.test.ts
bun skills/wiki-init/scripts/wiki-init.ts migrate --project /path/to/project --wiki ../knowledge-base --index my-index
bun skills/wiki-init/scripts/wiki-init.ts install --project /path/to/project
bun skills/wiki-init/scripts/wiki-init.ts install --project /path/to/project --wiki ../knowledge-base --index my-project --harness claude,codex,opencode,antigravity --write
プリセット
対応するプロジェクト構成(ローカル Wiki、中央の兄弟 Wiki、複数リポジトリの組織 Wiki、ドキュメントのみの移行)については、references/presets.md を参照してください。
Wiki コンテンツのひな形作成
wiki-init はインフラストラクチャ(設定、フック、MCP、QMD ラッパー)を構成しますが、Wiki コンテンツは作成しません。install --write の実行後、エージェントは他の Wiki スキルが前提とする最小限の Wiki のひな形を作成する必要があります。
<project-root>/wiki/
├── index.md # navigable catalog
├── CONVENTIONS.md # schema, frontmatter, naming, audience separation
├── log.md # append-only operation log
├── business/ # business/product rules (audience: business)
├── apps/ # app-level technical docs (audience: dev)
├── ops/ # operational procedures (audience: ops)
├── data/ # data models and schemas (audience: dev)
└── sources/ # ingested source summaries (one per slug)
<project-root>/raw/
└── index.md # raw source materials inventory
対象読者の分離とフロントマターの規約は、wiki-ingest/SKILL.md で定義されています。ひな形を作成する際の命名、フロントマター、コンテンツのレイアウトについては、これを信頼できる情報源としてください。
ひな形の作成後、ワークフローのステップ 9 に従って QMD インデックスを初期化してください。
境界
- Wiki コンテンツを自動で取り込まないでください。フックは通知するだけで、意味的な判断はエージェントが行います。
- QMD をグローバルにパッチ適用またはインストールしないでください。
- シェルエイリアスや
bunxより、QMD 用の管理対象プロジェクトラッパーを優先してください。ラッパーには、管理対象チェックアウト、上流リポジトリ/ref、ラップするバイナリ、バージョン、パッチレポート、言語、埋め込みモデルを記録した来歴マニフェストを必ず付けてください。 - 再利用可能なスキルファイルには、ユーザー固有の絶対パスを含めないでください。ローカルの絶対パスを含めてよいのは、インストール後に生成されるマシンごとのラッパー/マニフェスト/設定のみです。
- テンプレートはこのスキルディレクトリ内に保持してください。