Skip to content

[pull] main from xintaofei:main#152

Merged
pull[bot] merged 13 commits into
MoozLee:mainfrom
xintaofei:main
Jul 22, 2026
Merged

[pull] main from xintaofei:main#152
pull[bot] merged 13 commits into
MoozLee:mainfrom
xintaofei:main

Conversation

@pull

@pull pull Bot commented Jul 22, 2026

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

xintaofei and others added 13 commits July 22, 2026 11:48
The composer reads installed_version from the agent_setting row via a cached list, so an agent whose version is discovered only by the Settings live probe kept showing "not installed". acp_detect_agent_local_version_core now emits app://acp-agents-updated when the probe changes the stored version, so useAcpAgents() reloads and the input box reflects the real state in both desktop and server modes. The event fires only on an actual change to avoid redundant reloads during the settings preflight sweep.
Agent (npm) and plugin (bun) install streams were read as strict UTF-8 and stopped at the first non-UTF-8 byte, so localized OS error text (e.g. GBK on Chinese Windows) truncated the live log and left the captured stderr empty, surfacing install failures with no error detail. Read the streams UTF-8-lossily via a shared helper so the real output is preserved.
…aming

While a delegation-status or background-task poll, or an ask_user_question call, is still in flight, its live tool_call carries no arguments yet (Claude Code sends an arg-less initial tool_call and fills the real input only on a later update). Each such block rendered as an anonymous "running" / "awaiting your answer" row, and repeated re-polls of the same task stacked into visible duplicates.

The delegation and background-task row builders now skip an in-flight poll that has no task id and nothing to show, and AskQuestionResultCard renders nothing until the question text resolves (the live answer is driven by the pinned card). Entries reappear the moment an id or result arrives; the settled transcript is unaffected.
Replace substring-only filtering so inputs like /bmadhelp and /bmhp can
match hyphenated names (e.g. bmad-help), with ranked exact/prefix/
substring/subsequence scoring shared across chat and automation menus.
…s dropdown

Relocate the rich branch selector out of the status bar into the below-composer folder/branch row, mounted per conversation tile so tiled views keep every tile's branch chip. Rebuild its dropdown as a searchable, virtualized flat list that combines the git operations and the local/remote branch tree: type-ahead filtering, prefix-grouped branches (groups collapsed by default), and per-branch actions (switch/merge/rebase/delete) in a right-side flyout.
The exact/prefix/subsequence ordering test collapsed onto one line under
prettier, failing CI; rewrite it to assert the full tier order (adding the
missing prefix case) and add coverage for the primary-over-secondary
guarantee, stable-sort tie ordering, and empty-primary handling.
feat(chat): fuzzy subsequence match for slash commands
Changed-file rows in a reply's artifacts now render as cards that open the file in the workspace tabs on click, with a reveal-in-folder side button, mirroring the New files cards. The inline diff is dropped and removed files render as static cards. The section keeps its own neutral/destructive accent instead of the new-files green.
…turn sum

Kimi emits one usage record per step, and each step's cache-read count re-reads the same growing context prefix. The context-window usage figure summed every step, so a multi-step turn counted the cached prefix repeatedly and reported far more than the model's window, clamping the gauge to a false 100%. It now reads occupancy from the latest step's input side (input plus cache-creation and cache-read tokens) to reflect the current context, while the cumulative token-usage totals stay unchanged.
The message composer is plain text with no link mark, so ProseMirror's
default paste dropped the href and kept the anchor text from a browser's
clipboard HTML — a URL copied from the address bar pasted as the page
title. Paste now prefers the clipboard's text/plain whenever the HTML is
an external fragment, while content copied within the editor (tagged with
data-pm-slice) still round-trips through ProseMirror so paragraphs, hard
breaks, and reference badges are preserved exactly.
@pull pull Bot locked and limited conversation to collaborators Jul 22, 2026
@pull pull Bot added the ⤵️ pull label Jul 22, 2026
@pull
pull Bot merged commit de07777 into MoozLee:main Jul 22, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants