дзеркало
https://github.com/l0ng-ai/openidea.git
синхронізовано 2026-11-09 19:25:54 +02:00
feat(agents): show the agent's background tasks above the composer (#1860)
* fix(agent): don't release an idle native agent while background tasks are running A turn's background tasks (Claude Code's run_in_background commands) outlive the turn: release_when_idle only checked for a running turn and open permission requests, so five minutes after the turn ended it stopped the agent process and orphaned whatever still ran, its result never reaching the conversation. Claude Code reports its live background tasks in stream-json mode: a system/background_tasks_changed event carries the full list on every change. The driver now translates it into an openidea_background_tasks session update (like openidea_retry), the task keeps the list, and the idle release waits while it isn't empty: it checks again after the usual delay, and when the last task is done its report voids the pending schedule and starts the delay over from then. A (re)started process starts with no tasks, so a stale list can never hold the agent up. Signed-off-by: Inf1mum <[email protected]> * feat(agents): show the agent's background tasks above the composer A grey bar above the composer lists what the agent runs in the background (shells, monitors), with how long each has been running and a Stop button per task. The task now carries the background tasks the agent reports, with when each was first seen, and clears them when the process ends. Stop asks Claude Code to end that one task through a new _openidea/stop_task request; the composer's Stop keeps ending only the turn (perTaskStopAffordance). Closes #1788 --------- Signed-off-by: Inf1mum <[email protected]> Co-authored-by: Inf1mum <[email protected]> Co-authored-by: NealimeKenna <[email protected]>
Цей коміт міститься в:
16 files changed
+386
-6
No files matched your search
@@ -50,5 +50,7 @@
|
||||
"Remote connection cancelled": "Remote connection cancelled",
|
||||
"Xdebug is not loaded in PHP {version}": "Xdebug is not loaded in PHP {version}",
|
||||
"{php} runs without Xdebug, so breakpoints are skipped. Install Xdebug 3 for this PHP or choose another PHP interpreter.": "{php} runs without Xdebug, so breakpoints are skipped. Install Xdebug 3 for this PHP or choose another PHP interpreter.",
|
||||
"Open PHP Settings": "Open PHP Settings"
|
||||
"Open PHP Settings": "Open PHP Settings",
|
||||
"Running in the background": "Running in the background",
|
||||
"Couldn't stop the background task": "Couldn't stop the background task"
|
||||
}
|
||||
@@ -6410,5 +6410,7 @@
|
||||
"Remote connection cancelled": "远程连接已取消",
|
||||
"Xdebug is not loaded in PHP {version}": "PHP {version} 未加载 Xdebug",
|
||||
"{php} runs without Xdebug, so breakpoints are skipped. Install Xdebug 3 for this PHP or choose another PHP interpreter.": "{php} 运行时没有 Xdebug,断点会被跳过。请为此 PHP 安装 Xdebug 3,或选择其他 PHP 解释器。",
|
||||
"Open PHP Settings": "打开 PHP 设置"
|
||||
"Open PHP Settings": "打开 PHP 设置",
|
||||
"Running in the background": "后台运行中",
|
||||
"Couldn't stop the background task": "无法停止后台任务"
|
||||
}
|
||||
Reference in new issue
Заблокувати користувача