本帖最后由 qq564118922 于 2026-7-21 01:25 编辑
我把 Grok Build 包装成了一个带"特工办公室"的桌面应用 —— Nexus Core 分享上周 xAI 把 Grok Build 开源了,相信不少人都试过那个 CLI。说实话,引擎本身很强,ACP 协议设计得也很干净,但对我来说,一直开着终端跟一个 TUI 打交道,久了还是有点累——尤其是想看工具调用过程、管理多模型、翻历史会话的时候。 所以我一咬牙,用 Tauri 2 + React 19 给它包了一层 GUI,顺便加了些自己一直想要的功能。断断续续改了一周多,现在拿出来和大家分享一下。
底层逻辑一句话概括:Nexus Core 是 Grok Build(nexus-pager)的 ACP 客户Duan GUI。 UI (React) <-- Tauri IPC --> Rust 后端 <-- stdio ACP --> nexus-pager (引擎)nexus-pager 本身是个 Rust 写的 CLI 工具,通过 stdin/stdout 收发 ACP 协议事件(thought_chunk、text_chunk、tool_call、request_permission 等)。我这边 Rust 后端负责 spawn 子进程、泵送 stdin/stdout,前端订阅事件流做渲染。 这样做的最大好处是:Grok Build 的引擎能力完全保留,但交互体验可以自己定义,而且不用碰终端。
做了哪些改动和原生 CLI 相比,我主要加了这些: - 可视化对话:思考过程(thought_chunk)和最终答案分开渲染,支持 Markdown + 代码高亮。用了 30ms 节流合并 token,避免逐字重渲卡顿。
- 多模型 GUI 管理:不用手动改 config.toml,界面里直接增删改查模型配置,支持 OpenAI / Anthropic / Messages 三种 backend。GLM 和 DeepSeek 首启向导三步配完。
- 文件引用 + 拖拽:输入框里 @ 触发现行目录文件列表,支持拖拽文件和粘贴图片(自动存到 .nexus-temp/)。
- 权限审批弹窗:工具执行前 Agent 请求权限,弹窗显示操作描述和命令,Esc 默认拒绝。
- 会话历史:按工作目录分组,带搜索和相对时间显示。
- Skills / MCP / Prompt 模板 GUI 管理:全部可视化 CRUD,MCP 支持 stdio 和 http 双 transport,内置了几个常用预设。
- 特工团队可视化:把工具调用映射成 6 个虚拟特工(管家狐 / 文件熊 / 搜索豚 / 终端鹅 / 网络鹰 / 工具猫),右侧栏按特工分组显示行动日志。
安全方面因为 Grok Build 之前有过数据上传争议,我在这块比较注意: - 用量统计只存浏览器 localStorage(不进 ~/.nexus),配置留在本地。
- 严格 CSP,仅放行本地与更新源。
- 生产环境禁用 DevTools / 右键菜单 / 刷新快捷键。
- 图片 MIME 用 magic bytes 兜底,上限 20MB。
技术栈层 | 技术 | | 前端 | React 19 + TypeScript + Tailwind + Zustand + framer-motion | | 后端 | Tauri 2 (Rust) | | 引擎 | SpaceNEXUS nexus-pager (Grok Build 核心) | | 协议 | ACP (Agent Client Protocol) stdio | | 打包 | 内嵌 nexus-pager 二进制 + WebView2 Bootstrapper |
接入模型- 默认接入的GLM5.2和deepseek-v4-pro,只需要填入你的key即可
- 其他模型自行在模型管理里面添加
UI换肤- 最近codex的自定义换肤个人觉得还不错,顺手页给它安排上了,默认自带15个色组。
- 支持自定义图片背景(如下方演示效果)。
目前状态
还在迭代中,核心功能基本跑通了。我自己日常开发已经切过来用了两周,感觉比终端 TUI 顺手不少,尤其是翻历史会话和切换模型的时候。 下载地址:https://www.nexus2026.cn/ 蓝奏云下载:https://wwaxw.lanzouq.com/iJcbA3xpgipg 密码:f368 欢迎交流讨论,也欢迎提建议,以下是软件截图:
|