V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
HexHub
HexHub,一站式SSH、Docker、数据库连接管理工具,支持多种主流数据库、多窗口分屏、智能SQL编辑、极速数据处理、批量命令、云端同步,支持SSH跳板机、命令广播、历史命令、SFTP多端文件互传。
Promoted by xiwh
musi
V2EX  ›  分享创造

我逆向了 Claude Code,并接入了 qwen

  •  1
     
  •   musi · 151 天前 · 5885 次点击
    这是一个创建于 151 天前的主题,其中的信息可能已经有所发展或是发生改变。

    夜里发布的 Claude Code 还需要申请资格,看了下使用 nodejs 实现的,尝试逆向。主要就是去除了资格验证以及实现了接口转发请求,以下是效果图。

    第 1 条附言  ·  151 天前
    46 条回复    2025-06-25 15:28:25 +08:00
    googlefans
        1
    googlefans  
       151 天前
    可以拿来赚钱了
    musi
        2
    musi  
    OP
       151 天前   ❤️ 3
    @googlefans 没有这个打算,并且已经开源了
    https://github.com/musistudio/claude-code-reverse
    Tsingchengliu
        3
    Tsingchengliu  
       151 天前
    早上看到 claude code 时,我想:几周内肯定有人逆向支持自定义 apikey 。没想到当天就有了,神速
    liu11onepoint
        4
    liu11onepoint  
       150 天前
    可以部署到 vercel 或者 netlify 不
    musi
        5
    musi  
    OP
       150 天前
    @liu11onepoint #4 claude code 是在本地终端运行的,不理解你这里的部署是部署什么东西
    ZephyrusOrz
        6
    ZephyrusOrz  
       150 天前
    好快的逆向,可以接入 R1 了
    musi
        7
    musi  
    OP
       150 天前
    @ZephyrusOrz #6 事实上,Claude Code 基本上无法使用 R1 ,因为基本上都是通过 Function Call 实现的功能,而 R1 系列基本不支持
    ZephyrusOrz
        8
    ZephyrusOrz  
       150 天前
    @musi 那支持哪些模型呢?有空的时候准备折腾一下
    musi
        9
    musi  
    OP
       150 天前
    @ZephyrusOrz #8 按道理来说支持 function call 的模型都支持,就是最终效果行不行的问题,我目前试了 qwen-max-2025-01-25 ,效果还可以,不过费 token ,官网送的一百万 token 我已经用了只剩 30w 了
    ZephyrusOrz
        10
    ZephyrusOrz  
       150 天前
    @musi 空了研究一下!感谢 OP
    netyang
        11
    netyang  
       150 天前
    @musi 好像还是得登录?
    musi
        12
    musi  
    OP
       150 天前
    @netyang #11 你需要先删掉 HOME/.claude.json 这个文件然后再开启服务
    jaylee4869
        13
    jaylee4869  
       150 天前
    Koala 团队也做了一样的事: https://www.bilibili.com/video/BV1cKPjeUEPN
    musi
        14
    musi  
    OP
       150 天前
    @jaylee4869 他们侧重点在于还原整个项目代码,我的侧重点在于在不侵入官方代码的情况下转发 API 使用
    foufoufm
        15
    foufoufm  
       149 天前
    支持一下,不过看不太懂原理,希望有机会能分享一下
    lanceran
        16
    lanceran  
       149 天前
    这个服务开启之后怎么使用呢,直接 claude 使用就可以了吗大佬
    musi
        17
    musi  
    OP
       149 天前
    @lanceran 你需要在环境变量或.env 文件中配置 OpenAI 的 baseurl key model 就可以用了
    imlink
        18
    imlink  
       149 天前
    已感谢,可以跑。提示下如果用 gpt4-mini 的模型,input token 会不够
    musi
        19
    musi  
    OP
       149 天前
    @imlink 确实很费 token ,我一天就跑完了 qwen 的一百万 token ,我正在正尝试先用本地 qwen:32b 模型做个网关,对于复杂 code 任务自动路由到远端大模型
    HeMaSchool
        20
    HeMaSchool  
       149 天前
    运行起来好像有问题
    [![image.png]( https://i.postimg.cc/90ZFXV7F/image.png)]( https://postimg.cc/kRMdw0sk)
    musi
        21
    musi  
    OP
       149 天前 via iPhone
    @HeMaSchool #20 你使用的什么模型呢
    ldw2046
        22
    ldw2046  
       148 天前
    楼主,这个可以用 deepseek 的模型吗?我还是不太了解怎么使用。const apiKey = process.env.OPENAI_API_KEY;
    const baseUrl = process.env.OPENAI_BASE_URL;
    const defaultModel = process.env.OPENAI_MODEL; 是修改这几个参数吗?
    musi
        23
    musi  
    OP
       148 天前
    @ldw2046 #22 不可以使用 ds 的模型,ds 目前不能很好的支持 function call ,你可以用 qwen 或者 openai 的
    这几个参数使用环境变量,你可以直接设置环境变量,也可以直接在 index.mjs 同级目录下创建一个.env 文件,内容类似于
    OPENAI_BASE_URL="https://dashscope.aliyuncs.com/compatible-mode/v1"
    OPENAI_MODEL="qwen-plus-2025-01-25"
    OPENAI_API_KEY=""
    ldw2046
        24
    ldw2046  
       148 天前
    多谢啦,到时候试试
    musi
        25
    musi  
    OP
       148 天前 via iPhone
    @ZephyrusOrz
    @imlink
    @ldw2046
    最新进展,现在可以通过 router 模式支持 ds 的 chat 和 r1 ,用上 ds 的 cache 确实便宜了不少
    ZephyrusOrz
        26
    ZephyrusOrz  
       147 天前
    @musi 多谢
    musi
        28
    musi  
    OP
       146 天前 via iPhone
    @lulu00147 你这个是想表达什么?
    74123gzy
        29
    74123gzy  
       145 天前
    gemini 2.0 如何?这个 api 免费
    musi
        31
    musi  
    OP
       145 天前
    @74123gzy 看了下,又是个新的 API 格式,兼容格式是个麻烦事,还有就是我在测试的过程中发现 gemini-2.0-flash 对 system prompt 的遵从不是很好,不知道是不是我用的方法有问题
    musi
        32
    musi  
    OP
       145 天前
    @74123gzy #30 我发现官方有支持 OpenAI 格式的地址,加了个代理测试了一下,这个模型跟智障差不了多少,不知道是不是我没付费给我降智了
    catwalk
        33
    catwalk  
       142 天前
    很赞,能加上 xai api 吗,这个充 5 刀,每月送 150 刀额度
    trio
        34
    trio  
       46 天前
    哥,牛逼
    trio
        35
    trio  
       46 天前
    @74123gzy 你试试 LiteLLM ,代理所有 LLM
    musi
        36
    musi  
    OP
       46 天前 via iPhone
    @trio 很巧我在今天更新了一版,这几天我发现 claude code 在工程上的优化用 deepseek 意外的好用(v3 也能用步骤规划),工具调用的成功率大大增加了,甚至在强依赖项目上文的场景比我直接用 vscode 的 copilot 中的 Claude4 还好用。直接导致我两天用了 deepseek 一千万的 token ,但是 ds 官网提供的 api 才 64k ,有些场景这个上下文还是太小了,后面我试试火山的
    nianlifeixing
        37
    nianlifeixing  
       42 天前
    @musi 感谢 op ,很有用,不过好像支持超长上下文的免费模型比较少,dp 和 qwen 都好像不太多?另外逆向是通过什么分析的呢,很感兴趣
    musi
        38
    musi  
    OP
       42 天前 via iPhone
    @nianlifeixing 我并没有用免费模型,目前 deepseek 官网和火山引擎的混着用,后面会通过路由将长上下文转发到 gemini-2.5-pro 去处理

    整体的开发思路还在整理,后面会在项目中增加几篇文章用于描述思路和我的一些实践
    musi
        39
    musi  
    OP
       40 天前   ❤️ 1
    yyzq007
        40
    yyzq007  
       36 天前
    用起来了, 哥们牛逼
    pxiphx891
        41
    pxiphx891  
       36 天前
    配置在 Router 中的模型和配置在 OPENAI_MODEL 的模型有什么区别?
    musi
        42
    musi  
    OP
       36 天前 via iPhone
    @pxiphx891 OPENAI_MODEL 是主模型,Router 是在匹配某些规则时使用的模型,目前 OPENAI_MODEL 的存在是因为兼容历史版本的配置
    yibo2018
        43
    yibo2018  
       32 天前
    没想到在这里看到作者本人,目前用下来,deepseek 的体验很差劲,推理模型一直卡住不动,chat 模型不会自动执行,每一步都要确认一下 @musi
    mzl980425
        44
    mzl980425  
       32 天前
    太强了,已经 star
    musi
        45
    musi  
    OP
       32 天前
    @yibo2018 我正在尝试重构转换服务,后面会使用提示词增强 v3 的体验,但还是不建议将 r1 用到默认模型
    AngdyChen
        46
    AngdyChen  
       31 天前
    太强了,用起来了
    任务虽然不能说完全平替但是还真能行
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2336 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 16:06 · PVG 00:06 · LAX 09:06 · JFK 12:06
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.