尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
OpenClaw Fireworks 插件:接入 Fireworks 模型提供商的完整实践
OpenClaw Fireworks 插件接入 Fireworks 模型提供商的完整实践【免费下载链接】openclawThe AI that really does things. Any OS. Any Platform. The lobster way. 项目地址: https://gitcode.com/GitHub_Trending/cl/openclaw本文以 OpenClaw 仓库中的 Fireworks 插件参考文档 为主体结合 Fireworks 提供商文档 与插件源码完整讲解openclaw/fireworks-provider插件的分发方式、安装配置步骤、内置模型目录、模型 id 解析规则与 Kimi thinking 强制关闭机制。读完后你可以独立完成 Fireworks 提供商的接入、定制模型 id、排查凭证问题并理解该插件在 OpenClaw 内部的实现原理。插件概览与分发方式Fireworksfireworks.ai通过 OpenAI 兼容 API 提供开源权重模型与路由router模型。OpenClaw 通过独立的官方提供商插件接入它插件的官方定位是Adds Fireworks model provider support to OpenClaw.为 OpenClaw 增加 Fireworks 模型提供商支持按照插件参考文档docs/plugins/reference/fireworks.md的定义其分发与表面Surface信息为属性值包名Packageopenclaw/fireworks-provider安装渠道Install routenpm 或 ClawHubclawhub:openclaw/fireworks-provider提供商 Surfacefireworks带别名fireworks-ai需要注意的一点参考文档头部标注了!-- Generated file. Do not edit by hand. --说明该参考页由pnpm plugins:inventory:gen从插件清单自动生成人工内容只允许写在openclaw-plugin-reference:manual-start与openclaw-plugin-reference:manual-end标记之间。因此插件能力的“事实源头”是插件目录下的清单文件 openclaw.plugin.json而参考文档是其自动投影。插件入口 index.ts 使用defineSingleProviderPluginEntry注册了一个单提供商插件关键注册字段包括id: fireworks别名aliases: [fireworks-ai]catalog: { discoveryMode: strict, allowExplicitBaseUrl: true, liveModelDiscovery: true }即模型目录为严格发现模式、允许显式指定 Base URL、并支持运行时模型发现wrapStreamFn: wrapFireworksProviderStream与resolveThinkingProfile分别负责请求载荷改写与 thinking 策略后文展开resolveDynamicModel运行时接受任意 Fireworks 模型/路由 id 的动态解析钩子。快速开始安装、认证与验证Fireworks 的认证凭据统一使用环境变量FIREWORKS_API_KEY。这一点在插件清单中有双重声明openclaw.plugin.json 中setup.providers声明了envVars: [FIREWORKS_API_KEY]providerAuthChoices则定义了 onboarding 选项fireworks-api-key对应 CLI flag--fireworks-api-key key。第一步安装插件openclaw plugins install openclaw/fireworks-provider第二步设置 Fireworks API key提供三种方式引自 Fireworks 提供商文档# 方式一Onboarding 引导 openclaw onboard --auth-choice fireworks-api-key# 方式二直接命令行传参 openclaw onboard --non-interactive --accept-risk --skip-health \ --auth-choice fireworks-api-key \ --fireworks-api-key $FIREWORKS_API_KEY# 方式三仅环境变量 export FIREWORKS_API_KEYfw-...Onboarding 会把密钥写入fireworks提供商的 auth profiles并将 Fire Pass 的 GLM 5.2 Fast 路由设为默认模型。这一行为在源码 onboard.ts 中可以完整对应applyFireworksConfig通过createDefaultModelsPresetAppliers生成写入primaryModelRef即fireworks/accounts/fireworks/routers/glm-5p2-fast、Base URL、API 类型并注册别名{ modelRef: fireworks/..., alias: GLM 5.2 Fast }。第三步验证模型可用openclaw models list --provider fireworks输出应包含GLM 5.2 Fast、Kimi K2.6、Kimi K2.6 Fast三个目录模型。若FIREWORKS_API_KEY未能解析openclaw models status --json会把缺失的凭证报告在auth.unusableProfiles字段下。非交互/CI 场景对于脚本化或 CI 安装官方给出的一键命令为openclaw onboard --non-interactive \ --mode local \ --auth-choice fireworks-api-key \ --fireworks-api-key $FIREWORKS_API_KEY \ --skip-health \ --accept-risk内置模型目录Built-in Catalog插件清单中内置了 3 个目录模型其核心参数如下数据来自 openclaw.plugin.json 的modelCatalog.providers.fireworks.models模型 ref名称输入上下文窗口最大输出思考Thinking单价$/M tokens入/出fireworks/accounts/fireworks/routers/glm-5p2-fastGLM 5.2 Fasttext256,000256,000开默认2.1 / 6.6fireworks/accounts/fireworks/models/kimi-k2p6Kimi K2.6text image262,144262,144强制关0.95 / 4.0fireworks/accounts/fireworks/routers/kimi-k2p6-turboKimi K2.6 Fasttext image262,144256,000强制关2.0 / 8.0补充两个清单里的细节提供商baseUrl为https://api.fireworks.ai/inference/v1api为openai-completionsOpenAI 兼容defaultModel为accounts/fireworks/routers/glm-5p2-fastKimi K2.6 Fast路由带有兼容项compat.unsupportedToolSchemaKeywords: [not]即该路由的 tool schema 不支持 JSON Schema 的not关键字OpenClaw 在为它构造工具定义时会规避这一关键字discovery配置为fireworks: refreshable配合liveModelDiscovery: true意味着目录可刷新、支持运行时发现新模型。文档同时说明Setup 只保存连接设置与别名不会把生成的目录行复制进你的配置文件若显式设置models.mode: replace则保持目录播种catalog seeding启用、自定义模型行保持完整。这与 onboard.ts 中defaultModels: cfg.models?.mode replace ? buildFireworksCatalogModels() : []的三元判断严格一致。模型 id 前缀规则与动态解析OpenClaw 约定所有 Fireworks 模型 ref 都以fireworks/开头后接 Fireworks 平台上的精确 id 或路由路径例如路由模型fireworks/accounts/fireworks/routers/kimi-k2p6-turbo直接模型fireworks/accounts/fireworks/models/model-name发起 API 请求时OpenClaw 会剥掉fireworks/前缀把剩余路径作为 OpenAI 兼容请求的model字段发给 Fireworks 端点。这个前缀剥离逻辑在 provider-catalog.ts 中可以看到FIREWORKS_DEFAULT_MODEL_ID FIREWORKS_DEFAULT_MODEL_REF.slice(fireworks/.length)目录模型 id 本身不带前缀ref 由前缀 id 组成。任意模型 id 的运行时解析OpenClaw 接受运行时传入的任意 Fireworks 模型或路由 id。动态解析入口是 index.ts 的resolveFireworksDynamicModel其行为可以概括为空 id 直接返回undefined若 id 已在内置目录中isFireworksCatalogModelId命中返回undefined交给目录条目本身处理对未收录的 id克隆默认模型GLM 5.2 Fast 路由作为模板并按 id 特征打补丁若 id 匹配 Kimi 模式isFireworksKimiModelId则reasoning: false输入模态GLM id 标记为[text]仅文本其余动态 id 标记为[text, image]模板克隆失败时兜底为normalizeModelCompat构造的兼容条目openai-completions Fireworks Base URL 目录默认上下文窗口/最大 token 数。其中 GLM 判定函数 isFireworksGlmModelId 取 id 最后一段用/^glm[-_.]/正则匹配Kimi 判定函数 isFireworksKimiModelId 用/^kimi-k2(?:p[56]|[.-][56])(?:[-_].)?$/匹配kimi-k2p5/kimi-k2p6系列及其后缀变体大小写不敏感。自定义模型配置要为其他模型指定不同的能力例如输入模态在 OpenClaw 配置中显式声明自定义模型行即可{ agents: { defaults: { model: { primary: fireworks/accounts/fireworks/models/your-model-id, }, }, }, }Kimi 的 thinking 强制关闭机制这是 Fireworks 插件最核心的实现细节OpenClaw 把所有经 Fireworks 提供的 Kimi 模型固定为thinking: off。原因是 Fireworks 侧的 Kimi 没有独立的 reasoning 通道若不在请求中显式禁用 thinking思维链可能泄漏到可见的content流里。若要端到端使用 Kimi 推理输出官方建议改走 Moonshot 提供商路由同一模型见 Moonshot 文档 与 thinking modes。该机制由三层代码共同保证请求载荷改写stream.ts 的wrapFireworksProviderStream在 provider 为fireworks/fireworks-ai、API 为openai-completions且模型 id 命中 Kimi 模式时用createPayloadPatchStreamWrapper包装流注入payload.thinking { type: disabled }; delete payload.reasoning; delete payload.reasoning_effort; delete payload.reasoningEffort;即发送 Anthropic 风格的 thinking 关闭开关并从载荷中剥离reasoning、reasoning_effort、reasoningEffort三个字段防止任何一层配置把 thinking 重新打开。Thinking 策略对齐thinking-policy.ts 对 Kimi id 返回{ levels: [{ id: off }], defaultLevel: off }非 Kimi id 返回undefined走通用策略。这保证手动/think切换和提供商策略表面都只呈现off一个档位与运行时契约一致。目录层声明清单中两个 Kimi 模型的reasoning均为false与上述运行时行为一致。对应的测试用例位于 stream.test.ts、index.test.ts 与 onboard.test.ts覆盖了载荷改写、动态模型解析与 onboarding 写配置的边界行为可作为行为契约的参考。守护进程场景下的环境变量可见性若 Gateway 以托管服务运行launchd、systemd、Docker 或容器Fireworks 密钥必须对该进程可见而不仅仅是你的交互式 shell。文档给出的明确警告仅在交互式 shell 中export的密钥不会传递到 launchd/systemd 守护进程除非该环境被导入。应将密钥写入~/.openclaw/.env或通过env.shellEnv配置使 gateway 进程可读。OpenClaw 在加载配置时会自动加载~/.openclaw/.env因此存放在那里的密钥可以在所有平台上被托管的 gateway 服务读到。轮换密钥后需要重启 gateway或重新执行openclaw doctor --fix。小结回到参考文档给出的最小事实——包名openclaw/fireworks-provider、ClawHub 安装路由clawhub:openclaw/fireworks-provider、Surfacefireworks——它们在源码中的落点分别是 package.json、openclaw.plugin.json 的providers: [fireworks]与 index.ts 的PROVIDER_ID fireworks。整个插件以“OpenAI 兼容 API 严格目录 运行时动态发现”为骨架用前缀剥离实现任意模型 id 的接入用流包装与 thinking 策略双重保障 Kimi 的思维链不外泄是 OpenClaw 提供商插件体系中一个典型的“清单即事实、钩子即行为”的实现样本。【免费下载链接】openclawThe AI that really does things. Any OS. Any Platform. The lobster way. 项目地址: https://gitcode.com/GitHub_Trending/cl/openclaw创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED

相关推荐

KPCA故障诊断:SPE与T²双统计量工业实战指南

KPCA故障诊断:SPE与T²双统计量工业实战指南

简介:本资源是一套基于Matlab实现的核主成分分析(KPCA)故障诊断完整方案,面向自动化、工业智能与信号处理方向的初学者及工程实践者,聚焦非线性过程监控与异常识别场景。代码严格适配Matlab 2019b,含主函数…

📅 2026/9/10 14:50:54
Linera 应用内动态创建并调用合约:create-and-call 示例深度解析

Linera 应用内动态创建并调用合约:create-and-call 示例深度解析

Linera 应用内动态创建并调用合约:create-and-call 示例深度解析 【免费下载链接】linera-protocol Main repository for the Linera protocol 项目地址: https://gitcode.com/GitHub_Trending/li/linera-protocol 本文基于 Linera 协议仓库中的 create-and-…

📅 2026/9/10 14:50:54
TVBoxOSC文档查看指南:遥控器三键把说明书读明白

TVBoxOSC文档查看指南:遥控器三键把说明书读明白

TVBoxOSC文档查看指南:遥控器三键把说明书读明白 【免费下载链接】TVBoxOSC TVBoxOSC - 一个基于第三方项目的代码库,用于电视盒子的控制和管理。 项目地址: https://gitcode.com/GitHub_Trending/tv/TVBoxOSC 想读一份刚买的投影幕布安装手册&am…

📅 2026/9/10 14:50:54
MORE NEWS

更多资讯

📰

临时文件自动化管理:原理、技术与实践

1. 临时文件管理痛点与自动化需求每次打开工程软件或浏览器,系统都会默默生成一堆临时文件。这些文件就像办公桌上随手堆放的便签纸——刚创建时有用,但三天后就成了碍事的垃圾。我最近帮同事清理一台卡顿的电脑时,发现C盘被23.4GB的临时文件…

📰

物流业应对90%高退货率:逆向物流优化与电商协作策略

1. 全球物流业面临"退货季"冲击 最近打开物流行业的数据报表,一组数字让我这个从业十年的老物流人都不禁倒吸一口凉气——女士连衣裙类商品的退货率已经飙升到接近90%。这意味着每10件发出的连衣裙,就有9件会原路返回仓库。这种前所未有的高退…

📰

V++语言:高性能系统编程的创新与实践

1. V语言定位与核心优势 V是一种新兴的系统级编程语言,专注于高性能计算和底层开发领域。它融合了现代语言设计理念与硬件级优化能力,在编译器技术、内存管理、并发模型等方面进行了针对性创新。与传统的C相比,V在保持相近性能的同时&#xf…

📰

oh-my-claudecode 的 ultragoal 怎么在没有活动执行循环时维护持久化目标账本?

oh-my-claudecode 的 ultragoal 怎么在没有活动执行循环时维护持久化目标账本? 【免费下载链接】oh-my-claudecode Teams-first Multi-agent orchestration for Claude Code 项目地址: https://gitcode.com/GitHub_Trending/oh/oh-my-claudecode 在 oh-my-cl…

📰

实时行情系统架构设计:协议选型、数据源与高可用实战

做行情系统这行久了,最常被问的一句话就是:"你们那实时行情到底有多实时?"这个问题听起来简单,背后牵出来的链路却很长:从交易所或数据源发出第一笔行情,到用户屏幕上那个数字跳动,中…

📰

rclone WebDAV 后端全解析:从交互式配置到供应商差异与协议级实现

rclone WebDAV 后端全解析:从交互式配置到供应商差异与协议级实现 【免费下载链接】rclone "rsync for cloud storage" - Google Drive, S3, Dropbox, Backblaze B2, One Drive, Swift, Hubic, Wasabi, Google Cloud Storage, Azure Blob, Azure Files, Y…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬