Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
549 commits
Select commit Hold shift + click to select a range
a45b14f
fix(weixin): normalize markdown image syntax (#5297)
tt-a1i Jun 18, 2026
f3e0dd6
fix(core): skip sleep inhibitor in headless ssh (#5295)
tt-a1i Jun 18, 2026
51d825c
fix(cli): reject malformed terminal sequences (#5305)
tt-a1i Jun 18, 2026
933e946
fix(cli): expand windows-style tilde paths (#5298)
tt-a1i Jun 18, 2026
7e1bdd9
fix(core): validate oauth expires_in values (#5356)
tt-a1i Jun 18, 2026
97af6d7
fix(core): reject malformed cron numeric fields (#5352)
tt-a1i Jun 18, 2026
f75ca03
fix(cli): parse sandbox image registry ports (#5325)
tt-a1i Jun 18, 2026
7eb1bd5
fix(cli): keep empty MCP prompt arguments (#5323)
tt-a1i Jun 18, 2026
7541ddb
fix(core): reject invalid cron task entries (#5309)
tt-a1i Jun 18, 2026
a21a069
fix(cli): avoid agent composer unmount reset (#5302)
tt-a1i Jun 18, 2026
41efcf0
fix(cli): validate channel service pidfile (#5300)
tt-a1i Jun 18, 2026
5a73dcf
fix(core): preserve invalid schema length strings (#5312)
tt-a1i Jun 18, 2026
5a84ba0
fix(weixin): confirm the WEBP signature, not just the RIFF prefix (#5…
he-yufeng Jun 18, 2026
8fcc439
feat(channel): add QQ Bot (QQ机器人) channel adapter (#5202)
Eric-GoodBoy-Tech Jun 18, 2026
04d36e7
fix(cli): reject malformed ACP timeout strings (#5315)
tt-a1i Jun 18, 2026
1c62349
fix(cli): import extension channels via file urls (#5301)
tt-a1i Jun 18, 2026
d97a078
fix(cli): bound streaming thought render buffers (#5314)
kkhomej33-netizen Jun 18, 2026
f3803ed
feat(core): auto-reveal exit_plan_mode tool when entering plan mode (…
aspnmy Jun 18, 2026
dab62e5
feat(cli): display session name in terminal title (#5288)
ZijianZhang989 Jun 18, 2026
0137128
fix(core): keep qwen3.6-flash and kimi-k2.6 presets text-only (#5328)
he-yufeng Jun 18, 2026
24d7595
feat(skills): add desktop-pet skill for pixel-art companions (#4808)
xxlaura Jun 18, 2026
62c05c8
fix(cli): render a sub-minute duration that rounds to 60s as "1m" (#5…
he-yufeng Jun 18, 2026
0d15e89
fix: Expand Windows ~\\ home paths and hide phantom (session) entries…
mvanhorn Jun 18, 2026
8d2fe0a
feat(stats): expose token usage for cost visibility (#4564)
shenyankm Jun 18, 2026
3c8eef5
fix(plan-gate): isolate gate agent AbortSignal from parent signal cha…
CubeLander Jun 18, 2026
ecec261
fix(core): skip output language on internal side queries (#4519)
Jerry2003826 Jun 18, 2026
9e16b4c
fix(cli): avoid stale git branch watcher setup (#5271)
tt-a1i Jun 18, 2026
5479b44
fix(desktop): detect WebP and AVI in RIFF magic-byte sniffing (#5336)
he-yufeng Jun 18, 2026
77eda90
fix(input): restore IME cursor positioning reverted in #4779 (#4993)
BenGuanRan Jun 19, 2026
1bb606d
fix(cli): close @path completion dropdown on Enter accept (#4841)
Alex-ai-future Jun 19, 2026
feedae5
fix(core): fall back to encrypted-file storage for extension secrets …
DragonnZhang Jun 19, 2026
e911f60
fix(core): support whitespace in session metadata fields (#5353)
tt-a1i Jun 19, 2026
abfdcc1
fix(core): prevent OOM in auto-memory extraction during /quit (#5147)…
ZijianZhang989 Jun 19, 2026
7cd49e0
refactor(tools): rename TodoWrite tool display name to TodoList (#5319)
wenshao Jun 19, 2026
0e53f97
fix(core): expire tokens at buffer boundary (#5360)
tt-a1i Jun 19, 2026
97202e7
fix(cli): validate restore checkpoints before mutation (#5358)
tt-a1i Jun 19, 2026
7525c18
fix(core): honor ripgrep builtin setting at runtime (#5362)
tt-a1i Jun 19, 2026
88d7e7e
fix(core): create token file on first save (#5367)
tt-a1i Jun 19, 2026
46fc95d
fix(cli): preserve workspace trust state for extensions (#5369)
tt-a1i Jun 19, 2026
ca1ab06
fix(cli): Stop after cancelled permissions (#5258)
doudouOUC Jun 19, 2026
cb82a91
fix(core): resolve tilde paths before search permission checks (#5378)
tt-a1i Jun 19, 2026
de7e755
fix(cli): respect sandbox path boundaries (#5375)
tt-a1i Jun 19, 2026
8153e4d
fix(cli): update acp cancel test flag (#5384)
tt-a1i Jun 19, 2026
c34bad8
fix(core): avoid reconnecting on MCP tool errors (#5382)
tt-a1i Jun 19, 2026
de98b5f
fix(core): accept uppercase web fetch schemes (#5391)
tt-a1i Jun 19, 2026
f2b4407
fix(cli): preserve equals in mcp env values (#5377)
tt-a1i Jun 19, 2026
26ad36e
feat(cli): show follow-up suggestion in input placeholder (#5145)
MikeWang0316tw Jun 19, 2026
ee5f813
fix(core): avoid glob prefix cache reuse (#5364)
tt-a1i Jun 19, 2026
3cecd66
fix(core): validate grep result limits (#5389)
tt-a1i Jun 19, 2026
e234cf6
fix(core): parse grep results with colon paths (#5372)
tt-a1i Jun 19, 2026
a8eb824
feat(config): add settings file change detection via chokidar watcher…
water-in-stone Jun 19, 2026
3db3cd5
fix(acp): scrub simple env for spawned children (#5395)
tt-a1i Jun 19, 2026
a2beabf
fix(core): pass --no-ask-password to systemd-inhibit to prevent TUI c…
OrbitZore Jun 19, 2026
e824434
fix(cli): parse sandbox mounts with windows drives (#5388)
tt-a1i Jun 19, 2026
3096435
fix(core): add GLM-5.2 to Z.AI preset (#5397)
tt-a1i Jun 19, 2026
0430ff7
fix(openai): add string tool result compatibility mode (#5399)
tt-a1i Jun 19, 2026
73e6c7e
fix(cli): clarify cumulative statusline token labels (#5400)
tt-a1i Jun 19, 2026
b773b89
feat(cli): show optional response token rate (#5401)
tt-a1i Jun 19, 2026
cebc071
fix(cli): reduce retained interactive tool output memory (#4971)
kkhomej33-netizen Jun 19, 2026
0343eb2
fix(cli): calculate response rate from phase token delta (#5402)
tt-a1i Jun 19, 2026
3aa45fb
fix(cli): clarify unavailable model configuration hint (#5403)
tt-a1i Jun 19, 2026
715ef93
feat(cli): serve the Web Shell UI from `qwen serve` (#5392)
wenshao Jun 19, 2026
ad56a84
fix(cli): gate cron scheduler startup on config initialization (#5022…
qwen-code-ci-bot Jun 19, 2026
a55eae9
fix(core): keep estimated token split summing to total (#5420)
he-yufeng Jun 19, 2026
e4ec477
fix(core): share memory filename config state (#5419)
tt-a1i Jun 19, 2026
8477560
fix(channel): scope qqbot session backup path (#5417)
tt-a1i Jun 19, 2026
30bfe63
fix(channel): track qqbot close reconnect timer (#5416)
tt-a1i Jun 19, 2026
e66b777
fix(auth): preserve custom provider models on install (#5404)
tt-a1i Jun 19, 2026
c8e8c5b
fix(core): target microcompaction cache disarms (#5407)
tt-a1i Jun 19, 2026
617eb20
fix(channel): keep qqbot token refresh retrying (#5414)
tt-a1i Jun 19, 2026
267715b
fix(cli): keep keypress handlers current (#5421)
tt-a1i Jun 19, 2026
3b286b2
refactor(serve): unify session title/displayName into single displayN…
chiga0 Jun 19, 2026
0ba245e
feat(cli): add persistent history collapse on resume with refined com…
Gove2004 Jun 19, 2026
859a49d
fix(cli): narrow settings enum schemas (#5418)
tt-a1i Jun 19, 2026
409a612
fix(channel): bound qqbot gateway reconnect retries (#5415)
tt-a1i Jun 19, 2026
f35a10b
fix(core): block broad shell self-kill commands (#5409)
tt-a1i Jun 19, 2026
6926803
fix(cli): preserve trustedFolders comments on save (#4746)
Zoean-z Jun 20, 2026
4274c6c
fix(hooks): remove the dead updatedMCPToolOutput field from PostToolU…
ken-jo Jun 20, 2026
18cc73c
feat(web-shell): add extension management (#5398)
ytahdn Jun 20, 2026
196670a
fix(cli): accept uppercase URL schemes in mcp add transport detection…
he-yufeng Jun 20, 2026
ef2c82f
fix(extensions): accept uppercase URL schemes when parsing install so…
he-yufeng Jun 20, 2026
69ac09a
fix(core): provide escape path when plan gate is unavailable (#5430)
Alex-ai-future Jun 20, 2026
61dcf86
feat(extensions): interactive multi-tab /extensions manager (Installe…
BZ-D Jun 20, 2026
9a2c98e
fix(cli): stabilize extension list spacing (#5445)
yiliang114 Jun 20, 2026
5924ab3
fix(weixin): handle uppercase CDN upload schemes (#5439)
tt-a1i Jun 20, 2026
21998ee
fix(core): require opt-in for plan mode prompt (#5433)
tt-a1i Jun 20, 2026
c5d2b1e
test(core): drop duplicate gitdiff untracked count case (#5468)
tt-a1i Jun 20, 2026
ed82eee
fix(core): evaluate ignore files named with dot prefixes (#5458)
tt-a1i Jun 20, 2026
56e76e7
fix(core): enforce shell directory workspace boundary (#5454)
tt-a1i Jun 20, 2026
5676d6b
fix(core): validate lsp socket ports (#5493)
tt-a1i Jun 20, 2026
dc14650
fix(core): parse max output token env strictly (#5491)
tt-a1i Jun 20, 2026
ec16790
fix(core): detect providers by hostname (#5450)
tt-a1i Jun 20, 2026
f1cc814
fix(cli): validate ACP glob max results (#5480)
tt-a1i Jun 20, 2026
6a02b65
fix(core): allow dot-prefixed plans directories (#5460)
tt-a1i Jun 20, 2026
5e28dc4
fix(extensions): fetch http marketplaces with http client (#5452)
tt-a1i Jun 20, 2026
977313b
fix(cli): parse force hyperlink override strictly (#5489)
tt-a1i Jun 20, 2026
e28cfb4
fix(core): parse tool concurrency env strictly (#5496)
tt-a1i Jun 20, 2026
95ff853
fix(cli): enforce custom theme home boundary (#5456)
tt-a1i Jun 20, 2026
fc15ae6
fix(dingtalk): skip uppercase webhook reaction targets (#5466)
tt-a1i Jun 20, 2026
cf3e57f
fix(desktop): accept uppercase icon URL schemes (#5470)
tt-a1i Jun 20, 2026
cac178a
fix(cli): reject partial session size values (#5475)
tt-a1i Jun 20, 2026
295860d
fix(telegram): clear typing intervals on disconnect (#5477)
tt-a1i Jun 20, 2026
4d27240
fix(cli): respect installation path boundaries (#5441)
tt-a1i Jun 20, 2026
26c1309
fix: accept uppercase endpoint URL schemes (#5443)
tt-a1i Jun 20, 2026
3d98a6e
fix(core): reject fractional computer-use integers (#5500)
tt-a1i Jun 20, 2026
d3d4992
fix(core): match provider base URL slash variants (#5448)
tt-a1i Jun 20, 2026
64cc9f6
fix(cli): enforce temp path boundaries for at-file (#5446)
tt-a1i Jun 20, 2026
172288b
fix(desktop): preserve uppercase favicon URLs (#5463)
tt-a1i Jun 20, 2026
8368e7f
fix(desktop): parse NO_PROXY ports strictly (#5498)
tt-a1i Jun 20, 2026
009c991
fix(serve): validate session reaper timeouts (#5484)
tt-a1i Jun 20, 2026
45c15db
fix(extensions): handle uppercase npm registry schemes (#5437)
tt-a1i Jun 20, 2026
0dc76bc
fix(core): add missing Token Plan models (qwen3.7-plus, glm-5.2, kimi…
huww98 Jun 20, 2026
7e66b17
fix(cli): wire ACP model-invocable commands (#5504)
tt-a1i Jun 20, 2026
cfe55e9
fix(cli): reject partial cpu profile durations (#5486)
tt-a1i Jun 20, 2026
0c65dbc
test(desktop): update blocked scheme open-url assertion (#5529)
tt-a1i Jun 20, 2026
e4fdd24
fix(desktop): restore locale parity (#5537)
tt-a1i Jun 20, 2026
234777c
fix(extension): accept uppercase URL schemes in Claude plugin sources…
he-yufeng Jun 20, 2026
2a77536
fix(desktop): parse server ports strictly (#5509)
tt-a1i Jun 20, 2026
83f5146
fix(desktop): validate generic oauth token responses (#5511)
tt-a1i Jun 20, 2026
8b6ac72
fix(core): don't treat an empty-parts message as a function call/resp…
he-yufeng Jun 20, 2026
ca7638e
fix(desktop): allow double dots in bundle filenames (#5515)
tt-a1i Jun 20, 2026
a6e206c
feat(core): add Requesty provider (#5478)
Thibaultjaigu Jun 20, 2026
8be8ef3
fix(cli): handle truncated remote input files (#5473)
tt-a1i Jun 20, 2026
8553013
test(core): wait for cron lock probe takeover (#5535)
tt-a1i Jun 20, 2026
6b2f800
perf(core): read current git branch directly from .git instead of spa…
wenshao Jun 20, 2026
7c06e62
fix(vscode): keep UNC paths absolute (#5542)
tt-a1i Jun 21, 2026
c5fb75b
chore(release): v0.18.4 [skip ci]
qwen-code-ci-bot Jun 21, 2026
d0ba853
feat(ci): on-demand tmux real-user testing for PRs (#5203)
yiliang114 Jun 21, 2026
b117c56
test(desktop): align interceptor packaging contract (#5531)
tt-a1i Jun 21, 2026
aeb0e58
fix(desktop): keep sibling paths absolute (#5517)
tt-a1i Jun 21, 2026
19573f7
test(desktop): enable feedback flag in permission tests (#5533)
tt-a1i Jun 21, 2026
665674c
fix(cli): allow dotfile paths in Web Shell sendFile (#5541)
wenshao Jun 21, 2026
7a4f080
fix(cli): allow double dots in update archives (#5521)
tt-a1i Jun 21, 2026
0eb4395
fix(desktop): separate transform data output lines (#5525)
tt-a1i Jun 21, 2026
948f782
fix(desktop): handle Windows file mentions (#5523)
tt-a1i Jun 21, 2026
aa62576
ci(release): trigger CI from release branch pushes (#5543)
yiliang114 Jun 21, 2026
71fd029
fix(desktop): consolidate path boundary checks (#5545)
tt-a1i Jun 21, 2026
0880e34
fix(desktop): reject fractional transfer sizes (#5527)
tt-a1i Jun 21, 2026
1060741
docs(triage): add reuse-before-new-code check (#5547)
yiliang114 Jun 21, 2026
cad6c1b
fix(cli): validate ACP file read windows (#5482)
tt-a1i Jun 21, 2026
f1a5b70
fix(extensions): accept uppercase marketplace source schemes (#5435)
tt-a1i Jun 21, 2026
b4dea10
Use VS Code theme tokens for companion scrollbar (#5488)
interconnectedMe Jun 21, 2026
e5c01aa
feat(mcp): support MCP resources and reliably surface prompts (#5544)
wenshao Jun 21, 2026
8f8ed0d
chore(release): v0.18.5 [skip ci]
qwen-code-ci-bot Jun 21, 2026
e88356c
ci(release): auto-publish VSCode companion after releases (#5572)
yiliang114 Jun 21, 2026
b698832
fix(cli): render full resume preview history (#5565)
cyphercodes Jun 21, 2026
d7be5a3
fix(cli): fill content area background on wrapped input lines (#5568)
lcheng321 Jun 21, 2026
8c3a6a8
fix(cli): fail non-interactive runs on loop detection (#5564)
cyphercodes Jun 21, 2026
6bc3f85
fix(core): respect zero OpenAI log file limit (#5569)
russeell Jun 21, 2026
02847d7
fix(core): keep bare fast model on current auth (#5553)
yiliang114 Jun 22, 2026
3d6b6f7
feat(lint): enforce kebab-case filenames with ESLint (#4797)
ZijianZhang989 Jun 22, 2026
ec99a7f
fix(lint): add missing legacy filename entries (#5578)
qqqys Jun 22, 2026
b4705b2
refactor(cli): rename serve files to kebab-case (#5592)
doudouOUC Jun 22, 2026
75fc0a5
feat(extensions): support archive install sources (#4909)
kkhomej33-netizen Jun 22, 2026
d59a022
fix(cli): prefer command name over alias in slash completion ranking …
Alex-ai-future Jun 22, 2026
a233780
test(integration): add fake OpenAI server for no-AK daemon tests (#5560)
yiliang114 Jun 22, 2026
4990fb0
refactor(core): replace OpenRouter/Requesty provider classes with cus…
pomelo-nwu Jun 22, 2026
b9c5e35
feat(voice): voice dictation with native capture, streaming, and bias…
qqqys Jun 22, 2026
23bf79d
feat: revivable background sub-agents and subagent transcript TTL (#5…
qqqys Jun 22, 2026
a233394
feat(core): add Artifact tool to publish interactive HTML pages (#5557)
qqqys Jun 22, 2026
78a7b40
feat(cli): add optional [HH:MM:SS] timestamp before each assistant tu…
ZijianZhang989 Jun 22, 2026
dc771df
fix(core): require confirmation when user manually enters plan mode (…
LaZzyMan Jun 22, 2026
7e96278
fix(core): always-on guard for consecutive identical tool calls (#501…
wenshao Jun 22, 2026
c689830
fix(ci): harden tmux triage reporting (#5548)
yiliang114 Jun 22, 2026
47d9326
fix(voice): log native recorder fallback so missing prebuilds aren't …
qqqys Jun 22, 2026
13aacc8
fix(core): prevent GLM on DashScope from dropping web_fetch content (…
tanzhenxin Jun 22, 2026
e2d55e3
fix(cli): clear native voice recorder after stop errors (#5609)
qqqys Jun 22, 2026
930b244
ci(triage): acknowledge slash triage requests (#5594)
yiliang114 Jun 22, 2026
dd17ced
feat(core): support artifact auto-open setting (#5617)
qqqys Jun 22, 2026
e2db547
feat(tui): remove tool group borders and collapse completed tool resu…
chiga0 Jun 22, 2026
f9f8f6c
feat(workflows): finish Dynamic Workflows port — resume, saved workfl…
LaZzyMan Jun 22, 2026
8e652e1
feat(web-shell): support daemon session branching (#5613)
ytahdn Jun 22, 2026
5ea6a40
fix(core): backend-aware artifact publish confirmation + cancel handl…
qqqys Jun 22, 2026
580a724
test(integration): run no-AK smoke tests on PRs (#5607)
yiliang114 Jun 22, 2026
bf70079
fix(cli): Fail dangling replayed tool calls (#5624)
doudouOUC Jun 22, 2026
8809c16
fix(voice): bundle native audio addon into standalone archives (#5628)
qqqys Jun 22, 2026
7696d9a
ci: route in-repo PRs' Linux test to self-hosted runner (#5620)
yiliang114 Jun 22, 2026
caad0ff
ci(release): queue release failures for autofix (#5551)
yiliang114 Jun 22, 2026
f29f210
feat(cli): browse MCP server resources in the /mcp dialog (#5635)
wenshao Jun 22, 2026
a8863c2
refactor(cli): Finish serve kebab-case filenames (#5604)
doudouOUC Jun 22, 2026
20bfb8e
feat(core): default-on preserve_thinking for DashScope provider (#5637)
tanzhenxin Jun 22, 2026
153cde2
ci(audio-capture): cross-compile darwin-x64 prebuild on arm64 runner …
qqqys Jun 22, 2026
494db9c
ci: harden self-hosted runner routing (follow-up to #5620 review) (#5…
yiliang114 Jun 22, 2026
76bdaba
fix(cli): harden ACP session list pagination params (#5618)
tt-a1i Jun 22, 2026
3098717
docs(mcp): correct mcp add scope default (#5593)
tt-a1i Jun 22, 2026
0e2fd43
feat(tui): add thinking block viewer with Alt+T expand/collapse (#5627)
chiga0 Jun 22, 2026
d434404
fix(cli): parse serve rate limit env strictly (#5612)
tt-a1i Jun 22, 2026
9f63bcf
fix(core): parse API timeout env strictly (#5602)
tt-a1i Jun 22, 2026
150ded7
fix(serve): validate readText line limits (#5639)
tt-a1i Jun 22, 2026
3fe3561
fix(core): escape backslashes and quotes in emacs ediff paths (#5630)
he-yufeng Jun 22, 2026
9a63d56
fix(cli): detect USE_OPENAI auth when the model is set via QWEN_MODEL…
he-yufeng Jun 22, 2026
e9afd52
test(integration): skip qwen serve streaming suite under container sa…
yiliang114 Jun 22, 2026
0c5221c
refactor(core): extract Protocol enum and decouple model identity fro…
zzhenyao Jun 22, 2026
01d28a1
fix(webui): stop auto-recreating session on user-initiated delete (#5…
yuanyuanAli Jun 22, 2026
2fd2104
fix(cli): keep v5 settings migration idempotent (#5676)
yiliang114 Jun 22, 2026
9993c6f
fix(test): restore openai model selection in ACP set_config_option te…
wenshao Jun 22, 2026
6fa1320
fix(test): isolate ACP integration agents via QWEN_HOME to end parall…
wenshao Jun 23, 2026
fc9d01e
fix(test): make ACP set_config_option test use a deterministic openai…
wenshao Jun 23, 2026
2eb3b80
fix(core): keep active runtime model in default getAllConfiguredModel…
wenshao Jun 23, 2026
f4b591b
feat(desktop): show file preview in a resizable side panel instead of…
DragonnZhang Jun 23, 2026
be3fdd6
fix(core): remove redundant reportSuggestionUsage causing double-coun…
huww98 Jun 23, 2026
cb33412
fix(core): validate ask_user_question answer indexes (#5622)
russeell Jun 23, 2026
9b20c47
feat(core): respect configurable agent ignore files (#4653)
shenyankm Jun 23, 2026
896e6c5
fix(daemon): Refresh workspace provider defaults (#5638)
doudouOUC Jun 23, 2026
2ddf9d2
feat(core): add fastOnly/voiceOnly flags to hide models from main mod…
callmeYe Jun 23, 2026
c1eef15
feat(cli): match MCP resource completions by name and discover server…
wenshao Jun 23, 2026
5715652
chore(release): v0.19.0 [skip ci]
qwen-code-ci-bot Jun 23, 2026
71d9dce
fix(cli): skip unusable A2UI configs (#5685)
tt-a1i Jun 23, 2026
7fb5155
fix(cli): avoid duplicate ACP write BOM (#5688)
tt-a1i Jun 23, 2026
67a5997
fix(cli): enable lsp command in acp mode (#5689)
tt-a1i Jun 23, 2026
7273bd4
fix(core): require integer inline media byte limit (#5671)
tt-a1i Jun 23, 2026
abec0a5
fix(cli): reject invalid session list cursors (#5709)
tt-a1i Jun 23, 2026
df1ce75
fix(cli): reject unsupported extension scopes (#5714)
tt-a1i Jun 23, 2026
f3f3bb0
fix(core): reject blank cron prompts (#5716)
tt-a1i Jun 23, 2026
5df6326
fix(cli): validate channel credential types (#5718)
tt-a1i Jun 23, 2026
0b2c9d0
fix(cli): use high-contrast software cursor (#5720)
tt-a1i Jun 23, 2026
83caca6
fix(core): require integer compaction counts (#5646)
tt-a1i Jun 23, 2026
1f26cdb
fix(core): parse agent & workflow integer env vars strictly (#5679)
he-yufeng Jun 23, 2026
31dcb6e
fix(serve): validate list maxEntries as a positive integer (#5719)
he-yufeng Jun 23, 2026
d350dd8
fix(workflows): validate runId before recursive prune delete (#4721) …
LaZzyMan Jun 23, 2026
98748e5
fix(triage): never auto-approve cross-repo refactor PRs (#5744)
wenshao Jun 23, 2026
4bf070b
fix(cli): only paint theme background when it matches the terminal (#…
wenshao Jun 23, 2026
663967e
revert(core): revert Protocol enum & model-identity decoupling (#5089…
wenshao Jun 23, 2026
ac1e473
ci: retry merge-ref checkout to fix transient "not our ref" failures …
yiliang114 Jun 23, 2026
8eb5770
chore(release): v0.19.1 [skip ci]
qwen-code-ci-bot Jun 23, 2026
c9b5c99
feat(serve): Add remote LSP status route (#5741)
doudouOUC Jun 23, 2026
65fe505
fix(agent): cap fork turns and bubble fork permission prompts (#5737)
qqqys Jun 23, 2026
0defb68
feat(vision-bridge): transcribe images to text for text-only models (…
yiliang114 Jun 23, 2026
ac8c981
feat(core): add deterministic guards for destructive commands in auto…
DennisYu07 Jun 23, 2026
8ad0cde
feat(cli): add extension operation polling (#5753)
ytahdn Jun 23, 2026
48a4f42
fix(vscode): always show chat view in the Activity Bar sidebar (#5757)
yiliang114 Jun 23, 2026
ed95bb5
fix(cli): source /context token total from the per-session chat (#5764)
qqqys Jun 23, 2026
7db5b41
fix(core): Disambiguate duplicate model display names (#5769)
doudouOUC Jun 23, 2026
7a1b244
fix(cli): drop input box & user-message background fills (#5772)
chiga0 Jun 23, 2026
5aa8bf4
feat(cli): match MCP resources globally on bare @ and show full refer…
wenshao Jun 23, 2026
0b5df52
ci: collapse PR checks into Ubuntu gate (#5767)
yiliang114 Jun 23, 2026
83e09f2
refactor(web-shell): restructure chat UI (#5775)
ytahdn Jun 23, 2026
ac3c8ea
fix(cli): stabilize virtual viewport mouse interactions (#5751)
ZevGit Jun 23, 2026
f1ef9d3
docs: fix config/command/auth drift and surface the model-providers p…
DragonnZhang Jun 23, 2026
0255b04
fix(vscode): clamp open file positions (#5711)
tt-a1i Jun 23, 2026
beee9f6
fix(config): fall back to user env files (#5731)
tt-a1i Jun 23, 2026
aa18daa
fix(core): require integer stop hook cap (#5667)
tt-a1i Jun 23, 2026
099b47e
fix(core): require integer microcompaction keep count (#5652)
tt-a1i Jun 23, 2026
a234860
fix(core): Align MCP OAuth guidance and docs (#5589)
doudouOUC Jun 23, 2026
dc90d9b
feat(cli): Add workspace permissions rules API (#5743)
doudouOUC Jun 24, 2026
4a60840
fix(cli): replace emoji thinking/summary icons with Unicode text symb…
pomelo-nwu Jun 24, 2026
6536815
fix(cli): restore saved custom model IDs when re-entering the auth wi…
pomelo-nwu Jun 24, 2026
84745d0
fix(daemon): Reject stale prompt client admission (#5784)
doudouOUC Jun 24, 2026
d360dd2
feat(serve): voice dictation over the daemon for the Web Shell (#5755)
qqqys Jun 24, 2026
ffde6e5
fix(cli): show ⌥T instead of alt+T on macOS for thinking expansion
Alex-ai-future Jun 24, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
5 changes: 5 additions & 0 deletions .github/actionlint.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
self-hosted-runner:
labels:
- 'ecs-qwen'

config-variables: null
94 changes: 94 additions & 0 deletions .github/workflows/audio-capture-prebuilds.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
name: 'Audio Capture Prebuilds'

# Cross-compiles the @qwen-code/audio-capture native addon (miniaudio + N-API)
# into prebuilds/<platform>-<arch>/*.node for every supported target, then
# bundles them into a single `audio-capture-prebuilds` artifact.
#
# The publish job (in release.yml) should download that artifact into
# packages/audio-capture/prebuilds/ before `npm publish`, e.g.:
#
# - uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
# with:
# name: audio-capture-prebuilds
# path: packages/audio-capture/prebuilds
#
# N-API is ABI-stable, so one prebuild per platform/arch works across Node
# versions and `node-gyp-build` selects the right one at require time.

on:
workflow_call:
workflow_dispatch:

permissions:
contents: 'read'

defaults:
run:
working-directory: 'packages/audio-capture'

jobs:
build:
name: 'prebuild ${{ matrix.os }} (${{ matrix.arch }})'
runs-on: '${{ matrix.runner }}'
strategy:
fail-fast: false
matrix:
include:
# arm64 runner; also cross-compiles the x64 slice (see Build step) to
# avoid the scarce macos-13 Intel runner that queues 20+ min (#5642).
- os: 'macos-14'
runner: 'macos-14'
arch: 'arm64'
- os: 'ubuntu-latest'
runner: 'ubuntu-latest'
arch: 'x64'
- os: 'ubuntu-24.04-arm'
runner: 'ubuntu-24.04-arm'
arch: 'arm64'
- os: 'windows-latest'
runner: 'windows-2022'
arch: 'x64'
steps:
- uses: 'actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd' # v6.0.2
- uses: 'actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e' # v6.4.0
with:
node-version: '22'
# Install only this package's deps (skip the node-gyp-build install hook;
# prebuildify does its own compile below).
- name: 'Install build deps'
run: 'npm install --no-workspaces --ignore-scripts --no-audit --no-fund'
- name: 'Build prebuild'
shell: 'bash'
run: |
npm run prebuildify
# Cross-compile the Intel (x64) slice on this arm64 runner instead of
# a separate macos-13 runner (frameworks are universal). See #5642.
if [ "$RUNNER_OS" = 'macOS' ]; then
npm run prebuildify -- --arch x64
fi
- name: 'Upload prebuild'
uses: 'actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a' # v7.0.1
with:
name: 'prebuilds-${{ matrix.os }}-${{ matrix.arch }}'
path: 'packages/audio-capture/prebuilds/'
if-no-files-found: 'error'

collect:
name: 'collect prebuilds'
needs: 'build'
runs-on: 'ubuntu-latest'
steps:
- name: 'Merge per-platform prebuilds'
uses: 'actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c' # v8.0.1
with:
pattern: 'prebuilds-*'
merge-multiple: true
path: 'packages/audio-capture/prebuilds'
- name: 'List collected prebuilds'
run: 'find prebuilds -type f'
- name: 'Upload combined prebuilds'
uses: 'actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a' # v7.0.1
with:
name: 'audio-capture-prebuilds'
path: 'packages/audio-capture/prebuilds/'
if-no-files-found: 'error'
Loading
Loading