命令字典
Slash 命令、CLI 子命令、Hook 事件、启动参数的字典与演进史。
Slash 命令、CLI 子命令、Hook 事件、启动参数的字典与演进史。
指定 MCP 服务器通道,Claude 应在此会话中监听通知
--channels <entries>claude --channels plugin:my-notifier@my-marketplace--channels 是 Claude Code CLI 的启动 flag,用于指定本次会话中 Claude 应该监听通知的 channel(频道)。一个 channel 本质上是一个 MCP 服务器,会把终端外部发生的事件(聊天消息、webhook、告警、CI 结果等)推送进正在运行的 Claude Code 会话,使 Claude 能在你不在终端前时做出反应。
接受值是空格分隔的条目列表,每个条目格式为 plugin:<name>@<marketplace>(也可以传多个,一次启用多个 channel)。目前处于**研究预览(research preview)**阶段,官方文档明确提示:--channels 的 flag 语法和协议约定未来可能变化。
截至目前可访问的官方文档,--channels 和其配套的 --dangerously-load-development-channels 不会出现在 claude --help 的输出里——即便处于预览期被隐藏,两个 flag 依然可以正常使用。
claude --channels plugin:my-notifier@my-marketplace
启用多个 channel(空格分隔):
claude --channels plugin:telegram@claude-plugins-official plugin:discord@claude-plugins-official
官方给出的实际示例(Telegram / Discord / iMessage / fakechat 均来自 claude-plugins-official 市场):
claude --channels plugin:telegram@claude-plugins-official
claude --channels plugin:discord@claude-plugins-official
claude --channels plugin:imessage@claude-plugins-official
claude --channels plugin:fakechat@claude-plugins-official
使用前提:channel 必须先通过 /plugin install <name>@<marketplace> 安装,且插件运行依赖 Bun。
--dangerously-load-development-channels:与 --channels 是并列关系但用途不同。--channels 在预览期只接受 Anthropic 维护的允许列表(或组织自定义的 allowedChannelPlugins)里的插件;--dangerously-load-development-channels 则用于本地开发测试未上允许列表的 channel,接受 plugin:<name>@<marketplace> 或 server:<name> 两种格式,且会弹出确认提示。-p(非交互/headless 模式):channels 可以和 -p 一起用,但在此模式下,需要终端输入的工具(多选题、plan mode 审批等)会被禁用,避免会话因等待输入而卡死。--dangerously-skip-permissions:官方文档在无人值守场景里提到可配合使用来跳过大多数权限提示,但同时强调仅应在受信任环境使用,且该模式下"无论如何都会自动批准的动作"限制依然生效。.mcp.json 里声明 channel 服务器是不够的:服务器必须同时被 --channels 显式命名,否则不会推送消息。MCP_PROTOCOL_NEGOTIATION=auto(v2 MCP client)的冲突见下方"常见坑"。--channels 本身没有直接等价的 env var 或 settings.json 字段——它是每次会话都要显式传入的 opt-in flag。但组织层面有两个相关的托管设置(managed settings)会决定 --channels 能否生效:
| 名称 | 层级 | 作用 |
|---|---|---|
--channels(CLI flag) | 会话级 | 本次会话实际启用哪些 channel 插件 |
channelsEnabled(settings.json) | 组织/管理员级 | 总开关,必须为 true 才允许任何 channel 投递消息;claude.ai Team/Enterprise 默认关闭,Console API key 认证默认允许(除非组织部署了托管设置) |
allowedChannelPlugins(settings.json) | 组织/管理员级 | 替换 Anthropic 默认允许列表,只允许列表内的 {marketplace, plugin} 组合注册为 channel |
allowedChannelPlugins 配置示例(来自官方文档):
{
"channelsEnabled": true,
"allowedChannelPlugins": [
{ "marketplace": "claude-plugins-official", "plugin": "telegram" },
{ "marketplace": "claude-plugins-official", "plugin": "discord" },
{ "marketplace": "acme-corp-plugins", "plugin": "internal-alerts" }
]
}
此外,具体 channel 插件(如 Telegram)的凭证通过插件自身的 /xxx:configure 命令保存到 ~/.claude/channels/<name>/.env,也可以提前在 shell 里设置对应 env var(例如 TELEGRAM_BOT_TOKEN、DISCORD_BOT_TOKEN)——这些是插件级配置,不是 --channels flag 本身的等价物。
| 约束 | 原因 |
|---|---|
| 需要 Anthropic 认证(claude.ai 账号或 Console API key) | Channels 依赖 Anthropic 认证体系 |
| 不支持 Amazon Bedrock、Google Cloud 的 Agent Platform(Vertex)、Microsoft Foundry | 官方文档明确列出的不可用平台 |
claude.ai Team / Enterprise 组织默认关闭,需要 Owner 在 Admin settings 或 channelsEnabled 中显式开启 | 组织默认阻止未经允许的外部事件注入会话 |
预览期只接受 Anthropic 维护的允许列表插件(或组织自定义 allowedChannelPlugins) | 安全限制,防止任意 MCP 服务器注册为 channel |
不出现在 claude --help 输出中 | 研究预览阶段刻意不在帮助列表展示,但 flag 可正常使用 |
| 每个官方 channel 插件依赖 Bun 运行时 | 预构建 channel 插件是 Bun 脚本 |
| 事件只在会话保持打开时才会到达 | 若需要一直在线,需把 Claude Code 跑在后台进程或常驻终端中 |
以下场景均来自官方文档的实际描述:
fakechat 插件(本地 localhost:8787 聊天界面,无需任何外部凭证)先跑通流程,再切换到 Telegram/Discord/iMessage。-p 非交互模式或 --dangerously-skip-permissions,让 channel 消息触发的操作不会因等待终端输入而卡住(但官方强调仅限受信任环境)。.mcp.json 里声明不够:channel 服务器必须同时出现在 --channels 参数里才会真正投递消息,否则该 MCP 服务器照常连接、工具照常可用,但 channel 通知不会到达。allowedChannelPlugins 设为空数组并不能彻底封锁:这只会挡住默认允许列表,--dangerously-load-development-channels 仍可以绕过它用于本地测试;要彻底禁用(包括开发 flag),需要保持 channelsEnabled 未设置而不是设为空数组。MCP_PROTOCOL_NEGOTIATION=auto(v2 MCP client)会导致注册失败:如果协商到协议版本 2026-07-28,Claude Code 不会为该 channel 服务器完成注册。channelsEnabled,MCP 服务器仍能正常连接、工具仍可调用,只是 channel 消息不会到达,仅在启动时给出一条提醒用户联系管理员开启的警告,容易被误判为插件本身故障。修复了检查不包括已安装插件名称的问题
现在支持 console (API key) 身份验证
修复首次启动后升级时显示不可用消息的问题
禁用激活时的 AskUserQuestion 和 plan 模式工具
新增权限中继功能,允许通道服务器转发工具批准提示到手机
修复在没有其他托管设置的 Team/Enterprise 组织中的绕过问题
允许MCP服务器推送消息到session(research preview)