AcpAgent Client 1.1.0
v1.0.0 之后 main 上落地的两项功能。仍是源码 release:打包轮(R8:Windows zip / 安装器、macOS 构建、干净机验收)还没做,需要自行构建,步骤见下。
新增
会话时间线(画板 43)
线程头的 history 按钮开弹层,按轮列出每一轮的用户 query 首行(编号 01 / 02…)与该轮最终回答的首行(A),点一行、或高亮行按 Enter,转录区就跳到那一条。打开时滚到底部,最新一轮在视口里;弹层开着时转录还在长也没关系,行会重算、高亮跟着它指的那一行走。
弹层开着时键盘完全归它:上下键移高亮、Enter 命中、Esc 关,其余的键一概吃掉。这不是图省事——放行的键会沿焦点链上浮到 WidgetsApp 的默认 Shortcuts,Tab 与左右方向键在那里是 NextFocusIntent / DirectionalFocusIntent,会把键盘交回输入框,之后 Enter 又走输入框的「发送」,把没写完的草稿发出去(这条路径在审查里漏过两次)。
字体切换四轴(画板 70「外观」)
界面西文 / 界面中文 / 代码等宽西文 / 代码等宽中文四条轴各自可选,两组候选互不重叠,改完全局即时生效(包括终端、代码块、Mermaid 与数学公式)。
- 随包的仍是 Geist / Geist Mono / Noto Sans SC(都是 OFL-1.1,在
pubspec.yaml里)。 - MiSans、HarmonyOS Sans SC、Inter、JetBrains Mono、Cascadia Mono、更纱黑体 Sarasa Mono SC 是候选项,但字体文件不入库:MiSans 与 HarmonyOS Sans 的协议允许「嵌进 App 一起分发」,禁止「在独立基础上」再分发字体文件本身,公开仓库里躺着一份可单独取出的
.ttf正是被禁的那格。把.ttf/.otf放进assets/fonts/optional/(构建时随包)或%APPDATA%/AcpAgentClient/fonts/(运行时注册),或者直接装进系统,都会被探测到并自动点亮。认得的文件名、许可与官方下载地址见assets/fonts/optional/README.md。
其它
- 三处版本号(
pubspec.yaml、rust/Cargo.toml的 workspace、sidecar/zed-agent-acp/Cargo.toml)一并抬到 1.1.0:exe 元数据、smoke 报告与调试面板的coreVersion、registry 下载的 User-Agent、sidecar--version与它在 ACPinitialize里报给客户端的 agent 版本,都跟着变。 - 独立审查的默认执行器模型切到
cursor-grok-4.6-high-fast。
怎么构建
前置:Rust stable、Flutter stable、flutter_rust_bridge_codegen、VS 2022「使用 C++ 的桌面开发」、Node >= 22。详见 CLAUDE.md「本地开发」。
powershell -File scripts/fetch-upstream.ps1 # 按 pins/upstream.json 填充 vendor/upstream/
powershell -File scripts/validate.ps1 # 编译 + 测试 + 契约检查
powershell -File scripts/build.ps1 # flutter build windows --release
powershell -File scripts/build-sidecar.ps1 # Zed Agent sidecar(冷编译约 50 分钟,可选)sidecar 缺了不报错,只是 agent 列表里没有 Zed Agent。Windows 首发,macOS / Linux 在 R8。
许可证
GPL-3.0-or-later(见 LICENSE)。rust/ 与 sidecar/ 里复制改写或转写自 Zed 的文件各自在文件头标注了上游路径与 commit,汇总在 NOTICE——同一份文件也列出 ACP 规范 / rust-sdk / registry(Apache-2.0)、随包字体(OFL-1.1)与图标的来源,以及商标声明。开源、不商用。上游钉版本在 pins/upstream.json。
已知限制(与 1.0.0 相同):R8 打包与发布未开始;session/load 重放不带回轮边界;sidecar 未带 languages crate(构建机缺 VS Spectre 缓解库组件)。
Full Changelog: v1.0.0...v1.1.0