Rollouts 与 Security Review

今天,我们推出两个 Cherri Code bot,助你打通代码交付的最后一公里。Rollouts 会实时监控每一次变更的部署过程,并按环境报告其健康状况。Security Review 会在每个 PR 中报告可被利用的缺陷。

两者现已在团队版和企业版中上线。

Rollouts

Rollouts 会为每个 PR 附加一个监控项,在变更部署过程中持续跟踪,并按环境报告变更的健康状况:已验证健康、检测到回归或无法确定。它是 Cherri Code 版的 Firetiger Change Monitors,基于 Bot Development Kit 重新构建。

在仪表盘中启用它,然后连接源代码管理、你的部署系统和遥测供应商。Rollouts 会从下一个 PR 开始监控。

监控规划

PR 创建后,Rollouts 会读取 diff 及其涉及的系统,然后以 PR 评论的形式撰写一份监控规划。规划中会列出识别出的风险、此次变更预期达到的效果、将要检查的信号,以及可能导致变更难以确认的埋点缺口。你可以直接在 PR 中编辑该规划,Rollouts 会采用你修改后的版本。

部署跟踪

当该变更对应的提交触发部署事件时,Rollouts 会被唤醒,并基于你的日志、指标和链路追踪数据运行规划。它会分别跟踪每个环境,因此同一变更可能在预发布环境中验证通过,却仍在生产环境中被标记。Rollouts 会在检查变更是否达到预期效果的同时,关注错误信息和延迟信号,并在得出结论后将结果反馈到 PR 上。

回归

当 Rollouts 检测到回归时,会指出疑似引发问题的变更,并通知其作者。根据配置,它还可以创建一个回滚 PR 供审查,或将发现的问题交给云端智能体修复。目前,Rollouts 还不会自行合并或回滚。

集成

Rollouts 可连接 Origin 或 GitHub 进行源代码管理,连接你的持续交付系统以获取部署事件,并连接 Datadog 等遥测供应商以获取信号。功能开关集成即将推出。

Security Review

Security Review 现已上线。它会结合整个代码库的上下文读取每个 PR,并发布一条审查评论,报告其中可被利用的缺陷。代码风格和质量问题仍由 Bugbot 负责。

Security Review 在 PR 上发布的评论,报告了一个可被利用的缺陷,并附有严重程度和建议的修复方案

您可以在仪表盘中为需要审查的代码仓库启用该功能。草稿 PR 将被跳过。

报告内容

Security Review 会检查 SQL、命令和模板等界面中的注入问题,以及身份验证和授权绕过,包括因代码重构而不再执行的检查。它还会标记提交到源代码中的密钥和凭证、SSRF 与未经验证的重定向、不安全的反序列化,以及引入已知漏洞的依赖变更。此外,它会追踪用户输入从何处进入,以及流经了哪些环节。

发现项

每个发现项都会标明严重级别、攻击路径和建议的修复方案。忽略某个发现项时注明原因,Security Review 就不会在该 PR 中再次报告它。

团队规则

为你的代码库添加规则,例如外部调用必须通过哪个客户端发起,或哪些表绝不能在请求处理程序中查询,Security Review 会在每个 PR 中强制执行这些规则。

开始使用

Rollouts 和 Security Reviewer 现已面向团队版和企业版开放。你可以在“自动化”选项卡中启用其中任意一个 bot。

未来 10 天内,我们将赠送用量额度,方便团队在真实的代码变更上试用 Rollouts。团队版和企业版客户分别可获得约 50 次和 500 次变更的额度。

Cherri Code 项目

今天,我们在 Cherri Code 中推出「项目」。项目让你能够承接更大规模的工作,比如一项功能、一次迁移,或是一个完整的应用。它能在长达数月的工作中持续保持上下文,将任务委派给成千上万个子智能体,还能无需提示自动执行周期性工作。

在左侧导航栏中即可打开「项目」。项目中的协调智能体本身并不编写代码,而是负责规划工作、把工作委派给具体实现的智能体,并将完成的成果交回给你检查。协调智能体会代表你创建和管理智能体,并按工作需要并行运行任意多个智能体。

由云端智能体驱动

项目 在云端独立的计算机上运行,因此合上笔记本电脑也不会中断。当某项任务需要在你的机器上测试时,协调智能体会启动一个本地智能体在本机执行。

共享上下文

您不应该每次开始任务都得给智能体重新"上手介绍"一遍。每个 项目 都会维护一组文件,并在其智能体所使用的每台云端和本地机器之间保持同步。智能体会不断补充研究成果和 artifacts,以及它们对代码库的了解和您偏好的工作方式。比如,一旦某个智能体摸清了如何测试某项服务,之后的每个智能体都能直接复用这些说明。共享上下文会随 项目 一同积累,让协调智能体越用越高效。

Subscriptions

你可以让协调智能体监听某个 Slack 频道、按计划运行,或跟踪你的所有 PR。这样它就能根据检测到的信号主动采取行动,无需等你发出提示。

连接 Slack 并将其指向缺陷上报频道,此后每当有新缺陷提交,它都会自动开始分派任务。

项目 目前处于 beta 阶段,从今天起逐步向所有用户开放。

自托管机器

Cherri Code 支持 自托管机器,让工具执行完全留在你自己的网络内。

你的代码库、构建产物和密钥都保留在你基础设施中运行的内部机器上,由智能体在本地处理工具调用。

Run on 菜单中显示远程机器,包含 lambda-test、cloud-demo 和 jacks-desktop 等自托管选项

动态池调度

My Machines 将单台笔记本电脑或 VM 连接到你的账户,用于个人工作流。

团队池是面向团队或企业的具名 worker 队列。容量会随请求到来而扩容,并在 worker 断开连接时缩容,让你的自托管机器随需求弹性伸缩。池不与某个代码仓库绑定:只需指定池名称,任何空闲的 worker 都可以领取该请求。

池还可以让闲置机器休眠,并在收到后续消息时于重连窗口内恢复,这样你就不必只为等下一个提示而一直让昂贵的容量保持热运行。

云端智能体仪表盘中列出自托管机器池及其活跃与空闲 worker 数量

在你的沙箱中运行

云端智能体现在可以在你已在使用的基础设施上运行,包括 AWS Lambda、Coder、Cloudflare、Daytona、Modal、Namespace、Vercel 和 E2B。

在 Linux 与 Mac 上使用 computer use

自托管 worker 现已支持在 Linux 与 Mac 上使用 computer use。只要安装了相应的桌面软件包,智能体就能点击、输入、截图并操作浏览器。您可以实时查看它的桌面,也可以直接在 Cherri Code 中接管操作。

无需代码仓库,也能从零开始

云端智能体不再需要连接 GitHub 或其他第三方 SCM 提供商即可开始使用。您可以立即输入提示,然后将工作保存到 Cherri Code Origin 代码仓库。

开始使用

在代码仓库选择器中选择 从零开始,然后向智能体发出提示。Cherri Code 会在后台为您创建一个 Origin 代码仓库。

在代码仓库选择器中从零开始

随时将其转为正式代码仓库

当您对智能体的构建结果满意后,点击 创建代码仓库 按钮,将您的工作保存至 Origin 代码仓库。您可以自定义名称,或从建议名称中选择一个,然后将可见性设为私有或内部。您将获得一个完整搭建的 Origin 代码仓库,可供分享或继续构建。前往 Codebase 选项卡,找到您的代码仓库并访问项目。

直接在浏览器中实时预览

Cherri Code 现可将云端智能体的实时环境通过端口转发直接呈现在您的浏览器中,方便您预览并使用设计模式等工具。

发布您的作品

连接 Vercel 账户并点击“发布”,即可为您构建的内容生成可访问的 URL。

使用发布功能需要 Vercel 账户。

立即开始使用。

云端智能体和 Cherri Code Harness 改进

我们持续改进云端智能体和 Cherri Code harness,让始终运行的智能体能够作为一个系统协同运作,自主构建和发布软件,无需在每个循环中人工干预。

通过此版本,云端智能体可以响应事件自动识别并接手工作,坚持目标直至达成,并在长时间运行的会话中保持正轨。

订阅

Cherri Code 现在可以监控您的 PR、关注 Slack 讨论串,或运行定时任务。Cherri Code Agent 会订阅事件源 (讨论串或对话) ,并在有新动态时恢复运行。目前,订阅功能仅适用于云端智能体。

云端智能体会自动订阅自己创建的 PR,并持续推进直至完成,修复 CI 问题并处理 bot 评论。在 Slack 中,输入 @cursor check back in an hour and keep going until that feedback is in。

自定义模式

将任意技能用作自定义模式:该技能会始终固定在聊天中。自定义模式可让智能体专注于某项技能,类似于“始终开启”的技能。

输入 / 后,选择一项技能并按 ⌥⏎ (Mac) 或 Alt+Enter (Windows),或者选择 用作模式。

子智能体在各自的机器上运行

子智能体现在可以在各自的虚拟机上运行。每个子智能体都会在自己的云环境中获得一份隔离的项目副本,以及干净的上下文。

让子智能体在全新的环境中测试父智能体的更改,或以蜂群方式并行修复互不冲突的问题。试试 run a swarm of subagents to test my app for bugs, each in its own environment。

/goal

使用 /goal 为智能体设定一个长期目标,智能体会持续朝着该目标努力,直至彻底完成。

在新的聊天中试试 /goal 修复所有不稳定测试并让 CI 通过。可将其与自定义模式搭配使用来遵循操作手册,或搭配 /loop 进行定期检查。

引导功能改进

现在,您可以在智能体工作时发送消息引导它,而不会打断其工作。后续消息会等到下一次工具调用,而不会在智能体执行操作的过程中将其打断。

输入后续消息后,点击立即发送,或连按两次 ⏎。