发布时间:2026/9/1 14:02:17
opencode-anthropic-auth诞生记:SST团队为何要为OpenCode做这个认证插件 opencode-anthropic-auth诞生记SST团队为何要为OpenCode做这个认证插件【免费下载链接】opencode-anthropic-auth项目地址: https://gitcode.com/GitHub_Trending/op/opencode-anthropic-authopencode-anthropic-auth 是 SST 团队为终端 AI 助手 OpenCode 打造的一款Anthropic 认证插件它让 OpenCode 用户可以直接用 Claude Pro/Max 订阅账号通过 OAuth 登录而不再需要为每次调用支付 API 费用。这个诞生记其实源于一个让很多开发者头疼的现实问题订阅明明已经付了钱第三方工具却用不了。一、问题背景为什么 OpenCode 不能直接用 Claude 订阅 用 Claude 写过代码的朋友都熟悉这套流程在终端运行claude登录命令浏览器跳转授权登录你的 Claude 账号订阅额度就开始为官方 CLI 服务。但在 OpenCode 这样的第三方终端 AI 助手里这条路是走不通的原因很简单OAuth 入口只开放给了官方 CLIAnthropic 的订阅登录流程绑定的是claude-cli官方客户端的身份信息第三方工具无法直接复用API 与订阅是两套计费体系走 API 就要按 token 付费走订阅才能用尽为止而 OpenCode 默认只会走前者服务端会识别客户端身份如果请求特征不像官方 CLI订阅授权根本不会被接受。于是 SST 团队也就是 OpenCode 背后的团队干脆自己动手写了这个只有一个核心文件、几百行代码的小插件把整条链路补上了。二、插件做了什么三种认证方式一键接入整个插件的核心逻辑集中在 index.mjs 中对外只导出一个AnthropicAuthPlugin入口index.mjs#L71。为 Anthropic 提供商注册了3 种认证方式index.mjs#L313-L362认证方式类型适合人群Claude Pro/MaxOAuth 订阅登录已购买 Claude 订阅的用户主力场景 Create an API KeyOAuth 后自动创建有 Claude 账号、想要 API Key 的用户Manually enter API Key手动输入已有 API Key 的开发者其中第二种的细节很有意思它先走 console.anthropic.com 的 OAuth 授权再用拿到的凭证调用 Anthropic 的接口自动帮你创建一把 API Keyindex.mjs#L341-L353全程不用打开控制台复制粘贴。三、诞生记源码里的四个关键设计读懂 index.mjs 就能明白这个插件为什么必须存在——它解决的每一个问题都是订阅登录绕不开的坎。1. 用标准 PKCE 流程拿到授权码浏览器无法安全保存密钥现代 OAuth 普遍采用 PKCEProof Key for Code Exchange。插件通过依赖openauthjs/openauth生成 PKCE 挑战码见 package.json#L8-L10 的依赖声明拼出claude.ai/oauth/authorize的授权链接交给浏览器用户登录后把回传的授权码粘回终端再与 PKCE verifier 一起换取 access_token 和 refresh_token完整流程见 index.mjs#L8-L66。2. Token 过期后台自动续期订阅凭证的 access_token 有效期很短。插件在每次发起请求前检查过期时间一旦临期就自动用 refresh_token 静默换新index.mjs#L107-L138并回写缓存。用户全程无感——这是登录一次长期可用体验的关键。3. 让请求看起来像官方 Claude Code这一部分是插件最匠心的地方也是它诞生的技术核心身份伪装把user-agent设置为claude-cliindex.mjs#L186-L190满足订阅授权的客户端校验提示词改名服务端的校验规则会拦截带有 OpenCode 字样的请求插件在发出前把 system 提示词里的 OpenCode 统一替换成 Claude Codeindex.mjs#L198-L212并在系统提示词头部注入官方 CLI 的自我介绍index.mjs#L73-L81工具名加前缀再还原OAuth 通道要求工具以mcp_前缀出现插件给所有工具名加上前缀index.mjs#L192-L239又逐字节改写流式响应把前缀剥离index.mjs#L276-L297保证 OpenCode 内部工具调用完全不受影响补齐 beta 头自动合并oauth-2025-04-20等必需的anthropic-beta头并为/v1/messages追加?betatrue参数index.mjs#L169-L268。4. 订阅用户成本直接归零当检测到当前认证方式是 OAuth 订阅时插件会把该提供商下所有模型的 input/output/cache 成本全部置为 0index.mjs#L86-L103。这样 OpenCode 的用量统计就不会再显示你在按 API 计费订阅额度用多少算多少——这正是付费用户最在意的一点 四、快速上手3 步完成 OpenCode 的 Claude 订阅登录安装插件opencode-anthropic-auth已发布为 npm 包当前版本 0.0.13见 package.json#L2通过 OpenCode 的插件机制安装该包即可发起登录运行 OpenCode 的认证命令opencode auth login选择 Anthropic 提供商你会看到插件提供的Claude Pro/Max选项完成授权终端会打开浏览器授权页用你的 Claude 账号登录并把回传的授权码粘贴回终端插件会自动完成换 Token 与缓存随后即可正常对话。五、使用注意与项目文件导航⚠️两点提醒成本归零仅对 OAuth 订阅登录生效手动填 API Key 的用户依然按量计费以订阅授权调用非官方客户端可能触及 Anthropic 的服务条款边界请自行评估合规风险后再使用。项目文件导航整个项目精简到只有 5 个文件文件说明index.mjs插件全部核心逻辑OAuth、刷新、请求改写、成本归零package.json包元信息与依赖声明script/publish.ts版本号升级 触发发布流程的自动化脚本bun.lock依赖锁文件LICENSEMIT 开源协议Copyright © 2025 SST总结opencode-anthropic-auth 的诞生是 SST 团队为了解决OpenCode 如何合法接入 Claude 订阅认证这一真实痛点用一个轻量插件补齐 OAuth 登录、Token 续期与客户端身份适配的完整方案。如果你正想在 OpenCode 里用上 Claude Pro/Max这个认证插件值得放进你的工具箱。【免费下载链接】opencode-anthropic-auth项目地址: https://gitcode.com/GitHub_Trending/op/opencode-anthropic-auth创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

2026/9/1 14:02:17

DeepSeek Harness:一切皆插件的AI工作流编排层

DeepSeek Harness 这个项目,社区里一般简称 dsh,它不是一个简单的 DeepSeek 客户端,而是一套把模型能力、工具调用、任务流程全部做成插件的 AI 工作流编排层。很多人第一次看到“一切皆插件”这句话,第一反应是概念炒作&#xff…

2026/9/1 14:02:17

Kali Linux 2026 保姆级指南:从安装部署到核心工具实战

如果你对网络安全、渗透测试或系统安全评估感兴趣,那么 Kali Linux 是你绕不开的一个名字。它不是普通的操作系统,而是一个由 Offensive Security 团队维护的、集成了数百种安全工具的“武器库”。从信息收集、漏洞扫描、密码破解到无线网络分析&#xf…

2026/9/1 14:02:17

996 GT2-R双涡轮与勒芒遥测:从车载视频到圈速数据分析

一段保时捷996 Bi-Turbo GT2-R PSI的勒芒经典车赛车载单圈视频,不同人读出的信息量完全不同。普通观众看到的是发动机轰鸣、连续降挡补油和方向盘快速修正;车辆工程师看到的则是每个刹车点上的轮胎抓地余量、出弯给油瞬间的涡轮响应、长直道尾端的风阻和…

2026/9/1 14:17:18

反激式开关电源设计全流程:从拓扑原理到工程调试实战

在实际电力电子和嵌入式系统项目中,高压开关电源的设计与调试是一个既考验理论功底又依赖工程经验的核心环节。它不仅是各类工业设备、通信基站、医疗仪器和新能源系统的“心脏”,其性能直接决定了整机的效率、稳定性和可靠性。很多工程师在初次接触时&a…

2026/9/1 14:17:18

基于Python的办公文档自动化生成系统:从模板引擎到定时任务

1. 先搞清楚这个“系统”到底解决了什么实际问题 看到这个标题,很多在机关、国企或事业单位工作的朋友可能会心一笑。写材料,尤其是公文、报告、总结、汇报,确实是很多“体制内”岗位绕不开的日常工作。痛点很明确:格式要求严格、…

2026/9/1 14:12:18

5 种 Prompt 手法:把非结构化文本批量变成结构化特征

5 种 Prompt 手法:把非结构化文本批量变成结构化特征 【免费下载链接】prompt-eng-interactive-tutorial Anthropics Interactive Prompt Engineering Tutorial 项目地址: https://gitcode.com/GitHub_Trending/pr/prompt-eng-interactive-tutorial 手里有一…

2026/8/31 1:05:20

vSound小提琴数字处理器实操指南:从接线到演出的完整配置

电小提琴或者原声小提琴插电演出,第一个绕不开的坎就是声音难听。原声琴的共鸣和空气感一旦进了拾音器,出来的往往是一坨干瘪、发尖、带着奇怪塑料味的信号。我当初第一次把琴接上乐队调音台,直接被主唱吐槽"你这声音像在锯钢丝"。…

2026/9/1 8:27:47

传感器接口IC如何攻克生物化学传感的微弱信号难题?

1. 从电极到比特流:为什么生物化学传感必须依赖专用接口IC 做生物化学传感的人都有过类似的经历:明明传感器本身性能很好,信号输出却一塌糊涂——噪声大、漂移明显、重复性差,怎么调都达不到预期。很多时候问题并不在传感器&#…

2026/9/1 7:04:43

STM32F411CEU6多通道ADC采集:扫描模式+DMA实现详解

1. 多通道 ADC 的用武之地把“Multichannel ADC”和“STM32F411CEU6”这两个关键字放在一起,其实就是嵌入式开发里最常遇到的一类需求:用一块不算贵的 MCU,同时采集多路模拟信号。STM32F411CEU6 是 48 引脚的 Cortex-M4F 主控,主频…

2026/9/1 0:00:42

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行,Type-C接口算是典型的“看着简单,做起来全坑”的东西。光引脚就24个,高低速信号、电源、控制线全部塞在一个小小的连接器里,如果PCB布局不做规划,打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/1 0:00:42

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/1 0:00:42

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…

2026/9/1 0:00:42

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行&#xff0c;Type-C接口算是典型的“看着简单&#xff0c;做起来全坑”的东西。光引脚就24个&#xff0c;高低速信号、电源、控制线全部塞在一个小小的连接器里&#xff0c;如果PCB布局不做规划&#xff0c;打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/1 0:00:42

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/1 0:00:42

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…