# kb

複数プロジェクト × 複数AIの共通コンテキスト基盤。ローカルMCPサーバーとして動作する。

## 技術スタック

- Python + uv
- MCP SDK（公式Python版）
- Obsidian CLI 1.12+
- git

## 構造

```
notes/
  projects/<project-name>/
    adr/            # 意思決定ログ
    gap/            # AI指摘 → 本当はどうしてほしかったか
    session-log/    # セッションログ
    knowledge/      # 開発中に得た知識
    draft/          # やりたいこと・アイデアメモ
    history.md      # プロジェクト変遷まとめ
  inbox/            # プロジェクトに紐づかないアイデア
  general/
    knowledge/      # プロジェクト横断の共通知見
    requirements/   # ユーザーがAIに求めることの集約
```

## MCP Tools

| tool | 役割 |
|---|---|
| `kb_init` | プロジェクト初期化 |
| `kb_adr` | 意思決定ログ保存 |
| `kb_gap` | 反省記録保存 |
| `kb_knowledge` | 知識保存 |
| `kb_session` | セッションログ保存 |
| `kb_draft` | アイデア・やりたいことメモ |
| `kb_search` | 検索 |
| `kb_read` | ノート読み込み |
| `kb_lint` | ルール整合性チェック |
| `kb_organize` | リンク候補の発見・提案 |
| `kb_graduate` | general/への昇格提案 |

## ファイル命名

- adr / gap / knowledge: `{slug}--{ULID}.md`
- session-log: `{yyyymmdd-hhmm}--{ULID}.md`

## frontmatter

```yaml
---
id: ULID
summary: 要約
ai_tool: claude | copilot | codex
repo: github.com/owner/repo  # optional
tags: []                      # optional
related: []                   # optional
status: accepted              # ADR用 optional
created: YYYY-MM-DDTHH:MM+09:00
updated: YYYY-MM-DDTHH:MM+09:00
---
```

## セットアップ

### 前提条件

- [uv](https://docs.astral.sh/uv/)
- Obsidian 1.12+ (CLI有効化: Settings > General > Advanced > Command Line Interface)

### MCP サーバー接続

#### Claude Code

```bash
claude mcp add kb --scope user -- uv run --project /path/to/kb python -m kb_mcp.server
```

#### Copilot CLI

`~/.copilot/mcp-config.json` に追加:

```json
{
  "mcpServers": {
    "kb": {
      "command": "uv",
      "args": ["run", "--project", "/path/to/kb", "python", "-m", "kb_mcp.server"]
    }
  }
}
```

#### Codex CLI

`~/.codex/config.toml` に追加:

```toml
[mcp_servers.kb]
command = "uv"
args = ["run", "--project", "/path/to/kb", "python", "-m", "kb_mcp.server"]
```

### Skills インストール

```bash
bash install/skills.sh          # 全ツール
bash install/skills.sh claude   # Claude Code のみ
bash install/skills.sh copilot  # Copilot CLI のみ
bash install/skills.sh codex    # Codex CLI のみ
```

### Hooks インストール（セッションログ自動保存）

```bash
bash install/hooks.sh           # 全ツールの手順を表示
bash install/hooks.sh claude    # Claude Code のみ
bash install/hooks.sh copilot   # Copilot CLI のみ
bash install/hooks.sh codex     # Codex CLI のみ
```

## Obsidian

Vault は `notes/` を開く。

## ステータス

v2 開発中。
