baoyudu/perch
一个终端项目选择器,可快速回到最近使用 Claude Code 或 Codex 的项目,并可重新启动 agent 或恢复上次会话。
- Star
- 89
- Fork
- 0
- 未关闭 Issue
- 0
- 最近提交
- 2个月前
这是什么?
perch 是一个用 Go 编写的终端工具,用于快速回到你最近用 Claude Code 或 Codex 工作的项目。它直接读取两个 agent 已经保存在本地的会话记录,无需任何配置,安装后所有打开过 agent 的项目都能模糊搜索并一键进入。
在选择器中,一次按键即可只切换目录、启动 claude 或 codex,或恢复上次的对话。每个项目行显示最近使用的 agent、相对时间、git 分支和未提交文件数,预览窗格展示上次对话的末尾。项目可以置顶,每个项目的默认动作和额外参数可以通过可选的 TOML 配置文件设置。
由于子进程无法修改父 shell 的目录,perch 在终端中渲染界面,并输出所选路径和命令,由 `perch init` 生成的小型 shell 函数负责执行 cd 与启动。支持 zsh、bash 和 fish,还可以切换到 Codex 桌面应用模式,通过 codex:// 链接把项目交给应用打开。
核心功能
- 01无需配置,直接读取已有的 Claude Code 与 Codex 会话记录。
- 02按名称和路径模糊过滤项目。
- 03一键完成切换目录、启动 claude 或 codex、恢复上次会话。
- 04每个项目显示最近使用的 agent、git 分支和未提交文件数。
- 05预览上次对话的末尾内容。
- 06支持项目置顶,并通过 TOML 配置每个项目的默认动作和参数。
适用场景
- 在多个运行编码 agent 的代码仓库之间快速切换。
- 打开新终端后,继续昨天未完成的 Claude Code 或 Codex 对话。
- 一键在指定项目中以自定义参数启动 agent。
快速上手
- 1
通过 Homebrew 安装 perch(macOS)
brew install --cask baoyudu/tap/perch - 2
或使用 Go 从源码安装
go install github.com/baoyudu/perch/cmd/perch@latest - 3
在 shell 配置文件中添加集成代码行(以 zsh 为例)
eval "$(perch init zsh)" - 4
打开新终端,输入 p 启动选择器
使用前须知
- 需要 Claude Code 和 Codex 在本地保存的会话历史才能列出项目。
- 默认图标需要 Nerd Font 字体,不过可以切换为纯文本模式。
收录于专题
标签
常见问题
- perch 是什么?
- 一个终端项目选择器,可快速回到最近使用 Claude Code 或 Codex 的项目,并可重新启动 agent 或恢复上次会话。 perch 是一个用 Go 编写的终端工具,用于快速回到你最近用 Claude Code 或 Codex 工作的项目。它直接读取两个 agent 已经保存在本地的会话记录,无需任何配置,安装后所有打开过 agent 的项目都能模糊搜索并一键进入。
- perch 可以免费使用吗?用的什么许可证?
- perch 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- perch 还在维护吗?
- 半年内有更新。perch 最近一次提交是在 2026年9月14日。
- perch 适合用来做什么?
- 在多个运行编码 agent 的代码仓库之间快速切换。 打开新终端后,继续昨天未完成的 Claude Code 或 Codex 对话。 一键在指定项目中以自定义参数启动 agent。
- perch 怎么安装和运行?
- 通过 Homebrew 安装 perch(macOS): brew install --cask baoyudu/tap/perch 或使用 Go 从源码安装: go install github.com/baoyudu/perch/cmd/perch@latest 在 shell 配置文件中添加集成代码行(以 zsh 为例): eval "$(perch init zsh)" 打开新终端,输入 p 启动选择器
- 在哪里获取 perch?
- 源代码和安装说明在 GitHub 上:https://github.com/baoyudu/perch
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
一款用 Go 编写、基于 Bubble Tea 的现代终端文件管理器,用于在命令行中浏览和管理文件。
基于 Go 和 Bubble Tea 构建的终端邮件客户端,支持多账户与插件扩展。
用 Go 编写的终端多路复用与窗口管理器,支持平铺窗格、工作区、断线保持的会话,以及汇总编码代理状态的收件箱。
一个命令行工具,用于在多个 Git worktree 和项目之间管理并切换多个 AI 编程助手会话。