58 lines
1.5 KiB
Markdown
58 lines
1.5 KiB
Markdown
# aigpt
|
|
|
|
## これは何か
|
|
|
|
アイの記憶を管理するMCPサーバー。core.mdとmemory.mdの読み書きだけを行う。
|
|
|
|
## 設計原則
|
|
|
|
- AIが判断し、ツールは記録する
|
|
- ファイルI/Oのみ。データベースは使わない
|
|
- MCPツールは4つだけ: read_core, read_memory, save_memory, compress
|
|
- シンプルで壊れない。ずっと使える
|
|
|
|
## アーキテクチャ
|
|
|
|
```
|
|
aigpt
|
|
├── mcp/
|
|
│ └── server.rs ← JSON-RPC over stdio
|
|
├── core/
|
|
│ ├── reader.rs ← core.md, memory.mdの読み込み
|
|
│ └── writer.rs ← memory.mdの書き込み
|
|
└── main.rs ← CLI + MCPサーバー起動
|
|
```
|
|
|
|
## MCPツール定義
|
|
|
|
### read_core
|
|
- 引数: なし
|
|
- 戻り値: core.mdの内容 (string)
|
|
|
|
### read_memory
|
|
- 引数: なし
|
|
- 戻り値: memory.mdの内容 (string)
|
|
|
|
### save_memory
|
|
- 引数: content (string)
|
|
- 動作: memory.mdを上書き
|
|
|
|
### compress
|
|
- 引数: conversation (string)
|
|
- 動作: 現在のmemory.mdを読み、会話内容と合わせて圧縮し、memory.mdに書く
|
|
- 注: 圧縮の判断はAI側が行う。ツールは受け取った内容をそのまま書くだけ
|
|
|
|
## データ
|
|
|
|
```
|
|
~/.config/aigpt/
|
|
├── core.md ← read only (このツールからは書かない)
|
|
└── memory.md ← read/write
|
|
```
|
|
|
|
## 開発方針
|
|
|
|
1. まずMCPサーバーで4ツールを実装
|
|
2. CLIでも同じ操作ができるようにする
|
|
3. それ以上は作らない
|