Koclawが稼働開始 — 構想から動くコードへ
Koclawが稼働開始 — 構想から動くコードへ
前回のKoclawに関する記事では、AIKokoronの発想をベースにクロスプラットフォームなAIエージェントフレームワークへと発展させるという初期のビジョンを共有しました。あの時点ではまだGitHubにもアップロードしていませんでした。あれから多くのことが変わりました。
Koclawは現在デプロイ済み、オープンソースとして公開、そして本番環境で稼働中です。
Koclawとは
Koclaw(Kokoron + claw)は、個人利用向けの安全なセルフホスト型AIエージェントフレームワークです。コアコンセプトは「一つのAIペルソナ、複数のプラットフォーム、統一されたメモリ、エンドツーエンドの暗号化」。サービスごとに別々のAIボットを用意するのではなく、Koclawは同じアシスタント — Kokoron — をTelegram、QQ、Discord、デスクトップアプリ、ウェブサイトにまたがって動作させ、すべてのコンテキストを共有し、一貫した性格を維持します。
プロジェクトは主に2つのコンポーネントで構成されています:
- Rust Gateway — セキュリティの核心部分。メッセージルーティング、認証、暗号化、チャネル管理、cronベースのスケジューラを担当。メモリ安全性とパフォーマンスのためにRustで実装。
- Python Agent — AIの頭脳。LLMルーティング(Claude、GPT-4o、DeepSeek、Ollama)、会話メモリ、MCPツール実行、音声合成、Live2Dアバター用の表情抽出を担当。
両者は内部のWebSocketブリッジで通信し、Gatewayがパーミッションの実施とメッセージの適切なチャネルへのルーティングを担うゲートキーパーとして機能します。
現在の機能
5つの開発フェーズがすべて完了し、124テスト(Rust 66 + Python 58)がパスしています:
マルチプラットフォームチャネル
- Telegram(ポーリングモード、テキスト/音声/画像対応)
- QQ(OAuth2、ギルド + DM)
- Discord(WebSocket Gateway、ギルド + DM)
- デスクトップおよびWebクライアント向けWebSocketチャネル
セキュリティ
- X25519鍵交換 + HKDF-SHA256鍵導出
- ChaCha20-Poly1305による保存時暗号化
- 暗号化SQLiteメモリストア
- ファイルシステムパス検証とコマンド許可リストによるツールサンドボックス
- 3段階パーミッションモデル:Public / Authenticated / Admin
AI機能
- マルチプロバイダLLMルーティング(Claude、GPT-4o、DeepSeek、ローカルOllamaの切り替え)
- 27のMCPツール(ファイルシステム、Webフェッチ、メモリ、逐次思考など)
- セッションごとの履歴による会話メモリ
- GPT-SoVITS音声合成とFaster-Whisper音声認識
- Live2Dアバター同期用の表情抽出
自動化
- リマインダーや能動的メッセージのためのcronベーススケジューラ
- アクティブ時間設定可能なハートビート監視
- LLMによるジョブ作成(AIが自らリマインダーをスケジュール可能)
ペルソナシステム
- 統一された
persona.yamlを唯一の情報源として管理 - チャネルごとの動作カスタマイズ(例:デスクトップモードのみ表情タグ付与)
- 自動言語検出(日本語、中国語、英語)
今後の展望
今後の開発で楽しみにしている機能:
@koclaw/web-widgetSDK — 任意のウェブサイトにワンラインで埋め込めるTypeScript/Reactパッケージ。APIの仕様設計は完了済みで、次は実装へ。- RAGナレッジベース — 検索拡張生成をAgentに直接統合し、Kokoronが学習データ以外のキュレーションされた知識も活用できるように。
- 真のゼロ知識E2E — 現在はGatewayがメッセージを復号してAgentに転送していますが、将来的にはAgentが自身の鍵を保持し、Gatewayを純粋なリレーにすることが目標。
- shinBlog統合 — このブログのKokoronチャット機能を稼働中のKoclaw Gatewayに接続し、現在のプレースホルダーウィジェットを置き換え。
AIKokoronについて — デスクトップコンパニオン
以前書いたAIKokoronの記事を覚えている方もいるかもしれません。デスクトップ上のLive2Dコンパニオンアプリです。AIKokoronとKoclawは深く関連していますが、役割は異なります:
- Koclaw はバックエンドフレームワーク — すべてのプラットフォームにおける通信、セキュリティ、AIオーケストレーションを担う「神経系」。
- AIKokoron はデスクトップフロントエンド — Live2Dキャラクターによる音声会話とビジュアルインタラクションを提供するElectronアプリ。
つまり、同じ頭脳を共有しつつ、異なる身体に宿っているということです。KoclawのPython Agentには、もともとAIKokoronのために構築された音声パイプラインと表情システムがすでに組み込まれています。AIKokoronがWebSocket経由でKoclawに接続すると、Koclawが提供するマルチプラットフォームのコンテキストとツール機能すべてを利用できます。
AIKokoronは現在もブラッシュアップ中で、独立したプロジェクトとしてリリース予定です。ただし、たとえ別プロジェクトであっても、Koclawとつながります — 一つのペルソナ、一つのメモリ、一つの頭脳。デスクトップからでも、どのメッセージングプラットフォームからでもアクセスできます。
試してみる
KoclawはMITライセンスでオープンソースとして公開しています:
- GitHub: github.com/ksromt/koclaw
セルフホスト型AIアシスタント、クロスプラットフォームのエージェントフレームワーク、Rust + Pythonアーキテクチャに興味があれば、ぜひチェックしてみてください。コントリビューションやフィードバックはいつでも歓迎です。