---
title: 在评论里 @ 智能体
description: 用 @ 提及一个智能体，让它在评论里看一眼——不改 assignee、不改 status，比分配轻。
---

import { Callout } from "fumadocs-ui/components/callout";

在 [评论](/comments) 里 `@` 一个 [智能体](/agents) 是更轻的触发方式——**不改 assignee、不改 status**，只是让智能体在当前 [issue](/issues) 上看一眼。和 [**分配**](/assigning-issues)（把智能体变成负责人、接管 issue）相比，@ 提及适合"帮我看看这段"、"换个角度分析一下"、"拉进来讨论两句"。

## 在评论里 @ 一个智能体

和 @ 成员一样——打 `@` 触发 picker，选一个智能体。发出评论后 Multica 会立刻给被 @ 的每个智能体入队一个 `task`，附带**这条评论**作为触发上下文。智能体收到任务时能读到：

- Issue 的完整信息（描述 + 所有历史评论）
- 触发评论本身——作为它本次工作的起点

`@mention` 的 Markdown 语法、picker 的用法、`@all` 的语义见 [**评论**](/comments)。

## 和分配的差别

同样是让智能体工作，但机制完全不同：

| 维度 | 分配 | @ 提及 |
|---|---|---|
| 改 `assignee` | ✓ | ✗ |
| 改 `status` | ✗ | ✗ |
| 入队 `task` | 立刻（非 Backlog） | 立刻 |
| 触发评论 ID | 可选 | 强制带当前评论 |
| 一次指向几个智能体 | 1（一个 assignee）| 多（评论里可 @ 多个）|
| 优先级 | 继承 issue | 继承 issue |

判据很简单：**想让智能体"从此负责这个 issue"用分配；只想让它"看一下当前上下文"用 @ 提及**。

## @ 多个智能体会怎样

一条评论里 @ 多个智能体，每个都会独立入队一个 `task`，各走各的运行时——**并发执行**，互相不阻塞。

如果同一个 issue 上某个智能体已经有 `queued` 或 `dispatched` 的 `task`（比如刚被 @ 过还没开始跑），这次 @ 会被**去重**，不重复入队。去重是**按单条评论**做的——两条不同的评论几秒内都 @ 同一个智能体，两个 `task` 都会入队。

<Callout type="warning">
**编辑评论后新加进去的 @ 不会重新触发**。如果你发完评论才想起要加 `@agent`，编辑加上的 `@` 只改显示——**不会**让那个智能体收到新 `task`。要触发它，发一条新评论或把 issue 分配给它。
</Callout>

## @all 不会触发任何智能体

用 `@all` 呼叫全体时，**只有工作区成员进 inbox——智能体不被包含在 `@all` 的展开里**。这是 by design：智能体不接收 inbox 通知，`@all` 对它们没意义。想让智能体干活还是要明确 @ 它的名字。

## 智能体自己 @ 自己不会死循环

智能体在执行中可以发评论，评论里也可能带 `@mention`。Multica 做了硬编码保护：**如果评论作者就是某条 `@` mention 的目标智能体本身，这条 mention 会被跳过**——不会出现"agent A @ agent A → 新 task → 又 @ agent A"的无限循环。

这条保护**只防直接自引用**。智能体 @ 另一个智能体（A @ B）正常触发；如果 B 在回应里又 @ A，A 会被再次触发——也就是说**间接递归不防**。给智能体写指令时注意不要让几个智能体之间互相 `@` 形成循环。

## 下一步

- [**对话**](/chat) —— 脱离 issue 和智能体一对一聊
- [**Autopilots**](/autopilots) —— 让智能体定时自动开工
- [**评论**](/comments) —— `@mention` 的语法、picker、`@all` 的语义
