kiwifs/kiwifs
Markdown filesystem for agents and teams.
KiwiFS – AIエージェントとチームのためのMarkdownファーストのナレッジストア
概要 – 単一バイナリのGoサーバーで、Markdownファイルのディレクトリをライブで検索可能、バージョン管理されたナレッジベースとして扱います。ファイルが真実の源であり、システムはGitスタイルの監査トレイル、全文検索+ベクトル検索、Web UIを追加し、REST、MCP、NFS、S3、WebDAV、FUSEなどの多くのプロトコルでデータを公開するため、人間と自律エージェントの両方が読み書きできます。
AIにとって重要な理由 – 現代のLLMを利用したエージェントは、機械可読(埋め込み、構造化フロントマター)かつ人間可読(Markdown)な文脈を永続化する場所を必要としています。KiwiFSはエージェントに以下を提供します:
catスタイルのコマンド、HTTP PUT、MCPプロトコルでMarkdownを書く- BM25またはセマンティックベクトル類似度で関連ページを取得する
- SQLに似たDQL言語で構造化メタデータをクエリする
- すべての変更をGitコミットとして確認(blame、diff、ポイントインタイムリストア)
- Server-Sent Eventsによるライブ更新を受け取る
主な機能(READMEに記載)
| 機能 | 説明 |
|---|---|
| 62のMCPツール | Claude、Cursor、任意のMCPクライアント用のネイティブコマンド。 |
| 組み込みWeb UI | ブロックエディタ、ウィキリンクのバックリンク、ナレッジグラフビュー、ダークモード – すべてgo:embedでバイナリにコンパイル。 |
| 全文検索+ベクトル検索 | SQLite FTS5によるBM25、プラグイン可能なベクトルバックエンド(OpenAI、Ollama、ONNX、Cohere、Qdrant、pgvector、Pinecone)。 |
| Gitバージョン管理 | すべての書き込みがアトミックなGitコミットになります。git blame、diff、任意のリビジョンへの復元が可能。 |
| DQL(データクエリ言語) | Markdownフロントマターに対するSQLスタイルのクエリ(TABLE、WHERE、GROUP BYなど)。 |
| 6つのアクセスプロトコル | REST、MCP、NFS、S3、WebDAV、FUSE – すべて単一のストレージ層を経由。 |
| 19のインポーター | Postgres、MySQL、MongoDB、Notion、CSV、Obsidianなどからデータを取得。 |
| コンテンツヘルス分析 | 古いページ、壊れたリンク、孤立ノート、矛盾を検出。信頼度ランク付き検索。 |
| マルチスペース | それぞれ独自のGitリポジトリとインデックスを持つ複数の隔離ワークスペースをホスト。 |
| Webhookとスキーマ検証 | 書き込み時に関連する場合にSlack/CIをトリガーし、受信MarkdownにJSONスキーマを適用。 |
| 組み込み可能なGoライブラリ | 独自のGoアプリケーション内でpkg/kiwiを使用。 |
典型的なユーザー
- エージェントがプログラム的にクエリおよび更新できる書き込み可能なナレッジベースを必要とするAIエージェント開発者。
- セルフホストでMarkdown中心のウィキをConfluence/Notionの代替として、モダンなUIを維持しつつ求めているチーム。
- すべての変更に対して不変の監査トレイル(Gitコミット)を要求するコンプライアンス重視の組織。
- インシデント後にエージェントが自動で充実させられるランブックを求めるDevOps / SREチーム。
始め方(READMEより)
# インストール(brew、curlスクリプト、またはgo install)
brew install kiwifs/tap/kiwifs
# または
curl -fsSL https://raw.githubusercontent.com/kiwifs/kiwifs/main/install.sh | sh
# または
go install github.com/kiwifs/kiwifs@latest
# ワークスペースを初期化
kiwifs init --template knowledge --root ./knowledge
# サーバーを実行(REST APIは:3333、UIはhttp://localhost:3333)
kiwifs serve --root ./knowledge
Dockerの代替:
docker run -p 3333:3333 -v ./knowledge:/data ameliaanhlam/kiwifs
エージェントは簡単なHTTPリクエストで書き込めます:
curl -X PUT 'localhost:3333/api/kiwi/file?path=pages/auth.md' \
-H "X-Actor: my-agent" \
-d "# Authentication\n\nOAuth2 + JWT..."
アーキテクチャの概要(READMEのテキスト図)
- 単一GoバイナリがWeb UI(shadcn/ui、CodeMirror、Sigma.js)を埋め込み。
- アクセス層がREST、MCP、NFS、S3、WebDAV、FUSEを公開。
- コアがストレージ、Gitバージョン管理、SQLite FTS5、オプションのベクトルストア、ファイルウォッチャー、SSEイベント、スキーマリンティングを処理。
- ファイルシステムバックエンドにはローカルディスク、NFS、EFS、JuiceFS、FUSE-S3が含まれます。
拡張性
config.tomlの[search.vector]を介してプラグイン可能なベクトルプロバイダー(OpenAI、Ollama、ONNXなど)。- カスタムインポーターやエクスポートパイプライン(埋め込み付きJSONL/CSV)を追加。
- 他のプログラムで直接Goライブラリを使用。
ライセンス – Business Source License 1.1(セルフホストでの使用は無料、商用SaaS提供には別途ライセンスが必要)。各リリースは4年後にApache 2.0に再ライセンスされます。
詳細情報 – ドキュメントサイト(https://docs.kiwifs.com)、API仕様、例、FAQ、ロードマップ、アーキテクチャドキュメントはすべてREADMEからリンクされています。
上記の情報はすべてリポジトリのREADMEから直接取得したもので、追加の機能は推測していません。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト