Honjin:在 macOS 上跨多个项目运行编码智能体的编辑器
Show HN: Honjin, a macOS editor for running coding agents across many projects
Honjin 是一款 macOS 代码编辑器,可在单一窗口内跨多个项目运行 Claude Code、Codex、Antigravity CLI 或 opencode 等编码智能体,现以 0.1.0-beta.1 公测版免费开源(MIT)发布,仅支持 Apple 芯片 Mac。
在一个窗口中跨所有项目运行编码代理。
点击任意文件夹上的 +,即可在那里启动 Claude Code、Codex、Antigravity CLI 或 opencode。
公开测试版 · 0.1.0-beta.1 · Apple 芯片上的 macOS · 免费开源(MIT)
如果你同时运行多个编码代理,最终会堆满一屏终端窗口,根本分不清哪个代理在等你。Honjin 是一款代码编辑器,把所有项目集中在一个窗口里,并在 herdr 中运行你的代理——这是一个让代理在后台持续运行的终端。一键即可在任意文件夹中启动代理,侧边面板会显示哪些代理正在工作、哪些被阻塞、哪些已完成。
你将获得
- 项目(右侧):你选择的文件夹中的每个项目,各自是一棵普通的文件树。可以隐藏你不使用的项目。
- 任意文件夹上的 +:在该文件夹中启动一个代理,运行在属于该项目的 herdr 标签页里。Honjin 会询问你想要哪个代理,并记住你上次的选择。项目也可以拥有自己固定的命令。
- 代理:所有正在运行的代理,需要你处理的排在最前面。点击即可直接跳转到它。徽章会统计被阻塞或已完成的代理数量。视图:切换代理时间线会以每个代理一条泳道的形式显示最近 15 分钟。
- 变更:跨项目的所有未提交更改,按项目分组。跳动的圆点标记最近 30 秒内写入的文件,让你看到代理正在哪里工作。点击文件即可查看其差异。
- herdr 位于中间:关闭 Honjin 后代理仍会继续运行。
- 底层是完整的编辑器:基于 Eclipse Theia 构建,具备语言支持、git、调试器以及来自 Open VSX 的 VS Code 扩展。Theia 自带的 AI 聊天已关闭:你的代理运行在 herdr 中。
系统要求
- 一台搭载 Apple 芯片(M1 或更新)且运行 macOS 13 或更新版本的 Mac。Intel Mac、Windows 和 Linux 尚未构建。
- herdr 以及至少一个编码代理(Claude Code、Codex、Antigravity CLI 或 opencode)。你无需事先安装它们:首次启动时 Honjin 会打开 Set Up Honjin,显示缺少什么,并为每一项提供 Install 按钮。你可以随时从命令面板(Honjin: Set Up Prerequisites)重新打开它。
- git 是可选的。它只用于驱动“变更”视图和状态栏中的分支显示。
安装
将以下内容粘贴到终端:
curl -fsSL https://raw.githubusercontent.com/dhyeys54/honjin/main/scripts/install.sh | sh它会下载最新版本,对照已发布的 SHA256SUMS 进行校验,并将 Honjin.app 放入 /Applications。Honjin 打开时不会出现 macOS 安全提示,因为由 curl 下载的文件不会被隔离。脚本很短;如果你愿意,可以在运行前先读一读。
要更新,再次运行同一命令即可。它会先退出正在运行的 Honjin,并保留你的设置。
如果 /Applications 对你的账户不可写,脚本会提示。请用 sudo sh 代替 sh 重新运行,或者仅为自己安装,使用 HONJIN_INSTALL_DIR=$HOME/Applications(先创建该文件夹)。
手动安装 zip 包
- 从最新版本下载
Honjin-<version>-arm64-mac.zip和SHA256SUMS。 - 在你保存它们的文件夹中,运行
shasum -a 256 -c SHA256SUMS --ignore-missing。它应输出OK。 - 解压它,并将
Honjin.app拖入/Applications。 - Honjin 未签名也未公证(测试版免除了每年 99 美元的 Apple 费用),因此 macOS 会阻止首次启动。打开 系统设置 → 隐私与安全性,向下滚动到关于 Honjin 的提示,然后点击 仍要打开。或者在终端中移除隔离标记:
xattr -dr com.apple.quarantine /Applications/Honjin.app。
从源码构建
git clone https://github.com/dhyeys54/honjin && cd honjin npm install npm run package:mac # electron-app/dist/mac-arm64/Honjin.app
需要 Node 20 或更高版本、npm 10 或更高版本以及 Xcode Command Line Tools。参见 CONTRIBUTING.md。
卸载
退出 Honjin,删除 /Applications/Honjin.app 和 ~/.honjin。herdr 会继续在后台与你的 agents 一起运行;用 herdr server stop 停止它。
首次运行
- Set Up Honjin 会列出 herdr 和各个 agents,并显示每个已找到的版本。对任何缺失项点击 Install:会打开一个终端并运行厂商自己的安装程序,因此你能确切看到发生了什么。然后 Honjin 会再次检查。
- 选择存放你项目的文件夹(之后可以用 Honjin: Choose Project Folders… 更改)。
- 点击任意文件夹旁的 +。agent 会在该处的 herdr 标签页中启动。首次使用时,agent 会要求你登录;那是 agent 自己的登录,不是 Honjin 的。
设置
| 设置项 | 默认值 | |
|---|---|---|
honjin.scanRoots |
[] |
其子文件夹即为项目的文件夹 |
honjin.extraProjects |
[] |
手动添加的项目 |
honjin.hiddenProjects |
[] |
隐藏的项目 |
honjin.agentCommands |
{ "claude": "claude", "codex": "codex", … } |
选择器中每个 agent 的命令 + 类型;在此添加标志 |
honjin.projectOverrides |
{} |
按项目的 { "startupCommand": "…" } |
honjin.updates.check |
true |
每天向 GitHub 询问一次是否有更新的 Honjin(Honjin 唯一的自身请求) |
honjin.herdr.path / honjin.herdr.session |
"herdr" / "" |
herdr 二进制文件,以及会话(留空 = 默认) |
这些存储在 ~/.honjin/settings.json 中,绝不会放在你的仓库里。
隐私
- 无遥测。Honjin 不收集任何使用数据、崩溃报告或分析信息。
- 唯一的自身请求:启动后不久,然后每天一次,Honjin 会向 GitHub 询问最新版本(
api.github.com/repos/dhyeys54/honjin/releases/latest),以便在有新构建发布时告知你。它不发送 cookies、账户或项目信息;GitHub 会看到你的 IP 地址和该请求本身,就像任何下载一样。可在~/.honjin/settings.json中用honjin.updates.check: false将其关闭。 - 扩展来自 Open VSX(
open-vsx.org),当你在 Extensions 视图中浏览或搜索时,该视图会联系它。 - 你的代码留在你的 Mac 上。Honjin 会读取你的项目文件夹以列出它们并显示其文件。它从不上传它们。
- Help → Report an Issue 会打开你的浏览器,并附上一份仅包含版本信息(Honjin、macOS、芯片、herdr 和 agents)的草稿。它不包含文件路径或项目名称,在你于 GitHub 上按下 Submit 之前不会发送任何内容。
- 你运行的 agents(Claude Code、Codex 等)和 herdr 有各自的网络行为和隐私政策。Honjin 不会改变它们。
- 设置存放在
~/.honjin/settings.json中,绝不会放在你的仓库里。
已知问题
你最可能遇到的几个:
- Honjin 未经 Apple 签名。安装命令无需额外步骤;手动 zip 需要一次性点击 Open Anyway。
- 关闭 Honjin 会让 herdr 和你的 agents 继续运行。这是有意为之。用
herdr server stop停止它们。 - 启动后立即搜索可能会返回空结果。运行 Reload Window 然后再次搜索。
完整列表及解决方法:docs/KNOWN-ISSUES.md。
反馈
这是 beta 版,反馈正是重点。Help → Report an Issue 会打开一个 GitHub issue,并已填好你的版本信息。还有针对 安装问题和想法 的模板,以及用于其他任何内容的 Discussions。
开发
此仓库的设置使其可由编码 agents 以测试驱动开发的方式构建:
| 文件 | 用途 |
|---|---|
AGENTS.md / CLAUDE.md |
面向 agents 的规则、命令和工作流 |
docs/specs/ |
行为契约,每个领域一份规范 |
docs/PLAN.md |
有序的 TDD 任务,含测试和验证步骤 |
docs/DECISIONS.md |
事情为何如此 |
PRODUCT.md / DESIGN.md |
产品事实和设计令牌(供 impeccable 技能使用) |
.claude/skills/ |
next-task、honjin-tdd、theia-dev、herdr-integration、honjin-polish |
使用 Claude Code:打开此文件夹,然后运行 /next-task(单个任务)或 /loop /next-task(持续运行直到人工检查点)。测试:npm test(单元测试)、npm run test:int(真实 herdr,隔离会话)、npm run test:e2e(Playwright)。
在提交拉取请求之前,请先查看 CONTRIBUTING.md。
许可证
Honjin 自有代码采用 MIT 许可证(LICENSE)。Theia、Electron、Monaco 及捆绑字体保留各自的许可证;详见 THIRD_PARTY_NOTICES.md。Honjin 名称和图标不在 MIT 许可证覆盖范围内:欢迎以其他名称进行分叉,详见 TRADEMARK.md。
来源:Hacker News · github.com

