Claude Code · Codex · opencode
跑 AI 会话的
高性能终端。
makit 是专为 AI 编程会话设计的终端,采用原生实现,体积小、响应快。Claude Code、Codex、opencode 可在其中分屏、多标签并行运行。makit 同时记录全部历史会话:无论会话最初在哪个终端中启动,都能在侧栏中找到,并一键继续对话;正在等待您操作的会话会被明确标出。
通用安装包(Intel + Apple Silicon),约 15 MB · 当前版本 v0.2 · 已签名并经 Apple 公证(0.2.7 起)
基于原生 Rust + GPUI 构建,并非网页套壳:安装包 7.7 MB,内存占用约 55–75 MB,内置多套精美主题,支持 iTerm2 主题导入。仅在本地运行,不上传任何数据。
会话是对象,不是窗口
AI 编程会话本质上是一段保存在终端窗口里的对话。窗口关闭、目录改名或电脑重启之后,对话记录仍保存在磁盘上,但已没有入口可以找到它。makit 改变了管理的单位:以会话本身为对象,而不是以窗口为对象。它直接读取 Claude Code、Codex、opencode 写在磁盘上的会话记录,因此无论会话最初在哪个终端中启动,都会列在这里。
| Unix 作业控制 | makit |
|---|---|
jobs:列出作业和状态 | 会话列表:运行中 / 等待操作 / 空闲 / 已停止 / 已归档 |
Stopped (tty input):停在那里等待输入 | 等待审批 / 等待回答,并通知 |
fg %n:调回前台 | 一键恢复,回到原工作目录 |
| 终端关闭后,作业随之消失 | 记录保存在磁盘上:窗口关闭、系统重启、目录改名之后依然存在 |
与「持久会话终端」的区别
带后台服务的终端,会在窗口关闭后让进程继续运行,前提是该服务仍在运行。makit 保留的是对话:记录保存在磁盘上,系统重启、后台服务停止、目录改名之后依然存在。相应的代价是:关闭标签即结束其进程,恢复操作是继续之前的对话,而不是重新接入一个仍在运行的程序。
快速上手
- 安装并打开 makit。下载
.dmg,将 makit 拖入「应用程序」文件夹后打开。0.2.7 之前的版本没有签名,首次打开多一个步骤(详见下载与安装)。 - 查看侧栏。您已有的 Claude Code、Codex、opencode 会话会自动列出,并按时间分组。选择任一会话,即可在原工作目录中继续对话。
- 按 ⌘K。输入项目名或任务关键字,按回车,会话将在新标签中打开。
- 开启通知(Claude Code):在设置中安装 hook。此后会话需要审批或等待回答时,系统会弹出桌面通知。
下载与安装
macOS 为主要支持平台;Windows 目前为预览版;Linux 版本计划于 0.3 提供。
macOS
下载 .dmg 安装包,打开后将 makit 拖入「应用程序」文件夹。
Homebrew
brew install --cask nicholas-hoult/tap/makitWindows(预览版)
包含 makit.exe 的 .zip 压缩包,暂未签名,部分功能尚未实现。首次运行时 Windows SmartScreen 会给出提示,请依次选择:更多信息 → 仍要运行。
xattr -dr com.apple.quarantine /Applications/makit.app。找到所有会话
makit 扫描 ~/.claude 和 ~/.codex(以及 opencode 的数据库),并列出找到的全部会话,不论其最初在哪个终端中启动。侧栏支持按时间、项目或状态分组,会话增减时列表会自动更新。
- 点击会话即可恢复。若该会话已处于打开状态,makit 会切换到对应标签,不会重复打开。
- 会话在原工作目录中恢复。若该目录已被删除或移动,makit 会重建关联,Claude Code 的会话不会丢失。
- Claude Code、Codex、opencode 的会话以相同方式列出和恢复。三者均可显示运行状态;「忙碌」状态支持 Claude Code 和 opencode(Codex 显示为空闲);「等待操作」状态及对应通知目前仅支持 Claude Code。
搜索与恢复
按 ⌘K 打开命令面板。可跨全部项目和任务搜索,并按项目、时间、状态筛选,按回车打开。
等待操作的会话
每个会话在侧栏和标签上都有状态标记。标记以形状区分含义,不依赖颜色也能辨认:
| 标记 | 状态 |
|---|---|
| 带三个点的实心圆 | 等待操作:需要审批或回答 |
| 带弧线的圆环 | 忙碌 |
| 带对勾的圆环 | 空闲 |
| 虚线圆环 | 已停止 |
会话进入等待状态时,makit 还会弹出桌面通知,并在通知中心(铃铛图标)保留该条记录。此功能依赖通知 hook:请在设置中点击安装 hook。这也是 makit 唯一会修改 ~/.claude/settings.json 的操作。
批量归档
归档会将已完成的会话收起,但不会删除;会话文件仍保留在 Claude Code、Codex 原本写入的位置。
- 按住 ⌘ 点击,可将会话加入或移出选择;按住 ⇧ 点击,可选择连续范围。
- 在选中的行上右键:选择归档所选 (N);若所选会话均已归档,则显示为取消归档所选 (N)。
够快的终端
终端是产品的另一半。它以原生 Rust + GPUI 实现,并非网页套壳,因此即使磁盘上有数千个会话,依然保持小巧、快速。
合成会话,Intel Core i7-1068NG7,release 构建,单架构。完整数据、方法和限制见 README。
| 指标 | 数值 |
|---|---|
| 安装包(.dmg,单架构) | 7.7 MB |
| 5,000 个会话,会话列表就绪 | 0.6–0.9 s |
| 运行内存 | 55–75 MB |
| 长对话每新增一条记录(5–200 MB) | ≈ 0.04 ms |
- 树形分屏与可拖动的标签;标签支持固定,也支持仅停止会话而不关闭。
- 双击选词、字号缩放,以及可通过 ⌘ 加点击打开的链接和路径。
- 内置多套精美主题,支持 iTerm2 主题导入。
分屏与标签
终端采用树形分屏:可继续拆分窗格,拖动分割线调整大小,并将标签拖到其他窗格。在同一屏幕上即可同时查看多个会话。
- 右键标签 → 停止会话:结束进程并释放内存,标签保留在原位(重启后依然存在);停止其他标签会对其余标签执行同样操作。
- 进程已结束的标签可原地重新运行:在其中按 Enter,或右键 → 恢复会话。
- 右键 → 固定标签,使其始终位于窗格最前。「关闭其他」和「关闭右侧」不会关闭已固定的标签。
快捷键
| 按键 | 作用 |
|---|---|
| ⌘K | 命令面板:搜索并打开会话 |
| ⌘1…9 | 切换标签 |
| ⌥⌘1…9 | 切换窗格 |
| ⌘ 加点击 | 打开光标下的链接或路径 |
链接与路径
按住 ⌘ 时,终端输出中的网址和文件路径会变为链接,⌘ 加点击即可打开。文件名含全角括号的路径,以及被程序自行换行截断的长路径或长网址(例如 Claude Code 的回复内容),同样会被识别为完整链接。
对话重排阅读
实验性功能,默认关闭。开启后,会话历史会根据当前窗口宽度,从会话文件重新排版,并随窗口大小变化;底部处于活动状态的部分仍是真实终端。可在设置中开启。
主题与语言
内置多套精美主题,支持 iTerm2 主题导入。跟随系统明暗。界面语言支持 English 和中文,默认为英文,可在设置中切换或跟随系统。
其中三套在应用里的样子:



更新
makit 在启动后检查新版本,此后每小时检查一次。发现新版本时,标题栏会出现 Update x.y.z 标记,其菜单提供更新并重启、发布说明和跳过此版本三个选项。替换应用前,会使用发布页公布的 SHA-256 校验安装包;替换失败时自动回滚。通过 Homebrew 安装的,请运行 brew upgrade --cask makit。检查更新时仅请求版本信息。
隐私与数据
makit 仅读取本机的会话文件。无需账号,无遥测,不会上传任何会话内容、路径或项目名称。
- 读取:
~/.claude/projects、~/.claude/sessions、~/.codex/sessions,以及 opencode 的 SQLite 数据库(只读)。 - 自身数据写入
~/.claude/makit(设置、归档标记、日志)。 - 仅当您点击安装 hook 时,才会修改
~/.claude/settings.json。 - 卸载 makit 不会删除会话;会话归 Claude Code、Codex、opencode 所有。
问题排查
打开 设置 → 诊断。检查环境会检测工具及其版本、PATH、代理变量、通知 hook、数据目录和会话目录,并给出修复建议。提交 issue 时,可使用复制诊断信息和打开日志目录;日志保留最近 7 天。
常见问题
和终端、终端复用器有什么不同?
makit 自带分屏终端,但它围绕会话而非窗口来组织:无论会话在哪里启动都会列出,保留其历史,并标明哪一个在等待操作。也可以与您习惯的终端搭配使用。
支持哪些 agent?
Claude Code、Codex 和 opencode。三者的会话均可列出和恢复;「等待操作」状态及通知目前仅支持 Claude Code。
会上传我的会话吗?
不会。它仅读取本地文件。检查更新时只请求版本信息,不会发送任何会话内容、路径或项目名称。
删掉 makit,会话会丢吗?
不会。会话归 Claude Code、Codex 所有,保留在原位置。删除 ~/.claude/makit 只会清除 makit 自身的设置和归档标记。
有没有签名?
有,0.2.7 起:用 Apple Developer ID 签名并经 Apple 公证。因为是个人开发者账号,证书上显示的是作者的法定姓名。0.2.7 之前的版本没有签名,打开步骤见「下载与安装」。
Windows 和 Linux 呢?
Windows 提供预览版(可正常运行,部分功能尚未实现);Linux 版本计划于 0.3 提供。
免费吗?
免费。项目开源,采用 MIT 或 Apache-2.0 双许可。