jakemor/kanna

A beautiful web-based UI for Claude Code & Codex

解决的问题

Kanna 为命令行接口(CLI)编程代理(特别是 Claude Code 和 Codex)提供图形用户界面(GUI)。它将基于终端的体验转换为美观的基于 Web 的聊天界面,使管理多个项目、跟踪代理进度以及无需始终停留在终端中即可与 AI 编程工具交互变得更加容易。

工作原理

Kanna 以 Bun 为基础运行一个服务器,充当基于 React 的 Web 前端与本地代理进程(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 编程代理作为依赖项内置,无需单独本地安装。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目