[pull] main from xintaofei:main - #139
Merged
Merged
Conversation
…d turns claude-agent-acp 0.59.0 keeps a turn's prompt open while a spawned async sub-agent runs, streaming its completion live as the tail of that same turn (#870). Reconcile the transcript watcher with the live view so held-turn content no longer double-renders, the launch card fills in its result, and the "syncing results" strip no longer lingers. - The watcher suppresses only the overlay copy of a held turn's own content and lets the settlement through, carrying the launching tool_use_id, the capped result, and a wire_visible flag for whether the reply is already on the wire. - The launch card flips from "running in background" to its completed/result form in memory from the settlement, matched against live, promoted, and persisted turns — replacing the post-completion detail refetch that duplicated content and dropped the turn's trailing output. - The "syncing results" indicator arms only for settlements whose reply arrives out of turn, so an already-visible held reply no longer strands it. - A turn that ends abnormally releases its tracked background tasks at once.
Codex agents can now define custom models and curate the model list from a structured editor in the agent settings and the model-provider dialogs, instead of a raw JSON field. A custom entry clones an official model as its base and overrides only the fields that differ; enum-valued fields (reasoning summary, verbosity, shell type, apply-patch tool) are edited through dropdowns limited to the values codex actually accepts, and the reasoning level is offered per base from its advertised efforts. The system-prompt field is height-capped. Because codex's `model_catalog_json` is a whole-table replace, the generated catalog reproduces codex's own official models verbatim (minus any the user removed) and appends the custom entries. The official catalog is fetched at runtime from the codex codeg actually launches — the build nested under the pinned codex-acp package, resolved via node's own module resolution — and cached with a live to cache to bundled-snapshot fallback, so the list tracks whatever codex ships rather than a baked snapshot. A compiled-in snapshot is the offline fallback. Only the user's deviations (custom additions, removed officials, default) are persisted; officials are re-derived from the runtime catalog on every write, so newly shipped official models appear without reconfiguration. Overrides are sanitized against the authoritative enum sets before reaching the file, since a single unknown value would make codex reject the whole catalog. An empty config removes the generated files so codex falls back to its own catalog, and a pre-existing hand-written catalog is imported into the editor on load. A notice explains the whole-table-replace behavior whenever a customization is present.
- Claude Code claude-agent-acp 0.58.1 -> 0.59.0 - OpenCode 1.17.18 -> 1.17.20 - OpenClaw 2026.6.11 -> 2026.7.1 (raise Node floor to 22.22.3) - Cline 3.0.39 -> 3.0.40 - CodeBuddy 2.118.2 -> 2.121.2 - Kimi Code 0.23.5 -> 0.24.1 - Grok 0.2.94 -> 0.2.101
- feat(chat-channel): **Telegram Topic mode.** Run multiple sessions inside one Telegram forum supergroup, each bound to its own topic. `/task <description>` opens a new topic and session, `/resume <id>` binds an existing one, and plain text follows up in the current topic. Requires a forum supergroup with the bot as a topic-managing admin. Thanks @AnotiaWang (#322). - feat(codex): **Custom Codex models without hand-editing JSON.** A structured editor in Codex settings lets you define custom models and curate the list — clone an official model, override only what differs, pick enum fields from dropdowns. Official models are read live from the launched Codex, so new ones appear automatically. - feat(grok): **Real Grok permission modes and reasoning effort.** Permission mode now uses Grok's own `--permission-mode` values (old settings migrate automatically), and the reasoning-effort selector follows the chosen model — showing only the efforts it supports, or hiding entirely when it has none. - feat(skills): **Author your own skills.** A new Custom tab in Skill Packs lets you create, edit, duplicate, and delete skills in the shared store and enable them for any agent — write once, reuse everywhere. Import from a local folder or from an agent's existing global skills. - fix(chat): **Async sub-agent results settle cleanly into their turn.** Held-turn content no longer double-renders, the launch card updates in place to its finished result, and the "syncing results" strip stops lingering. - fix(chat): **Correct first-reply stats after resuming a conversation.** The first reply after reopening a conversation no longer absorbs every earlier turn's duration and tokens — each reply reports only its own. - fix(acp): **A session's last error survives a reconnect.** Reconnecting after missing the live error event still shows what went wrong, and a stale error is never resurrected onto a session that moved on. Thanks @ijry (#314). - fix(chat-channel): **Telegram tokens no longer leak; `@username` channels bind correctly.** Bot tokens are scrubbed from error messages, and an `@username` is resolved to its numeric chat id so a follow-up no longer spawns a duplicate agent. - fix(session): **Completed sessions show their true runtime,** computed from start and end timestamps. Thanks @cnYui (#311). - fix(editor): **Windows IME composition is preserved** when typing Chinese, Japanese, or Korean in the built-in editor. Thanks @youxikexue (#332). - fix(docker): **Docker builds include the pnpm workspace config,** so container and self-hosted deployments build cleanly. Thanks @AnotiaWang (#322). - chore(agents): **Bundled agents refreshed** — Claude Code (0.59.0), OpenCode (1.17.20), OpenClaw (2026.7.1), Cline (3.0.40), CodeBuddy (2.121.2), Kimi Code (0.24.1), Grok (0.2.101). ----------------------------- # 发布版本 0.20.3 - 功能(聊天渠道):**Telegram 话题模式。** 在一个 Telegram 论坛超级群里同时跑多个会话,每个会话绑定各自的话题。`/task <描述>` 开新话题并启动新会话,`/resume <id>` 绑定已有会话,纯文本即为当前话题的跟进。需要论坛超级群、并把机器人设为有话题管理权限的管理员。感谢 @AnotiaWang(#322)。 - 功能(Codex):**无需手写 JSON 的 Codex 自定义模型。** Codex 设置里的结构化编辑器让你定义自定义模型、精选列表——克隆官方模型、只覆盖差异字段、枚举字段从下拉选取。官方模型从启动的 Codex 实时读取,新模型会自动出现。 - 功能(Grok):**真实的 Grok 权限模式与推理强度。** 权限模式改用 Grok 自己的 `--permission-mode` 取值(旧设置自动迁移),推理强度选择器跟随所选模型——只显示它支持的强度,无强度调节时则完全隐藏。 - 功能(技能):**创作你自己的技能。** 技能包新增「自定义」标签,可在共享库里创建、编辑、复制、删除技能,并为任意智能体启用——一次编写、处处复用。支持从本地文件夹或某个智能体已有的全局技能导入。 - 修复(聊天):**异步子智能体的结果干净地归入所属回合。** 回合内容不再重复渲染,启动卡片就地更新为完成结果,「同步结果中」提示条不再残留。 - 修复(聊天):**恢复会话后的首条回复统计正确了。** 重开对话后的第一条回复不再吸收之前所有回合的时长与 token,每条回复只报告自己的数据。 - 修复(会话):**会话最近一次错误在重连后保留。** 错过实时错误事件、之后重连仍能看到出错原因,且旧错误不会被复活到已经继续下去的会话上。感谢 @ijry(#314)。 - 修复(聊天渠道):**Telegram token 不再泄漏,`@username` 渠道正确绑定。** 机器人 token 会从错误信息中抹除,`@username` 会解析为数字 chat id,跟进消息不再重复启动智能体。 - 修复(会话):**已完成会话显示真实运行时长,** 依据开始与结束时间戳计算。感谢 @cnYui(#311)。 - 修复(编辑器):**保留 Windows 输入法组词,** 在内置编辑器中输入中日韩文时不再丢字或错乱。感谢 @youxikexue(#332)。 - 修复(Docker):**Docker 构建包含 pnpm workspace 配置,** 容器与自托管部署可正常构建。感谢 @AnotiaWang(#322)。 - 更新(智能体):**内置智能体已刷新** —— Claude Code(0.59.0)、OpenCode(1.17.20)、OpenClaw(2026.7.1)、Cline(3.0.40)、CodeBuddy(2.121.2)、Kimi Code(0.24.1)、Grok(0.2.101)。
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
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 : )