| 1 | # Contributors |
| 2 | |
| 3 | Codewhale is built in the open with a growing community of contributors. Every |
| 4 | issue report and pull request is real project work — welcome at any experience |
| 5 | level. This is the full per-PR contributor record, grouped into release/time |
| 6 | bands with the newest band first so it stays scannable. Expand any band to see |
| 7 | everyone. |
| 8 | |
| 9 | For the live list, see the |
| 10 | [GitHub contributors page](https://github.com/codewhale-hq/CodeWhale/graphs/contributors), |
| 11 | [`AUTHOR_MAP`](https://github.com/codewhale-hq/CodeWhale/blob/main/.github/AUTHOR_MAP), |
| 12 | and [CHANGELOG.md](../CHANGELOG.md). |
| 13 | |
| 14 | ## Organizational thanks |
| 15 | |
| 16 | - **[DeepSeek](https://github.com/deepseek-ai)** — the models and support that got this project started. 感谢 DeepSeek 提供模型与支持。 |
| 17 | - **[DataWhale](https://github.com/datawhalechina)** 🐋 — for the support and for welcoming us into the Whale Brother family. 感谢 DataWhale 的支持。 |
| 18 | - **[OpenWarp](https://github.com/zerx-lab/warp)** — for prioritizing Codewhale support and collaborating on a better terminal-agent experience. |
| 19 | - **[Open Design](https://github.com/nexu-io/open-design)** — for support and collaboration around design-forward agent workflows. |
| 20 | |
| 21 | The maintainer rule: reports and PRs are real project work, even when the final |
| 22 | patch has to be narrowed, delayed, or harvested into a maintainer branch. |
| 23 | Harvested PRs keep visible credit in the commit/PR body, changelog or release |
| 24 | notes, and relevant issue/PR comments. |
| 25 | |
| 26 | --- |
| 27 | |
| 28 | ## Contributors by time |
| 29 | |
| 30 | <details open> |
| 31 | <summary><strong>Unreleased</strong></summary> |
| 32 | |
| 33 | **Merged or adapted contributions** |
| 34 | |
| 35 | </details> |
| 36 | |
| 37 | <details open> |
| 38 | <summary><strong>v0.10.1 — reliability and first-run fixes</strong></summary> |
| 39 | |
| 40 | **Merged or adapted contributions** |
| 41 | |
| 42 | - **[Guan0923](https://github.com/Guan0923)** — accepted case-insensitive HTTP(S) schemes in `config doctor` without rewriting the configured URL ([#6819](https://github.com/codewhale-hq/Codewhale/pull/6819)). |
| 43 | - **[harryvgiunta](https://github.com/harryvgiunta)** — added Yolo-Auto as a bundled OpenAI-compatible host descriptor, with its billing basis recorded as unreviewed rather than guessed ([#6408](https://github.com/codewhale-hq/Codewhale/pull/6408)). |
| 44 | - **[asto18089](https://github.com/asto18089)** — contributed the integrated runtime liveness, context, search, JavaScript execution, stopship scout and pet repairs, preserving the original contributor commits ([#6799](https://github.com/codewhale-hq/Codewhale/pull/6799)). |
| 45 | - **[qiuYliangM](https://github.com/qiuYliangM)** — made provider-bound project instruction and constitution labels stable across directory moves and kept their absolute paths in operator reports ([#6799](https://github.com/codewhale-hq/Codewhale/pull/6799)). |
| 46 | - **[zhuowp](https://github.com/zhuowp)** — supplied the process-scoped PowerShell execution-policy repair adapted for Codewhale; machine and user Group Policy still take precedence ([#6745](https://github.com/codewhale-hq/Codewhale/issues/6745)). |
| 47 | - **[Andrea-Bruno](https://github.com/Andrea-Bruno)** — designed the Superfast Decision Gate and contributed its off-by-default shadow classifier ([#6604](https://github.com/codewhale-hq/Codewhale/pull/6604), [#6603](https://github.com/codewhale-hq/Codewhale/issues/6603)). |
| 48 | - **[aiapienthusiast](https://github.com/aiapienthusiast)** — added Cheaper Inference to the bundled provider catalog ([#6761](https://github.com/codewhale-hq/Codewhale/pull/6761)). |
| 49 | - **[gaord](https://github.com/gaord)** — let a client fork a thread at a named turn ([#6580](https://github.com/codewhale-hq/Codewhale/pull/6580)), let undo roll back files for the turn it is undoing ([#6483](https://github.com/codewhale-hq/Codewhale/pull/6483)), stopped resume and fork from duplicating threads and sessions ([#6406](https://github.com/codewhale-hq/Codewhale/pull/6406)), exposed user-defined provider routes to native clients ([#6404](https://github.com/codewhale-hq/Codewhale/pull/6404)), and kept a fork going when a turn lost its tool call ([#6664](https://github.com/codewhale-hq/Codewhale/pull/6664)). |
| 50 | - **[Lstarsky0](https://github.com/Lstarsky0)** — moved the docs/work, legal, digest and FAQ pages onto the dictionary spine ([#6405](https://github.com/codewhale-hq/Codewhale/pull/6405), [#6417](https://github.com/codewhale-hq/Codewhale/pull/6417), [#6499](https://github.com/codewhale-hq/Codewhale/pull/6499), [#6574](https://github.com/codewhale-hq/Codewhale/pull/6574)), tightened the Chinese-branching ceiling to 18 ([#6403](https://github.com/codewhale-hq/Codewhale/pull/6403)), and made Fleet publish without a two-link window ([#6431](https://github.com/codewhale-hq/Codewhale/pull/6431)). Also moved the constitution page onto the dictionary spine and kept its install link in the selected locale ([#6733](https://github.com/codewhale-hq/Codewhale/pull/6733)). |
| 51 | - **[aboimpinto](https://github.com/aboimpinto)** — restored a green Linux full-workspace test gate without loosening any test, twice ([#6581](https://github.com/codewhale-hq/Codewhale/pull/6581), [#6666](https://github.com/codewhale-hq/Codewhale/pull/6666)), and completed the session command group's shared boundary ([#6793](https://github.com/codewhale-hq/Codewhale/pull/6793)). |
| 52 | - **[dajiaohuang](https://github.com/dajiaohuang)** — validated `config set` values against the settings schema ([#6568](https://github.com/codewhale-hq/Codewhale/pull/6568)). |
| 53 | - **[Water-Run](https://github.com/Water-Run)** — ingested namespaced model-only catalog entries so models present only in the canonical `models` map reach the offering list ([#6400](https://github.com/codewhale-hq/Codewhale/pull/6400)), and retired the blanket dead-code allowance and its unused feature stages, tightening the budget to match ([#6402](https://github.com/codewhale-hq/Codewhale/pull/6402)). |
| 54 | - **[wuisabel-gif](https://github.com/wuisabel-gif)** — designed the `tool_call_after` execution-receipt contract and its tests on a reference branch, which landed re-implemented on the current hook seam ([#6689](https://github.com/codewhale-hq/Codewhale/issues/6689), [#6713](https://github.com/codewhale-hq/Codewhale/pull/6713)). |
| 55 | - **[Sh1Zuku / SparkofSpike](https://github.com/SparkofSpike)** — let making room survive a provider request-body limit (HTTP 413) by shrinking, then replacing, inline images for that one summary pass ([#6642](https://github.com/codewhale-hq/Codewhale/pull/6642)). Also translated seventeen more guides into Simplified Chinese, among them plugins, memory, sandbox, workflow authoring, Docker, Termux and HarmonyOS, and brought the existing zh_hans docs onto one terminology standard ([#6662](https://github.com/codewhale-hq/Codewhale/pull/6662)), then translated thirteen developer and internal docs, among them the runtime API, architecture, tool surface, authorization order, operations runbook and Workroom security ([#6663](https://github.com/codewhale-hq/Codewhale/pull/6663)). |
| 56 | |
| 57 | **Reports and reproductions** |
| 58 | |
| 59 | - **[cenab](https://github.com/cenab)** — requested the Tsubasa provider row and supplied its endpoint, key and model values ([#6695](https://github.com/codewhale-hq/Codewhale/issues/6695)). |
| 60 | - **[BX166](https://github.com/BX166)** — reported the AICraft provider row missing its key console, docs link and guidance, and supplied the values ([#6616](https://github.com/codewhale-hq/Codewhale/issues/6616)); the report also surfaced that no bundled descriptor's links reached the setup form. |
| 61 | - **[jayanthvee](https://github.com/jayanthvee)** — reported and diagnosed that killing the npm launcher's `node.exe` ends Windows sessions without cleanup, with reproductions and fix directions ([#6827](https://github.com/codewhale-hq/Codewhale/issues/6827)). |
| 62 | |
| 63 | </details> |
| 64 | |
| 65 | <details> |
| 66 | <summary><strong>v0.10.0 — redesigned workbench, session recovery, and runtime surfaces</strong></summary> |
| 67 | |
| 68 | **Merged or adapted contributions** |
| 69 | |
| 70 | - **[AdityaVG13](https://github.com/AdityaVG13)** — composer wrapping, pasted/editor draft history, painted-column transcript copying, tab/caret placement, explicit terminal foregrounds, and headless user-input tool availability ([#6363](https://github.com/codewhale-hq/Codewhale/pull/6363), [#6365](https://github.com/codewhale-hq/Codewhale/pull/6365)); both PRs merged with their original ancestry. |
| 71 | - **[aboimpinto](https://github.com/aboimpinto)** — moved the TUI session-export slice onto shared command contracts (FEAT-025): a session-export contract facet with one shared sanitizer, `/export` routed through the facet, pinned with baseline-captured goldens and gates ([#6096](https://github.com/codewhale-hq/Codewhale/pull/6096)). |
| 72 | - **[gaord](https://github.com/gaord)** — recorded the mode each turn ran in so mixed-mode sessions stay legible ([#6321](https://github.com/codewhale-hq/Codewhale/pull/6321), harvested), stated the approval posture a task thread starts on ([#6386](https://github.com/codewhale-hq/Codewhale/pull/6386)), and rebuilt the runtime-API thread summary in one store pass instead of one per row ([#6376](https://github.com/codewhale-hq/Codewhale/pull/6376)). |
| 73 | - **[zhuowp](https://github.com/zhuowp)** — preserved chat roles across compaction, protected user turns on recompaction, and kept the operate contract intact through the same path ([#6286](https://github.com/codewhale-hq/Codewhale/pull/6286)). |
| 74 | - **[h3c-hexin](https://github.com/h3c-hexin)** — rate-limit-adaptive subagent launch scheduling: the `DynamicGate` that replaces fixed spawn pacing when a provider throttles ([#6055](https://github.com/codewhale-hq/Codewhale/pull/6055), harvested). |
| 75 | - **[asto18089](https://github.com/asto18089)** — co-authored the rate-limit-adaptive launch scheduling work ([#6055](https://github.com/codewhale-hq/Codewhale/pull/6055)). |
| 76 | - **[yrk111222](https://github.com/yrk111222)** — ModelScope provider support, landed through the shared `ChildGrant` fleet authority ([#6299](https://github.com/codewhale-hq/Codewhale/pull/6299), harvested). |
| 77 | - **[xiechimon](https://github.com/xiechimon)** — capped child tool results at capture time rather than at render ([#6294](https://github.com/codewhale-hq/Codewhale/pull/6294), harvested). |
| 78 | - **[VincentCorleone](https://github.com/VincentCorleone)** — defined and implemented the weixin-bridge Quick Start so a first run works from the README alone ([#6170](https://github.com/codewhale-hq/Codewhale/pull/6170), harvested). |
| 79 | - **[Serendo](https://github.com/Serendo)** — fixed the `/config` theme editor exiting the panel on an arrow key ([#6336](https://github.com/codewhale-hq/Codewhale/pull/6336)). |
| 80 | - **[yetuge](https://github.com/yetuge)** — dropped the retired `token_budget` field from the subagent documentation ([#6335](https://github.com/codewhale-hq/Codewhale/pull/6335)). |
| 81 | - **[Water-Run](https://github.com/Water-Run)** — translated the local browser client guide into Simplified Chinese ([#6401](https://github.com/codewhale-hq/Codewhale/pull/6401)). The catalog and dead-code work (#6400, #6402) landed after the v0.10.0 tag and is credited under v0.10.1. |
| 82 | |
| 83 | **Reports and reproductions** |
| 84 | |
| 85 | - **[BX166](https://github.com/BX166)** — contributed the AICraft provider template and its documentation ([#6171](https://github.com/codewhale-hq/Codewhale/pull/6171)). The PR was closed unmerged, but it is what surfaced the decision to stop special-casing named OpenAI-compatible hosts and make them ordinary providers ([#6289](https://github.com/codewhale-hq/Codewhale/issues/6289)); its base URL and key env carry into that work. |
| 86 | - **[7jrxt42BxFZo4iAnN4CX](https://github.com/7jrxt42BxFZo4iAnN4CX)** — reported the session-retention defects behind archive-past-the-cap and empty-session cap occupancy ([#6136](https://github.com/codewhale-hq/Codewhale/issues/6136), [#6137](https://github.com/codewhale-hq/Codewhale/issues/6137)), the resume-failure design behind durable transcript errors ([#6138](https://github.com/codewhale-hq/Codewhale/issues/6138)), and the gaps behind the opt-in approval timeout ([#6101](https://github.com/codewhale-hq/Codewhale/issues/6101)), `codewhale exec --hooks` ([#6099](https://github.com/codewhale-hq/Codewhale/issues/6099)), Markdown drag-copy ([#6156](https://github.com/codewhale-hq/Codewhale/issues/6156)), and the browsable, current-aware session picker ([#6014](https://github.com/codewhale-hq/Codewhale/issues/6014)); the goal token-budget hard stop ([#6013](https://github.com/codewhale-hq/Codewhale/issues/6013)) and the fleet no-progress guard shared with child workers ([#6015](https://github.com/codewhale-hq/Codewhale/issues/6015)) landed as first slices of two larger proposals, and the runtime-store session refusal ([#6207](https://github.com/codewhale-hq/Codewhale/issues/6207)) stays open after the first fix was reverted on a race. |
| 87 | - **[Lstarsky0](https://github.com/Lstarsky0)** — reported TUI tests reading machine state instead of hermetic fixtures; the `lock_test_env` remedy from that report shaped two more hermetic fixes for shared UI fixtures and the compaction budget test ([#5359](https://github.com/codewhale-hq/Codewhale/issues/5359)). |
| 88 | - **[Lujc0523](https://github.com/Lujc0523)** — reported `/hooks edit` splitting keystrokes between the editor and the composer, fixed by pausing the TUI input pump inside the editor handoff ([#6165](https://github.com/codewhale-hq/Codewhale/issues/6165)). |
| 89 | - **[Statter](https://github.com/Statter)** — reported the Gemini `/models` failure that now surfaces the provider's reason instead of an empty error ([#6173](https://github.com/codewhale-hq/Codewhale/issues/6173)). |
| 90 | - **[sequico](https://github.com/sequico)** — reported the ACP `session/new` ids that `session/load` could not resolve, fixed by minting resolvable session ids ([#6174](https://github.com/codewhale-hq/Codewhale/issues/6174)). |
| 91 | - **[bevis-wong](https://github.com/bevis-wong)** — reported the mid-run engine freeze behind the bounded turn-end foreground-child join, and the resume path that re-ran identical tool-call repair on every load instead of persisting it ([#6184](https://github.com/codewhale-hq/Codewhale/issues/6184), [#6185](https://github.com/codewhale-hq/Codewhale/issues/6185)). |
| 92 | |
| 93 | </details> |
| 94 | |
| 95 | <details open> |
| 96 | <summary><strong>v0.9.13 — paste integrity, dispatch safety, and the Computer Use bundle</strong></summary> |
| 97 | |
| 98 | **Merged or adapted contributions** |
| 99 | |
| 100 | - **[nightt5879](https://github.com/nightt5879)** — added bounded Gemini signature recovery guidance and streaming/non-streaming gateway transport regressions ([#6081](https://github.com/codewhale-hq/Codewhale/pull/6081)). |
| 101 | - **[c020627](https://github.com/c020627)** — repaired translated contributor-guide and Windows screenshot links ([#6080](https://github.com/codewhale-hq/Codewhale/pull/6080)). |
| 102 | - **[h3c-hexin](https://github.com/h3c-hexin)** — contributed full-fidelity session archives ([#6056](https://github.com/codewhale-hq/Codewhale/pull/6056)), GLM-5.3 reasoning controls and the model-facing documentation/tool-gating audit ([#6051](https://github.com/codewhale-hq/Codewhale/pull/6051), [#6052](https://github.com/codewhale-hq/Codewhale/pull/6052)). |
| 103 | - **[asto18089](https://github.com/asto18089)** — co-authored full-fidelity session archives ([#6056](https://github.com/codewhale-hq/Codewhale/pull/6056)), GLM-5.3 reasoning controls and tool-gating/documentation fixes ([#6051](https://github.com/codewhale-hq/Codewhale/pull/6051), [#6052](https://github.com/codewhale-hq/Codewhale/pull/6052)). |
| 104 | - **[Hmbown](https://github.com/Hmbown)** — updated JavaScript dependencies across the website, telemetry package and VS Code extension ([#6057](https://github.com/codewhale-hq/Codewhale/pull/6057)). |
| 105 | - **[gaord](https://github.com/gaord)** — contributed the file-scoped restore endpoint and trust-gated whole-tree rollback ([#6111](https://github.com/codewhale-hq/Codewhale/pull/6111)), Fleet schema inspection, role precedence and worker deliverable receipts, and linked the community VS Code frontend ([#5944](https://github.com/codewhale-hq/Codewhale/pull/5944), [#5945](https://github.com/codewhale-hq/Codewhale/pull/5945), [#5946](https://github.com/codewhale-hq/Codewhale/pull/5946), [#5992](https://github.com/codewhale-hq/Codewhale/pull/5992)). |
| 106 | - **[goransh-walia](https://github.com/goransh-walia)** — contributed the propose-only commit-planning rework ([#5870](https://github.com/codewhale-hq/Codewhale/pull/5870)). |
| 107 | - **[7jrxt42BxFZo4iAnN4CX](https://github.com/7jrxt42BxFZo4iAnN4CX)** — documented turn budgets and goal configuration, and reported gaps in command discovery, Fleet navigation, human waits, state hooks, history and provider routing ([#5996](https://github.com/codewhale-hq/Codewhale/pull/5996), [#5952](https://github.com/codewhale-hq/Codewhale/issues/5952), [#5954](https://github.com/codewhale-hq/Codewhale/issues/5954), [#6003](https://github.com/codewhale-hq/Codewhale/issues/6003), [#6004](https://github.com/codewhale-hq/Codewhale/issues/6004), [#6006](https://github.com/codewhale-hq/Codewhale/issues/6006), [#6007](https://github.com/codewhale-hq/Codewhale/issues/6007)). |
| 108 | - **[SparkofSpike](https://github.com/SparkofSpike)** — contributed two-stage consent for opting out of model-bound credential redaction and session titles derived from real user prompts instead of runtime handoffs ([#5982](https://github.com/codewhale-hq/Codewhale/pull/5982), [#6012](https://github.com/codewhale-hq/Codewhale/pull/6012)). |
| 109 | - **[aboimpinto](https://github.com/aboimpinto)** — moved session lifecycle and session-control commands onto shared command contracts ([#5902](https://github.com/codewhale-hq/Codewhale/pull/5902), [#5951](https://github.com/codewhale-hq/Codewhale/pull/5951)). |
| 110 | - **[EvanProgramming](https://github.com/EvanProgramming)** — reported Windows input and CRLF-write defects, and contributed CRLF preservation and an injectable Windows input runner ([#5908](https://github.com/codewhale-hq/Codewhale/issues/5908), [#5909](https://github.com/codewhale-hq/Codewhale/issues/5909), [#5910](https://github.com/codewhale-hq/Codewhale/pull/5910), [#5911](https://github.com/codewhale-hq/Codewhale/pull/5911), [#5912](https://github.com/codewhale-hq/Codewhale/pull/5912)). |
| 111 | - **[wuisabel-gif](https://github.com/wuisabel-gif)** — exposed workspace file suggestions through the Runtime API ([#6120](https://github.com/codewhale-hq/Codewhale/pull/6120)) and added custom-theme discovery, preview and selection in the theme picker ([#5907](https://github.com/codewhale-hq/Codewhale/pull/5907)). |
| 112 | - **[zhuowp](https://github.com/zhuowp)** — matched model-visible shell guidance to the interpreter selected for execution ([#5900](https://github.com/codewhale-hq/Codewhale/pull/5900)). |
| 113 | - **[googio](https://github.com/googio)** — added the opt-in Serply web-search provider ([#6100](https://github.com/codewhale-hq/Codewhale/pull/6100)). |
| 114 | |
| 115 | **Reports and reproductions** |
| 116 | |
| 117 | - **[Hmbown](https://github.com/Hmbown)** — identified missing recovery guidance when a compatible gateway rejects Gemini tool-call replay without thought signatures ([#6048](https://github.com/codewhale-hq/Codewhale/issues/6048)). |
| 118 | - **[7jrxt42BxFZo4iAnN4CX](https://github.com/7jrxt42BxFZo4iAnN4CX)** — proposed global usage and tool diagnostics and independent goal verification ([#6011](https://github.com/codewhale-hq/Codewhale/issues/6011), [#6013](https://github.com/codewhale-hq/Codewhale/issues/6013)); these broader requests remain open. |
| 119 | - **[nsfoxer](https://github.com/nsfoxer)** — reported the multiline-paste regression and incomplete provider model lists ([#5981](https://github.com/codewhale-hq/Codewhale/issues/5981), [#6009](https://github.com/codewhale-hq/Codewhale/issues/6009)). |
| 120 | - **[Nefelibata1024](https://github.com/Nefelibata1024)** — confirmed the multiline-paste regression's impact ([#5981](https://github.com/codewhale-hq/Codewhale/issues/5981)). |
| 121 | - **[Gabriel-Degret](https://github.com/Gabriel-Degret)** — reported the loss of the allow_insecure_http provider setting and that saved agent profiles were silently ignored when spawning sub-agents ([#5991](https://github.com/codewhale-hq/Codewhale/issues/5991), [#6117](https://github.com/codewhale-hq/Codewhale/issues/6117)). |
| 122 | - **[LmeSzinc](https://github.com/LmeSzinc)** — requested Runtime API access to the TUI fuzzy file search ([#6095](https://github.com/codewhale-hq/Codewhale/issues/6095)). |
| 123 | - **[dmt4](https://github.com/dmt4)** — requested Linux copy-on-select and middle-click paste ([#6116](https://github.com/codewhale-hq/Codewhale/issues/6116)). |
| 124 | - **[Lujc0523](https://github.com/Lujc0523)** — reported the ACP initialize schema violation affecting strict IDE clients ([#5969](https://github.com/codewhale-hq/Codewhale/issues/5969)). |
| 125 | - **[mo-vic](https://github.com/mo-vic)** — proposed storing evicted context on disk so it can be retrieved later ([#6008](https://github.com/codewhale-hq/Codewhale/issues/6008)). |
| 126 | - **[giancarlocp](https://github.com/giancarlocp)** — requested a plugin authoring guide and OpenCode plugin conversion ([#5827](https://github.com/codewhale-hq/Codewhale/discussions/5827)). |
| 127 | - **[hxfhd](https://github.com/hxfhd)** — supplied a Windows reproduction of a turn stopping before its stated next tool action ([#6010](https://github.com/codewhale-hq/Codewhale/discussions/6010)). |
| 128 | |
| 129 | </details> |
| 130 | |
| 131 | <details open> |
| 132 | <summary><strong>v0.9.12 — native search, live token truth, and runtime surfaces</strong></summary> |
| 133 | |
| 134 | **Merged or adapted contributions** |
| 135 | |
| 136 | - **[hexin / h3c-hexin](https://github.com/h3c-hexin)** — provider-native web |
| 137 | search across four routes: the DeepSeek adapter (#5683), Z.AI and BigModel |
| 138 | (#5685), and Xiaomi MiMo (#5687), each fail-closed for undocumented models, |
| 139 | plus the constraint enforcement that runs before any fallback (#5682); also |
| 140 | authoritative edit-last-turn boundaries (#5621), Kimi Code k3-256k support |
| 141 | (#5622), post-compaction input-token reporting (#5623), and preserving the |
| 142 | scheduled model selection in automations (#5650) |
| 143 | - **[Isabel Wu / wuisabel-gif](https://github.com/wuisabel-gif)** — live |
| 144 | session token totals (#5624), persisted context-pressure warnings (#5629), |
| 145 | discoverable Fleet roster editing (#5604), the capability-gated cursor |
| 146 | accent (#5599), and `/copy` for the latest completed response (#5692) |
| 147 | - **[Paulo Aboim Pinto / aboimpinto](https://github.com/aboimpinto)** — |
| 148 | preserved Windows verbatim-path operands through POSIX word splitting |
| 149 | (#5610), moved the plugins group onto the command shapes (#5657), built |
| 150 | FEAT-022 skills command shapes with retained-host validation (#5825), and |
| 151 | re-landed FEAT-020 plugin command shapes on main (#5865) |
| 152 | - **[Alex Musichen / musichen](https://github.com/musichen)** — fixed the |
| 153 | configured-view DeepSeek model picker so it shows a stable DeepSeek heading |
| 154 | and keeps every official catalog model for the active provider visible |
| 155 | (#5689) |
| 156 | - **[gaord](https://github.com/gaord)** — added the `GET /v1/fleet/profiles` |
| 157 | runtime API endpoint, reusing the FleetManager validation path (#5688) |
| 158 | - **[Sh1Zuku / SparkofSpike](https://github.com/SparkofSpike)** — corrected |
| 159 | English documentation inaccuracies and contributed the first zh_hans |
| 160 | translations for the Tier-2 docs (#5613) |
| 161 | - **[M-Maciej](https://github.com/M-Maciej)** — goal continuation cadence fix |
| 162 | (#5591) and the per-session control socket (#5533, #5831) |
| 163 | - **[Serephus / serephus](https://github.com/serephus)** — nixpkgs update |
| 164 | (#5669) |
| 165 | - **[秋月凉梦 / qiuYliangM](https://github.com/qiuYliangM)** — co-authored the |
| 166 | authoritative edit-last-turn boundaries (#5621), Kimi Code k3-256k support |
| 167 | (#5622), and post-compaction input-token reporting (#5623) |
| 168 | - **[whp233](https://github.com/whp233)** — `wire = responses|anthropic` for |
| 169 | openai-compatible custom routes and opencode-zen muse-spark (#5716, landed |
| 170 | as #5719) |
| 171 | - **[Gabriel Degret / Gabriel-Degret](https://github.com/Gabriel-Degret)** — |
| 172 | found the reasoning-only retry gap and built the first fix; landed as the |
| 173 | `[reasoning_only]` retry ceiling with a request-scoped nudge (#5867) |
| 174 | - **[huangxianzhan](https://github.com/huangxianzhan)** — the |
| 175 | `x-opencode-session` header for OpenCode Go and Zen gateways (#5868) |
| 176 | - **[zhuowp](https://github.com/zhuowp)** — task origin preserved in job |
| 177 | snapshots (#5869) |
| 178 | - **[AdityaG / AdityaVG13](https://github.com/AdityaVG13)** — a ten-commit |
| 179 | performance pass across the TUI and config: zero-copy LaTeX streaming, |
| 180 | single-pass token accounting, memoized provider resolution, once-per-process |
| 181 | models.dev catalog parsing (interactive boot -70%), adaptive shell-completion |
| 182 | poll cadence, and diagnostic worker caps |
| 183 | - **[Nightt / nightt5879](https://github.com/nightt5879)** — isolated remote |
| 184 | recovery lease generations (#5790) |
| 185 | - **[yiheng-kkk](https://github.com/yiheng-kkk)** — replaced stale todo |
| 186 | transcript snapshots so a rewritten todo list renders its current tasks |
| 187 | (#5871, #5873) |
| 188 | - **[Lfanxing](https://github.com/Lfanxing)** — Moonshot routes degrade |
| 189 | incompatible tool definitions per request instead of failing the turn |
| 190 | - **[WissssleyL / Lstarsky0](https://github.com/Lstarsky0)** — moved |
| 191 | `docs/subagents` and `docs/mcp` onto the dictionary spine (#5337), with the |
| 192 | metaTitle probe that keeps them there |
| 193 | |
| 194 | **Reports and reproductions** |
| 195 | |
| 196 | - **[slowly247](https://github.com/slowly247)** — reported the Ollama input |
| 197 | budget collapsing to 1,024 tokens on 32K local models (#5820) |
| 198 | - **[ronohara](https://github.com/ronohara)** — reported the engine stopping |
| 199 | after recoverable network errors and reproduced the discarded approval (#5769) |
| 200 | - **[Lujc0523](https://github.com/Lujc0523)** — asked for ACP session mode and |
| 201 | model configuration (#5863) |
| 202 | - **[senka9h](https://github.com/senka9h)** — reported the missing ACP |
| 203 | `session/list` and `session/load` methods (#5864) |
| 204 | </details> |
| 205 | |
| 206 | <details> |
| 207 | <summary><strong>v0.9.11 — portable command surfaces and turn-loop structure</strong></summary> |
| 208 | |
| 209 | **Merged or adapted contributions** |
| 210 | |
| 211 | - **[Sun Zhenyuan / bistack](https://github.com/bistack)** — extracted tool-call |
| 212 | planning, execution, and result processing from the turn loop while preserving |
| 213 | the existing sandbox-policy, hook, budget, and batch-execution behavior |
| 214 | (#5523) |
| 215 | - **[Isabel Wu / wuisabel-gif](https://github.com/wuisabel-gif)** — added |
| 216 | bounded, workspace-relative multi-file diagnostics to the existing model- |
| 217 | visible `lsp` tool, reusing the shared transport pool without expanding the |
| 218 | 75-tool catalog (#5524) |
| 219 | - **[Paulo Aboim Pinto / aboimpinto](https://github.com/aboimpinto)** — added |
| 220 | portable presentation, media-attachment, and operation-digest facets to the |
| 221 | command contract, then moved all seven utility command handlers onto the |
| 222 | contract-backed dispatch path (#5525) |
| 223 | |
| 224 | **Reviewed overlap** |
| 225 | |
| 226 | - **[Lstarsky0](https://github.com/Lstarsky0)** — reviewed #5524 and identified |
| 227 | the closed-channel, severity-filtering, and truncation-receipt gaps covered by |
| 228 | the maintainer hardening pass. |
| 229 | - Isabel Wu's PR #5530 independently routed the legacy plural completion |
| 230 | command through the public CLI generator. Equivalent behavior, including the |
| 231 | published `codew` alias registration, had already landed in the integration |
| 232 | lane, so the PR is recorded here as reviewed project work rather than counted |
| 233 | as a second merged contribution. |
| 234 | |
| 235 | **Reports and reproductions** |
| 236 | |
| 237 | - **[RepentStar](https://github.com/RepentStar)** — reported the stale shell- |
| 238 | completion generator and missing `codew` registration that led to the |
| 239 | completion fixes and upgrade guidance in #5526. |
| 240 | |
| 241 | </details> |
| 242 | |
| 243 | <details> |
| 244 | <summary><strong>v0.9.10 — retention, identity, and durable approvals</strong></summary> |
| 245 | |
| 246 | **Merged or adapted contributions** |
| 247 | |
| 248 | - **[Sh1Zuku / SparkofSpike](https://github.com/SparkofSpike)** — restored |
| 249 | `/title` as an independent, persistent terminal-window title in PR #5509, |
| 250 | and contributed the Tier 1 Chinese and Indonesian documentation move to |
| 251 | `docs/zh_hans/` and `docs/id/` with one-release redirect stubs (#5507, |
| 252 | epic #5482) |
| 253 | - **[Sun Zhenyuan / bistack](https://github.com/bistack)** — extracted the |
| 254 | turn-loop stream processor in PR #5514 while preserving retry, |
| 255 | cancellation, usage, TTFT, steering, and partial-response behavior |
| 256 | - **[OctoBored](https://github.com/OctoBored)** — supplied the working |
| 257 | no-token Star History mirror used by the localized README set after the |
| 258 | canonical chart endpoint began returning a restricted placeholder (#5510) |
| 259 | - **[cacdcaecawae](https://github.com/cacdcaecawae)** — added provider-neutral |
| 260 | typed MCP image forwarding in PR #5515; the adapted version also emits a |
| 261 | visible omission receipt for malformed image fields |
| 262 | - **[cyq1017](https://github.com/cyq1017)** — approval outcomes are persisted |
| 263 | before execution can proceed: receipts commit to a session-owned log first, |
| 264 | unpersistable evidence blocks the tool, stale decisions are rejected, and |
| 265 | resume reconstructs closed and interrupted approvals (#5491, closes #5360) |
| 266 | - **[aboimpinto](https://github.com/aboimpinto)** — the TUI-owned |
| 267 | dependency-injection and migration infrastructure behind safe slash-command |
| 268 | extraction: seven capability facets, a dual-path dispatch seam, and |
| 269 | source-aware CI enforcement so a command slice cannot claim migration while |
| 270 | it still accepts concrete `App` (#5506, EPIC-005/FEAT-015 under the #5316 |
| 271 | umbrella they filed) |
| 272 | - **[wuisabel-gif](https://github.com/wuisabel-gif)** — the TUI header now |
| 273 | names the active repository or linked worktree before the branch and dirty |
| 274 | marker, derived from Git's common directory and capped by shell density |
| 275 | tier (#5511, the repo/worktree slice of #5437) |
| 276 | - **[Lstarsky0](https://github.com/Lstarsky0)** — `docs/hooks` and |
| 277 | `docs/troubleshooting` move onto the dictionary spine, retiring their inline |
| 278 | bilingual literals in favor of locale dictionaries with token-aware code |
| 279 | spans (#5504, closes #5337 they filed) |
| 280 | |
| 281 | **Reports, reproductions, and verification** |
| 282 | |
| 283 | - **[DingYong4223](https://github.com/DingYong4223)** — reported the |
| 284 | narrow-terminal completion truncation closed by the bounded hover reveal |
| 285 | (#998) |
| 286 | - **[AiurArtanis](https://github.com/AiurArtanis)** and |
| 287 | **[formp3](https://github.com/formp3)** — identified the completion surfaces |
| 288 | affected by narrow-terminal truncation (#998) |
| 289 | - **[sky-sun-moon](https://github.com/sky-sun-moon)** — reported the missing |
| 290 | full per-turn input, reasoning, tool, and assistant pages that shaped Turn |
| 291 | Inspector navigation (#1682) |
| 292 | - **[cy2311](https://github.com/cy2311)** — reported the Windows launch path |
| 293 | now covered by the Windows Terminal-aware batch launcher (#1854) |
| 294 | - **[demian-welt](https://github.com/demian-welt)** — provided the reproducible |
| 295 | pre-header SSE transport failure behind the bounded HTTP/1.1 retry (#4683) |
| 296 | - **[BrathonBai](https://github.com/BrathonBai)** — reported the Tabby/CJK IME |
| 297 | candidate-window jump that led to the cursor hide-diff-position-show |
| 298 | transaction (#5023) |
| 299 | - **[M-Maciej](https://github.com/M-Maciej)** — provided the organization- |
| 300 | coordinator use case and 5-30 minute cadence requirement behind cancellable |
| 301 | cross-turn goal delays (#5508) |
| 302 | - **[thejayjetson](https://github.com/thejayjetson)** — the header |
| 303 | status-indicator report that pinned the regression to a specific setting, |
| 304 | having already ruled out every value, both themes, `fancy_animations`, the |
| 305 | terminal auto-off rules, and a clean `codewhale doctor` (#5512) |
| 306 | - **[hxfhd](https://github.com/hxfhd)** — reported the deterministic |
| 307 | cross-session contamination class behind this release's session-ownership |
| 308 | boundary, plus route budgeting evidence (#5518) |
| 309 | - **[sfdzhmr](https://github.com/sfdzhmr)** — reported the route budgeting |
| 310 | root causes that exact route-limit propagation now closes (#5516) |
| 311 | |
| 312 | </details> |
| 313 | |
| 314 | <details> |
| 315 | <summary><strong>v0.9.9 — truth and resilience</strong></summary> |
| 316 | |
| 317 | **Merged or adapted contributions** |
| 318 | |
| 319 | - **[h3c-hexin](https://github.com/h3c-hexin)** — a concrete route/offering |
| 320 | output limit now outranks the conservative 8,192-token compatibility guess |
| 321 | for an uncatalogued model; routes that publish no limit stay fail-closed |
| 322 | (#5461, closes #5460); every web tool surface uses the noisy-result soft |
| 323 | limit (#5474); lowercase saved selectors resolve against the owning |
| 324 | Z.ai/DeepSeek catalog row (#5475); configured-skill prompt paths remain |
| 325 | stable across ephemeral roots and operating systems (#5492, #5473) |
| 326 | - **[Gabriel-Degret](https://github.com/Gabriel-Degret)** — configurable |
| 327 | auto-router classifier timeout (#5494; first contribution) |
| 328 | |
| 329 | **Reports, reproductions, and verification** |
| 330 | |
| 331 | - **[asto18089](https://github.com/asto18089)** — diagnosed the Z.ai `glm-5.2` |
| 332 | casing collision and wrote the first provider-scoped fix downstream |
| 333 | (Pinvou/CodeWhale#14, carried upstream in #5475) |
| 334 | |
| 335 | - **[hardy922](https://github.com/hardy922)** — the context-window honesty |
| 336 | report that became the every-surface labeling pass (#5239) |
| 337 | - **[redstar](https://github.com/redstar)** — bwrap container essentials and |
| 338 | configurable extra roots (#5410) |
| 339 | - **[all-lopezg](https://github.com/all-lopezg)** — SSE UTF-8 garbling on |
| 340 | DeepSeek Flash with screenshots, fixed fail-closed in every dialect (#5374) |
| 341 | - **[alitvak69](https://github.com/alitvak69)** — the unverified-live-pricing |
| 342 | report behind the bundled fallback rates and DeepSeek V4 tiers (#5241) |
| 343 | - **[wuisabel-gif](https://github.com/wuisabel-gif)** — bounded reproduction |
| 344 | attempts for the macOS filtered-suite hang note on #5056 |
| 345 | |
| 346 | </details> |
| 347 | |
| 348 | <details> |
| 349 | <summary><strong>v0.9.8 — marketplace, Google, Ollama Cloud</strong></summary> |
| 350 | |
| 351 | **Merged or adapted contributions** |
| 352 | |
| 353 | - **[EvanProgramming](https://github.com/EvanProgramming)** — webhook hook |
| 354 | sink no longer panics when its HTTP client fails to build (#5381); session-index |
| 355 | JSONL writes are serialized so concurrent stores cannot drop an append |
| 356 | (#5382) |
| 357 | - **[Lstarsky0](https://github.com/Lstarsky0)** — session peek hides internal |
| 358 | runtime events (#5376); thinking-ladder tests re-pinned (#5378); |
| 359 | provider-count follow-ups (#5383/#5384); macOS agy fixture |
| 360 | canonicalization (#5392); website zh-Hans 宪章 terminology (#5397); |
| 361 | regenerated website facts harvested and corrected so Google and Ollama |
| 362 | Cloud are listed and Antigravity is not advertised as a route (#5398) |
| 363 | - **[mvanhorn](https://github.com/mvanhorn)** — read-only, repository-fact |
| 364 | driven settings preview on the website models page (#5411, fixes #5370) |
| 365 | - **[buiducnhat](https://github.com/buiducnhat)** — canonical `ultra` |
| 366 | reasoning effort mapped to every provider's maximum tier (#5409); session |
| 367 | titles truncated by character count instead of byte offset so CJK and |
| 368 | emoji names cut at the intended width (#5415) |
| 369 | - **[SparkofSpike](https://github.com/SparkofSpike)** — `/title` and the |
| 370 | saved session name in the terminal tab/window title, plus the fix for the |
| 371 | deadlock when the title changed during an active turn; landed as a |
| 372 | discoverable alias of `/rename` on the one persisted session name (#5419) |
| 373 | - **[redstar](https://github.com/redstar)** — Eden AI registered as a named |
| 374 | OpenAI-compatible provider with `EDENAI_API_KEY`, `eden-ai`/`eden_ai` |
| 375 | aliases, and the global and EU endpoints (#5422) |
| 376 | - **[wuisabel-gif](https://github.com/wuisabel-gif)** — background verifier |
| 377 | test isolated from the rustup `rustc` shim and `$HOME`, one narrow |
| 378 | reliability slice of #5056 (#5423) |
| 379 | |
| 380 | </details> |
| 381 | |
| 382 | <details> |
| 383 | <summary><strong>v0.9.7 — the catalog stays ordinary</strong></summary> |
| 384 | |
| 385 | **Merged or adapted contributions** |
| 386 | |
| 387 | - **[XhesicaFrost](https://github.com/XhesicaFrost)** — copy from the message |
| 388 | context menu now takes canonical content, keeping authored Unicode, |
| 389 | Markdown, and hard line breaks in the clipboard while role glyphs, |
| 390 | continuation rails, and visual wrapping stay out of it (PR #5319) |
| 391 | - **[h3c-hexin](https://github.com/h3c-hexin)** — split durable-session |
| 392 | snapshot reads from crash recovery so an embedding host inspecting a |
| 393 | session while a tool is still running no longer gets a spurious crash |
| 394 | repair (PR #5320) |
| 395 | - **[XiaoHuo888-hue](https://github.com/XiaoHuo888-hue)** — OrcaRouter as a |
| 396 | first-class named provider with `ORCAROUTER_API_KEY`, auto-routing, |
| 397 | CLI `--provider` selection, and TUI picker entries (PR #5321) |
| 398 | |
| 399 | **Reports and verification** |
| 400 | |
| 401 | - **[USTHzhanglu](https://github.com/USTHzhanglu)** — reported the Auto-Review |
| 402 | shell/write regression with a Windows reproduction and audit-log evidence |
| 403 | (issue #5323) |
| 404 | - **[Lstarsky0](https://github.com/Lstarsky0)** — traced the Auto-Review |
| 405 | regression to the exact permission-posture change and documented the safe |
| 406 | recovery choices (issue #5323) |
| 407 | |
| 408 | </details> |
| 409 | |
| 410 | <details> |
| 411 | <summary><strong>v0.9.6 — fewer bumpers, truthful endings</strong></summary> |
| 412 | |
| 413 | **Merged or adapted contributions** |
| 414 | |
| 415 | - **[Xavier Pestel / xavierpestel-ai](https://github.com/xavierpestel-ai)** — |
| 416 | Mistral AI (la Plateforme) as a first-class provider route, including the |
| 417 | adjustable-reasoning wire contract and its multi-turn thinking replay |
| 418 | (PR #5295) |
| 419 | - **[Ben Younes / ousamabenyounes](https://github.com/ousamabenyounes)** — |
| 420 | inherited nested-agent depth cap, keeping child agents from widening the |
| 421 | budget provided by their parent (PR #5317) |
| 422 | - **[Rafael Cavalheri / rafaelcavalheri](https://github.com/rafaelcavalheri)** — |
| 423 | multi-round ACP file, search, Git, patch, and explicitly enabled shell tool |
| 424 | execution with cancellation and fail-closed shell safety (PR #5225) |
| 425 | |
| 426 | </details> |
| 427 | |
| 428 | <details> |
| 429 | <summary><strong>v0.9.5 — one runtime, managed controls, and uninterrupted turns</strong></summary> |
| 430 | |
| 431 | **Merged or adapted contributions** |
| 432 | |
| 433 | - **[Sh1Zuku / SparkofSpike](https://github.com/SparkofSpike)** — stale cached |
| 434 | session-title recovery so `New Session` yields to the first real prompt |
| 435 | - **[Paulo Aboim Pinto / aboimpinto](https://github.com/aboimpinto)** — the |
| 436 | shared alias-aware command discovery contract across the palette, slash |
| 437 | completion, dispatch, and acceptance harness |
| 438 | - **[Sun Zhenyuan / bistack](https://github.com/bistack)** — background |
| 439 | incremental MCP Registry refreshes that return the local snapshot immediately |
| 440 | - **[SKY ZHAO / skyzhao1223](https://github.com/skyzhao1223)** — prompt-based |
| 441 | `model = "auto"` tier selection in PR #5257 |
| 442 | |
| 443 | </details> |
| 444 | |
| 445 | <details> |
| 446 | <summary><strong>v0.9.4 — calmer output, recovery, and release hardening</strong></summary> |
| 447 | |
| 448 | **Merged or adapted contributions** |
| 449 | |
| 450 | - **[Sh1Zuku / SparkofSpike](https://github.com/SparkofSpike)** — LaTeX |
| 451 | rendering in PR #4981, circled-digit and keycap width handling in PR #5001, |
| 452 | and actionable File-edit recovery in PR #5008; sub-agent checkpoint resume |
| 453 | in PR #5242, real shell wait elapsed time in PR #5240, and keeping |
| 454 | alternate-scroll off while mouse capture is active in PR #5234 |
| 455 | - **[XhesicaFrost](https://github.com/XhesicaFrost)** — long Windows user-PATH |
| 456 | preservation in PR #5006 |
| 457 | - **[Paulo Aboim Pinto / aboimpinto](https://github.com/aboimpinto)** — the |
| 458 | user-command dispatch acceptance contract in PR #4992 |
| 459 | - **[shenjackyuanjie](https://github.com/shenjackyuanjie)** — Windows |
| 460 | OpenHarmony linker re-quoting for spaced SDK paths in PR #5095 |
| 461 | - **[bistack](https://github.com/bistack)** — MCP Registry discovery with |
| 462 | Registry-first tool selection in PR #5238 |
| 463 | - **[vFONGv](https://github.com/vFONGv)** — the zh-CN Windows beginner guide |
| 464 | with screenshots in PR #5229 |
| 465 | - **[mky](https://github.com/mky)** — FreeBSD build fix (`rquickjs` `bindgen` on FreeBSD, PR #5254) |
| 466 | - **[cacdcaecawae](https://github.com/cacdcaecawae)** — embedder-owned sub-agent state roots (PR #5252) |
| 467 | |
| 468 | **Reports, reproductions, and verification** |
| 469 | |
| 470 | - **[DracheTek](https://github.com/DracheTek)** — the multilingual, CRLF-heavy |
| 471 | File-edit failure report in issue #5003 |
| 472 | - **[An Ziwu / MuRongMoQing](https://github.com/MuRongMoQing)** — the Windows |
| 473 | PATH-overwrite defect report in issue #4685 |
| 474 | |
| 475 | </details> |
| 476 | |
| 477 | <details> |
| 478 | <summary><strong>v0.9.3 — DeepSeek Responses, canonical tools, and runtime hardening</strong></summary> |
| 479 | |
| 480 | - **[greyfreedom](https://github.com/greyfreedom)** (Turisla) — the documented |
| 481 | and tested authorization-order contract from PR #4980 |
| 482 | - **[nightt5879](https://github.com/nightt5879)** (Nightt) — foreground shell |
| 483 | detachment before steering from PR #4979 |
| 484 | - **[Watcher24](https://github.com/Watcher24)** — the macOS File Provider |
| 485 | sandbox report and reproduction in #4085 |
| 486 | - **[Fred Leitz / fleitz](https://github.com/fleitz)** — required |
| 487 | source-candidate credit for the canonical `Bash` no-`cwd` workspace fix and |
| 488 | regression in PR #4673 (issue #4674) |
| 489 | |
| 490 | </details> |
| 491 | |
| 492 | <details> |
| 493 | <summary><strong>v0.9.2 — routing, workflow, localization, and inspectability</strong></summary> |
| 494 | |
| 495 | - **[greyfreedom](https://github.com/greyfreedom)** — exact repository-scoped |
| 496 | allow grants and the cross-platform path-semantics repairs from PR #4761 |
| 497 | - **[nightt5879](https://github.com/nightt5879)** — off-event-loop terminal |
| 498 | clipboard writes (PR #4896), complete locale exposure in settings (PR #4856), |
| 499 | CRLF-safe edits (PR #4942), and automatic-routing reasoning preservation |
| 500 | (PR #4961) |
| 501 | - **[XhesicaFrost](https://github.com/XhesicaFrost)** — the configurable |
| 502 | session-token header from PR #4610 and context-menu hover alignment in PR #4897 |
| 503 | - **[cyq1017](https://github.com/cyq1017)** — the hooks configuration/executor |
| 504 | split from PR #4087 |
| 505 | - **[snail-vs](https://github.com/snail-vs)** (snailoniu) — OpenCode Zen's |
| 506 | model-aware route, authentication, documentation, and test-isolation work |
| 507 | from closed PR #4467, whose contributor commits are preserved in the |
| 508 | candidate |
| 509 | - **[Sh1Zuku / SparkofSpike](https://github.com/SparkofSpike)** — the zh-Hans |
| 510 | translation quality review harvested from PR #4908, duplicate-session fix in |
| 511 | PR #4963, LaTeX implementation from PR #4973 landed through #4974, and the |
| 512 | context-menu reproduction in #4803 |
| 513 | - **[GTC2080](https://github.com/GTC2080)** (TaoMu) — the `dryrun` concept |
| 514 | behind `/preview-request`: preview the next outbound request from the real |
| 515 | request-building seam rather than a hand-rolled summary (PR #1099, |
| 516 | harvested) |
| 517 | - **[h3c-hexin](https://github.com/h3c-hexin)** — the non-UTF-8 `fetch_url` |
| 518 | report and implementation direction harvested from PR #4909 |
| 519 | - **[Fred Leitz / fleitz](https://github.com/fleitz)** — required |
| 520 | source-candidate credit for the canonical `Bash` no-`cwd` workspace fix and |
| 521 | regression in PR #4673 (issue #4674) |
| 522 | - **[LmeSzinc](https://github.com/LmeSzinc)** — the Windows CRLF `edit_file` |
| 523 | reproduction, root-cause analysis, and affected-code anchors in issue #4764 |
| 524 | - **[atmosuwiryo](https://github.com/atmosuwiryo)** — ACP numeric-id |
| 525 | compatibility (PR #4929) and the Indonesian documentation and website locale |
| 526 | (PRs #4962 and #4972) |
| 527 | - **[M-Maciej](https://github.com/M-Maciej)** — the expanded-by-default |
| 528 | reasoning setting and report (PR #4928, issue #4925) |
| 529 | - **[raphamorim](https://github.com/raphamorim)** — migration of the QA PTY |
| 530 | frame parser to `rio-vt` (PR #4931) |
| 531 | - **[LI-Jialu](https://github.com/LI-Jialu)** — truthful finalization of stale |
| 532 | restored shell cells (PR #4937) |
| 533 | - **[kobihikri](https://github.com/kobihikri)** — release-container SBOM and |
| 534 | explicit provenance mode (PR #4958) |
| 535 | - **[EvanProgramming](https://github.com/EvanProgramming)**, |
| 536 | **[adity982](https://github.com/adity982)**, and |
| 537 | **[vibecoding-skills](https://github.com/vibecoding-skills)** — equivalent |
| 538 | fix direction for effective-home resolution (#4760), MCP call-once behavior |
| 539 | (#4756), and streaming/non-streaming timeout separation (#4743) |
| 540 | - **[antarikshraya](https://github.com/antarikshraya)** — the LaTeX transcript |
| 541 | rendering report in #4957 |
| 542 | - **[eugenicum](https://github.com/eugenicum)** — the token-header request and |
| 543 | output-presentation measurements in #4520 and #4468 |
| 544 | - **[whp233](https://github.com/whp233)** — the StepFun/OpenCode subscription |
| 545 | route request in #4526 |
| 546 | - **[redjade75723](https://github.com/redjade75723)** — stale resumed-workspace |
| 547 | diagnosis input from #4100 |
| 548 | - **[hardy922](https://github.com/hardy922)** — the native DeepSeek tool-token |
| 549 | visibility report in #3880 |
| 550 | - **[JayBeest](https://github.com/JayBeest)** — contributor-onboarding product |
| 551 | direction in #4227 |
| 552 | - **[elijahchan2019](https://github.com/elijahchan2019)** — the optional |
| 553 | reasoning-highlight request in #4089 |
| 554 | - **[cy2311](https://github.com/cy2311)** — sessions rail, archive, and |
| 555 | auto-resume direction in #2934 |
| 556 | - **[wywsoor](https://github.com/wywsoor)** — export/restore correlation |
| 557 | direction in #2494 |
| 558 | |
| 559 | </details> |
| 560 | |
| 561 | <details open> |
| 562 | <summary><strong>v0.9.1 — provider and runtime hardening</strong></summary> |
| 563 | |
| 564 | - **[h3c-hexin](https://github.com/h3c-hexin)** — calendar-anchored hourly |
| 565 | automation recurrence across DST and lifecycle transitions (PR #4381), |
| 566 | explicit limits for unknown local models (PR #4656 / #4655), and |
| 567 | idle-timeout progress telemetry (PR #4657) |
| 568 | - **[gaord](https://github.com/gaord)** — Runtime API provider registry and |
| 569 | atomic provider-switch endpoints (PR #4658) |
| 570 | - **[SamhandsomeLee](https://github.com/SamhandsomeLee)** — the unified |
| 571 | `/skills` root catalog, audit/provenance model, validated mutations, manager |
| 572 | UI, and acceptance coverage (PR #4679), plus Enter-send lag diagnosis and |
| 573 | fix direction for #4605 (PR #4654; landed through the release-lane |
| 574 | async-dispatch split) |
| 575 | - **[Paulo Aboim Pinto / aboimpinto](https://github.com/aboimpinto)** — the |
| 576 | Layer 5.1 user-command registry boundary from PR #3278; the exact authored |
| 577 | evidence commit from PR #4046, preserved intact in the integration graph; |
| 578 | and the #2870 follow-up audit whose metadata and malformed-sibling gaps |
| 579 | shaped the final corrections. Paulo also provided the structured, redacted |
| 580 | Agent Details and `current_activity` design direction preserved from |
| 581 | #2694/#2889 and the real-PTY lifecycle acceptance direction from #2886 |
| 582 | - **[baendlorel](https://github.com/baendlorel)** — TelecomJS TokenHub provider |
| 583 | and key-scoped live-catalog direction, source-partitioned refresh behavior, |
| 584 | and both refresh-order regressions from PR #4370, harvested into the current |
| 585 | provider architecture with co-authorship preserved |
| 586 | - **[zhangweiii](https://github.com/zhangweiii)** and |
| 587 | **[Sterne Lee / sternelee](https://github.com/sternelee)** — the original |
| 588 | first-class OpenCode Go implementations in PRs #773 and #1050, harvested |
| 589 | into the current provider architecture with co-authorship preserved in the |
| 590 | landing commit |
| 591 | - **[Sean Tse / seanthefuturegorilla](https://github.com/seanthefuturegorilla)** |
| 592 | — the canonical OpenCode Go/Zen provider request and acceptance direction in |
| 593 | #1481 |
| 594 | - **[nightt5879](https://github.com/nightt5879)** — `/debt` compatibility |
| 595 | aliases with dispatch-consistent user-command shadowing across help and |
| 596 | slash discovery (PR #4680), plus the Solarized Light background preservation |
| 597 | fix for the underwater shell (PR #4471) |
| 598 | - **[AiurArtanis](https://github.com/AiurArtanis)** — the Solarized Light |
| 599 | v0.9.0 regression report and reproduction (#4457) |
| 600 | - **[shenjackyuanjie](https://github.com/shenjackyuanjie)** — the HarmonyOS |
| 601 | workflow-js bindgen, portable-pty gating, and SDK environment work |
| 602 | (PR #4470) |
| 603 | - **[shenyongqing](https://github.com/shenyongqing)** — the original HarmonyOS |
| 604 | workflow-js bindgen approach (PR #4384), carried into the landed |
| 605 | implementation with credit |
| 606 | - **[Luis Mateus Vargas / luismateusvargas](https://github.com/luismateusvargas)** |
| 607 | — the Windows hook-process leak reproduction, process-tree analysis, and EOF |
| 608 | fix direction (#4489) |
| 609 | - **[redjade75723](https://github.com/redjade75723)** — the persistent Windows |
| 610 | PTY failure report that exposed lossy high-bit exit-status handling (#4100) |
| 611 | - **[w1w218](https://github.com/w1w218)** — the Windows ARM64 release request |
| 612 | and cross-compilation report that led to native release, npm, updater, and |
| 613 | archive support (#4267) |
| 614 | - **[stream2stream](https://github.com/stream2stream)** — the legacy-session |
| 615 | recovery report that led to the read-only doctor diagnostic (#4032, #4539) |
| 616 | - **[Sh1Zuku / SparkofSpike](https://github.com/SparkofSpike)** — the Windows |
| 617 | Ctrl+O reproduction that exposed pre-pager result truncation and conflicting |
| 618 | composer shortcut routing (#4482) |
| 619 | - **[Lu Shihan / Angel-Hair](https://github.com/Angel-Hair)** — session-owned |
| 620 | read-before-edit tracking and the explicit, backwards-compatible |
| 621 | `apply_patch` replacement contract (PRs #4475 and #4476) |
| 622 | - **[dmitri-0](https://github.com/dmitri-0)** — configurable cache-hit |
| 623 | visibility in the phase strip (PR #4474) |
| 624 | - **[Fred Leitz / fleitz](https://github.com/fleitz)** — canonical `Bash` |
| 625 | no-`cwd` workspace resolution and its regression test, keeping isolated |
| 626 | sub-agent commands inside their selected worktree (PR #4673; issue #4674) |
| 627 | - **[Sh1Zuku / SparkofSpike](https://github.com/SparkofSpike)** — exact |
| 628 | Vim-space regression reproduction and verification that the v0.9.1 input |
| 629 | path already contains the needed global binding (PR #4477) |
| 630 | |
| 631 | </details> |
| 632 | |
| 633 | <details open> |
| 634 | <summary><strong>v0.9.0 — underwater shell, runtime persistence & release evidence</strong></summary> |
| 635 | |
| 636 | The v0.9.0 lane grew from a maintenance sweep into the underwater shell, |
| 637 | message-first Operate, broader Fleet and Workflow behavior, runtime-thread |
| 638 | persistence, terminal selection, UTF-8 handling, internationalization, and |
| 639 | release evidence. The reports and pull requests below materially shaped it. |
| 640 | |
| 641 | - **[Amuthan / amuthantamil](https://github.com/amuthantamil)** — approval-time |
| 642 | transcript review report that led to live Page Up/Down, modified-arrow, |
| 643 | Home/End, and mouse-wheel navigation while the decision card stays active |
| 644 | (#4371) |
| 645 | - **[Angel-Hair](https://github.com/Angel-Hair)** — reports that restored the |
| 646 | opt-in `remember` tool to the first-turn catalog, made required user |
| 647 | confirmation a real goal blocker, and added a clear recovery notice for |
| 648 | cached approval denials (#4373, #4374, #4375) |
| 649 | - **[Bruce / bruce6135](https://github.com/bruce6135)** — Kimi Coding Plan |
| 650 | reproduction that exposed the false 1K emergency-compaction budget (#4368) |
| 651 | - **[Matt Van Horn / mvanhorn](https://github.com/mvanhorn)** — first-turn |
| 652 | `remember` regression coverage and the Kimi output-budget correction that |
| 653 | prevents false emergency compaction (#4377, #4378) |
| 654 | - **[郝某人BH / hmr-BH](https://github.com/hmr-BH)** — native Simplified |
| 655 | Chinese review that replaced literal legal/doctrinal metaphors with clear |
| 656 | collaboration terminology across setup and `/constitution` (#4369) |
| 657 | - **[WavesMan](https://github.com/WavesMan)** — large-tree `@` completion |
| 658 | reproduction that led to bounded background discovery and exact-path |
| 659 | resolution on send (#4365) |
| 660 | - **[SamhandsomeLee](https://github.com/SamhandsomeLee)** — input-budget-aware |
| 661 | compaction work harvested from PR #4293 with co-authorship preserved |
| 662 | - **[idling11](https://github.com/idling11)** — keyboard-driven keyword search |
| 663 | for the docs and FAQ surfaces (PR #4364) |
| 664 | - **[LeoLin990405](https://github.com/LeoLin990405)** — initial bounded |
| 665 | workspace-walk approach and root-cause analysis for large-tree `@` mention |
| 666 | discovery (PR #4367), harvested into the final fail-soft background |
| 667 | implementation for #4365 |
| 668 | - **[octo-patch](https://github.com/octo-patch)** — MiniMax Messages provider |
| 669 | support for MiniMax-M3 and MiniMax-M2.7 across OpenAI-compatible and Messages |
| 670 | routes, regional endpoints, catalog metadata, pricing, and request coverage |
| 671 | (PR #4354) |
| 672 | - **[Wenshan Deng / findshan](https://github.com/findshan)** — original offline |
| 673 | token/cache/cost scorecard and regression gate (#3388), extended with |
| 674 | provider-aware provenance in #4335 |
| 675 | - **[hongqitai](https://github.com/hongqitai)** — localization extraction and |
| 676 | English-locale enforcement that keep UI copy on the typed translation path |
| 677 | (#4225, #4194) |
| 678 | - **[nsfoxer](https://github.com/nsfoxer)** — bounded, fail-soft MCP capability |
| 679 | discovery with advertised/legacy `tools/list` handling and Unicode-safe |
| 680 | description formatting (#4308, harvested with co-authorship) |
| 681 | - **[maple / yekern](https://github.com/yekern)** — root-cause analysis and fix |
| 682 | direction for age-evicting terminal worker records from long-lived |
| 683 | sub-agent state ledgers (#4217) |
| 684 | - **[moduvoice](https://github.com/moduvoice)** — Korean (ko) UI locale with |
| 685 | full key parity and onboarding/setup wiring (PR #4347) |
| 686 | - **[qinlinwang](https://github.com/qinlinwang)** — Anthropic tool-schema |
| 687 | sanitization for top-level oneOf/anyOf/allOf failures (PR #4346) |
| 688 | - **[knqiufan](https://github.com/knqiufan)** — Anthropic cache-write token |
| 689 | pricing at published rates (PR #4348, #4318) |
| 690 | - **[Chavdar Ivanov / ci4ic4](https://github.com/ci4ic4)** — NetBSD QuickJS |
| 691 | bindgen support for codewhale-workflow-js (PR #4349) |
| 692 | - **[eugenicum](https://github.com/eugenicum)** — copy-paste rail-pollution |
| 693 | report with code-aware fix direction (#4208) |
| 694 | - **[JayBeest](https://github.com/JayBeest)** — parent |
| 695 | `--disallowed-tools` inheritance through sub-agents and Fleet workers, |
| 696 | harvested from PR #4096 with authorship preserved (#4042) |
| 697 | - **[wuisabel-gif](https://github.com/wuisabel-gif)** — move runtime-thread |
| 698 | coordination onto `parking_lot::Mutex` to remove async lock contention |
| 699 | (#4243, #4149) |
| 700 | - **[cyq1017](https://github.com/cyq1017)** — Windows Python stdio UTF-8 |
| 701 | handling and richer active-tool summaries (#4281/#4202, #3818) |
| 702 | |
| 703 | - **[Jeffrey Luna / Mr-Moon121](https://github.com/Mr-Moon121)** — anti-polling |
| 704 | constitution for sub-agent waiting (harvested into #4097 / PR #4229 from |
| 705 | PR #4098) |
| 706 | |
| 707 | - **[MXAntian](https://github.com/MXAntian)** — persist compaction summaries |
| 708 | into thread records so `/v1` engine reloads keep compacted context (#4091) |
| 709 | - **[nightt5879](https://github.com/nightt5879)** — keep native terminal |
| 710 | selection usable when mouse capture is disabled, and advance fuzzy edit |
| 711 | matches on UTF-8 character boundaries; preserve inline skill task text in |
| 712 | PR #4372 (#4088, #4045, #3915) |
| 713 | - **[gaord](https://github.com/gaord)** — add the community-maintained |
| 714 | Codewhale for VS Code GUI frontend to the English and Chinese READMEs (#4035) |
| 715 | - **[Darrell Thomas](https://github.com/DarrellThomas)** — remove the unused |
| 716 | whale route taxonomy module and its dead tests (#4041) |
| 717 | - **[Taixin Guo](https://github.com/taixinguo)** — CJK fuzzy-edit panic report |
| 718 | and fix direction credited in the UTF-8 boundary patch (#3971, #4045) |
| 719 | - **[CCChisato](https://github.com/CCChisato)** — preserve task text when |
| 720 | sending dollar, unified-slash, and explicit skill invocations (#3915, |
| 721 | co-authored) |
| 722 | - **[Sun Zhenyuan / bistack](https://github.com/bistack)** — dynamic MCP server |
| 723 | infrastructure and approval-gated model-started MCP servers from chat |
| 724 | context (#3869, #3866, harvested with authorship preserved) |
| 725 | |
| 726 | </details> |
| 727 | |
| 728 | <details> |
| 729 | <summary><strong>v0.8.66 — release readiness, provider intake & UI hardening</strong></summary> |
| 730 | |
| 731 | The v0.8.66 release prepared the 0.8.66 package lane, hardened provider/model |
| 732 | routing and modal surfaces, advanced Hotbar/sub-agent UI reliability, and pulled |
| 733 | in several community provider and bridge contributions with release credit. |
| 734 | |
| 735 | - **[lerugray](https://github.com/lerugray)** — Sakana AI Fugu provider |
| 736 | support across config, CLI, TUI provider picker, docs, and model completions |
| 737 | (#3748, harvested) |
| 738 | - **[greyfreedom](https://github.com/greyfreedom)** — read-only `/config |
| 739 | ask-rules` view for resolved ask-rule paths, status, and configured |
| 740 | tool/command/path rules (#3569, merged) |
| 741 | - **[noaft](https://github.com/noaft)** — `/links` provider docs fallback |
| 742 | update, including the current Codewhale docs URL and a Baidu Qianfan docs |
| 743 | link (#3621, harvested) |
| 744 | - **[noaft](https://github.com/noaft)** — OpenModel provider support across |
| 745 | config, CLI, TUI provider picker, docs, and registry checks (#3585, |
| 746 | harvested) |
| 747 | - **[pkeging](https://github.com/pkeging)** — original plugin manifest, |
| 748 | discovery, CLI, and MCP foundation (#3708, #3709, #3710, merged), plus WeCom |
| 749 | Bridge deployment and security documentation, including the approval-timeout |
| 750 | configuration surface (#3640, harvested) |
| 751 | - **[codepgq](https://github.com/codepgq)** — cross-client plugin-workflow |
| 752 | migration request that shaped the explicit compatibility and trust boundary |
| 753 | (#1172) |
| 754 | - **[Wenshan Deng / findshan](https://github.com/findshan)** — original offline |
| 755 | token/cache/cost scorecard and regression gate (#3388), extended with |
| 756 | provider-aware provenance in #4335 |
| 757 | - **[buko](https://github.com/buko)** — precise Ctrl+O external-editor freeze |
| 758 | reproduction that shaped the terminal input-pump fix (#3657) |
| 759 | - **[cyq1017](https://github.com/cyq1017)** — sub-agent progress-event |
| 760 | headroom report that shaped the fanout reliability hardening (#3783) |
| 761 | |
| 762 | </details> |
| 763 | |
| 764 | <details> |
| 765 | <summary><strong>v0.8.63 — sub-agent budgets, command extraction & reliability</strong></summary> |
| 766 | |
| 767 | |
| 768 | The v0.8.63 release hardened sub-agent fanout with token-budget governance and |
| 769 | queue-and-drain admission, split the TUI command surface into focused modules, |
| 770 | and landed reliability fixes for app-server teardown, JavaScript-execution |
| 771 | proxying, and DeepSeek thinking tool calls — alongside community contributions. |
| 772 | |
| 773 | - **[donglovejava](https://github.com/donglovejava)** — per-worker sub-agent |
| 774 | token-budget enforcement, so a `token_budget`/`max_tokens` on an individual |
| 775 | `agent` call bounds that worker mid-run with a clean `budget_exhausted` stop |
| 776 | (#3321, harvested) |
| 777 | - **[cyq1017](https://github.com/cyq1017)** — `js_execution` proxy-environment |
| 778 | handling (#3331), Hugging Face API-key env in the auth probe (#3329), and Codex |
| 779 | Responses request retry (#3344) — harvested into the train |
| 780 | - **[aboimpinto](https://github.com/aboimpinto)** — FEAT-005 command extraction: |
| 781 | core/session command groups split into focused modules via `RegisterCommand`, |
| 782 | `/swarm` migration, and Gherkin acceptance coverage (#3330, merged literally |
| 783 | with authorship preserved) |
| 784 | - **[wuisabel-gif](https://github.com/wuisabel-gif)** — tear down the delegated |
| 785 | serve/app-server child process when the dispatcher exits (#3259 / #3317) |
| 786 | - **[nightt5879](https://github.com/nightt5879)** — keep the onboarding marker in |
| 787 | the codewhale home view (#3302) and branch-hygiene check hardening (#3348) |
| 788 | - **[gaord](https://github.com/gaord)** — preserve thinking/tool blocks when |
| 789 | seeding a thread from a saved session, plus Hugging Face provider env (#3329) |
| 790 | - **[greyfreedom](https://github.com/greyfreedom)** — persist ask-permission rules |
| 791 | from approvals and stabilize the CI verifier/provider-registry checks |
| 792 | - Reports that shaped fixes: **[lordwedggie](https://github.com/lordwedggie)** |
| 793 | (#3331 proxy env), **[Final527](https://github.com/Final527)** (#3240 legacy |
| 794 | state migration), **[dxfq](https://github.com/dxfq)** (#3228 sidebar default) |
| 795 | |
| 796 | </details> |
| 797 | |
| 798 | <details> |
| 799 | <summary><strong>v0.8.62 — provider/model routing, TOML comment preservation & community closeout</strong></summary> |
| 800 | |
| 801 | |
| 802 | The v0.8.62 release retuned provider/model routing (GLM-5.2 as the default direct |
| 803 | Z.AI model, `type: "explore"` sub-agents defaulting to the cheaper same-family |
| 804 | sibling), added TOML comment preservation and the Codewhale-only skill discovery |
| 805 | gate, and shipped the static Linux x64 musl binary — alongside a broad community |
| 806 | closeout and a retroactive credit reconciliation pass. |
| 807 | |
| 808 | - **[zlh124](https://github.com/zlh124)** — preserve user comments and formatting |
| 809 | when rewriting `config.toml`/`settings.toml`/`tui.toml` (with a malformed-file |
| 810 | fallback) and Linux build deps in the cargo install guides (#3270) |
| 811 | - **[idling11](https://github.com/idling11)** — Kimi `type:object` schema root for |
| 812 | all parameter shapes (#3281), `approval_mode` restore on Plan→Agent with a |
| 813 | wait-for-user guard (#3279), and workroom metadata draft types |
| 814 | - **[LeoLin990405](https://github.com/LeoLin990405)** — Poppler `pdftotext -v` |
| 815 | detection (#1667), session persistence before stall/cancel recovery (#2739), |
| 816 | and debounced thinking-stream re-renders (#1620) |
| 817 | - **[nightt5879](https://github.com/nightt5879)** — Codewhale-only skill discovery |
| 818 | gate (`[skills].scan_codewhale_only`) ignoring cross-tool directories (#3296) and |
| 819 | app-server no-auth loopback docs |
| 820 | - **[reidliu41](https://github.com/reidliu41)** — slash commands exposed as hotbar |
| 821 | actions (#3269) |
| 822 | - **[wavezhang](https://github.com/wavezhang)** — static Linux x64 (musl) release |
| 823 | binaries |
| 824 | - **[wuisabel-gif](https://github.com/wuisabel-gif)** — per-tool snapshot gate |
| 825 | respecting `[snapshots].enabled` (#3292) and composer history written under |
| 826 | `.codewhale` |
| 827 | - **[gaord](https://github.com/gaord)** — `workspace_follow_symlinks` setting for |
| 828 | symlink-aware tool operations with hardened path handling |
| 829 | - **[greyfreedom](https://github.com/greyfreedom)** — ask-permission rules honored |
| 830 | at runtime (#3295) |
| 831 | - **[aboimpinto](https://github.com/aboimpinto)** — EPIC-001 command-boundary |
| 832 | replay and user-registry review feedback |
| 833 | - **[h3c-hexin](https://github.com/h3c-hexin)** — volatile workspace path moved |
| 834 | out of the static system prefix (prefix-cache hygiene) |
| 835 | - **[hongchen1993](https://github.com/hongchen1993)** — heuristic-only auto routing |
| 836 | when the flash router is unavailable |
| 837 | - **[lucaszhu-hue](https://github.com/lucaszhu-hue)** — Atlas Cloud provider setup |
| 838 | docs |
| 839 | - Retroactive reconciliation (shipped earlier, credited now): |
| 840 | **[manaskarra](https://github.com/manaskarra)** / **[xfy6238](https://github.com/xfy6238)** (#1157), |
| 841 | **[djairjr](https://github.com/djairjr)** (#1309 alongside reidliu41), |
| 842 | **[Geallier](https://github.com/Geallier)** (#1470), |
| 843 | **[quentin-lian](https://github.com/quentin-lian)** / **[k0tran](https://github.com/k0tran)** (#1531 / #1992), |
| 844 | **[F1LT3R](https://github.com/F1LT3R)** (#1656), |
| 845 | **[cmyyy](https://github.com/cmyyy)** (#1842), |
| 846 | **[Final527](https://github.com/Final527)** (#3058) |
| 847 | |
| 848 | </details> |
| 849 | |
| 850 | <details> |
| 851 | <summary><strong>v0.8.61 — runtime control plane & community closeout</strong></summary> |
| 852 | |
| 853 | |
| 854 | The v0.8.61 release was a community closeout: the runtime control plane, provider |
| 855 | patches, and TUI fixes landed alongside first-time and returning contributor work. |
| 856 | |
| 857 | - **[idling11](https://github.com/idling11)** — DeepInfra provider support with |
| 858 | OpenAI-compatible routing and model registry entries (#3235, closes #3231) |
| 859 | - **[greyfreedom](https://github.com/greyfreedom)** — atomic ask-only |
| 860 | permission-rule persistence so an execution-policy rule survives the write |
| 861 | that triggered the prompt (#3233) |
| 862 | - **[VincentCorleone](https://github.com/VincentCorleone)** — WeChat bridge |
| 863 | (`integrations/weixin-bridge`) leveraging Feishu + Tencent OpenClaw (#3206) |
| 864 | - **[nightt5879](https://github.com/nightt5879)** — whale-accent rename (#3197) |
| 865 | and `$skillname` aliases for `/skill` activation (#3241) |
| 866 | - **[mvanhorn](https://github.com/mvanhorn)** — non-DeepSeek model pricing |
| 867 | coverage (#3201) |
| 868 | - **[cyq1017](https://github.com/cyq1017)** — Telegram polling transport |
| 869 | (#3195) and VS Code read-only API documentation (#3013) |
| 870 | - **[RobertEmprechtinger](https://github.com/RobertEmprechtinger)** — mobile |
| 871 | event history (#3220) |
| 872 | - **[gaord](https://github.com/gaord)** — runtime-API session save (#3199) |
| 873 | - **[hongchen1993](https://github.com/hongchen1993)** — `DEEPSEEK_BASE_URL` / |
| 874 | `MODEL` honored in `exec` (#3221) |
| 875 | |
| 876 | </details> |
| 877 | |
| 878 | <details> |
| 879 | <summary><strong>Forward track — recent v0.9 work (newest)</strong></summary> |
| 880 | |
| 881 | |
| 882 | - **[xyuai](https://github.com/xyuai)** — canonical Codewhale settings path, |
| 883 | provider persistence, provider picker, logout-scope, and MiMo auth cleanup |
| 884 | work (#2730, #2714, #2715, #2717, #2718) |
| 885 | - **[shenjackyuanjie](https://github.com/shenjackyuanjie)** — HarmonyOS / |
| 886 | OpenHarmony porting work and MatePad Edge validation trail (#2634) |
| 887 | - **[ousamabenyounes](https://github.com/ousamabenyounes)** — AZERTY/AltGr |
| 888 | composer shortcut fix for Windows keyboard layouts (#2863, #2867) |
| 889 | - **[reidliu41](https://github.com/reidliu41)** — hotbar action-registry |
| 890 | foundation and Ollama model-completion cleanup for the forward track (#2866, |
| 891 | #2742) |
| 892 | - **[ljm3790865](https://github.com/ljm3790865)** — multi-tab |
| 893 | core/persistence foundation and broader tab collaboration direction (#2864, |
| 894 | #2753) |
| 895 | - **[sximelon](https://github.com/sximelon)** — saved-session resume footer |
| 896 | hint work plus provider-trait metadata registry direction reviewed and |
| 897 | harvested for the forward track (#2758, #2760, #2479) |
| 898 | - **[aboimpinto](https://github.com/aboimpinto)** — sidebar command polish and |
| 899 | pausable custom-command lifecycle direction harvested into the forward track, |
| 900 | plus the directly merged command-support boundary cleanup and broader command |
| 901 | layer design direction (#2788, #2732, #2871, #2851, #2791) |
| 902 | - **[AdityaVG13](https://github.com/AdityaVG13)** — Workflow orchestration |
| 903 | and cost-tracking drafts that shaped the maintained workflow IR and |
| 904 | TraceStore foundation (#2482, #2486) |
| 905 | - **[lbcheng888](https://github.com/lbcheng888)**, |
| 906 | **[AiurArtanis](https://github.com/AiurArtanis)**, and |
| 907 | **[nasus9527](https://github.com/nasus9527)** — VS Code extension scaffold |
| 908 | direction, Agent View request, and IDE plugin request that shaped the |
| 909 | official Phase 0 extension (#1022, #1584, #2580) |
| 910 | - **[HUQIANTAO](https://github.com/HUQIANTAO)** — `web_run` cache-state |
| 911 | lock-splitting, turn-metadata prefix-cache stability, and project-context |
| 912 | cache work (#2502, #2517, #2636) |
| 913 | - **[idling11](https://github.com/idling11)** — PlanArtifact continuity, |
| 914 | dense tool-call transcript collapse, sidebar detail popovers, and |
| 915 | HarnessPosture provider/model policy direction (#2733, #2738, #2734, |
| 916 | #2741, #2692, #2694, #2693) |
| 917 | - **[h3c-hexin](https://github.com/h3c-hexin)** — sub-agent model inheritance, |
| 918 | configured `skills_dir` discovery, prompt-environment stability, and static |
| 919 | prompt composer direction (#2736, #2737, #2786) |
| 920 | - **[gaord](https://github.com/gaord)** — runtime thread workspace updates and |
| 921 | completed-thread saved-session API work (#2640, #2639) |
| 922 | - **[cyq1017](https://github.com/cyq1017)** — trusted workspace MCP config, |
| 923 | provider auth rollback, custom search endpoint, custom completion sound, |
| 924 | restore-listing, and pending-input delivery-mode label work (#2751, #2755, |
| 925 | #2510, #2512, #2513, #2532, #2054) |
| 926 | - **[yusufgurdogan](https://github.com/yusufgurdogan)** — Sofya search |
| 927 | provider implementation harvested as a non-default search backend (#2790) |
| 928 | - **[LeoAlex0](https://github.com/LeoAlex0)** — runtime prompt metadata cache |
| 929 | direction harvested into the maintained prompt/cache path (#2687); |
| 930 | `allow_shell` prefix-cache decoupling and `visibility="internal"` |
| 931 | explanation for mode-flip stability (#2949, #2951) |
| 932 | - **[hongchen1993](https://github.com/hongchen1993)** — Volcengine provider |
| 933 | in TUI dispatcher and dispatcher API-key preference (#2923, #2928) |
| 934 | - **[NASLXTO](https://github.com/NASLXTO)** and |
| 935 | **[wuxixing](https://github.com/wuxixing)** — large-workspace startup |
| 936 | reports that shaped the bounded project-context fallback (#697, #1827) |
| 937 | - **[shuxiangxuebiancheng](https://github.com/shuxiangxuebiancheng)**, |
| 938 | **[hongqitai](https://github.com/hongqitai)**, and |
| 939 | **[cyq1017](https://github.com/cyq1017)** — third-party |
| 940 | OpenAI-compatible path-suffix report and follow-up review trail (#1874, |
| 941 | #2508, #2506) |
| 942 | |
| 943 | |
| 944 | </details> |
| 945 | |
| 946 | <details> |
| 947 | <summary><strong>Recurring & historical contributors</strong></summary> |
| 948 | |
| 949 | |
| 950 | - **[merchloubna70-dot](https://github.com/merchloubna70-dot)** — 28 PRs spanning features, fixes, and VS Code extension scaffolding (#645–#681) |
| 951 | - **[WyxBUPT-22](https://github.com/WyxBUPT-22)** — Markdown rendering for tables, bold/italic, and horizontal rules (#579) |
| 952 | - **[loongmiaow-pixel](https://github.com/loongmiaow-pixel)** — Windows + China install documentation (#578) |
| 953 | - **[20bytes](https://github.com/20bytes)** — User memory docs and help polish (#569) |
| 954 | - **[staryxchen](https://github.com/staryxchen)** — glibc compatibility preflight (#556) |
| 955 | - **[Vishnu1837](https://github.com/Vishnu1837)** — glibc compatibility improvements and terminal restoration on SIGINT/SIGTERM (#565, #1586) |
| 956 | - **[shentoumengxin](https://github.com/shentoumengxin)** — Shell `cwd` boundary validation (#524) |
| 957 | - **[toi500](https://github.com/toi500)** — Windows paste fix report |
| 958 | - **[xsstomy](https://github.com/xsstomy)** — Terminal startup repaint report |
| 959 | - **[melody0709](https://github.com/melody0709)** — Slash-prefix Enter activation report |
| 960 | - **[lloydzhou](https://github.com/lloydzhou)** and **[jeoor](https://github.com/jeoor)** — Compaction cost reports; lloydzhou also contributed deterministic environment context (#813, #922) and KV prefix-cache stabilisation (#1080) |
| 961 | - **[Agent-Skill-007](https://github.com/Agent-Skill-007)** — README clarity pass (#685) |
| 962 | - **[woyxiang](https://github.com/woyxiang)** — Windows install documentation (#696) |
| 963 | - **[wangfeng](mailto:wangfengcsu@qq.com)** — Pricing/discount info update (#692) |
| 964 | - **[zichen0116](https://github.com/zichen0116)** — CODE_OF_CONDUCT.md (#686) |
| 965 | - **[dfwqdyl-ui](https://github.com/dfwqdyl-ui)** — model ID case-sensitivity compatibility report (#729) |
| 966 | - **[Oliver-ZPLiu](https://github.com/Oliver-ZPLiu)** — stale `working...` state bug report, Windows clipboard fallback, MCP Streamable HTTP session fixes, and Homebrew tap automation (#738, #850, #1643, #1631) |
| 967 | - **[reidliu41](https://github.com/reidliu41)** — resume hint, workspace trust persistence, Ollama provider support, thinking-block stream finalization, CI cache hardening, streaming wrap, and DeepSeek model completions (#863, #870, #921, #1078, #1603, #1628, #1601) |
| 968 | - **[xieshutao](https://github.com/xieshutao)** — plain Markdown skill fallback (#869) |
| 969 | - **[GK012](https://github.com/GK012)** — npm wrapper `--version` fallback (#885) |
| 970 | - **[y0sif](https://github.com/y0sif)** — parent turn-loop wakeup after direct child sub-agent completion (#901) |
| 971 | - **[mac119](https://github.com/mac119)** and **[leo119](https://github.com/leo119)** — `codewhale update` command documentation (#838, #917) |
| 972 | - **[dumbjack](https://github.com/dumbjack)** / **浩淼的mac** — command-safety null-byte hardening (#706, #918) |
| 973 | - **macworkers** — fork confirmation with the new session id (#600, #919) |
| 974 | - **zero** and **[zerx-lab](https://github.com/zerx-lab)** — notification condition config and richer OSC 9 notification body (#820, #920) |
| 975 | - **[chnjames](https://github.com/chnjames)** — cached @mention completions, config recovery polish, and Windows UTF-8 shell output (#849, #927, #982, #1018) |
| 976 | - **[angziii](https://github.com/angziii)** — config safety, async cleanup, Docker hardening, and command-safety fixes (#822, #824, #827, #831, #833, #835, #837) |
| 977 | - **[elowen53](https://github.com/elowen53)** — UTF-8 decoding and deterministic test coverage (#825, #840) |
| 978 | - **[wdw8276](https://github.com/wdw8276)** — `/rename` command for custom session titles (#836) |
| 979 | - **[banqii](https://github.com/banqii)** — `.cursor/skills` discovery path support (#817) |
| 980 | - **[junskyeed](https://github.com/junskyeed)** — dynamic `max_tokens` calculation for API requests (#826) |
| 981 | - **Hafeez Pizofreude** — SSRF protection in `fetch_url` and Star History chart |
| 982 | - **Unic (YuniqueUnic)** — Schema-driven config UI (TUI + web) |
| 983 | - **Jason** — SSRF security hardening |
| 984 | - **[axobase001](https://github.com/axobase001)** — snapshot orphan cleanup, npm install guards, session telemetry fixes, model-scope cache clear, symlinked skill support, npm mirror-escape-hatch guidance, proxy preservation for child tasks, mobile runtime control, Docker toolbox docs, large-output receipts, and activity detail context (#975, #1032, #1047, #1049, #1052, #1019, #1051, #1056, #1608, #1968, #2296, #2297, #2298) |
| 985 | - **[MengZ-super](https://github.com/MengZ-super)** — `/theme` command foundation and SSE gzip/brotli decompression (#1057, #1061) |
| 986 | - **[DI-HUO-MING-YI](https://github.com/DI-HUO-MING-YI)** — Plan-mode read-only sandbox safety fix (#1077) |
| 987 | - **[bevis-wong](https://github.com/bevis-wong)** — precise paste-Enter auto-submit reproducer (#1073) |
| 988 | - **[Duducoco](https://github.com/Duducoco)** and **[AlphaGogoo](https://github.com/AlphaGogoo)** — skills slash-menu and `/skills` coverage fix (#1068, #1083) |
| 989 | - **[ArronAI007](https://github.com/ArronAI007)** — window-resize artifact fix for macOS Terminal.app and ConHost (#993) |
| 990 | - **[THINKER-ONLY](https://github.com/THINKER-ONLY)** — OpenRouter and custom-endpoint model-ID preservation (#1066) |
| 991 | - **[Jefsky](https://github.com/Jefsky)** — DeepSeek endpoint correction report (#1079, #1084) |
| 992 | - **[wlon](https://github.com/wlon)** — NVIDIA NIM provider API-key preference diagnosis (#1081) |
| 993 | - **[Horace Liu](https://github.com/liuhq)** — Nix package support and install documentation (#1173) |
| 994 | - **[jieshu666](https://github.com/jieshu666)** — terminal repaint flicker reduction (#1563) |
| 995 | - **[gordonlu](https://github.com/gordonlu)** — Windows Enter / CSI-u input fix, status picker localization (7 MessageIds), approval dialog localization across 7 locales, and mode picker + composer Vim indicator localization across 7 locales (#1612, #2896, #2891, #2239) |
| 996 | - **[mdrkrg](https://github.com/mdrkrg)** — first-run onboarding crash fix when the API key is missing (#1598) |
| 997 | - **[Aitensa](https://github.com/Aitensa)** — CJK wrapping propagation for diff and pager output (#1622) |
| 998 | - **[qiyan233](https://github.com/qiyan233)** — legacy DeepSeek CN provider alias compatibility (#1645) |
| 999 | - **[zlh124](https://github.com/zlh124)** — WSL2/headless startup report, clipboard-init fix, Codewhale tab-title polish, localized context-menu labels, and approval-dialog fixes (#1772, #1773, #2319, #2320, #2325) |
| 1000 | - **[aboimpinto](https://github.com/aboimpinto)** — Windows alt-screen |
| 1001 | logging, Home/End composer, runtime log follow-ups, sidebar command polish, |
| 1002 | and pausable command lifecycle work (#1774, #1776, #1748, #1749, #1782, |
| 1003 | #1783, #2788, #2732) |
| 1004 | - **[LeoLin990405](https://github.com/LeoLin990405)** — provider model passthrough, reasoning replay, thinking-only turn, and Windows quoting fixes (#1740, #1743, #1742, #1744) |
| 1005 | - **[nightt5879](https://github.com/nightt5879)** — Ctrl+C prompt restore, provider registry drift docs, tool-search defaults, footer git branch display, and startup prompt interactivity (#1764, #2274, #2344, #2347, #2373) |
| 1006 | - **[donglovejava](https://github.com/donglovejava)** — paste @file consolidation, CJK panic fix, user feedback, RLM routing, edit_file retry, hidden-worktree discovery skip, IME composer routing, and eager shell companion tools (#2154-#2168, #2302, #2329, #2330, #2331) |
| 1007 | - **[encyc](https://github.com/encyc)** — session token breakdown in footer and `/status` (#2152) |
| 1008 | - **[saieswar237](https://github.com/saieswar237)** — review pipeline docs (#2178) |
| 1009 | - **[sximelon](https://github.com/sximelon)** — paste Enter suppression, key handler extraction (#2174, #2042) |
| 1010 | - **[nanookclaw](https://github.com/nanookclaw)** — search provider in doctor output (#2135) |
| 1011 | - **[Sskift](https://github.com/Sskift)** — CLI default env override prevention and statusline footer clearing (#2119, #2248) |
| 1012 | - **[xin1104](https://github.com/xin1104)** — Homebrew codewhale binary install (#2105) |
| 1013 | - **[mrluanma](https://github.com/mrluanma)** — Metaso search provider (#2059) |
| 1014 | - **[Lellansin](https://github.com/Lellansin)** — skip config merge at home dir (#2055) |
| 1015 | - **[zhuangbiaowei](https://github.com/zhuangbiaowei)** — update release channels and legacy MCP SSE fixes (#2145, #2301) |
| 1016 | - **[cy2311](https://github.com/cy2311)** — Windows `.bat` launcher for Codewhale (#1861) |
| 1017 | - **[LING71671](https://github.com/LING71671)** — effective cost currency context, custom provider docs, and core tool taxonomy prompt block (#1902, #2287, #2292) |
| 1018 | - **[dzyuan](https://github.com/dzyuan)** — Volcengine provider support with DeepSeek V4 Pro/Flash models (#1993) |
| 1019 | - **[mvanhorn](https://github.com/mvanhorn)** — live request-shape test factories and global `~/.agents/AGENTS.md` fallback (#2107, #2236) |
| 1020 | - **[malsony](https://github.com/malsony)** — Matrix-inspired theme and theme picker improvements (#2129) |
| 1021 | - **[gaord](https://github.com/gaord)** — external GUI runtime event bridge, session detail serialization, and skills API discovery alignment (#2133, #2265, #2285) |
| 1022 | - **[yuanchenglu](https://github.com/yuanchenglu)** — Feishu per-chat model switching (#2149) |
| 1023 | - **[HUQIANTAO](https://github.com/HUQIANTAO)** — Xiaomi balance/status work, stalled-turn recovery, approval intent summaries, mobile smoke/QR support, Claude theme, and broad docs/test/CI coverage (#2257, #2267, #2283, #2384, #2385, #2389, #2403, #2440-#2458, #2460) |
| 1024 | - **[h3c-hexin](https://github.com/h3c-hexin)** — web-search URL decoding, prompt/instructions override hooks, sub-agent guidance, SSRF fake-IP trust configuration, and prompt-cache-friendly environment placement (#2245, #2311, #2313, #2314, #2354, #2355, #2356) |
| 1025 | - **[tdccccc](https://github.com/tdccccc)** — approval prompt key-detail and shell-preview work harvested into the maintained approval path (#1991, #2269) |
| 1026 | - **[AresNing](https://github.com/AresNing)** — first-run guide, message-submit hook transform design, and turn-end observer hook work harvested into the maintained hooks path (#2278, #2318, #2434, #2578) |
| 1027 | - **[Implementist](https://github.com/Implementist)** — Volcengine Ark search provider and reliability hardening (#2426, #2429, #2439) |
| 1028 | - **[lihuan215](https://github.com/lihuan215)** — Unix socket hook sink design harvested into the opt-in hook event path (#2333, #2430) |
| 1029 | - **[AdityaVG13](https://github.com/AdityaVG13)** — Xiaomi MiMo provider support (#2246) |
| 1030 | - **[New2Niu](https://github.com/New2Niu)** — macOS display notifications (#2260) |
| 1031 | - **[AiurArtanis](https://github.com/AiurArtanis)** — Solarized Light theme and |
| 1032 | canonical-background regression report (#2270, #4457) |
| 1033 | - **[Lee-take](https://github.com/Lee-take)** — task migration and session environment isolation fixes (#2272) |
| 1034 | - **[LeoAlex0](https://github.com/LeoAlex0)** — session persistence fixes for message counts and tool-output cache preservation (#2388, #2395) |
| 1035 | - **[jimmyzhuu](https://github.com/jimmyzhuu)** — Baidu AI Search backend for `web_search` (#2371) |
| 1036 | - **[rockyzhang](https://github.com/rockyzhang)** — RISC-V prebuilt binary support (#2383) |
| 1037 | - **[mo-vic](https://github.com/mo-vic)** — `/purge` slash command for agent-driven context pruning (#2387) |
| 1038 | - **[hufanexplore](https://github.com/hufanexplore)** — Java and Vue language-server defaults (#2367) |
| 1039 | - **[hoclaptrinh33](https://github.com/hoclaptrinh33)** — Vietnamese localization support (#2358) |
| 1040 | - **[AccMoment](https://github.com/AccMoment)** — proxy option for the update command (#2281) |
| 1041 | - **[idling11](https://github.com/idling11)** — durable debt ledger and `/hunt` rename/trophy-card work (#2161, #2306) |
| 1042 | - **[cyq1017](https://github.com/cyq1017)** — runtime event envelope, render-diff debug logging, and deterministic composer history flushing (#2252, #2332, #2375) |
| 1043 | - **[hongqitai](https://github.com/hongqitai)** — state schema parent-entry support and clippy/fmt cleanup (#2308, #2432) |
| 1044 | - **[BryonGo](https://github.com/BryonGo)** — effective-model compaction budgeting fix (#2437) |
| 1045 | - **[xyuai](https://github.com/xyuai)** — provider persistence to config, /logout scope clarification, provider picker key replacement shortcut, MiMo auth state cleanup (#2714, #2715, #2717, #2718) |
| 1046 | - **[RefuseOdd](https://github.com/RefuseOdd)** — configurable `path_suffix` for OpenAI-compatible endpoints (#2558) |
| 1047 | |
| 1048 | |
| 1049 | </details> |
| 1050 | |
| 1051 | <details> |
| 1052 | <summary><strong>v0.8.48 — reports, repros & verification (earliest listed)</strong></summary> |
| 1053 | |
| 1054 | Reports, repros, and verification that shaped v0.8.48 also deserve visible |
| 1055 | credit: **[@buko](https://github.com/buko)**, **[@yyyCode](https://github.com/yyyCode)**, |
| 1056 | **[@gaslebinh-glitch](https://github.com/gaslebinh-glitch)**, **[@Dr3259](https://github.com/Dr3259)**, |
| 1057 | **[@lpeng1711694086-lang](https://github.com/lpeng1711694086-lang)**, **[@VerrPower](https://github.com/VerrPower)**, |
| 1058 | **[@yan-zay](https://github.com/yan-zay)**, **[@jretz](https://github.com/jretz)**, |
| 1059 | **[@Neo-millunnium](https://github.com/Neo-millunnium)**, **[@caeserchen](https://github.com/caeserchen)**, |
| 1060 | **[@T-Phuong-Nguyen](https://github.com/T-Phuong-Nguyen)**, **[@zhyuzhyu](https://github.com/zhyuzhyu)**, |
| 1061 | **[@0gl20shk0sbt36](https://github.com/0gl20shk0sbt36)**, **[@hatakes](https://github.com/hatakes)**, |
| 1062 | **[@goodvecn-dev](https://github.com/goodvecn-dev)**, **[@bevis-wong](https://github.com/bevis-wong)**, |
| 1063 | **[@PurplePulse](https://github.com/PurplePulse)**, and **[@nbiish](https://github.com/nbiish)**. |
| 1064 | |
| 1065 | --- |
| 1066 | |
| 1067 | </details> |
| 1068 | |
| 1069 | <details> |
| 1070 | <summary><strong>Reconciled credits — earlier contributors restored to the record</strong></summary> |
| 1071 | |
| 1072 | A credit-reconciliation pass mapped every shipped commit author to a GitHub |
| 1073 | handle and found these contributors whose merged work was not yet listed here or |
| 1074 | in the changelog. Restoring them with thanks — every one shipped real code. |
| 1075 | |
| 1076 | - **[MoriTang](https://github.com/MoriTang)** — account balance status-bar item, with a request timeout, reused HTTP client, stale-balance-on-failure handling, and DeepSeek-gated display |
| 1077 | - **[mars-base](https://github.com/mars-base)** — session title shown in the composer border and `gh` discovery across common install paths (#836) |
| 1078 | - **[Giggitycountless](https://github.com/Giggitycountless)** — auto-add `.deepseek/` to `.gitignore`, gitignore-check robustness, and `/clear` resetting the Todos panel |
| 1079 | - **[Inference1](https://github.com/Inference1)** — vLLM provider support, README pricing/structure clarity, and the Model Studio reasoning route guard: a fail-closed host check so Alibaba's `enable_thinking` never reaches a custom gateway, plus catching that Codewhale was sending a disable switch to the always-thinking `qwen3.8-max` (#737, #776, #5233) |
| 1080 | - **[membphis](https://github.com/membphis)** — bordered Markdown table rendering and Shift+Enter newline in the composer (#801) |
| 1081 | - **[JasonOA888](https://github.com/JasonOA888)** — `web_run` network-policy enforcement and refusing to snapshot `$HOME` (#798, #800) |
| 1082 | - **[tuohai666](https://github.com/tuohai666)** — recursive skills-directory reading plus hook-dispatch and approval-branch test coverage (#811) |
| 1083 | - **[xuezhaoyu](https://github.com/xuezhaoyu)** — DEC 2026 synchronized-update flicker fix for GPU terminals, guaranteeing `END_SYNC_UPDATE` even when a draw fails |
| 1084 | - **[manaskarra](https://github.com/manaskarra)** — global `~/.deepseek/AGENTS.md` fallback loading (#1157) |
| 1085 | - **[gerryqi](https://github.com/gerryqi)** — wrap fire-and-forget `spawn_blocking` calls with a panic dump (#810) |
| 1086 | - **[ccomma](https://github.com/ccomma)** — skip snapshots for dangerous workspaces (#804) |
| 1087 | - **[AGSaturn](https://github.com/AGSaturn)** — preserve requested model-ID casing in registry resolution (#733) |
| 1088 | - **[wucm667](https://github.com/wucm667)** — accept provider-prefixed DeepSeek model IDs (#794) |
| 1089 | - **[quentin-lian](https://github.com/quentin-lian)** — portable-pty 0.9 upgrade for LoongArch64 support (#1992) |
| 1090 | - **[Beltran12138](https://github.com/Beltran12138)** — treat `deepseek-chat` / `deepseek-reasoner` aliases as reasoning models |
| 1091 | - **[chuntseevolving](https://github.com/chuntseevolving)** — send `TurnStarted` before snapshot to prevent WSL2 timeout |
| 1092 | - **[lawrencewzen](https://github.com/lawrencewzen)** — preserve UTF-8 while stripping ANSI |
| 1093 | - **[hhhaiai](https://github.com/hhhaiai)** — keep workspace skills visible when the prompt budget truncates |
| 1094 | - **[khalid-hungerstation](https://github.com/khalid-hungerstation)** — bundle the delegate skill alongside skill-creator |
| 1095 | - **[Anyexyz](https://github.com/Anyexyz)** — GitHub Actions workflow to sync with the CNB repo |
| 1096 | - **[nightfallsad](https://github.com/nightfallsad)** — clearer `/continue` hint copy |
| 1097 | - **[zxyasfas](https://github.com/zxyasfas)** — align Rust MSRV references with the workspace (#739) |
| 1098 | |
| 1099 | _A follow-up audit of harvested commits (work reimplemented onto a maintainer |
| 1100 | branch rather than merged) surfaced contributors whose machine-readable credit |
| 1101 | was dropped. Restoring them here — every one shipped real code:_ |
| 1102 | |
| 1103 | - **[CrepuscularIRIS](https://github.com/CrepuscularIRIS)** — OpenHarmony→Linux npm binary mapping, O(1) job-panel refresh, file-mention UTF-8 boundary safety, Kitty keyboard protocol on Windows, and auto low-motion under Termius/SSH (#1479, #1483, #1494, #1495, #1499, #1475) |
| 1104 | - **[MMMarcinho](https://github.com/MMMarcinho)** — `image_analyze` vision tool (#1467) |
| 1105 | - **[MeAiRobot](https://github.com/MeAiRobot)** — toast-stack overlay z-order fix (#1485) |
| 1106 | - **[NorethSea](https://github.com/NorethSea)** — `update` refreshing the sibling TUI binary (#1492) |
| 1107 | - **[SamhandsomeLee](https://github.com/SamhandsomeLee)** — bundled |
| 1108 | v4-best-practices skill (#1448) and input-budget-aware compaction trigger |
| 1109 | (#4293) |
| 1110 | - **[YaYII](https://github.com/YaYII)** — opt-in `/translate` command (#1462) |
| 1111 | - **[sandofree](https://github.com/sandofree)** — Tavily and Bocha `web_search` backends (#1294) |
| 1112 | - **[tiger-dog](https://github.com/tiger-dog)** — approval one-line banner and Markdown underscore handling (#1455) |
| 1113 | - **[Jianfengwu2024](https://github.com/Jianfengwu2024)** — preserving MSVC toolchain vars in the child environment (#1487) |
| 1114 | - **[wplll](https://github.com/wplll)** — prompt-cache warmup keys, tool-catalog handling, a dedup test, and pack ordering (#2390, #2391, #2392, #2393) |
| 1115 | |
| 1116 | Additional harvested PRs from the same audit, credited to contributors already |
| 1117 | listed above: **[axobase001](https://github.com/axobase001)** (#2400, #2405, #2406, #2407, #2408, #2415), **[cyq1017](https://github.com/cyq1017)** (#2516, #2534, #2540), **[Oliver-ZPLiu](https://github.com/Oliver-ZPLiu)** (#1451, #1456), **[reidliu41](https://github.com/reidliu41)** (#1444, #1493), **[lucaszhu-hue](https://github.com/lucaszhu-hue)** (#1436, #2343), **[h3c-hexin](https://github.com/h3c-hexin)** (#1480), **[Duducoco](https://github.com/Duducoco)** (#1345), **[zhuangbiaowei](https://github.com/zhuangbiaowei)** (#1416), **[wdw8276](https://github.com/wdw8276)** (#1498), and **[buko](https://github.com/buko)** (#2377). |
| 1118 | |
| 1119 | _A further machine-credit pass restored these contributors, missing from both the |
| 1120 | list above and the contribution graph (AUTHOR_MAP entries added; logins/IDs |
| 1121 | verified against the GitHub user API) — every one shipped real code:_ |
| 1122 | |
| 1123 | - **[1Git2Clone](https://github.com/1Git2Clone)** — `Ctrl+P`/`Ctrl+N` slash-menu navigation |
| 1124 | - **[rockeverm3m](https://github.com/rockeverm3m)** — community ACP adapter reference in the docs |
| 1125 | - **[hxy91819](https://github.com/hxy91819)** — stable MCP tool ordering for prefix-cache stability (#1319) |
| 1126 | - **[heloanc](https://github.com/heloanc)** — Home/End keys moving the cursor in the input box (#1246) |
| 1127 | |
| 1128 | **Earlier reports, proposals and reviewed overlap** |
| 1129 | |
| 1130 | - **[dajiaohuang](https://github.com/dajiaohuang)** — independently diagnosed the local-model output-budget problem and submitted a reviewed patch; equivalent behavior had already shipped ([#5883](https://github.com/codewhale-hq/Codewhale/pull/5883)). |
| 1131 | - **[Edouard-Legoupil](https://github.com/Edouard-Legoupil)** — proposed user-controlled skill evolution from repeated work and corrections ([#5860](https://github.com/codewhale-hq/Codewhale/issues/5860)). |
| 1132 | - **[freedomlovesfrank](https://github.com/freedomlovesfrank)** — proposed an optional Rust allocator alongside the existing default ([#5872](https://github.com/codewhale-hq/Codewhale/issues/5872)). |
| 1133 | - **[zyxrealhero](https://github.com/zyxrealhero)** — reported malformed tool-call history after a Runtime restart, with a reproduction and payload analysis ([#5823](https://github.com/codewhale-hq/Codewhale/issues/5823)). |
| 1134 | - **[cmdcorp6534](https://github.com/cmdcorp6534)** — reported Chinese IME pre-edit and composer behavior in Windows Terminal, including input shown behind modal dialogs ([#2323](https://github.com/codewhale-hq/Codewhale/issues/2323)). |
| 1135 | - **[ivysrono](https://github.com/ivysrono)** — proposed switching to a configured backup profile after provider rate-limit errors ([#855](https://github.com/codewhale-hq/Codewhale/issues/855)). |
| 1136 | - **[JoeKerF](https://github.com/JoeKerF)** — proposed desktop project and task workflows with managed runtime startup, recovery, and updates ([#4986](https://github.com/codewhale-hq/Codewhale/issues/4986)). |
| 1137 | - **[ShikiSuen](https://github.com/ShikiSuen)** — provided a detailed reproduction of SwiftPM test failures inside the macOS sandbox ([#2617](https://github.com/codewhale-hq/Codewhale/issues/2617)). |
| 1138 | |
| 1139 | </details> |
| 1140 | |
| 1141 | --- |
| 1142 | |
| 1143 | Missed someone? Open an issue or PR — credit is kept current, and names are happily added. See [CONTRIBUTING.md](../CONTRIBUTING.md) to get started. |
| 1144 |