jakemor/kanna

A beautiful web-based UI for Claude Code & Codex

解決する課題

Kanna は、コマンドラインインターフェース(CLI)でのコード作成エージェント、特に Claude Code と Codex 用のグラフィカルユーザーインターフェース(GUI)を提供します。ターミナルベースの体験を美しいウェブベースのチャットインターフェースに変換し、複数のプロジェクトを管理しやすく、エージェントの進行状況を追跡し、ターミナルに常に留まることなくAIコードツールとやり取りできるようにします。

動作方法

Kanna は Bun をベースにしたサーバーとして動作し、React をベースにしたウェブフロントエンドとローカルのエージェントプロセス(Claude Agent SDK または Codex App Server)の間を橋渡しします。リアルタイム通信には WebSockets を使用し、チャット履歴と状態をローカルの JSONL ログに永続化するイベントソーシングアーキテクチャを採用しています。システムは、モデル選択や推論努力の制御を処理する正規化レイヤーを通じて、複数のAIプロバイダー(Claude、Codex、Cursor、Pi)を調整します。

対象ユーザー

Claude Code や Codex などのAIコードエージェントを使用しているが、チャットの管理、エージェントの計画の確認、異なるプロジェクト間での作業の整理のために視覚的なインターフェースを好む開発者。

主な特徴

  • 複数プロバイダー対応:Claude、Codex、Cursor、Pi の間で切り替え可能。各プロバイダーごとにモデル設定と推論努力の設定が可能です。
  • プロジェクト中心の整理:サイドバーにライブステータスインジケータとドラッグアンドドロップによる順序変更機能を備えた、プロジェクトごとのチャットグループ化。
  • 計画モード:エージェントの計画を実行前に確認・承認できる機能。
  • 豊富なレンダリング:ツール呼び出しをハイドレートし、折りたたみ可能なツールグループとインタラクティブなプロンプトをレンダリング。
  • ローカルプロジェクトの自動検出:既存の Claude および Codex のローカル履歴からプロジェクトを自動検出。
  • 内蔵 Pi エージェント:pi コードエージェントを依存関係として内蔵しており、別途ローカルインストールの必要がありません。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト