Skip to main content

Command Palette

Search for a command to run...

集成

Slack

通过 Cherri Code 的 Slack 集成,您可以在 Slack 中通过提示词提及 @cursor,直接使用云端代理处理任务。

快速入门

安装

  1. 前往 Cherri Code integrations

  2. 点击 Slack 旁的 连接,或前往安装页面

  3. 系统会提示你在工作区中安装 Slack 版 Cherri Code app。

  4. 在 Slack 中完成安装后,系统会跳转回 Cherri Code 以完成设置

    1. 连接代码仓库提供商 (如尚未连接) ,并选择默认代码仓库
    2. 启用基于用量的定价
    3. 确认隐私设置
  5. 在 Slack 中提及 @cursor,即可开始使用云端代理

使用方法

提及 @cursor 并提供提示词。Cherri Code 会尝试从你的消息中识别代码仓库、模型、基准分支或指定的云端代理环境。选择代码仓库时,它还会参考你最近的智能体活动。

如需使用指定环境,请在提示词中包含其名称。例如:@Cherri Code use the Platform environment to update the shared API。

命令

运行 @Cherri Code help 获取最新命令列表。

命令描述
@Cherri Code [prompt]启动云端代理。在已有智能体的线程中,添加后续指令。谁可以继续跟进由团队后续控制,而非仅由所有权决定。
@Cherri Code settings配置默认值和频道的默认代码仓库。同时显示团队默认用量池和频道默认用量池
@Cherri Code [options] [prompt]为一次运行设置目标、模型、分支、PR 行为、worker 或输出频道
@Cherri Code agent [prompt]在线程中强制创建新的智能体 (例如 @Cherri Code start a new agent to fix billing)
@Cherri Code list my agents显示正在运行的智能体
@Cherri Code pool显示用于 Slack 启动的团队默认用量池和此频道的默认用量池
@Cherri Code pool set <name>设置团队默认用量池 (团队管理员)
@Cherri Code pool unset清除团队默认用量池 (团队管理员)
@Cherri Code pool set <name> channel设置此频道的默认用量池 (团队管理员)
@Cherri Code pool unset channel清除此频道的默认用量池 (团队管理员)

选项

使用以下选项自定义云端代理的行为:

选项描述自然语言示例内联示例
repo使用指定代码仓库在 acme/backend 中repo=acme/backend
env / environment使用指定的云端代理环境使用 Platform 环境env=Platform
branch使用指定的基准分支从 dev 分支开始工作branch=dev
model使用指定模型使用 opusmodel=opus
autopr启用或禁用自动创建 PR仅支持内联选项autopr=false
worker / machine在指定的 我的机器 上运行仅支持内联选项worker=my-devbox
pool在指定的团队用量池上运行。若该频道已设置频道默认用量池,或您的团队已设置团队默认用量池,则此项可选仅支持内联选项pool=my-pool
self_hosted / sh在您的某个团队用量池上运行。若已设置频道默认用量池或团队默认用量池,则使用该用量池,而 self_hosted=false 会同时跳过两者。取值为 true/t/1 或 false/f/0仅支持内联选项self_hosted=true 或 sh=1
channel在您和 Cherri Code 均可访问的其他频道中发布智能体更新仅支持内联选项channel=#eng-bots

语法格式

自然语言:

@Cherri Code with opus, fix the login bug in backend-api

内联:

@Cherri Code env=Platform branch=dev model=opus autopr=false Fix the login bug

环境名称中包含空格时,请使用引号:

@Cherri Code env="Platform Services" Update the shared API

选项优先级

组合使用选项时:

  • 显式值会覆盖默认值
  • 如有重复,后面的值会覆盖前面的值
  • 内联选项的优先级高于设置弹窗中的默认值
  • 同时存在时,**env**的优先级高于 repo
  • pool、worker、machine 和 self_hosted=false (或 sh=0) 的优先级高于频道默认用量池和团队默认用量池

bot 会解析消息中任意位置的选项,支持以自然的方式编写命令。

Cherri Code 会忽略三反引号代码块中的 key=value 选项 (即使代码块只有一行),并将其中的代码原样保留在你的提示词中。在下面这条消息中,pool=None 位于代码块内,因此不会被当作用量池选项:

@Cherri Code why does this crash? ```engine = create_engine(db_url, pool=None)```

使用线程上下文

云端代理 能够理解并利用现有线程讨论中的上下文。当团队正在讨论某个问题,而你希望智能体根据讨论内容实施解决方案时,此功能非常有用。

何时使用强制命令

何时需要使用 @Cherri Code agent?

在线程中已有智能体的情况下,@Cherri Code [prompt] 可添加后续指令。可由谁添加后续指令取决于团队后续。如果团队后续已禁用,则只有所有者可以添加后续指令。要启动一个独立的智能体,请使用 @Cherri Code agent [prompt],或用自然语言提出请求:

@Cherri Code start a new agent to refactor billing

诸如 "创建新智能体"、"启动一个全新的智能体" 或 "请创建新智能体" 的表述效果相同。

何时需要使用 添加后续指令 (通过上下文菜单) ?

如需添加后续指令,请使用智能体回复上的上下文菜单 (⋯)。当一个线程中有多个智能体,而你需要指定要跟进哪个智能体时,此功能很有用。

状态更新与交接

在 Cherri Code 开始修改代码之前,如果你正在修复缺陷,或者了解实现细节有助于你跟进进展,它会先在线程中提交一份简短方案。简单的请求则会跳过这一步。工作过程中,Cherri Code 会在线程下更新简短的状态。

云端代理运行后,你会先看到_在 Cherri Code 中打开_选项。

云端代理完成后,你会在 Slack 中收到通知,并可在 GitHub 中查看创建的 PR。

管理智能体

要查看所有正在运行的智能体,请运行 @Cherri Code list my agents。

点击任意智能体消息上的三个点 (⋯),即可通过上下文菜单管理云端代理。

可用选项:

  • 添加后续指令:向现有智能体添加指令
  • 切换代码仓库:针对其他代码仓库或云端代理环境重新启动同一请求
  • 删除:停止并归档云端代理
  • 查看请求 ID:查看唯一的请求 ID,以便进行疑难排查 (联系支持团队时请提供)
  • 提供反馈:就智能体性能提供反馈

如果智能体所需的代码仓库或环境不是当前这个,Slack 还会在启动消息上显示切换代码仓库。选择新的目标后,Cherri Code 会在此基础上继续执行。

配置

在 仪表盘 → 云端代理 中管理默认设置和隐私选项。

设置

默认模型

消息中未指定模型时使用。可用选项请参阅设置。

代码仓库选择

Cherri Code 会根据以下信息自动选择合适的代码仓库:

  1. 你的消息内容 — 提示词中的代码仓库名称或关键词
  2. 近期智能体活动 — 你最近使用过的代码仓库
  3. 路由规则 — 自定义的关键词到仓库映射 (见下文)
  4. 默认代码仓库 — 未找到匹配项时使用的后备仓库

如需使用特定代码仓库,请在消息中注明其名称。例如:@Cherri Code in mobile-app, fix the login bug。

基准分支

云端代理的起始分支。留空则使用代码仓库的默认分支 (通常为 main)

频道设置

使用 @Cherri Code settings 在频道级别配置默认设置。这些设置按团队生效,并会覆盖该频道的个人默认设置。

尤其适用于以下情况:

  • 不同频道使用不同的代码仓库
  • 团队希望所有成员使用一致的设置

配置频道设置:

  1. 在目标频道中运行 @Cherri Code settings
  2. 为该频道设置默认代码仓库
  3. 该频道中使用云端代理的所有团队成员都会使用这些默认设置

路由规则

通过路由规则,您可以定义自动映射到目标的关键字。当消息中包含某个关键字时,Cherri Code 会将智能体路由到关联的代码仓库或云端代理环境。环境可包含多个代码仓库,因此只需一个关键字,即可启动一个已配置好全部所需代码仓库的智能体。

设置路由规则

  1. 前往 Dashboard → 云端代理
  2. 找到 路由规则 部分
  3. 添加关键字到目标的映射,为每个关键字指定代码仓库或环境

示例规则

关键词目标
frontendacme/web-app
mobileacme/mobile-app
apiacme/backend-services
platformPlatform 环境

配置这些规则后:

  • @Cherri Code fix the frontend nav bug → 路由至 acme/web-app
  • @Cherri Code update the mobile onboarding flow → 路由至 acme/mobile-app
  • @Cherri Code add a migration across the platform → 在 Platform 环境中启动,可使用其中的所有仓库

路由如何工作

Cherri Code 会按以下顺序判断你的消息:

  1. 消息内容 — 提示词中的代码仓库名称或关键词
  2. 最近的智能体活动 — 你最近使用过的代码仓库
  3. 路由规则 — 自定义的关键词到目标映射 (代码仓库或环境)
  4. 频道默认值 — 为此频道设置的代码仓库
  5. 默认代码仓库 — 未找到匹配项时使用的回退选项

团队默认用量池

团队管理员可将某个团队用量池设为 @Cherri Code 启动的默认用量池。此后成员无需在每次提及中添加 pool=<name> 或 self_hosted=true,即可在该用量池上运行。该默认设置对整个团队生效,适用于所有未设置频道默认用量池的频道。

可直接在 Slack 中管理该默认设置。设置或清除该默认设置所需的权限,与在仪表盘中修改自托管设置相同。任何人均可查看。

@Cherri Code pool set my-pool@Cherri Code pool@Cherri Code pool unset

@Cherri Code settings 中也会列出团队默认用量池。

频道默认用量池

团队管理员还可以为某个频道单独设置用量池。设置后,该频道中的 @Cherri Code 提及将改用该频道的用量池运行,不再使用团队默认用量池;其他频道仍沿用团队默认用量池。设置或清除频道用量池所需的权限与团队默认用量池相同。

在要更改的频道中运行以下命令:

@Cherri Code pool set my-pool channel@Cherri Code pool@Cherri Code pool unset channel

@Cherri Code pool 会显示该频道的用量池,并在旁边列出团队默认用量池。如果想改为从列表中选择,请运行 @Cherri Code settings,点击 Set Pool for Channel,然后从团队的用量池中选择一个。选择 Use the team default (no channel pool) 即可清除该设置。清除后,在该频道中提及 Cherri Code 时将恢复使用团队默认用量池。

Cherri Code 如何决定提及在何处运行

消息中的选项始终优先。Cherri Code 按以下顺序解析目标:

  1. 消息中的选项。 pool=<name> 指向该用量池。worker= 或 machine= 指向你的某台我的机器。self_hosted=false (或 sh=0) 表示在 Cherri Code 托管的基础设施上运行。以上任一选项都会同时跳过两种默认用量池。若只写 self_hosted=true (或 sh=1) ,则使用频道默认用量池;若频道未设置,则使用团队默认用量池。
  2. 你的默认「我的机器」worker。 如果你为该代码仓库设置了自己的默认 worker,其优先级高于两种默认用量池。
  3. 频道默认用量池。 当你提及 Cherri Code 时所在的频道设有专属用量池时使用。
  4. 团队默认用量池。 当消息中不含上述任何选项,且频道也未设置专属用量池时使用。

仓库与默认用量池

代码仓库选择 在频道或团队默认用量池下的工作方式相同:依次看消息内容、近期活动、路由规则、频道默认值,然后是你的默认代码仓库和团队的默认代码仓库。接下来的行为取决于用量池的注册方式:

  • any-repo 用量池,未解析出代码仓库。 Slack 会在该用量池上启动一个不带代码仓库的智能体。与任何 any-repo 用量池 一样,源代码控制由 worker 负责。如果确实解析出了默认代码仓库,智能体会将其作为上下文使用,但不会限制哪些 worker 可以领取该运行。
  • 绑定仓库的用量池,未解析出代码仓库。 Slack 会以一条临时回复拒绝该提及,而不会回退到托管基础设施。请在提及中添加 repo= 或 pool=,或使用 self_hosted=false 在托管基础设施上运行,也可以通过 @Cherri Code pool 和 @Cherri Code settings 查看默认值。
  • 已解析出代码仓库,且用量池为其提供服务。 Slack 会在设置好 repo= 和 pool= 的情况下启动,效果与显式使用 pool=<name> 提及相同。
  • 已解析出代码仓库,但用量池的 worker 只服务其他仓库。 Slack 会以一条临时回复拒绝该提及。请用 repo= 指定该用量池所服务的仓库,或用 pool= 指定服务该代码仓库的用量池。

隐私

云端代理支持隐私模式。

详细了解隐私模式,或管理你的隐私设置。

显示智能体摘要

显示智能体摘要和 diff 图像,可能包含文件路径或代码片段。可开启或关闭。

在外部频道中显示智能体摘要

对于与其他工作区建立 Slack Connect 连接的频道,或包含访客等外部成员的频道,可选择显示智能体摘要。

权限

Cherri Code 需要以下 Slack 权限,才能让云端代理在您的工作区中运行:

权限描述
app_mentions:read检测 @提及,以启动云端代理并响应请求
channels:history添加后续指令时,读取线程中的历史消息以获取上下文
channels:join收到邀请或请求时自动加入公开频道
channels:read访问频道元数据 (ID 和名称) ,以发布回复和更新
chat:write代理完成时发送状态更新、完成通知和 PR 链接
files:read下载共享文件 (日志、屏幕截图、代码示例) 以获取更多上下文
files:write上传代理更改的可视化摘要,便于快速审阅
groups:history在多轮对话中读取私有频道的历史消息以获取上下文
groups:read访问私有频道元数据,以发布回复并维持对话连贯性
im:history在持续对话中访问私信历史记录以获取上下文
im:read读取私信元数据以识别参与者并保持正确的线程关联
im:write发起私信,用于发送私密通知或进行一对一沟通
mpim:history访问群组私信历史记录,用于多人对话
mpim:read读取群组私信元数据,以联系参与者并确保正确送达
reactions:read读取表情回应,以获取用户反馈和状态信号
reactions:write添加表情回应以标记状态:⏳ 表示运行中,✅ 表示已完成,❌ 表示失败
team:read识别工作区信息,以区分安装实例并应用设置
users:read将 Slack 用户与 Cherri Code 账户匹配,以管理权限并确保安全访问

免责声明

Cherri Code 可能会出错。请务必仔细核查代码和回复。

隐私政策

如需了解 Cherri Code 如何收集、使用和保护您的数据,请参阅我们的隐私政策。