把文件、终端和改动审阅收进一个窗口(FanBox)
FanBox 是 alchaincyf 用 JavaScript 写的 macOS 桌面应用,把本地文件浏览、内嵌真实终端和 agent 改动审阅放进同一窗口,用来指挥 Claude Code 或 Codex 并看清它改过的每一处。这篇文章拆解它的实际功能、参数入口、安装路径与已知问题,帮读者判断它是否适合自己手上的编码 agent 工作流。
用 Claude Code、Codex 这类编码 agent 干活的人,一个下午能起好几个项目。麻烦在于它们散落在磁盘各处,文件夹名字越来越认不出用途,agent 到底动了哪些文件,也得靠 git diff 或者来回切窗口自己拼。
FanBox 用 JavaScript 写成,是一个本地桌面应用:左侧浏览本地文件,右侧或下方跑真实终端里的 Claude Code、Codex,中间看每次改动。
它的活儿只有一条链路,找回文件、运行 agent、看清改了什么。界面提供三套皮肤,本地优先,运行时零依赖,不需要账号也不连云。仓库顶层语言占比是 JavaScript 59.9%、HTML 26.8%、CSS 13.4%,采用 MIT 许可证。
它的定位很窄。它不跟 Finder 拼文件操作,也不跟 VS Code 拼编辑,专注的是「找回 + 预览 + 轻改 + 指挥 agent」这一条链路上手顺不顺。整理目录、重命名、批量移动不是它的主项。
它解决的是什么问题
没有这个窗口之前,找出昨天那十个项目要在 Finder 里按时间翻,或者凭着名字片段在命令行里 find 一遍。找到之后还得另开一个终端把 agent 跑起来。
agent 写到一半,想知道它碰了哪些文件,得切回编辑器看文件树,或者开一个 git 客户端等刷新。想知道它这一轮改了什么、是哪个会话改的,基本靠自己记。窗口在三四个应用之间来回跳,注意力全花在切换上。
FanBox 把这三步并到一屏:⌘K 找文件,内嵌终端跑 agent,agent 每写一个文件,对应的文件卡片当场亮起来。项目文件夹上标着 node / web / py / rs / go 徽章,一个下午起的十个项目,靠徽章就能分出类型。
典型使用场景
- 一天里跑多个小项目的独立开发者:项目散在磁盘各个角落,靠模糊搜索和徽章快速定位,不用记住完整路径。
- 需要审 agent 改动的人:一轮任务结束后进「本回合」面板,看哪些文件被改、哪个终端里的哪个 agent 改的、每个文件加减多少行,能逐行还原,也能整回合回滚。
- 项目目录已经乱掉的人:让 AI 只读元数据出一份整理提案,逐条勾选后再执行,动作留下回滚日志。
- 本机装了一堆 agent skills 的人:Skills 透视把全部 skill 收进一个视图,含触发统计、健康检查、context 预算,以及不删文件的启停开关。
几个常见疑问
只能装 Apple 芯片的版本吗?
有用户在 Issue 里提过让 agent 支持可配置,同时提供 Intel(x86_64)版本的建议,那条 Issue 已经关闭。仓库没有说明当前是否已经提供 Intel 包的下载。版本说明里出现过「这个 Release 没发当前架构的包(Intel 机器上 arm64 包)」这类表述,说明发布物按 CPU 架构区分,下载前对一下自己的机型。
除了 Claude Code 和 Codex,能接别的 agent 吗?
有用户指出,FanBox 只硬编码了 Claude Code 和 Codex 两种 agent,涉及启动按钮、会话扫描、续会话这些地方,建议改成在 settings.json 里用一个 agents 数组配置。这条 Issue 已关闭,但事实表里没有说明现在是否已经支持配置其它 agent。就目前的文档看,能一键拉起和续上的仍然是这两种。
更新要自己去 Releases 页面下载吗?
从 v2.16.0 起不用了。右下角新版本胶囊上的按钮从「下载更新」变成「更新」,点一下由 electron-updater 在后台拉当前架构的 zip,胶囊上显示百分比,下完按钮变「重启安装」,点下去 Squirrel.Mac 原地换包。没点的话,下次退出应用时也会自动装上。菜单里的「检查更新…」走同一条路。
主要功能
- ⌘K 全局模糊搜索:记得名字片段就够;
⌘↵用编辑器整包打开项目;内容:关键词切到全文搜索。 - 原地预览:Markdown 渲染、HTML 实时成品、代码语法高亮,图片、视频、PDF 内嵌,HEIC 直接显示,压缩包列出内容清单,透明图垫棋盘格底。大文件夹的滚动和点击都在 0.1 秒内。
- 跟随模式:一键让文件视图和预览跟着 agent 正在编辑的文件走,代码随新写入的行高亮闪烁,HTML 边写边实时渲染(双缓冲),Markdown 实时渲染。任何手动浏览会立刻把控制权交回给你。
- 本回合:一个面板看清这一回合 agent 改了哪些文件,按终端和 agent 归属分组,标出每个文件的增减行数;点一行看 Monaco 并排 diff,可单独还原某个文件,可整回合回滚,底部是可拖动的回放时间轴。Markdown 默认按读者视图左右对比渲染后的样子,图片给前后滑杆。
- 在 diff 上写批注回喂:在 diff 里选几行、写一句批注,一键以「文件:行 + 围栏代码 + 批注」的格式粘进那个 agent 的终端,采用 bracketed paste,不自动回车,最后一下由你按。
- 项目记忆:点开任何项目文件夹,能看到历史会话(你的第一句话被当作标题)、每次会话改过的文件、触发过的 skill;点「▶ 续上」用
claude --resume或codex resume在内嵌终端接回当时的上下文。 - AI 整理:AI 只看元数据出整理提案,不读内容也不碰文件系统,每条建议带理由,逐条勾选过人之后由 FanBox 执行,写回滚日志,支持一键整体撤销。引擎可选 Claude Code 或 Codex,策略提示词可以改。
- Agent 用量与 Skills 透视:Claude Code 的官方 5 小时窗口与周配额(与
/usage同源)加本地 token 统计,可展开看未缓存输入、缓存读取、缓存写入、输出。Skills 透视把本机全部 agent skill 收进一个视图。 - 发版向导与截图直通车:node 项目一键串起版本号、CHANGELOG、打包、推送、GitHub Release,整条命令序列在内嵌终端可见地跑;系统截屏落盘即浮出直通卡,可以喂给终端里的 agent、收进项目
素材/,或先标注再发。
安装与最短示例
官方下载入口在 alchaincyf/fanbox 的 Releases 页面,取 dmg 拖进 Applications 即可。从 2.4.1 起就是 Developer ID 签名加公证。本次拿到的 README 节选里没有给出从源码构建或者用包管理器安装的命令,仓库里也没有说明这一步。
最短的一次使用,是打开应用、左侧定位项目、终端里把 agent 跑起来,然后看卡片。
cd ~/你的项目目录
claude
agent 每写一个文件,对应卡片会荡开涟漪并按改动频率发光呼吸,写到哪光就走到哪。想看得更细,切到跟随模式,预览会跟着 agent 正在编辑的文件走。
关键参数
可调的入口散在几处,仓库没有给出完整的 settings.json 字段清单。
- 三套皮肤:终端 · Volt(默认,荧光绿配炭黑加等宽字)、档案 · Archive(奶油纸配赤陶橙加衬线)、索引 · Index(黑白配信号红绿加巨号字)。换皮肤不是换主色,配色、字体、图标、代码高亮和终端 ANSI 主题整体跟着变。
- 搜索语法:
内容:关键词切到全文搜索;⌘↵用编辑器打开整个项目。 - AI 整理的引擎:在侧栏「更多…」里选 Claude Code 或 Codex,策略提示词也在这里改。
- 节能与遥控开关:「合盖继续干活」在侧栏「工具」组的最后一行,行内一个绿点标明此刻是否真的拦着休眠,悬停有解释卡;「微信遥控不断线」留在原生「视图」菜单,两处读同一份状态,勾选保持一致。
结果在哪里看
即时反馈在文件卡片上。哪个文件被写、被写得有多频繁,都由涟漪和呼吸光表现,不用切窗口确认。
成体系的产出一在「本回合」面板:改动文件清单、归属的终端与 agent、增减行数、逐行 diff、单文件还原、整回合回滚,还有底部的回放时间轴。执行过的整理动作有回滚日志,可一键整体撤销。
发版向导的命令序列在内嵌终端里可见地跑。应用更新状态显示在右下角的胶囊上,后台下载时显示百分比。
实际使用中的坑
有用户报告终端内偶尔出现文字渲染乱码。该用户排除了字体缺失(系统装了 Maple Mono NF CN、JetBrainsMono Nerd Font),并说在 iTerm / Ghostty 里用 Claude Code 没有同样问题,只在 FanBox 所用的 node-pty 中出现。这条 Issue 已经关闭。
另有人反馈切换左侧项目 schema 时控制台突发重置,开着的 terminal 消失了,但任务还在跑,也回不到那个终端窗口。这条 Issue 已经关闭。
带透明通道的白色图片,在目录和预览状态下都显示成纯白方块,只有点开放大才看得出内容,用户建议给透明背景加可配置的预览底色。这条 Issue 已经关闭。
2.16.0 版本里「更新」按钮大多数时候显示成「下载更新」。原因是主进程探测「能不能自动装」还没跑完就把 auto:false 的状态暴露给了渲染层,而窗口获得焦点又会触发一次检查,正好撞上渲染层初始化。2.16.1 改成探测完成后才落状态。
和同类的差别在哪
| 项目 | 适合谁 | 部署方式 | 主要限制 | 什么情况下选它更合适 | 项目地址 |
|---|---|---|---|---|---|
| FanBox | 主要用 macOS、拿 Claude Code 或 Codex 干活,想一边看文件一边审改动的开发者 | macOS 下取 dmg 拖进 Applications;仓库没有说明从源码构建的步骤 | 只硬编码 Claude Code 与 Codex 两种 agent;发布物按 CPU 架构区分,仓库没有说明是否提供 Intel 包 | 想让文件、终端、改动审阅同屏,并且要逐条确认后才动文件的人 | alchaincyf/fanbox |
| AI-Cubby | 本地媒体文件散乱、希望边打开边自动编目的用户 | 仓库没有说明 | 未逐一核实 | 痛点在图片、视频这类媒体资产的编目,而不是指挥编码 agent 时 | miragecoa/AI-Cubby |
| filepilot-ai | 想给 AI agent 一个受控文件访问入口的开发者,需要 CLI 或 MCP server 的场合 | 桌面应用加 CLI 加 MCP server(按其仓库描述) | 未逐一核实 | 你要的是让 agent 通过 MCP 安全读写文件,终端里的驾驶舱不是重点时 | cuiheng511/filepilot-ai |
这两项能解决部分相同的问题:都跟本地文件打交道,也都把 AI 接进来,但重合度不高。FanBox 的分发以 macOS 为主,agent 侧目前只覆盖 Claude Code 和 Codex。你在 Windows 上工作,或者主力是 Gemini CLI 一类其它命令行 agent,就不适合硬上它,应该先看覆盖你所用 agent 的方案。文件整理上,它的整理走逐条勾选确认,动作留回滚日志;自动编目类的工具把这步交给程序判断,省掉人工确认,代价是少了一道可回溯的关卡。
适合谁用,什么情况下别用
适合在 macOS 上用 Claude Code 或 Codex 写东西、并且经常需要回头确认 agent 改了哪些文件的人。也适合手里项目一多就理不清、愿意花几分钟逐条过一遍 AI 整理提案的人。
不适合主力在 Windows 上工作的人,仓库没有说明 Windows 版的发布情况,有用户自行移植过并提了 PR,Issue 已关闭,但这不等于官方已经提供下载。不适合想接 Gemini CLI 等其它 agent 的人,也不适合只想找一个比 Finder 更强的文件管理器的人,它的文件操作能力有意收窄在预览和轻改上。
焚评:这个项目的量化评分
本项目的选题来自 焚.com(一个按公开公式给 GitHub 项目打分的站)。焚评当前总分 9.3 分(满分 10)。下表是各维度的得分:
| 评分维度 | 得分 |
|---|---|
| 热度动量(权重 25%) | 10.0 / 10 |
| 开发活跃(权重 25%) | 7.4 / 10 |
| 社区响应(权重 15%) | 10.0 / 10 |
| 文档质量(权重 15%) | 10.0 / 10 |
| 发布节奏(权重 10%) | 10.0 / 10 |
| 风险控制(权重 10%) | 10.0 / 10 |
评分口径、权重与计算方式见焚.com 的评分方法页;数据随 GitHub 指标刷新,具体数值以焚.com 当前页面为准。本文正文为诀.com 独立撰写,评分数据由焚.com 授权引用。
内容核验说明
FanBox 把文件浏览、内嵌终端和 agent 改动审阅放进一屏。对同时在 macOS 上跑多个 Claude Code、Codex 项目的人有实际参照:⌘K 找文件、本回合面板逐行还原或回滚、跟随模式盯住正在写的文件。安装构建方式、Intel 包是否提供,仓库没说;终端乱码、透明图显示等问题对应 Issue 虽已关闭,不等于已修。
功能描述、参数入口与已知问题来自作者公开的仓库说明与 Issue,诀.com 未独立安装验证,文中的数据来自原作者公开披露,诀.com 未独立验证;GitHub 指标与焚评评分引自公开页面,会随刷新变化。文中没有实测过程,体验类描述不保证在其它机器上复现。用户反馈摘要
根据仓库 Issue 来看,反馈集中在能力边界与平台覆盖:有人自行完成 Windows 移植并询问能否合并 PR,有人提议 agent 改成可配置数组并提供 Intel 包,也有人要新建文件夹、拖移分栏、自定义终端字体和透明图预览底色。渲染乱码、切换 schema 后终端丢失等报告也在其中。应用内自动更新的诉求、微信遥控提示的含义也有人提出。上述 Issue 状态多为已解决,但不等同于功能已发布或问题已修复。
基于该仓库公开 Issue 整理,只反映提交者报告的现象与诉求,不代表诀.com 立场,也不代表问题已被确认。项目来源与说明
开源项目:alchaincyf(alchaincyf)
本文由诀.com 编辑基于该项目的公开信息独立撰写,属原创解读,不是对项目文档的翻译或转载;文中提到的功能与参数以官方仓库为准,代码与文档版权归原作者所有。
查看项目仓库