当前位置: 首页 > news >正文

Codux:一个开源的多项目 AI 终端,Codex、Claude Code 按项目统一管理——聊聊设计思路

先交代背景:我从 2024 年开始用 AI 写代码,这两年多下来,日常开发基本就是给 agent 派活,Codex 跑重构、Claude Code 修 bug,经常几个项目并行。工具本身都很强,但用久了发现真正花时间的不是模型,是模型周围那一圈事。

数了数至少五个:切到别的项目就不知道那边 agent 是在跑还是早停了;两个 agent 改同一个工作区,git 直接乱掉;长任务跑一半人得走;想让 agent 查个测试库,密码怎么给它是个无解题;还有每个新会话都得重新交代一遍项目约定,月底 token 花哪了也没数。

找了一圈没有顺手的,三个月前开始自己写。就是 Codux,GPL-3.0 开源,刚到 2.0 RC。这篇按设计过程讲,每个功能说清楚为什么这么做。

为什么不用 Electron

我要的是常驻桌面、同时渲染好几个高频刷屏终端的东西,Electron 一开始就出局了。最后选了 GPUI——Zed 编辑器背后的 UI 框架:GPU 渲染,多终端同时输出帧率稳;纯 Rust,跟终端仿真层(alacritty 的 crate)、PTY 层、网络层一个语言栈;Entity 加观察者的状态模型,配快照渲染,数据不变就不重绘。

代价也真实:文档少,控件基本自己造,Linux 桌面支持还不成熟(所以 Codux 的 Linux 目前只有无界面主机端)。坑随便举两个:快照构建器里不能反读 view entity,观察者触发时实体还在更新租约里,读了直接 panic;从 action handler 同步可达的观察者,写回 app 状态必须 defer。这些够单独写三篇,有人想看我就展开。

好处是终端能磨得很细:⌘F 搜滚动历史直接跳转、悬浮终端窗口、往终端粘截图自动落盘成文件路径(发图给 AI CLI 就是粘贴回车两步)、IME 候选框严格跟光标、终端标题直接显示在跑的 AI 工具和模型。这些不是功能列表凑数,是自己每天泡十小时攒出来的需求。

状态探测:不写文件、不改配置、不装 hook

Codux 要知道 8 个 CLI(Codex、Claude Code、OpenCode、Kiro CLI、Kimi Code、CodeWhale、MiMo Code、Agy)各自的状态和 token 用量,还要给它们注入上下文。最省事的路是往用户项目写提示词文件、改全局配置、挂 hook——市面上不少工具就这么干的。

我把这三条全划成红线。状态靠进程探测加各家会话文件的增量解析,能分出"生成中 / 等确认 / 闲着 / 结束"——其中"等确认"单独点亮,因为 agent 停在 y/n 上等你四十分钟这种事真的发生过(在我身上)。上下文注入只走官方口子:Codex 的 developer instructions、Claude Code 的--append-system-prompt、OpenCode 的托管 plugin、Kimi 的--agent-file;没有确认的非侵入通道的工具,宁可不注入也不硬写文件。

这条红线成本不低,但用户卸载之后环境干干净净,我觉得值。

worktree 当任务容器

并行 agent 打架的根子是共享工作区,与其在提示词里求它们别乱动,不如物理隔离。Codux 里每个任务就是一个 git worktree,绑自己的终端组、git 状态、文件视图和 AI 会话,切任务是整套原子切换。三天后切回来,终端还停在原地。配套的 git 面板支持目录级 stage / unstage / discard,agent 的改动当场核。

凭证:知道的和使用的不是同一方

全项目我最较真的部分。

威胁模型很直白:密码进了提示词,就进了模型上下文,然后进会话记录,可能进日志,最坏进训练数据。让 agent 读配置文件更糟,等于把~/.ssh整个交出去。

所以把"知道凭证"和"使用凭证"拆开:连接配置在桌面端保存、可测连通;agent 侧只有两个命令,codux-ssh <配置名> -- '<命令>'codux-db <配置名> -- '<SQL>'。list 只返回配置名和主机名,真实密码和私钥在辅助进程内部注入,模型全程只见过配置名。数据库标只读的配置,wrapper 在语法层做单语句白名单,DROP 和 UPDATE 直接被拒——不依赖提示词自觉。

一句话:安全边界画在进程边界上,不画在提示词里。

人可以走,任务不走

"手机接管"听着像远程桌面,架构上完全不是。桌面、手机(iOS/Android)、无界面主机端互为 peer:传输层是端到端加密的 P2P 直连,NAT 打不通回落中继,中继只见密文,不需要公网 IP;会话层上任务(PTY、agent 进程)永远跑在主机上,操控端接的是同一个活着的会话——手机上回车、确认权限、看实时输出,回到桌面接着用,断线重连恢复的还是这批。

主机端codux-agent一行脚本装(自动识别系统架构,GitHub 慢可以--mirror),codux install注册 launchd/systemd 服务,codux qrcode出码配对,codux update自己升级。家里吃灰的 Mac mini 从此有了工作。

这块最难啃的是远程终端协议:增量帧加基线快照、多观看端各自 ack、尺寸的单一所有权租约(手机和桌面同时看一个 PTY 不能抢 resize)、跨宽度不重排的滚动历史。迭代了四轮才稳,值得以后单独写。

顺手做了个隧道浏览器:桌面连上主机后,内置浏览器以主机身份上网。主机跑着 Vite,本地输127.0.0.1:5173直接开,HMR、WebSocket、.local、VPN 路由都通,不用配端口转发。

记忆和账本

本地记忆分三层——用户偏好、项目画像、模块笔记,开新会话自动注入(走上面的官方通道)。效果就是不用每次都说"这项目用 pnpm、测试跑 just test"。

token 记账按工具/模型/项目/worktree/日期切,30 分钟粒度加按天热力图,本地 SQLite。哪个项目烧钱、自己几点在干活,看图就行。

没有云端,没有账号,所有数据在用户机器上。

以及一只宠物

agent 烧的每个 token 都在喂一只像素宠物,智慧/混沌/夜行/体力/共情五个属性长自真实作息,熬夜党夜行值拉满。支持自定义皮肤和退役名册。没什么用,但每天都想看一眼。

现状

macOS 最稳(14+);Windows 11 可用、还在磨;Linux 桌面被 GPUI 卡着,目前只有无界面主机端;主机端配对连接是 beta。更新很勤。

brewinstall--caskduxweb/tap/codux# macOS 桌面curl-fsSLhttps://raw.githubusercontent.com/duxweb/codux/main/apps/agent/scripts/install.sh|sh# 主机端
  • GitHub:https://github.com/duxweb/codux
  • 官网:https://codux.dux.cn
  • 手机 App:github.com/duxweb/codux-flutter/releases
http://www.gsyq.cn/news/1646875.html

相关文章:

  • 基于YOLOv8的斗地主手牌检测实战指南
  • Spring Boot项目JUnit 5与Spring-test版本冲突诊断与解决方案
  • Innovus 23.1 电源规划实战:5步完成多电压域 Power Mesh 设计(附 IR Drop 分析)
  • 用Python开发一个简单的Web应用:步骤详解
  • RGB-D 抓取检测实战:基于 YOLOv8 与 FastSAM 的 3D 物体分割 Pipeline 实现
  • 从零搭建SpringBoot项目,这些配置细节值得留意
  • 测试转大模型:AI 测试工程师的能力跃迁,把学习路线落到项目证据
  • WorkshopDL终极指南:跨平台畅玩Steam创意工坊模组的完整解决方案
  • OFDM信道估计实战:LS与LMMSE算法在5G NR导频下的MSE对比
  • ISP CCM 色彩校正矩阵实战:3x3矩阵参数解析与24色卡ΔE优化
  • Agent 核心原理:工具调用记忆与任务规划,用业务场景检验技术取舍
  • PyTorch 图像识别数据工程:3步自动化爬取与清洗,构建专属数据集
  • PowerToys Text Extractor:解锁屏幕文字的智能钥匙,让每一段文字都触手可及
  • 舵机 PD 控制参数整定指南:从 P 项振荡到 D 项抑制的 4 步调参法
  • 工业镜头选型实战:5步公式从视野/靶面/物距计算焦距(附Excel工具)
  • RMFD 口罩人脸数据集实战:基于 ArcFace 的 95% 识别率模型复现指南
  • 心脏冠脉VR重建实战:基于3D Slicer的CTA数据分割与优势型可视化
  • YOLOv8 训练自定义 COCO 数据集:从 0 到 1 的 5 个关键步骤与性能调优
  • AI新纪元来了:普通人必须懂的3个真相
  • 如何3分钟搞定全网热门资源?专业级多平台下载神器实战指南
  • Agent 观测性:一次失败要能追到每个工具调用
  • EldenRingSaveCopier:专业级艾尔登法环存档管理与迁移解决方案
  • OpenCV视觉学习:几何变换与轮廓检测实战
  • 2026永久免费去水印软件推荐,电脑手机在线免费工具教程
  • 大模型微调实战:从LoRA/QLoRA原理到完整落地指南
  • 晶圆接受测试WAT与工程测试:数据驱动工艺优化
  • Copy-Paste 数据增强实战:VOC格式语义分割数据集扩增 5 倍(附完整代码)
  • OpenCV 4.8.0 形态学操作实战:3种核形状与5种算子对二值图处理效果对比
  • 2026年AI大模型学习路线与实战指南
  • Halcon 20.11 目标检测模型调优:5个关键参数设置与 mAP 提升 15% 实战