十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

OpenClaw Tencent 插件详解:TokenHub / TokenPlan 模型 Provider 的接入、模型目录与配置迁移

OpenClaw Tencent 插件详解:TokenHub / TokenPlan 模型 Provider 的接入、模型目录与配置迁移 OpenClaw Tencent 插件详解TokenHub / TokenPlan 模型 Provider 的接入、模型目录与配置迁移【免费下载链接】openclawThe AI that really does things. Any OS. Any Platform. The lobster way. 项目地址: https://gitcode.com/GitHub_Trending/cl/openclaw本文围绕 OpenClaw 的 Tencent 插件openclaw/tencent-provider展开完整梳理其分发安装方式、两个 Providertencent-tokenhub、tencent-tokenplan的鉴权配置、onboarding 流程、内置模型目录以及针对存量 TokenHub 配置的迁移策略。读完本文你可以独立完成 Tencent 混元模型在 OpenClaw 中的接入与运维并理解插件在源码层面如何注册 Provider、构建模型目录、迁移旧配置以及改写reasoning_effort请求参数。插件概览tencent 插件做了什么Tencent 插件为 OpenClaw 添加腾讯云模型 Provider 支持通过 TokenHubtencent-tokenhub和 TokenPlantencent-tokenplan两个 OpenAI 兼容端点访问腾讯混元对话模型hy4-preview、hy3。插件参考文档为 docs/plugins/reference/tencent.md它由仓库工具链自动生成运行pnpm plugins:inventory:gen重建因此其字段与插件清单严格一致面向配置的详细文档见 docs/providers/tencent.md。从源码结构看插件的注册入口是 extensions/tencent/index.ts它通过definePluginEntry声明插件id: tencent并在register(api)中对两个 Provider 依次调用api.registerProvider(...)分别挂载auth由createProviderApiKeyAuthMethod构造的 api-key 鉴权方法含交互式引导、CLI 直传 flag、环境变量catalog通过buildOpenAICompatibleProviderCatalog以discoveryMode: strict运行实时目录发现staticCatalog不依赖网络时的静态目录构建augmentModelCatalog向全局模型目录补充该 Provider 的模型条目wrapStreamFn注入 stream.ts 中的请求载荷改写器。插件清单 extensions/tencent/openclaw.plugin.json 还声明了enabledByDefault: true与activation: { onStartup: false }即插件默认启用、但不在 Gateway 启动时强制激活按需加载同时声明了setupEntry对应的轻量配置修复入口 setup-api.ts。分发与安装参考文档给出的分发信息如下包名openclaw/tencent-provider安装渠道npm 或 ClawHubClawHub 规格为clawhub:openclaw/tencent-provider安装命令见 extensions/tencent/README.mdopenclaw plugins install openclaw/tencent-providerextensions/tencent/package.json 进一步给出了版本与兼容性约束字段值含义version2026.9.3当前插件版本openclaw.install.npmSpecopenclaw/tencent-providernpm 安装规格defaultChoice: npmopenclaw.install.clawhubSpecclawhub:openclaw/tencent-providerClawHub 安装规格openclaw.install.minHostVersion2026.6.9宿主OpenClaw最低版本openclaw.compat.pluginApi2026.9.3依赖的插件 API 最低版本openclaw.extensions[./index.ts]主入口openclaw.setupEntry./setup-api.ts配置迁移钩子入口这意味着在低于2026.6.9的 OpenClaw 宿主上安装该插件会被版本策略拦截这是使用该插件前的适用前提。Surface两个 Provider 的注册形态参考文档的 Surface 一节声明本插件对外暴露两个 Providertencent-tokenhub与tencent-tokenplan。在 index.ts 中这两个 Provider 被统一抽象为一个配置表TENCENT_PROVIDERS每条记录绑定配置项TokenHubTokenPlanProvider idtencent-tokenhubtencent-tokenplan环境变量TOKENHUB_API_KEYTOKENPLAN_API_KEYoptionKeyonboard 表单键tokenhubApiKeytokenplanApiKeyCLI 直传 flag--tokenhub-api-key--tokenplan-api-key鉴权 choiceIdtokenhub-api-keytokenplan-api-key默认模型tencent-tokenhub/hy4-previewtencent-tokenplan/hy4-preview分组Tencent CloudgroupIdtencentTencent CloudgroupIdtencent清单中的providerAuthChoices进一步把每个 Provider 的鉴权方式声明为method: api-key、appGuidedSecret: true应用内引导式录入密钥并给出 CLI 描述如 “Tencent TokenHub API key”。index.test.ts 中的用例逐一验证了上述注册行为两个 Provider 按序注册、envVars与choiceId可解析、auth元数据label、hint、kind: api_key与清单一致保证文档所述 Surface 与运行时代码始终吻合。内置模型目录Built-in Catalog参考文档关联的 Provider 文档 docs/providers/tencent.md 列出了完整内置目录其数据源正是清单modelCatalog.providers段模型引用名称输入上下文窗口最大输出说明tencent-tokenhub/hy4-previewHy4 preview (TokenHub)text1,024,00064,000支持推理默认模型tencent-tokenhub/hy3Hy3 (TokenHub)text256,000128,000支持推理上一代 GAtencent-tokenhub/hy3-previewHy3 preview (TokenHub)text256,000128,000已弃用改用hy4-previewtencent-tokenplan/hy4-previewHy4 preview (TokenPlan)text1,024,00064,000支持推理默认模型tencent-tokenplan/hy3Hy3 (TokenPlan)text256,000128,000支持推理上一代 GAhy4-preview是腾讯混元面向推理、长上下文指令跟随、代码与 Agent 工作流的大 MoE 语言模型其 OpenAI 兼容接口支持标准 chat-completions 工具调用与reasoning_effort参数。清单中每个模型还携带运行时兼容与成本元数据摘自 openclaw.plugin.json所有模型均为reasoning: true、input: [text]兼容性字段compat声明supportsUsageInStreaming: true、supportsReasoningEffort: true并给出各自的supportedReasoningEffortshy3-preview支持[none, low, high]hy3与hy4-preview支持[none, high]成本字段如hy4-preview声明input: 0.834 / output: 2.501 / cacheRead: 0.042 / cacheWrite: 0hy3TokenHub声明input: 0.147 / output: 0.587 / cacheRead: 0.037hy3-preview还附带三档tieredPricing按上下文区间 [0,16000)、[16000,32000)、[32000) 递增。这些数值是清单为客户端内部成本核算声明的参数用于用量与费用展示具体计费口径以腾讯云侧为准。模型目录的构建链路在源码中一目了然models.ts 从清单读取baseUrl与 provider 段经buildManifestModelProviderConfig生成TOKENHUB_MODEL_CATALOG/TOKENPLAN_MODEL_CATALOG并统一打上api: openai-completions标记provider-catalog.ts 再将其组装为ModelProviderConfigbaseUrl api 深拷贝模型列表。此外清单还声明了两端点在 models.dev 的映射tencent-tokenhub - tencent-tokenhub、tencent-tokenplan - tencent-token-plan以及discovery: { ...: refreshable }即两端点的目录都支持刷新发现。鉴权与 Onboarding 流程两个端点各使用独立的 API Key 环境变量TOKENHUB_API_KEY与TOKENPLAN_API_KEY清单setup.providers段与源码envVars声明一致。前置条件是先在腾讯云侧创建 TokenHub / TokenPlan 的 API Key若 Key 采用受限访问范围需在允许模型中勾选hy4 preview如计划在 TokenHub 上使用hy3/hy3 preview也要一并勾选。交互式 onboarding选择对应鉴权项# TokenHub openclaw onboard --auth-choice tokenhub-api-key # TokenPlan openclaw onboard --auth-choice tokenplan-api-key非交互式的“直传 flag”方式# TokenHub openclaw onboard --non-interactive --accept-risk --skip-health \ --auth-choice tokenhub-api-key \ --tokenhub-api-key $TOKENHUB_API_KEY # TokenPlan openclaw onboard --non-interactive --accept-risk --skip-health \ --auth-choice tokenplan-api-key \ --tokenplan-api-key $TOKENPLAN_API_KEY仅通过环境变量提供密钥也可以export TOKENHUB_API_KEY... export TOKENPLAN_API_KEY...完整的非交互示例来自 docs/providers/tencent.md# TokenHub openclaw onboard --non-interactive \ --mode local \ --auth-choice tokenhub-api-key \ --tokenhub-api-key $TOKENHUB_API_KEY \ --skip-health \ --accept-risk # TokenPlan openclaw onboard --non-interactive \ --mode local \ --auth-choice tokenplan-api-key \ --tokenplan-api-key $TOKENPLAN_API_KEY \ --skip-health \ --accept-risk注意--accept-risk必须与--non-interactive同时使用。配置完成后用以下命令验证模型可见性openclaw models list --provider tencent-tokenhub openclaw models list --provider tencent-tokenplanonboarding 的行为边界由 onboard.ts 决定applyTokenHubConfig/applyTokenPlanConfig通过createModelCatalogPresetAppliers生成会把主模型固定为清单中的defaultModel当前均为hy4-preview并写入 provider 的api与baseUrl。一个值得注意的细节是catalogModels的写入条件——仅当cfg.models?.mode replace时才把内置目录写入用户配置否则交由发现机制discovery填充这与文档中“onboarding 会保留你的模型条目将生成的目录行留给发现在models.mode: replace下会写入内置目录因为该模式跳过发现”的描述完全对应。源码中还刻意将每个模型 ref 拆为独立常量如TOKENHUB_HY3_MODEL_REF注释明确说明不能复用“默认模型 ref”去承载具体模型的 alias否则默认模型轮换时会静默错标。存量 TokenHub 配置的迁移策略这是参考文档主题中最容易被忽略、也最容易出错的部分。全新 onboarding 会在两端点默认选择hy4-preview但存量 TokenHub 配置遵循另一套更保守的迁移策略当配置中存在 TokenHub 模型 allowlistagents.defaults.models下出现受管模型条目时openclaw doctor --fix会把已弃用的tencent-tokenhub/hy3-preview主模型改写为tencent-tokenhub/hy3而不是 Hy4该迁移同时覆盖字符串形式与对象形式的 primary 设置并保留 fallback、自定义 alias 及无关设置显式的hy3与hy4-preview主模型保持不变hy3-preview在目录中的“推荐替换”仍是hy4-preview清单中replacedBy字段但 Doctor 的自动迁移目的地并非 Hy4——升级到 Hy4 属于显式选择需要自行确认其不同定价与所选端点的模型访问权限。实现位于 config-compat.ts注册入口 setup-api.ts 通过api.registerConfigMigration(...)挂接。其关键设计从源码可以读出触发门槛isTokenHubModelMapConfigured要求agents.defaults.models中至少存在一个受管 TokenHub 模型 refhy4-preview / hy3 / hy3-preview才进入修复流程避免误伤未使用 TokenHub 的配置迁移目标独立于清单默认值TENCENT_TOKENHUB_MIGRATION_TARGET_MODEL_REF被硬编码为tencent-tokenhub/hy3源码注释解释了原因——“默认值轮换不得静默把存量用户升到 Hy4”Hy4 的定价与模型访问范围不同而hy4-preview还要求 API Key 的允许模型范围覆盖 hy4否则运行时会以err_code401006一类错误失败alias 补齐对缺少alias的受管模型条目补上默认别名“Hy4 preview (TokenHub)”等补齐顺序与 onboard.ts 的 alias 顺序保持一致只动 primarymigrateDefaultModel仅处理值为hy3-preview的主模型字符串或primary字段其余一律原样返回。清单的configContracts.compatibilityMigrationPaths也同步声明了该插件负责的迁移路径models.providers.tencent-tokenhub及agents.defaults.models.tencent-tokenhub/{hy3,hy3-preview,hy4-preview}供宿主在做配置迁移时识别归属。该逻辑由 config-compat.test.ts 与 onboard.test.ts 覆盖验证。流式包装与 reasoning_effort 归一化两个端点均为 OpenAI 兼容的 chat-completions 接口插件在 stream.ts 中通过createPayloadPatchStreamWrapper挂接了一个载荷改写器wrapTencentProviderStream。它解决的是一个具体的网关兼容性问题从源码注释看hy3GA是已验证只接受“两档”effort 的模型——网关只接收none与high因此中间档位必须在派发前向上收敛off/none→noneminimal/low/medium/high/xhigh→high收敛映射TENCENT_TWO_RUNG_EFFORT_MAP只按模型 idTENCENT_TWO_RUNG_MODEL_IDS {hy3}生效且注释明确警告不要想当然地把新模型加入该集合——未验证的收敛会把low请求静默升级为high多花思考 token 与延迟且无任何诊断信息其余模型hy3-preview、hy4-preview等返回undefined跳过补丁交给 OpenClaw 共享的 effort 处理逻辑它已按模型声明的supportedReasoningEfforts归一化shouldPatch守卫确保只有provider ∈ {tencent-tokenhub, tencent-tokenplan}且api openai-completions的调用才会进入补丁逻辑避免影响其他 Provider。index.test.ts 通过captureTencentPayload辅助函数构造了受控的StreamFn直接捕获onPayload回调中的最终请求体验证不同reasoning输入下reasoning_effort字段的实际取值属于可复现的行为级证据。端点覆盖与守护进程环境可用性内置目录使用的端点如下ProviderBase URL说明tencent-tokenhubhttps://tokenhub.tencentmaas.com/v1内置默认端点tencent-tokenhub国际站覆盖https://tokenhub-intl.tencentmaas.com/v1仅当账号/区域要求时使用tencent-tokenplanhttps://api.lkeap.cloud.tencent.com/plan/v3内置默认端点仅在账号或区域要求不同端点时才覆盖 TokenHub 端点openclaw config set models.providers.tencent-tokenhub.baseUrl https://your-endpoint/v1当 Gateway 以托管服务方式运行launchd、systemd、Docker时TOKENHUB_API_KEY与TOKENPLAN_API_KEY必须对该进程可见应写入~/.openclaw/.env或通过env.shellEnv配置注入。仅在交互式 shell 中export的密钥对托管 Gateway 进程不可见必须使用 env 文件或配置通道保证持久可用。小结与延伸阅读Tencent 插件以一份清单openclaw.plugin.json为单一事实来源向 OpenClaw 贡献两个 OpenAI 兼容 Provider注册鉴权与 onboarding 选项、构建/发现模型目录、驱动存量配置的安全迁移hy3-preview → hy3而非 Hy4、并按模型维度收敛reasoning_effort。对使用者的实操路径是安装openclaw/tencent-provider→ 配置TOKENHUB_API_KEY/TOKENPLAN_API_KEYonboarding 或 env→openclaw models list验证 → 按需覆盖 baseUrl 并保证守护进程可读密钥。延伸阅读仓库内相对路径Tencent 插件参考本文主体文档Tencent Cloud (TokenHub / TokenPlan) 配置文档插件源码extensions/tencent/index.ts、extensions/tencent/onboard.ts、extensions/tencent/config-compat.ts、extensions/tencent/stream.ts、extensions/tencent/models.ts、extensions/tencent/openclaw.plugin.json【免费下载链接】openclawThe AI that really does things. Any OS. Any Platform. The lobster way. 项目地址: https://gitcode.com/GitHub_Trending/cl/openclaw创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表