Qwen Code

A multi-provider AI coding agent that runs in your terminal.

Source repo
QwenLM/qwen-code
Stars
★ 29k
Last updated
today
License
Apache-2.0
Primary language
TypeScript

At a glance

How it runs
CLIDesktop appIDE extension
Works with
Universal · cross-platformOpenAI API · Claude APICodex · Claude Code (Partial support)
Cost
Free software; you pay for model usage
Setup effort
Low · running in minutes
You'll need
Node.js 22+Shell / CLINetwork accessLocal filesystemMCP Server
Typical use
A software engineer who wants an interactive terminal agent with file references and slash commands while working in a repository.
Not a fit if
  • Teams needing production-stable multi-client shared sessions (qwen serve is experimental)
  • Users unwilling to configure an API key or third-party model provider

What does this agent do, and when should you use it?

Qwen Code is an open-source AI coding agent with an interactive terminal UI and a headless automation mode. It supports OpenAI, Anthropic, Gemini, and Qwen APIs, plus third-party providers and local models through Ollama or vLLM, with runtime switching. Delivery options include VS Code, Zed, and JetBrains integrations, desktop applications for macOS, Windows, and Linux, and channels for Telegram, DingTalk, WeChat, and Feishu. Its experimental qwen serve mode exposes one shared agent session to multiple clients over HTTP+SSE using ACP. TypeScript, Python, and Java SDKs make it usable from developer tooling and automated workflows.

Run qwen to open an interactive terminal UI with rich rendering, @file references, and slash commands, then use /auth to configure a provider and API key. Run qwen -p "..." to submit a prompt without a UI for scripts, CI/CD, or batch processing. Qwen Code connects to OpenAI, Anthropic, Gemini, Qwen, third-party, or local model providers and offers MCP, SubAgents, Agent Teams, Auto-Memory, Auto-Skills, Hooks, Plan Mode, LSP integration, sandboxing, and Git worktrees. qwen serve shares an agent session with multiple clients over HTTP+SSE using ACP, while qwen channel connects Telegram, DingTalk, WeChat, or Feishu. In the Python SDK, query() accepts a prompt plus cwd and path_to_qwen_executable, and returns messages that can be consumed asynchronously.

  1. A software engineer who wants an interactive terminal agent with file references and slash commands while working in a repository.
  2. A development team invoking qwen -p from CI/CD jobs, scripts, or batch-processing workflows.
  3. A team that needs to switch at runtime among OpenAI, Anthropic, Gemini, Qwen, third-party, or local Ollama/vLLM model providers.
  4. A tooling developer integrating coding-agent calls into a Python, TypeScript, or Java application.
  5. An internal development environment that needs several clients to share one agent session over HTTP+SSE.
  6. A developer who wants to use a coding agent through VS Code, Zed, JetBrains, or supported messaging channels.

How do you install or deploy this agent?

On Linux/macOS: curl -fsSL https://qwen-code-assets.oss-cn-hangzhou.aliyuncs.com/installation/install-qwen-standalone.sh | bash. On Windows PowerShell: irm https://qwen-code-assets.oss-cn-hangzhou.aliyuncs.com/installation/install-qwen-standalone.ps1 | iex. Alternatively, install with npm using npm install -g @qwen-code/qwen-code@latest (Node.js 22+ required), or on macOS/Linux with brew install qwen-code. Restart the terminal after installation, then configure a provider and API key with /auth on first launch.

How do you use this agent?

Run qwen to launch the interactive terminal UI, then run /auth to configure a provider and API key. For headless execution, use qwen -p "Summarize the repository layout.". Start the experimental shared-session service with qwen serve, or connect messaging channels with qwen channel. From Python, call query("Summarize the repository layout.", {"cwd":"/path/to/project","path_to_qwen_executable":"qwen"}) and asynchronously iterate over the returned messages for the result.

What are this agent's strengths and limitations?

Pros
  • Supports OpenAI, Anthropic, Gemini, and Qwen APIs, plus third-party and Ollama/vLLM local models, with runtime provider switching.
  • Covers interactive and headless terminal use, IDE plugins, desktop apps, an HTTP+SSE service, messaging channels, and three SDKs.
  • Includes development-workflow features such as MCP, SubAgents, Agent Teams, Auto-Memory, Auto-Skills, Hooks, Plan Mode, LSP integration, sandboxing, and Git worktrees.
Limitations
  • The npm installation path requires Node.js 22+, and first use requires provider configuration and an API key.
  • The multi-client shared-session mode exposed by qwen serve is explicitly experimental.
  • The supplied material does not specify provider pricing, permission controls, default sandbox policy, or failure-recovery behavior.

How does this agent compare with similar options?

Qwen Code names Claude Code as a comparison point and states corresponding support for SubAgents, Agent Teams, MCP, Plan Mode, LSP integration, sandboxing, Git worktrees, IDE plugins, SDKs, headless mode, and session management. Its listed differentiators are open-source models and framework, multi-protocol provider support, Agent Arena, the qwen serve shared-agent service, and Telegram, DingTalk, WeChat, and Feishu channels.

Key facts side by side with the most closely related agents.

Agent Source review Form / cost Stars Updated Language Full support on
Qwen Code This agent 54 · Major gaps CLIFree + model costs ★ 29k today TypeScript OpenAI API · Claude API
Hazzel 63 · Some gaps CLIFree + model costs ★ 26 8d ago Python OpenAI API · Claude API
Autohand Code CLI 62 · Some gaps CLIFree + model costs ★ 215 2d ago TypeScript OpenAI API
NeuroLink 73 · Some gaps Library / SDKFree ★ 168 1d ago TypeScript OpenAI API · Claude API

How does FollowAgents rate this agent?

FollowAgents source review · FARS-2.1
Major gaps
54/ 100 5-point scale 2.7 / 5
This review covers the source as of Aug 09, 2026. The project has shipped 28 stable release(s) since, which have not been re-reviewed. The score and verdict describe the reviewed version only. Recent releases ↓
Trust 11/29
Reliability 8/14
Adaptability 12/18
Convention 11/18
Effectiveness 9/13
Verifiability 3/8
Why each dimension lost points
Trust11 / 29 · 1.9/5

Evidence shows permission controls (e.g., GitHub Actions least privilege, sandbox mode, user confirmation mechanisms), but static review cannot verify execution details, and no complete data flow transparency documentation is provided. Deductions: data flow transparency only partially described, sensitive data handling not detailed.

Reliability8 / 14 · 2.9/5

Project has extensive test scripts and CI configuration, indicating investment in consistency and dependency availability, but static review cannot verify actual runtime results. Deductions: specific failure message content not evident in provided files.

Adaptability12 / 18 · 3.3/5

README details multiple usage scenarios (interactive, headless, IDE, desktop, SDK, IM bots) and lists capability boundaries (e.g., multi-protocol support), but not all trigger conditions are explicit. Deductions: environment fit details (e.g., specific system requirements) not fully covered.

Convention11 / 18 · 3.1/5

Information architecture is clear, install notes are detailed, naming is stable (version numbers explicit), examples and FAQ links provided, license is clear, versioning has changelog scripts, maintenance responsibility has contribution guidelines. Deductions: known limitations not explicitly listed in provided files.

Effectiveness9 / 13 · 3.5/5

Output usability is high (multiple modes), marginal value is evident (comparison with Claude Code), cost-benefit is reasonable (open-source free). Deductions: no actual runtime data to support.

Verifiability3 / 8 · 1.9/5

Claims in README (e.g., feature comparison) have external links, but static review cannot verify all claims, and facts vs. inferences not clearly separated. Deductions: cross-source corroboration insufficient.

Risks and how to mitigate them
  • Static review cannot verify actual runtime behavior; dynamic testing is recommended.
  • Data flow transparency documentation is incomplete; further review needed.
  • Sensitive data handling details are not explicit; attention required.
Evidence confidence: Low Reviewed Aug 09, 2026 Reviewed revision afcc937ec57e New commits since this review; the score may not cover them
See the full review method →

Recent releases

Latest entries from the project's GitHub Releases. Notes are quoted from upstream as written, not rewritten or tested by FollowAgents.

  1. desktop-v0.26.8 Qwen Code Desktop v0.26.8
    Release notes excerpt
    <!-- Release notes generated using configuration in .github/release.yml at 21ed8f1efbb351b973d96e2bc9efa78f278df99c --> What's Changed * refactor(managed-agent): Share the session event delivery loop by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/15952 * ci: route the classify_pr gate to ECS for every pull request by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/16019 * fix(core): delete the OAuth refresh lock only when owned by @2SinceJuly in https://github.com/QwenLM/qwen-code/pull/15661 …
    View on GitHub ↗
  2. sdk-typescript-v0.1.28 SDK TypeScript Release v0.1.28
    Release notes excerpt
    Bundled CLI Version This SDK release bundles CLI version: 0.26.8 Source: CLI built from source (same branch/ref as SDK) --- Bundled CLI Version This SDK release bundles CLI version: 0.26.6 Source: CLI built from source (same branch/ref as SDK) --- Bundled CLI Version This SDK release bundles CLI version: 0.26.4 Source: CLI built from source (same branch/ref as SDK) --- Bundled CLI Version This SDK release bundles CLI version: 0.26.3 Source: CLI built from source (same branch/ref as SDK) --- Bundled CLI Version This SDK release bundles CLI version: 0.26.2 …
    View on GitHub ↗
  3. v0.26.8 Release v0.26.8
    Release notes excerpt
    <!-- qwen-release-notes:v1 --> Highlights _See the complete change list below._ Breaking Changes No known breaking changes. Complete Change List Features - feat(mods): run prompt.submit hooks in the OpenTUI terminal ([#16195](https://github.com/QwenLM/qwen-code/pull/16195)) by @qqqys - feat(cli): run the Ink TUI's model rounds on the shared loop's round ([#16206](https://github.com/QwenLM/qwen-code/pull/16206)) by @qqqys - feat(web-shell): collapse channel editor tuning behind advanced settings ([#16239](https://github.com/QwenLM/qwen-code/pull/16239)) by @wenshao …
    View on GitHub ↗

FAQ

Do I have to use Qwen models?
No. Qwen Code states support for OpenAI, Anthropic, Gemini, and Qwen APIs, third-party providers, and local models through Ollama or vLLM.
What is required for first use?
Launch qwen, then configure a model provider and API key with /auth. The npm installation route also requires Node.js 22+.
Can it run in automation or CI/CD?
Yes. qwen -p "..." is the headless mode, listed for scripts, CI/CD, and batch processing.
Can my own application call it?
Yes. TypeScript, Python, and Java SDKs are provided; the Python example uses query() and consumes an asynchronous message stream.
What about pricing and permission controls?
The supplied information does not state model-provider pricing, permission scope, default sandbox configuration, or failure handling. Confirm those details for the chosen provider and deployment before adoption.
View on GitHub ↗ Install ↓

Compare agents like this one

The same FARS review applied across the shortlist this agent qualifies for.

Related agents