- Codex双Agent接入:共享后端内核,前台隔离会话/设置/导入 - 图片上传:Claude (stream-json) 和 Codex (--image) 均支持拖拽/粘贴/选择上传 - 主题系统:CoolVibe Light 视觉方案,主题入口移至二级页 - 会话加载优化:加载遮罩、热会话缓存、切后台内容不丢失 - 移动端增强:侧栏手势、运行状态标签、按钮比例修复 - 后端重构:agent-runtime.js / codex-rollouts.js 模块拆分 - 回归脚本:npm run regression 隔离式测试
6.6 KiB
更新记录
-
v1.2.8
- Codex 双 Agent 接入
- 新建会话时可选择 Claude 或 Codex,复用 cc-web 现有的多会话、后台进程、断线续挂和文件 I/O 核心逻辑
- 侧边栏按 Agent 隔离会话列表、最近会话记忆与默认新建行为
- Agent 切换入口收进顶部栏标签下拉
- Claude / Codex 各有独立设置入口,Codex 设置简化为
local/custom + API Profile - Codex 会话通过
codex exec --json/codex exec resume --json对接,stdin 文件喂入 prompt,持久化 thread id 用于续接 /model、/cost、/help对 Codex 会话做了适配
- Codex 本地历史导入
- 扫描
~/.codex/sessions/下的 rollout.jsonl,解析用户消息、助手输出、函数调用与 token 使用量后导入到 cc-web - 删除 Codex 会话时同步清理对应 rollout 文件与本地线程元数据
- 扫描
- 图片上传
- Claude 和 Codex 会话均支持图片消息:拖拽、粘贴或点击附件按钮上传
- 客户端自动压缩(WebP),服务端附件缓存(7 天 TTL)
- Claude 通过
--input-format stream-json传入 base64 图片,Codex 通过--image参数传入 - 历史消息仅保留图片文字标签,不渲染原图
- 单条消息最多 4 张图片
- 会话加载体验优化
- 回退并收敛长会话加载策略:最近消息先到,更老消息分批补充
- 新增会话加载遮罩与加载期不可操作状态
- 热会话缓存(最近 4 个,strong/weak 两级命中策略)
- 修复切后台再切回时运行中内容短暂消失的问题(
preserveStreaming机制)
- 主题系统
- 引入完整的主题系统与 CoolVibe Light 视觉方案
- 主题入口从设置页顶部改为「外观 → 界面主题」二级页
- 加载遮罩适配 washi / coolvibe / editorial 三套主题变量
- 移动端交互增强
- 对话区任意位置右滑唤起侧栏、侧栏打开后左滑关闭
- 运行中状态覆盖移动端 cwd 标签显示
- 修复附件按钮、新会话分裂按钮的移动端比例失调
- 其他改进
- 后端重构:spawn spec 与事件解析抽离到
lib/agent-runtime.js,Codex rollout 解析在lib/codex-rollouts.js - 新增隔离式回归脚本
npm run regression,使用 mock CLI 在临时目录中校验主路径 - 设置页说明卡移除,Codex Web Search 解释文案移除
- 删除确认弹窗按 Agent 动态提示 Claude / Codex 的本地删除影响
- 后端重构:spawn spec 与事件解析抽离到
- Codex 双 Agent 接入
-
v1.2.7
- 新增导入本地 CLI 会话:扫描
~/.claude/projects/下的.jsonl,解析后导入到 cc-web,可续接历史对话。 - 新增新建会话指定工作目录:创建会话时弹窗设置 cwd,spawn 子进程时使用该目录,header 显示当前工作路径。
- 新增检查更新功能:设置面板底部「检查更新」按钮,对比本地 CHANGELOG 与 GitHub 最新版本。
- 修复导入历史会话中工具调用显示动态动画的问题:已完成的工具调用统一显示为静态状态。
- 新增导入本地 CLI 会话:扫描
-
v1.2.6
-
工具调用折叠显示:长任务中散落的工具调用块达到5个时自动折叠入唯一父节点,之后每满5个再次移入同一父节点(两级结构),输出结束后剩余散落项也一并收入;总数不超过5个则完整显示不折叠。
-
新增编辑模板弹窗「获取上游模型列表」:通过
/v1/models端点拉取可用模型,填充到四个模型输入框的下拉建议列表,支持自定义端点地址。 -
修改密码改为按钮+弹窗模式:设置面板中密码修改从内联表单改为独立弹窗,成功后自动关闭。
-
子弹窗关闭按钮样式适配:编辑模板和修改密码弹窗的关闭按钮统一为与主面板一致的风格。
-
新增 AskUserQuestion 选项预览区:左侧选项列表,右侧实时显示选项说明;桌面端 hover 切换,移动端 tap 选中后点确认按钮发送。
-
修复
~/.claude/settings.json写入竞争问题:改为原子写入(先写临时文件再 rename),避免 Claude 子进程读到写了一半的文件导致随机 401 认证失败。 -
修复
ANTHROPIC_REASONING_MODEL被误删问题:补充到 settings.json 白名单,保留该字段不被覆盖。 -
修复删除会话时同步删除
~/.claude/projects/下对应的原生会话历史,遍历所有项目目录确保完整清除。 -
新增删除确认弹窗,支持「确认且不再提示」选项,风格与主界面一致。
-
用户消息支持多行换行显示。
-
修复 AskUserQuestion 选项卡渲染位置:从消息顶部移至底部。
-
修复流式输出与工具调用 UI 共存时的覆盖问题(bubble 拆分为 .msg-text 和 .msg-tools)。
-
新增聊天区自定义滚动条,支持鼠标/触屏拖动,悬停时滑块变宽。
-
会话历史分批异步渲染,切换会话体感延迟大幅降低。
-
修复快速切换会话时旧历史错误渲染到新会话的问题(epoch 校验)。
-
模型配置保存时立即同步写入
~/.claude/settings.json,无需触发对话才生效。
-
-
v1.2.3
- 新增模型配置系统:支持 local(读取本地配置)和 custom(自定义 API 模板)两种模式切换。
- custom 模式通过写入
~/.claude/settings.json实现 API 凭据注入,兼容 cc-switch-web 等配置管理工具。 - 模板配置改为弹窗编辑,界面更简洁;切换至 custom 模式时显示覆盖警告。
- spawn 时增加模型名称校验,防止无效模型参数导致进程静默失败。
-
v1.2.2
- 对齐 Claude Code 原生上下文压缩策略:
/compact改为真实下发到 CLI 执行,不再使用本地会话伪重置。 - 补齐超限自动恢复链路:当出现
Request too large (max 20MB)时,自动执行/compact并在压缩后自动重放上一条失败请求继续运行。 - 增加自动续跑保护:若压缩后仍超限,停止自动重试并提示用户手动缩小输入范围,避免死循环。
- 对齐 Claude Code 原生上下文压缩策略:
-
v1.2.1
- 修复
AskUserQuestion交互选项在 Web 端不显示的问题:后端保留完整结构化参数并前端按问题/选项渲染。 - 新增交互选项快捷填充:点击选项即可把对应答案插入输入框,便于快速确认并发送。
- 修复
-
v1.2
- 修复消息中包含代码块时可能触发的页面横向溢出问题:窗口不再被长代码撑宽,代码块可在块内横向滚动。
- 优化移动端输入体验:手机浏览器回车键默认换行,不再直接发送消息;消息发送改为手动点击发送按钮。
-
v1.1
- 增加 Windows 环境下 Claude Code CLI 的兼容支持,完善本地部署与启动体验。