开发与工程

PinMe Worker OpenRouter API 集成

在 PinMe Worker 中快速调用 OpenRouter 支持的 LLM API,支持流式与网页搜索。

64/ 100
推荐

整体可靠,存在已披露的局限;按说明试用并保留回滚路径。

查看评分依据 ↓
可直接使用于
Codex · Claude Code
Star 数
★ 3.7k
最近更新
3 个月前
License
MIT
openroutercloudflare-workerstypescriptllm-integration
+2streamingweb-search

这个 Skill 能做什么,适合哪些场景?

这个技能为 PinMe Worker (TypeScript) 项目提供调用 OpenRouter 代理 API 的指南。它涵盖模型列表、聊天补全(支持 SSE 流式)以及通过 OpenRouter 的 openrouter:web_search 工具实现网页搜索。Worker 使用自动注入的环境变量(API_KEY、PROJECT_NAME、BASE_URL),无需手动配置。技能提供了完整的 TypeScript 代码示例、错误处理和前端流式消费示例,帮助开发者快速集成 LLM 功能。

该技能指导如何在 PinMe Worker 中实现:1) 调用 GET /api/v1/models 列出可用模型;2) 调用 POST /api/v1/chat/completions 进行非流式聊天补全;3) 支持流式 SSE 响应的透传;4) 通过 tools 数组传入 openrouter:web_search 工具实现网页搜索;5) 解析 PinMe 包装的错误格式并提取 OpenRouter 错误信息。

适合
  • 构建一个需要与 LLM 聊天的全栈应用,例如 AI 客服、聊天机器人,后端运行在 PinMe Worker 上
  • 需要流式输出回答的场景,例如打字机效果的前端聊天界面
  • 需要 LLM 提供最新信息的场景,例如搜索增强回答或实时信息总结
  • 开发者希望使用 OpenRouter 的各种模型,但不想直接暴露 API key,而是通过 PinMe 平台管理认证

如何安装这个 Skill?

使用前请注意
  • 技能依赖pinme.cloud服务,该域名在中国大陆可能被墙,无法访问;用户在评估生产环境可用性前应确认可达性。
  • 技能要求Worker使用项目API密钥,但未限定Worker只能调用本技能描述的端点;若Worker被注入其他代码,可能存在密钥泄露风险。
  • 技能未提供回滚或故障恢复方案;如果调用OpenRouter失败,可能留下不一致状态。
  • 发布者身份未经验证,使用前应自行审计供应链。
开始前你需要
Agent 需要具备
  • 网络访问
需要预先安装
  • Node.js

在 Claude Code 中运行:npx skills add glitternetwork/pinme。技能会随仓库安装。

通用方式:手动安装到 Claude Code(macOS / Linux)
tmp="$(mktemp -d)"
git clone --depth 1 https://github.com/glitternetwork/pinme.git "$tmp"
mkdir -p ~/.claude/skills
cp -R "$tmp/skills/pinme-llm" ~/.claude/skills/
rm -rf "$tmp"

根据源仓库地址和 Skill 路径自动生成,只复制这个 Skill 的文件夹。如果上文有作者提供的安装方式,请优先按作者说明操作;想只在当前项目中使用,把 ~/.claude/skills 换成项目里的 .claude/skills。

如何使用这个 Skill?

在 Worker 项目中,确保存在由 create_worker 生成的 Env 接口(包含 API_KEY、PROJECT_NAME、BASE_URL)。参考技能中的代码示例,实现路由处理。例如,可添加 POST /api/chat 路由,调用 callLLM 函数获取非流式回答,或添加 POST /api/chat/stream 路由,使用 handleChatStream 透传 SSE 事件。无需手动配置环境变量,它们会自动注入。

这个 Skill 有哪些优点和局限?

优点
  • 自动注入环境变量,无需手动设置 API key 或 base URL
  • 支持流式 SSE 和网页搜索,功能全面
  • 提供清晰的错误码表和错误提取函数,便于调试
  • 代码示例完整,可直接复制使用
局限
  • 仅适用于 PinMe Worker 项目,需使用 PinMe 平台创建项目
  • 错误信息依赖 PinMe 的包装格式,可能随平台更新而变化
  • 没有提供测试或单元测试示例,需要自己完善测试
  • 必须先有 PinMe 项目(create_worker),不能独立使用

这个 Skill 与同类方案有什么区别?

与相关 Skills 并排比较;分数均按同一 FSRS 标准得出。

Skill FS 评分 Star 数 最近更新 License
PinMe Worker OpenRouter API 集成 本页 64 · 推荐 ★ 3.7k 3 个月前 MIT
PinMe UniwebPay 支付集成 60 · 推荐 ★ 3.7k 3 个月前 MIT
Workers 生产实践审查 57 · 谨慎使用 ★ 3k 3 天前 Apache-2.0
PinMe Worker R2 存储技能 63 · 推荐 ★ 3.7k 3 个月前 MIT
Cloudflare Sandbox 构建助手 46 · 谨慎使用 ★ 3k 3 天前 Apache-2.0

FollowSkills 如何评估这个 Skill?

FollowSkills 评估 · FSRS-2.0
推荐
64/ 100 五分制 3.2 / 5
1信任安全17 / 25 · 3.4/5

证据显示:技能文档明确要求Worker仅使用项目API密钥,不持有真实OpenRouter密钥,并说明了数据流(X-API-Key、传递OpenRouter响应)。依赖项均为常见npm包(axios等),CI有依赖审计。未见恶意行为或过度权限。扣分原因:身份未验证,供应商未知;权限最小化仅部分(未明确限制Worker仅能调用本技能的端点,可能存在过度API权限);无回滚机制或用户确认步骤。因此评17分。

2可靠稳定10 / 20 · 2.5/5

证据显示:文档提供了完整的代码示例(models、chat/completions、流式),一致且可运行。错误处理模式详细(extractPinmeOpenRouterError)。测试套件覆盖CLI命令,但没有覆盖此技能的关键路径(OpenRouter API调用)。扣分原因:静态审查,无法执行验证;测试不覆盖LLM集成路径。因此评10分。

3适用触发12 / 15 · 4.0/5

证据显示:技能有明确的应用场景(PinMe Worker调用OpenRouter)、环境变量说明、非适用范围未明确但可推测(不使用Worker时)。触发条件较清晰(描述中提到'PinMe project (Worker TypeScript) needs to call OpenRouter-backed LLM APIs')。扣分原因:未明确非适用场景(如直接使用OpenRouter API或非PinMe项目);未提及中国大陆网络可达性(pinme.cloud可能不可达),构成环境适配减分。因此评12分。

4规范维护13 / 15 · 4.3/5

证据显示:文档结构清晰,有分节标题、错误表格、代码示例。有README、MIT许可证、版本(package.json 2.0.11)、CI、测试。扣分原因:无变更日志;无已知限制章节(仅提到1MB请求限制);维护责任未明确(author字段为'Glitter Protocol',但品牌未验证)。因此评13分。

5有效结果7 / 15 · 2.3/5

证据显示:技能的目标明确(生成正确的Worker TS代码),提供多种示例,预期输出清晰(非流式JSON、流式SSE)。但静态审查无法验证实际效果;边际价值高(避免手动查阅API)。扣分原因:没有实际输出验证;无法证明直接可用性。因此评7分。

6证据核验5 / 10 · 2.5/5

证据显示:存在CI工作流、测试套件(CLI测试),但缺少针对此技能代码的单元测试或集成测试。没有第三方验证。扣分原因:静态审查,无执行证据;测试覆盖不足。因此评5分。

1 2 3 4 5 6

点击维度查看打分理由

评估于 2026年8月7日 审查版本 7822b0501607 评估证据[1][2][3][4][5][6][7][8]

证据充分度:低 — 主要依赖静态检查、作者材料或有限演示;适合发现线索,不适合做高风险决策。

查看完整评分方法 →

常见问题

我可以在非 PinMe 项目中使用这个技能吗?
不可以。技能专门针对 PinMe Worker 项目设计,需要 PinMe 平台提供的环境变量和代理 API。如果你使用其他部署平台,需要直接调用 OpenRouter 的 API,并自行管理 API key。
需要支付额外费用吗?
PinMe 平台会为每个项目提供 API_KEY 用于认证,但 LLM 调用费用通常由 OpenRouter 收取,PinMe 平台可能还需要项目账户有余额(否则返回 403 错误)。具体计费方式请参考 PinMe 官网。
流式响应如何在前端解析?
技能提供了前端 SSE 消费者代码示例,使用 fetch 读取响应流,按行解析 data: 前缀的 JSON 数据,并处理 [DONE] 信号。
如果请求体超过 1MB 怎么办?
PinMe 会返回 413 错误,提示 “Request body too large (max 1MB)”。技能建议确保请求体不超过 1MB。

同仓库的其他 Skills

均来自 glitternetwork/pinme

相关 Skills