用 Rust 写了个开源桌面 Agent,聊两个实际卡住过我们的性能问题

bowen628 2026-08-04 22:05 1

BitFun ,开源( MIT )桌面端 AI Agent ,Windows / macOS / Linux 都有安装包。Agent 运行时是 Rust ,外壳 Tauri v2 。需要自备模型 API 。

不列功能了,讲两个我们真正花了时间的地方。

一、Agent 反复搜同一个仓库

Agent 干一个任务,会把同一个仓库搜几十上百次。ripgrep 本身够快,但它每次都是冷启动 —— 重新遍历目录树、重新过 gitignore 。在 Chromium 这种千万行级的树上,这部分开销会直接盖过模型推理的耗时。

我们做了个跨轮次常驻的索引( flashgrep ),进程活着索引就在,不用每次重建。实测在 Chromium 上搜索耗时最高降低 94.6%,平均快约 36 倍。绝大部分收益来自不再为每一次工具调用付冷遍历的成本。

二、KV Cache 命中率

Agent 的 token 成本大头不是新生成的内容,是每一轮重新发过去的上下文。要让 KV Cache 真正命中,prompt 前缀必须逐字节稳定 —— 一个时间戳、一次工具列表重排序,都会让缓存从那个位置断掉。

把 prompt 拼装重构成前缀稳定的结构之后,一轮 SWE-Bench-Pro 跑下来平均命中率 98.67%。

已知问题先说在前面

macOS 第一次打开会提示「已损坏」。还没做 Apple 公证,Gatekeeper 拦的,需要跑一次 xattr -d com.apple.quarantine /Applications/BitFun.app 。这个在修。

另外仓库里那组 SWE-Bench 对比数据是我们自己跑的,每个 case 只跑了一次,没排除波动,别当排名看。

链接

仓库 https://github.com/GCWing/BitFun
官网 https://openbitfun.com/

顺便,项目 97% 以上的代码是 AI 写的,包括用它自己开发它自己。这点大概会有争议,欢迎拍。
最新回复 (6)
  • yafoo 08-04 23:16
    1
    官网挺漂亮的,就是上下滑动太卡了。
    前些天构思了个 logo 。跟你的 logo 几乎一样的。
  • yidinghe 08-04 23:25
    2
    我最感兴趣的还是 flashgrep ,因为 intellij 的 mcp 搜索不可靠,这个 IDE 自己还存在内存缓存问题。楼主我就先把这个工具拿去用了,感谢感谢
  • bowen628 楼主 08-05 09:52
    3
    @yafoo 感谢反馈,官网我们近期会优化一下~
  • bowen628 楼主 08-05 09:53
    4
    @yidinghe 感谢试用~
  • Jerrymouse1 08-05 10:34
    5
    体验一把
  • Apol1oBelvedere 08-05 14:55
    6
    产品功能完整度非常高,连 computer use 功能也原生具备了,再加上上面 2 个原创功能。从产品规划角度看,这个软件非常出色。继续加油。
* 帖子来源V2EX
返回