Changelog
- 4dc251a EDEN-20: add confirmed deletion of inbox entries (#10356)
- a0371ab MUL-3806: include directly requested agent issues in Created (#10275)
- e6c3ef3 MUL-7031 feat(issues): show requester beneath agent creator (#10532)
- bd96495 MUL-7703 feat(issues): add Idle to Agent status filter (#10461)
- 079ec9f MUL-8923: feat(environments): stop, restart, start and read logs from the issue sidebar (#10330)
- 683240f MUL-8927: docs(environments): public Environments page and agent guide for .multica/environments.toml (#10374)
- e17f765 MUL-8940: fix(agent): recover Antigravity turns when earlier step errors were resolved (#10274)
- 7cae263 MUL-8941: merge project workflow entry points into one flow panel (#10285)
- 848d71a MUL-8944: community themes 1/3 — make and import your own theme (beta) (#10287)
- 3ac0b31 MUL-8945: feat(appearance): theme store backed by a GitHub registry (community themes 2/3) (#10304)
- 6329aa2 MUL-8951: Jump to latest on desktop issues and in chat (#10291)
- 31f27f1 MUL-8959: fix(auth): skip session renewal for credentials that are not sessions (#10297)
- 4e457b4 MUL-8968: fix(issues): one meaning for "my agents' work" across filters and sidebar (#10310)
- eea4475 MUL-8969: feat: subscribe to every issue in a project (#10303)
- 33137e6 MUL-8977 feat(telegram): show what the agent is doing while it works (#10314)
- aa11299 MUL-8988 feat(layout): add a bottom bar and move quick chat into it (#10335)
- c215654 MUL-8988 feat(theme): give floating layers their own border colour (#10359)
- 940d9ed MUL-8991: remove unreferenced frontend code and make knip blocking (#10331)
- 984c214 MUL-8992: fix(server): apply private-project access to indirect issue references (#10327)
- c3a9d8f MUL-8992: fix(server): keep background runs and workspace-wide reads inside private projects (#10329)
- 0181076 MUL-8992: fix(tasks): resolve runs to their private project before showing or stopping them (#10317)
- 0270a1d MUL-9004: fix(chat): remove customize-starters link from chat empty state (#10342)
- d1217a1 MUL-9012 refactor(chat): floating ChatWindow runs on useChatController (#10392)
- fe984c6 MUL-9015: feat(transcript): show command tool input line by line (#10413)
- 1dd5bcf MUL-9019 refactor(labels): skills reuse LabelPicker with inline create; manage labels only in Settings (#10385)
- 5894f11 MUL-9021: return GitHub connections to the original page with repositories preselected (#10363)
- ac2ac40 MUL-9028: feat(cli): rewrite body links to same-call attachments (#10362)
- d28b5cb MUL-9034: fix(appearance): theme check measures contrast at every select and toggle value (#10365)
- 7ebafbb MUL-9036 fix(theme): store previews use the same component aliases as the app (#10371)
- ad9e7dd MUL-9037: feat(comments): show comment images as thumbnails, with a setting for full size (#10372)
- 23b4821 MUL-9039: test(cli): stop the dev-env daemon profile test probing the real hashed port (#10370)
- 0a105c9 MUL-9051 fix(uploads): classify cancelled upload requests as 499 (#10376)
- cfb2e7c MUL-9052 fix(theme): check rail item contrast in modes without frame rules (#10380)
- e8d7fde MUL-9067: feat(chat): close the quick-chat window from its header (#10388)
- 4486223 MUL-9069 feat(chat): start a new Ask Multica chat with Shift+Cmd+J (#10390)
- 1be02cd MUL-9078 refactor(chat): derive chat titles only on the server (#10393)
- a1544e1 MUL-9079 docs(chat): describe quick chat in the status bar (#10394)
- 66e534d MUL-9085: add Factory Droid harness (#10399)
- 19a62c1 MUL-9086: add Amp CLI harness support (#10477)
- c8dc855 MUL-9110 docs(contributing): document native screenshot uploads from forks (#10423)
- 8bf95ff MUL-9120 feat(desktop): toggle the dev toolbar from the View menu (#10492)
- 52adf83 MUL-9120 feat(dev): opt-in dev toolbar with detail panels (#10442)
- 7f60807 MUL-9124 docs: sync messaging and project resource guides (#10446)
- 5b8a150 MUL-9141 fix(hermes): preserve model discovery through confirmations (#10478)
- db3aafc MUL-9142: fix(zcode): run Linux desktop CLI headlessly (#10476)
- d13fd90 MUL-9150 fix(daemon): allow repo checkout across URL forms of a registered repo (#10490)
- d04f104 MUL-9152: Explain agent owner access in private projects (#10496)
- 843368a MUL-9164: docs(changelog): simplify the 0.8.2 entry (#10507)
- e66f8dc MUL-9166 fix(dev): keep the dev toolbar Cache chip a fixed width while fetching (#10508)
- 137fe87 MUL-9170: feat(cli): add issue delete and batch delete (#10515)
- fe2aa87 MUL-9172 docs: sync runtime support and Amp configuration guidance (#10516)
- c3ae5e4 MUL-9187 docs(skills): clarify @ALL workspace notification scope (#10535)
- 8cd8a2d MUL-9191: publish 0.9.0 changelog (#10549)
- 82b578e Revert "feat(runs): show captured file changes for each agent run (#10459)" (#10548)
- 9d0bb72 Revert "feat(vcs): update access tokens without rotating webhooks (#10401)" (#10416)
- 78ae0ec Revert "fix(editor): open description images on click, like comment images (MUL-8957) (#10296)" (#10336)
- 3da2cf8 chore(ci): one local entry for script tests, and trim what they pin (MUL-8995) (#10337)
- 2d38a4b chore(lint): ban full-page navigation in shared code, point to openExternal (MUL-9001) (#10340)
- 450792b chore(server): remove 69 unreachable Go functions (MUL-9128) (#10453)
- b7d2169 ci: raise the Go toolchain floor to 1.27.4 (#10360)
- 250ecac ci: run processtree tests on macOS for PRs that touch it (MUL-9168) (#10509)
- 2f0d81e docs(agents): CI config tests assert invariants, not config text (MUL-9002) (#10341)
- e368c81 docs(agents): open AGENTS.md with a codebase-ownership line (MUL-9090) (#10404)
- cddb005 docs(themes): register a store theme as themes/.json (MUL-9046) (#10377)
- 08fafbb feat(appearance): give Pop a frame option, paper by default (MUL-9025) (#10361)
- cc32b86 feat(appearance): switch colour themes from the account menu (MUL-9038) (#10369)
- f49bccb feat(channels): MUL-9008 move messaging connections to agent pages (#10397)
- 61fe351 feat(channels): start connecting as soon as a platform is clicked (MUL-9105) (#10419)
- 6deee65 feat(chat): annotate agent replies into the next message (MUL-8979) (#10315)
- e2b3987 feat(chat): persist optional submission acceptance receipts (#10469)
- 61cb146 feat(desktop): one app-drawn right-click menu everywhere (MUL-9041) (#10382)
- f962d6c feat(desktop): right-click on the issue page opens its actions menu (MUL-9093) (#10467)
- 575a1c3 feat(desktop): run quick actions from the issue right-click menu (MUL-9093) (#10408)
- 80df530 feat(dev): realtime events, cache and agent panels in the dev toolbar (MUL-9139) (#10470)
- 293b760 feat(environments): declare web and desktop environments, and list their servers once (MUL-8996) (#10338)
- 30f2731 feat(environments): switch to desktop app windows from the issue sidebar (MUL-8985) (#10328)
- b68ae7c feat(lark): tell agents the Feishu ids of the message they answer (#10396)
- 27d5555 feat(qoder): tag sessions with Multica source (#10448)
- 98c53df feat(runs): show captured file changes for each agent run (#10459)
- d44d686 feat(search): switch colour themes from the command bar (MUL-9047) (#10378)
- 94a7648 feat(theme): check contrast of tooltips and pressed display chips (MUL-9035) (#10367)
- cd324c6 feat(theme): give pull request states their own theme variables (#10487)
- a60a0b1 feat(theme): give switches their own theme variables (MUL-9094) (#10414)
- 623baca feat(vcs): update access tokens without rotating webhooks (#10401)
- 4c051bf feat(views): let readers choose and order issue sidebar sections (MUL-8999) (#10364)
- 2f3afce feat(views): show linked pull requests across issue view layouts (#10351)
- 191e84b feat: add configurable chat reply notifications (MUL-9082) (#10424)
- e11ef16 feat: add per-run context receipts (MUL-9013)
- 2cd2045 fix(agent): enable Pi task supplement negotiation (MUL-9178) (#10531)
- ef7cc4a fix(agent): probe Hermes version with acp --version (MUL-9132) (#10468)
- a583a15 fix(agent): report Copilot token usage from --usage-output-file (#10519)
- 3fc659a fix(agents): name an invalid env key, not its value, when bulk edit refuses (#10387)
- b1c17a2 fix(agents): wake the runtime when an agent's concurrency cap changes (#10463)
- 5f04c32 fix(appearance): make Pop switch on/off states distinct (#10406)
- 0d23661 fix(apps): open the app connect flow in the browser on Desktop (MUL-8964) (#10332)
- 6ccbdd1 fix(autopilots): keep autopilots on a private project inside it (#10320)
- 2daf77e fix(autopilots): store no next run for a schedule that never fires (#10239)
- e91a4c3 fix(chat): drop the page context chip at commit, not after the send settles (MUL-9059) (#10386)
- a1f980b fix(chat): skip mention-only lines in shared server titles
- e8f389d fix(claude): preserve thinking text in run transcripts (#10517)
- e54714b fix(cli): runtime update --wait 在失败和超时时不再以 0 退出 (#10261)
- 4b517c6 fix(client-usage): preserve activity bounds across out-of-order reports (#10375)
- 0c7c2d9 fix(comments): leave refusal notices for target_unavailable mentions (#10447) (#10450)
- 9abc71a fix(daemon): clear the client user id on daemon-token requests (#10333)
- 606ed4b fix(daemon): default completed-task TTL to 14d on every server (#10458)
- eef8f93 fix(daemon): preserve mise agent shim entrypoints (MUL-9130) (#10466)
- d6e5921 fix(daemon): print a size that rounds to 1024 KB in MB (#10431)
- cfcc4d0 fix(daemon): reclaim Codex caches and expire local task homes (MUL-9157) (#10528)
- c575443 fix(daemon): resolve contradictory reply and precedence rules in runtime brief (MUL-9092) (#10409)
- ee7416b fix(daemon): reuse checkout when repo checkout runs from inside it (MUL-9099) (#10465)
- 1a9ddcf fix(daemon): tell agents not to use the shared git stash list (MUL-8989) (#10326)
- 90d5d6d fix(daemon): tolerate darwin EPERM while a process group drains (MUL-9162) (#10506)
- 1643073 fix(deliverables): open latest-version links for file names with spaces or non-ASCII characters (#10271)
- 32809da fix(desktop): keep a page's saved view while its tab moves to another page (#10288)
- d6d14ad fix(desktop): keep collapse button's position (#10305)
- e720458 fix(desktop): keep tab clicks working under a stray full-screen pointermove (#10281)
- 508ae8a fix(desktop): overlays treat a context menu opened inside them as their own (MUL-9083) (#10398)
- 220f325 fix(desktop): popovers and dropdown menus stay open while a field inside them uses its context menu (MUL-9089) (#10405)
- be733f0 fix(desktop): restore background chat alerts and Dock counts (MUL-9082) (#10443)
- da3fb7d fix(editor): keep a fence title out of the code block language (#10257)
- 53221b5 fix(editor): open description images on click, like comment images (MUL-8957) (#10296)
- e19bda9 fix(editor): stop autolinking URLs inside HTML tags (MUL-8960) (#10299)
- b57d747 fix(http): handle canceled read requests consistently (#10432)
- edd7432 fix(inbox): prune inbox caches when this client deletes issues (#10403)
- 43a849e fix(inbox): retain selection recognition across page mounts (#10530)
- 957e756 fix(issues): keep Inbox comment landings alive through mid-landing updates (MUL-9068) (#10391)
- 61f84be fix(issues): keep private sub-issues out of sub-issue progress counts (#10312)
- 144e38e fix(issues): respect closed properties sidebar while loading (#10324)
- c559a61 fix(layout): drop a stale inbox selection from the rail's Inbox link (#10103)
- 854f82d fix(layout): simplify bottom bar activity status (MUL-9107) (#10425)
- 686f1e5 fix(layout): withdraw working-agent footer entry (MUL-9107) (#10433)
- fa08909 fix(mobile): render HTML images in Markdown (MUL-8965) (#10302)
- 305c895 fix(mobile): render image file cards inline in the lightbox sequence (MUL-8972) (#10309)
- aaa069a fix(projects): shorten the agent access notice (#10529)
- b3ac285 fix(runtimes): count exactly the selected days in runtime usage (#10415)
- 266b69c fix(scripts): 安装脚本在查版失败和切库失败时不再谎报成功 (#10246)
- 1dc76be fix(subscribers): filter non-recipient mentions before subscribing (#10460)
- e217f9b fix(tests): isolate queue trigger DDL (MUL-9182) (#10534)
- 8cd84ee fix(theme): theme:check --json writes reports over 64 KB in full (#10384)
- 356b92f fix(usage): price GLM-5.3, Kimi K3.1 Pro, Gemini 4 Carbon, and Antigravity Claude effort ids (#10445)
- 07f4e0b fix(views): keep HTML images in the preview sequence (MUL-8971) (#10308)
- 7a8a1a3 fix(views): preserve draft label edits during creation (#10089)
- e692d03 fix(wakeup): keep private-project issues out of the workspace wakeup lists (#10282)
- 7dc338d fix: remove unavailable messaging channel hint (MUL-9104) (#10417)
- f4dc21c perf(issues): bound long-history work and keep images complete (MUL-8830) (#10173)
- 32eedec perf(web): cache locale dictionaries by language (MUL-9114) (#10473)
- 3d01b58 refactor(agents): delete the unreachable /agents/new/ai start page (MUL-9005) (#10343)
- 828bc83 refactor(invitations): one invitations page; the switcher links to it (MUL-8997) (#10339)
- d31322d refactor(issues): build the file inventory from the issue attachment list (MUL-8830) (#10298)
- 68b5809 refactor(runtimes): make period the usage section's only filter (MUL-8981) (#10319)
- 433429e refactor(skills): choose the create method once, in the + menu (MUL-8962) (#10300)
- b6232fb refactor(squads): edit name and description in place (MUL-8973) (#10321)
- a305602 refactor(views): split project resources into repositories and per-computer folders (MUL-9011) (#10366)
- 26fcf39 refactor(wakeups): move the sub-issue rule's default onto the wakeups list (MUL-9009) (#10358)
- 603156f test(agent): stop pkg/agent tests racing fixture startup under load (MUL-9179) (#10537)
- bda6a74 test(agent): wait for the Codex message stream to close before snapshotting (MUL-9167) (#10510)
- 2cf852e test(daemon): keep production dsh probe timeout for answering fixtures (MUL-9143) (#10481)
- e8255d9 test(dashboard): anchor window fixtures on the UTC date (MUL-8987) (#10323)
- f20ad33 test(handler): fail when an explicitly configured database is unavailable (#10428)
- 84973f9 test(wecom): use the normal acceptance window for the fence assertion (#10427)