Sourcegraph 团近日已完成 Amp CLI 重构,新版本代号 Neo,已开始分阶段推送。Amp CLI 重构的三项核心变化是:上下文窗口达 90% 时自动压缩续接、取代用户此前需要的手动切线操作;可从 ampcode.com 远程控制本地 thread;Plugin API 正式发布。性能数据上 CPU 占用降低 **79%**、内存占用降低 **70%**。

远程控制改变 CLI 与 Web 端协同方式

远程控制

新版 Amp CLI 启动 thread 后可直接从 ampcode.com 网页端远程操控。用户在网页端不仅能看到本地 agent 的实时更新,还能向运行中的 thread 发送消息、对消息队列进行入队和出队操作、取消 agent 当前正在执行的动作。

Sourcegraph 团队明确这一架构是整体重写的核心动机 — — CLI 不再是孤立的本地进程,而是支持远端入口与多端协同的可控运行时。这一调整对应了 Sourcegraph 此前在 The Coding Agent is Dead 中提出的方向:agent 应能从任何地方被调起、在任何地方运行,单一终端单一 agent 的模式不再是默认假设。

上下文自动压缩取代手动切线

新版 Amp CLI 取消了手动切线流程,改为自动上下文压缩(compaction)。当上下文窗口填充至 90% 时,Amp 自动总结当前上下文、用该总结开启新窗口、保持任务连续。用户无需再监控上下文百分比、判断何时切线、或在窗口紧迫时手动提取信息。

Sourcegraph 团队的判断是当前前沿模型已能良好处理上下文压缩操作,因此手动切线的复杂度不再必要。该团队在公告中提到,新架构开发期间曾短暂关闭自动压缩一天,beta 用户普遍抱怨,其中一位反馈"再也不想念手动切线"。手动切线的有效场景仍然存在(如 thread 拆分),但 Sourcegraph 评估其复杂度收益比已不足以维持。

需要 thread 间引用时,用户可通过 Ctrl+O 调出 thread: new 创建新 thread,并通过引用前一 thread 的方式让 Amp 自动读取与提取相关信息,替代显式切线。

Plugin API 五类扩展入口

新版 Amp AMP Plugin API

CLI 正式发布 Plugin API。Plugin 可通过五类接口扩展 agent 能力:通过 amp.on(...) 处理工具调用、工具结果、agent 生命周期等事件;通过 amp.registerTool(...) 注册 agent 可调用的自定义工具;通过 amp.registerCommand(...) 注册命令面板动作;通过 ctx.ui.notifyctx.ui.confirmctx.ui.inputctx.ui.select 等接口呈现 UI 元素;通过 amp.ai.ask(...) 让 plugin 在内部调用模型进行带置信度与推理过程的是非分类。

Plugin 部署方式简单,在项目目录下创建 .amp/plugins 文件夹放入 TypeScript 文件即可生效。Amp Plugin API 官方文档提供了完整示例,包括用户多选工具与权限管理 plugin 的完整实现。

消息队列默认开启与 steering 机制

消息队列默认开启与 steering 机制

新版 Amp CLI 默认启用消息队列。当 agent 正在执行任务时用户发送新消息,消息会进入队列等待,而不是中断 agent 当前操作。Sourcegraph 团队判断该设计与当前及未来模型行为更匹配,agent 工作时长持续延长,频繁中断的需求随之降低。

队列消息可通过 steering(优先调度)机制提升优先级。用户按 选中队列中的某条消息,按 即可让该消息在下次工具结果返回时被立即送入 agent,而不必等到 agent 进入空闲状态。如需即时打断 agent 并发送消息,可连续按两次 Esc

权限系统从默认开启转为 plugin 化

Amp CLI 取消了默认的工具调用权限询问。此前的 --dangerously-allow-all 标志成为新默认行为。Sourcegraph 团队解释这一变化的依据是当前 agent 调用模式已显著复杂化,前沿模型会编写一次性脚本、链式执行 shell 命令,静态判断单条工具调用是否具有破坏性已近不可能。仅匹配 rm -rf 等关键字,在多 agent 并行执行多个 20 行 Python 脚本的场景下,提供的是"虚假的安全感"。

权限系统未被废弃,而是迁移至 Plugin API。已通过 amp.permissionsamp.dangerouslyAllowAll: falseamp.guardedFiles.allowlist 显式启用权限的用户,旧权限插件会被自动加载,工作方式不变(同时作用于 ampamp --execute)。需要自定义权限策略的团队可通过 Plugin API 实现匹配自身场景的方案。

性能与内存对比数据

Sourcegraph 公布了基于约 5000 条消息的大型 thread 的性能对比:CPU 占用均值从旧版 84.1% ± 1.6% 降至新版 17.4% ± 8.8%,降幅 79%;CPU 峰值从旧版 86.3% 降至新版 25.8%;空闲内存从旧版 1814 MB 降至新版 540 MB,降幅 **70%**。渲染性能同步改进。

旧版 Amp CLI 在长 thread 场景下的性能衰减是 Sourcegraph 团队启动重写的另一动机 — — 架构层面的重写比性能优化补丁更能从根本解决问题。

被移除的功能清单

Sourcegraph 在新版本中移除了多项功能,覆盖此前为"看护型"agent 工作流设计的能力。手动切线(handoff) 被自动压缩取代后整体移除。文件回滚:此前编辑或恢复消息时 Amp 会回滚文件修改,新版不再支持,Sourcegraph 称当前模型已能更精细地撤销修改,且回滚一直是 best-effort(agent 写代码生成的文件未被快照跟踪)。Skill 管理命令:Amp 仍支持 Agent Skills,但移除了添加、删除、更新 skill 的命令与子命令,建议改用专门的 skills 管理工具。用户主动调用 skill:新版仅保留 agent 自主调用,Sourcegraph 称当前模型 skill 调用已足够可靠。自定义主题:Sourcegraph 团队判断维护多套主题难以保证 CLI 的一致性与可读性。Prompt 编辑器内的手动 bash 调用:此前可通过 $$$ 调起 bash,新版移除,Sourcegraph 评估当前模型已能在不破坏上下文窗口的前提下自主运行命令。

推送节奏与迁移路径

Neo 将在未来数日内分批推送至现有 Amp 用户。希望提前切换的用户可通过邮件向 Sourcegraph 申请加速开通。

Amp CLI 重构反映的设计取向是 agent 工具链从"看护型"向"长任务型"的转向,自动压缩、消息队列默认、权限插件化、回滚移除等多项变化指向同一个判断:agent 工作时长延长后,用户的角色应从"持续干预者"变为"任务发起者与监督者"。这一判断是否成立,取决于前沿模型在长任务场景下的实际可靠性是否如 Sourcegraph 团队评估的那样稳定。

评论 ···