Conversation
Add Qwen Code as a supported ACP-compatible agent backend. - Add Dockerfile.qwen with @qwen-code/qwen-code npm package - Add qwen config example to config.toml.example - Add qwen Helm preset (image, command, args) to _helpers.tpl - Add Qwen auth instructions (QWEN_API_KEY) to NOTES.txt - Update values.yaml preset comment to include qwen - Update README.md: backends table, Helm install, manual config, pod auth, Install with Your Coding CLI section Closes #55
chaodu-agent
left a comment
There was a problem hiding this comment.
Great work on the Qwen Code integration! The Dockerfile and config changes look solid.
However, since the repo has migrated from thepagent/agent-broker → openabdev/openab, a few references in this PR need updating:
🔴 Critical: Image registry path
In charts/agent-broker/templates/_helpers.tpl:
ghcr.io/thepagent/agent-broker-qwen
Should be updated to the new org/repo (e.g. ghcr.io/openabdev/openab-qwen). Without this, helm install with --set agent.preset=qwen will fail to pull the image.
Note: the existing presets (
codex,claude,gemini) have the same issue — they all still referenceghcr.io/thepagent/agent-broker-*. Might be worth fixing all of them in this PR or opening a separate migration issue.
🟡 README: Helm repo URL
The "Install with Your Coding CLI" section still references:
https://thepagent.github.io/agent-broker
This should point to the new GitHub Pages URL for openabdev/openab.
🟡 Suggestion: chart rename?
The chart directory is still charts/agent-broker/. Renaming to match the new repo name (openab) could be a separate issue to avoid scope creep here.
Everything else (Dockerfile.qwen, config.toml.example, NOTES.txt, values.yaml) looks good 👍
|
Hi @thepagent, this PR overlaps with #149 which also adds Qwen Code ACP support. Would you be okay closing one of these to avoid duplication? Thanks 🙏 |
chaodu-agent
left a comment
There was a problem hiding this comment.
🔴 Changes Requested — Stale branch with wrong chart path, wrong binary name, and incomplete Dockerfile. Needs full rebase + rework.
Baseline Check (Step 0)
| Field | Value |
|---|---|
| State | OPEN |
| Mergeable | CONFLICTING |
| Created | 2026-04-05 (26 days ago) |
| Last commit | 2026-04-05 |
| Author | @nicholasgasior |
| Labels | closing-soon |
Main has: Zero Qwen support — no Dockerfile.qwen, no Helm preset, no config block. Only a passing mention of "qwen3-coder-next" in docs/opencode.md. All content is net-new.
Key staleness: The project was renamed from agent-broker to openab since this PR was opened. Chart path moved from charts/agent-broker/ to charts/openab/, binary renamed from agent-broker to openab.
四問框架
1. 解決什麼問題
Adds Qwen Code (Qwen3) as a new ACP-compatible agent backend, expanding the supported agent ecosystem.
2. 怎麼解決
Adds Dockerfile.qwen, config.toml.example block, Helm chart preset (_helpers.tpl, values.yaml, NOTES.txt), and README updates.
3. 考慮過什麼
Follows the existing preset pattern in _helpers.tpl. Uses @qwen-code/qwen-code npm package.
4. 最佳方案嗎
The approach is correct but the implementation is based on a pre-rename state and missing critical Dockerfile patterns.
🟢 INFO
- Good coverage across all touchpoints (Dockerfile, README, config, Helm chart).
- Follows the existing preset pattern in
_helpers.tpl. - NOTES.txt auth instructions are clear and consistent with other presets.
🟡 NIT
--trust-all-toolsflag — Consider documenting security implications in README or NOTES.txt.- Qwen auth is API-key-only — The commented-out
helm upgradein README auth section could be uncommented since it's the primary method (no device flow like codex/claude).
🔴 SUGGESTED CHANGES
-
Wrong chart path — Diff targets
charts/agent-broker/but main hascharts/openab/. Root cause of CONFLICTING status. Must rebase onto current main. -
Wrong binary name — Dockerfile.qwen copies
agent-broker(COPY --from=builder /build/target/release/agent-broker) but the binary on main isopenab. ENTRYPOINT/CMD also referenceagent-broker. -
Incomplete Dockerfile — Compared to
Dockerfile.gemini(and all otherDockerfile.*), Dockerfile.qwen is missing:procps,ripgrep,tinipackagesghCLI installationUSER nodedirective (security: container runs as root)HEALTHCHECKinstructiontinias PID 1 init (ENTRYPOINT ["tini", "--"])- Proper
CMD ["openab", "run", "-c", "/etc/openab/config.toml"]format
-
No pinned version —
npm install -g @qwen-code/qwen-codehas no version pin. All other Dockerfiles pin versions (e.g.,@google/gemini-cli@${GEMINI_CLI_VERSION}). AddARG QWEN_CODE_VERSION=x.y.z. -
README helm examples — Still say
agent-broker/agent-broker— should beopenab/openab.
超渡法師 Review — PR #561. What problem does it solve?Adds Qwen Code (Alibaba's Qwen3-based coding CLI) as a new ACP-compatible agent backend, expanding the supported ecosystem beyond Kiro CLI, Claude Code, Codex, and Gemini. 2. How does it solve it?Follows the established preset pattern:
3. What was considered?
4. Is this the best approach?The approach is correct — mirrors the established pattern. However, the PR is stale (opened before the Traffic Light🟢 INFO
🔴 SUGGESTED CHANGES
🟡 NIT
Verdict🔴 Changes requested — The approach and coverage are correct, but the PR needs a full rebase onto current main (post-rename) plus Dockerfile rework to match established patterns (security, version pinning, missing tooling). Use |
Summary
Add support for Qwen Code as an ACP-compatible agent backend.
Closes #55
Changes
@qwen-code/qwen-codenpm package (follows Dockerfile.gemini pattern)qwen --experimental-acp --trust-all-tools,QWEN_API_KEY)_helpers.tpl— addedqwenpreset: image →agent-broker-qwen, command →qwen, args →["--experimental-acp", "--trust-all-tools"]NOTES.txt— added Qwen auth instructions (setQWEN_API_KEYvia helm upgrade)values.yaml— updated preset comment to listqwenTesting
helm templatewith--set agent.preset=qwenrenders correct image/command/argsdocker build -f Dockerfile.qwen .succeeds--experimental-acpworks with broker's ACP protocol