---
title: knowledge-wiki - ナレッジベース
description: ローカルの構造化ナレッジベースを管理し、自動でアーカイブ・分類・相互参照を行う
---

会話で生まれた資料、アイデア、メモをローカルの構造化ナレッジベースに整理し、インデックスとページ間の相互参照を自動で維持します。

`knowledge-wiki` はワークスペース内の `knowledge/` ディレクトリを管理します。Agent の「外部メモリ」のようなものです。`always: true` が設定されているため**常にコンテキストにロード**され、外部依存は不要です。

## いつ起動するか

- 記事、ドキュメント、URL を共有して、後で参照できるように残したいとき
- 会話の中で長期保存に値する結論が出たとき
- 以前蓄積したナレッジを調べたいとき

## ディレクトリ構成

```
knowledge/
├── index.md           # グローバルインデックス（必ずメンテナンスする）
├── log.md             # 操作ログ（追記のみ）
└── <category>/        # カテゴリサブディレクトリ（内容ごとにグループ化）
    └── <slug>.md      # ナレッジページ（小文字ハイフン区切りのファイル名）
```

## 3 つの基本操作

### 1. 収録（Ingest）

資料を共有すると、Agent は：

1. 原文を読んで理解し、重要な情報を抽出
2. どのカテゴリに属するか判断 — まず `index.md` をチェックし、適切なカテゴリがなければ新規作成
3. `knowledge/<category>/<slug>.md` にナレッジページを生成
4. インデックス `index.md` とログ `log.md` を更新

### 2. 統合（Synthesize）

会話の中で新しい結論やインサイトが生まれたとき：

1. 適切なカテゴリの下に新しいナレッジページを作成
2. 関連する既存ページに相互リンクを追加
3. インデックスとログを更新

### 3. 検索（Query）

以前蓄積したナレッジについて質問されたとき：

1. `index.md` から関連しそうなページを探す
2. `read` ツールで具体的なページを開く
3. 必要に応じて `memory_search` で補完検索
4. 回答にナレッジページへのリンクを含め、ユーザーが原文を確認できるようにする

## ページの書き方

```markdown
# ページタイトル

> Source: <ソース URL または簡単な説明>

本文。ページ間は相対パスでリンク：
[関連ページ](../category/related-page.md)

## 要点

- ...

## 関連ページ

- [ページ A](../category/page-a.md) — 関連する理由
```

<Note>
- `> Source:` はこのナレッジの出典を記録します。明確な出典がある場合は必ず記載してください
- 相互参照は重要です：ページを作成・更新したら、関連ページにも逆リンクを追加してください
- **既に存在するページにのみリンクしてください**。ある概念が独立ページに値する場合は、先にページを作成してからリンクを追加してください
</Note>

## インデックス形式

`knowledge/index.md` はフラットリスト形式で、カテゴリごとにグループ化し、各ナレッジページを 1 行で表します：

```markdown
# Knowledge Index

## カテゴリ A
- [ページタイトル](category-a/page-slug.md) — 一行の要約

## カテゴリ B
- [ページタイトル](category-b/page-slug.md) — 一行の要約
```

テーブルや絵文字は使いません。カテゴリ名や構成は柔軟に調整できます。

## ログ形式

`knowledge/log.md` は追記のみ、最新のエントリが一番下：

```markdown
## [YYYY-MM-DD] ingest | ページタイトル
## [YYYY-MM-DD] synthesize | ページタイトル
```

## 執筆ガイドライン

- **ファイル名**は小文字＋ハイフン（例: `machine-learning.md`）
- **1 ページ 1 トピック** — 関連コンテンツはリンクで繋ぐ
- **重複ページを作らず、既存ページを更新する**
- **変更のたびにインデックスを更新する**（`knowledge/index.md`）
- **要点を抽出し、全文をコピーしない**
- **会話中にナレッジページを参照する際はフルパスを使用**（例: `[タイトル](knowledge/<category>/<slug>.md)`）。ページ間の相互リンクのみ相対パスを使用
- **ナレッジページに基づいて回答する際はリンクを含める** — ユーザーが詳細を確認できるように
