From a02105501194efa1ab978f3c733b7327d3594a10 Mon Sep 17 00:00:00 2001 From: JianFeeeee Date: Sun, 13 Sep 2026 13:10:25 +0800 Subject: [PATCH] =?UTF-8?q?chore(sdk-mirror):=20=E5=90=8C=E6=AD=A5=20SDK?= =?UTF-8?q?=20=E4=BB=93=20v1.3.1=20=E7=9A=84=E6=96=87=E6=A1=A3=20=E2=80=94?= =?UTF-8?q?=E2=80=94=20=E9=80=9A=E9=81=93=E5=90=8D=E4=BC=9A=E8=BF=9B=20LLM?= =?UTF-8?q?=20=E5=87=BD=E6=95=B0=E5=90=8D=EF=BC=88=E5=91=BD=E5=90=8D?= =?UTF-8?q?=E7=BA=A6=E6=9D=9F=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 镜像文件:`third_party/homeagent-sdk/sdk/plugin.go`(`RegisterOutputChannel` 的命名约束)。 SDK 仓对应提交/tag:v1.3.1。 说明:内核 v1.3.1 的 tag 已指向功能修复提交 d17c186,本镜像提交在其之后 —— 文档镜像不参与二进制构建,故不影响已部署产物;功能与文档的对应关系见两仓 tag 说明。 --- third_party/homeagent-sdk/sdk/plugin.go | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/third_party/homeagent-sdk/sdk/plugin.go b/third_party/homeagent-sdk/sdk/plugin.go index 1f65774..72451a7 100644 --- a/third_party/homeagent-sdk/sdk/plugin.go +++ b/third_party/homeagent-sdk/sdk/plugin.go @@ -480,7 +480,15 @@ func (s *PluginSDK) RegisterPluginAPI(name string) error { // 入站(谁会往 注入输入)是另一件事,用 RegisterInputChannel 声明。 // 若该通道同时也是你的注入入口,两个都要登记。 // -// name: channel name (e.g. "qq", "webui") +// name: channel name (e.g. "qq", "webui")。 +// +// ❗**命名约束**:内核会把通道名拼进 LLM 的函数名(`output_send__`), +// 而上游对函数名的规范是 `^[a-zA-Z0-9_-]{1,64}$`。违反的后果不是"这个工具不可用", +// 而是**整条请求被上游 400 拒绝**(`Invalid 'tools[N].function.name'`), +// 网关的 auto tier 会全链条失败 —— 表现成"整个 agent 不说话了"。 +// 所以通道名只能用 `[A-Za-z0-9_-]`,且总长要留出 `output_send__`(13 字符)的余量。 +// 若通道名来自外部输入(设备自报 id 之类),请**在插件侧派生一个合规且唯一的名字**, +// 而不是把原始值直接当通道名。 // caps: bitmask of supported output capabilities (CapText, CapFile, etc.) // desc: description of the channel, expected meta format, and type enum // def: 通道在记忆计算层的行为(NoMemory/Cleaner)