Skip to content
FunCoding

Search

Search docs, Skills and MCP

自定义渠道插件

通过扩展注册适配器,并复用准入、会话和命令流程。

This page has not been translated into English yet. The original Chinese version is shown below.

自定义平台适配器打包成 Qwen 扩展,在 qwen-extension.json 的 channels 声明入口。渠道启动时扫描启用扩展、动态 import 并注册 type,再由工厂创建实例。

安装和配置

qwen extensions install /path/to/channel-extension

开发时可用 extensions link 引用源码目录,区别见扩展开发。链接文件变化不等于正在运行的渠道进程已经重新加载入口;渠道插件按启动加载。

{
  "channels": {
    "internal-chat": {
      "type": "my-platform",
      "apiKey": "$INTERNAL_CHAT_KEY",
      "privatePolicy": "allowlist",
      "allowedUsers": ["operator-id"],
      "cwd": "/path/to/project"
    }
  }
}

my-platform 必须由已安装启用的扩展注册,apiKey 是插件自定义示例字段,所需参数以其契约为准。不要把任意未知 type 写入设置就期待自动安装。

运行

qwen channel start internal-chat

省略名字启动全部渠道,也包括自定义适配器。通用准入、群策略、配对、路由、本地命令、串行会话处理和崩溃恢复由共同管道提供;具体媒体、卡片、主动投递还取决于适配器实现。

面向开发者的桥接类型

独立服务当前提供 AcpBridge,但 adapter 应依赖 ChannelAgentBridge 契约。显式把 TypeScript 参数写成 AcpBridge 的旧插件应迁移类型标注;JavaScript 插件运行时不受该类型名变更影响。

不要把“复用共同流程”理解为所有运行模式与所有平台能力自动可用;例如 outputMode 仍仅 DingTalk 支持,named task 仍要求 daemon,loop 仍需 proactive target 能力。

实现新平台时,继续阅读渠道插件开发及显示与投递契约。