qwen-code 评测:终端里的多协议 AI 编程代理,兼容面比 Claude Code 更宽
位于您终端中的开源人工智能编码代理。 **多协议**,支持 OpenAI、Anthropic、Gemini 和 Qwen API。
秒懂
- 它是什么?
- qwen-code 是一个开源终端 AI 编程代理,支持 OpenAI、Anthropic、Gemini 和 Qwen 四种协议,提供交互式、无头、守护进程和 SDK 等多种运行方式。本文基于仓库文档和发布信息,分析它的机制、安装路径、适用场景与边界。
- 适合谁用?
- qwen-code 适合已经在用 Claude Code 但想切换模型供应商的开发者,也适合需要把编程代理嵌入 CI 或脚本的团队。它不适合对终端 UI 有强依赖、又不想折腾 Node.js 22 环境的人。
- 能商用吗?
- 可以。Apache-2.0 是宽松许可证:你可以使用、修改并销售基于它的软件,只需保留版权和许可证声明。
- 还在维护吗?
- 在维护。仓库最近一次提交在 1 天前。
- 用什么语言写的?
- 主要是 TypeScript(依据 GitHub 的语言统计)。
以上回答依据项目的 GitHub 数据(最近同步于 2026年9月14日)和我们的分析,不构成法律意见。
开源项目深度解析
一个终端代理,四种协议,解决的是模型锁定问题
qwen-code 解决的核心问题很具体:编程代理绑死单一模型供应商。大多数同类工具只支持自家 API,换模型就得换工具。这个项目把 OpenAI、Anthropic、Gemini 和 Qwen 四种协议都收进来,运行时可以切换。这意味着你可以在同一个会话里先用 Qwen 模型,再切到本地 Ollama 跑的模型。README 明确写了支持第三方 provider 和本地模型,Ollama 和 vLLM 都被点名。目标用户是那些不想被厂商锁定的工程师,尤其是已经在用 Claude Code 工作流、但想尝试不同后端的人。它不是一个玩具,功能表直接对标 Claude Code,包含 SubAgents、Agent Teams、Auto-Memory、MCP 这些重量级特性。
从交互式 UI 到无头模式,机制上分了五条路径
这个项目的运行机制不是单一入口。交互式模式用 qwen 命令启动终端 UI,支持 @file 引用和斜杠命令。无头模式用 qwen -p "..." 跑脚本和 CI,没有界面。守护进程模式用 qwen serve 起一个 HTTP+SSE 服务,走 ACP 协议,多个客户端可以连同一个代理会话,但 README 标注了 experimental。SDK 有 TypeScript、Python 和 Java 三套,Python 示例展示的是异步 query 函数,传入 cwd 和可执行文件路径,然后流式接收消息。还有 IM Bot 模式,qwen channel 可以接 Telegram、钉钉、微信和飞书。这五条路径共享同一个代理核心,但面向的场景完全不同。
安装只有三条命令,但环境要求有硬门槛
安装方式分三层。Linux 和 macOS 用 curl 管道脚本,Windows 用 PowerShell 的 irm 命令,装完要重启终端让环境变量生效。NPM 方式要求 Node.js 22 以上,全局安装包名是 @qwen-code/qwen-code。Homebrew 用户直接 brew install qwen-code。快速开始很简单:终端里跑 qwen 进入交互界面,然后输入 /auth 配置 provider 和 API key。这里有个实际约束:如果你不想用管道脚本,就得保证 Node.js 版本够新。Node 22 不是所有发行版默认带,老系统上可能要先升级 Node。README 没有给出离线安装或容器化方案,所以 CI 环境里装它得自己处理依赖。
功能对照表是亮点,但别忽略 experimental 标记
README 里有一张 Qwen Code 与 Claude Code 的功能对照表,列了 SubAgents、Agent Teams、Auto-Memory、Hooks、MCP、Plan Mode、LSP 集成、Sandbox、Git Worktrees、Computer Use、IDE 插件和 SDK,全部打勾。这个表暗示项目目标是 Claude Code 的替代品。但表里没写每项功能的成熟度。qwen serve 明确标了 experimental,这意味着守护进程模式不适合直接上生产。另外,Computer Use 指的是桌面自动化,这跟终端代理是两回事,但它也被算作内置能力。实际使用中,这些功能是否都稳定,README 没有给证据。
自举开发是个信号,但也是双刃剑
项目描述里有一句很特别的话:Qwen Code 正在用自身的代理和模型来提交 issue、PR、审查代码和跑测试。这是自举开发的例子,说明项目团队确实在用这个工具写自己。对采用者来说,这是个正面信号,因为工具在真实场景里被锻炼。但反过来想,如果代理在开发自己的过程中引入 bug,修复也依赖代理本身,那么问题的收敛速度可能受影响。这个信息来自 README 的提示框,不是发布说明,所以可信度需要打折。
替代方案不是另一个工具,而是同一个工具的不同用法
最直接的替代品是 Claude Code,因为 qwen-code 明确以它为对标对象。区别在于协议绑定:Claude Code 只走 Anthropic 协议,而 qwen-code 把 OpenAI、Gemini 也纳进来。如果你的团队已经用 Claude Code 且没有换模型的需求,迁移到 qwen-code 的收益不大。另一个替代方案是直接用 Qwen 的官方 API 配合通用 HTTP 客户端,比如 curl 或 LangChain,但那样你会失去代理的上下文管理、SubAgents 和 MCP 集成。qwen-code 的价值在于把这些能力打包成一个统一入口,而不是让你自己拼装。
维护节奏和许可证,决定你能否长期依赖它
仓库最近一次 push 是 2026 年 8 月 29 日,v0.22.3 稳定版在 8 月 28 日发布,同一天还有 nightly 版本。这说明发布节奏很密,几乎每天都有构建。频繁的 nightly 意味着功能迭代快,但也暗示 API 可能不稳定。License 是 Apache-2.0,这对商业使用友好,你可以自由修改和分发,只要保留版权声明。没有看到 CLA 或贡献者协议的说明,所以外部贡献的流程不明确。升级成本方面,因为版本号跳得快,你需要关注 changelog 里的 breaking changes,但 README 没有提供迁移指南。
编辑结论
qwen-code 适合已经在用 Claude Code 但想切换模型供应商的开发者,也适合需要把编程代理嵌入 CI 或脚本的团队。它不适合对终端 UI 有强依赖、又不想折腾 Node.js 22 环境的人。采用前请先验证三件事:确认你的模型 API 是否兼容 OpenAI 或 Anthropic 协议,检查 qwen serve 的 experimental 标记是否满足生产稳定性要求,以及阅读 Authentication Guide 里关于 API key 存储的默认行为。最后,如果你只想要一个纯 Qwen 模型的绑定工具,这个项目反而过度设计。
社区笔记