fix(code): count only running tools in live tool-group line - #4809
Merged
Conversation
The live tool-group summary built its present-tense progress line from every tool in the group, so finished calls kept being reported as still running (e.g. "Running 1 shell command, running 2 agents" after the shell command and one agent had completed). Summarize only the in-progress members for the live line, keeping the past-tense line over all tools. Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com>
Mason Daugherty (mdrxy)
requested a review
from Johannes du Plessis (johannes117)
July 16, 2026 21:47
Mason Daugherty (mdrxy)
marked this pull request as ready for review
July 16, 2026 21:47
Johannes du Plessis (johannes117)
approved these changes
Jul 16, 2026
Mason Daugherty (mdrxy)
pushed a commit
that referenced
this pull request
Jul 17, 2026
> [!CAUTION] > Merging this PR will automatically publish to **PyPI** and create a **GitHub release**. For the full release process, see [`.github/RELEASING.md`](https://github.com/langchain-ai/deepagents/blob/main/.github/RELEASING.md). --- _Release notes preview: keep this section in sync with the package `CHANGELOG.md`. The published GitHub release body is extracted from the merged `CHANGELOG.md` by `release.yml`, not from this PR description._ --- ## [0.1.43](deepagents-code==0.1.42...deepagents-code==0.1.43) (2026-07-17) ### Features - Added classifier-backed Auto approval mode behind `DEEPAGENTS_CODE_EXPERIMENTAL=1` ([#4804](#4804)). - Added a shutdown toast for deferred exits ([#4830](#4830)). - Task descriptions that were truncated can now be expanded by clicking or pressing `Ctrl+O` ([#4811](#4811)). - Debug Console clears with `Ctrl+L` now persist after reopening ([#4812](#4812)). - Added debug logging for skill-name override collisions ([#4772](#4772)). ### Bug Fixes - Keep chat input responsive during `/restart` ([#4808](#4808)). - Fixed paste placeholders disappearing when backspacing a newline below them ([#4757](#4757)). - Made markdown `AppMessage` output selectable ([#4814](#4814)). - Fixed live tool-group counts to include only running tools ([#4809](#4809)). - Kept `task` timers monotonic across nested subagent human-in-the-loop flows ([#4771](#4771)). - Preserved goal criteria proposals when marker clearing fails ([#4785](#4785)). - Reduced repeated probing of an unreachable Ollama daemon to once per reload ([#4806](#4806)). - Quieted MCP auth-skip debug logging for known patterns ([#4805](#4805)). - Improved `/version` diagnostics for editable installs and core dependency reporting, including surfacing `langchain-quickjs` ([#4816](#4816), [#4813](#4813)). - Removed the `uv install` tip from the `/version` update hint ([#4822](#4822)). _End release notes preview._ --- > [!NOTE] > A **New Contributors** section is appended to the GitHub release notes automatically at publish time (see [Release Pipeline](https://github.com/langchain-ai/deepagents/blob/main/.github/RELEASING.md#release-pipeline), step 2). --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: langchain-oss-automated-triage[bot] <248757908+langchain-oss-automated-triage[bot]@users.noreply.github.com>
Mason Daugherty (mdrxy)
added a commit
that referenced
this pull request
Jul 24, 2026
The `dcode` tool-group progress line now keeps already-finished tool calls visible (in past tense) while a step is still running. While a step is still running, the collapsed tool-group summary now keeps calls that already finished visible in the past tense next to the ones still in flight (e.g. `Ran 2 shell commands, running 1 agent…`), instead of shrinking to only the running calls. --- PR #4809 fixed finished calls being wrongly reported as still "running" by rebuilding the live line from only the in-progress members. That over-corrected: completed work vanished from the line entirely until the whole step settled, so expanding a `Running 1 agent…` group could reveal several already-finished commands and agents. This reconciles both concerns. The live line is now composed of a past-tense summary of the finished (successful) members plus a present-tense summary of the still-running members, so nothing is mislabeled as running and nothing silently disappears. Failed/rejected/skipped tools are still evicted to standalone rows, and the fully past-tense line shown once everything settles is unchanged. Made by [Open SWE](https://openswe.vercel.app/agents/f22422f0-4fb1-785e-f8d3-34c0b9e3ddd8) Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com>
Marcelo5444
pushed a commit
to Marcelo5444/deepagents
that referenced
this pull request
Jul 30, 2026
…n-ai#4809) Fix the live tool-group progress line in `dcode` so it counts only the tools still running instead of every tool in the step. --- The collapsed tool-group summary's live progress line summarizes the whole assistant step instead of what is actually still running. Because it aggregates every tool in the group, finished calls keep being reported as in progress — e.g. it shows `Running 1 shell command, running 2 agents…` even after the shell command and one of the agents have completed. This builds the present-tense line from only the still-pending members, so finished calls drop out as they complete. The past-tense line (shown once everything finishes) continues to summarize every tool that ran. The cached present phrasing now rebuilds whenever the set of running members changes, not just when the group grows. Made by [Open SWE](https://openswe.vercel.app/agents/25ed04be-b8ed-97c9-a600-d24d80c02162) --------- Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com>
Marcelo5444
pushed a commit
to Marcelo5444/deepagents
that referenced
this pull request
Jul 30, 2026
> [!CAUTION] > Merging this PR will automatically publish to **PyPI** and create a **GitHub release**. For the full release process, see [`.github/RELEASING.md`](https://github.com/langchain-ai/deepagents/blob/main/.github/RELEASING.md). --- _Release notes preview: keep this section in sync with the package `CHANGELOG.md`. The published GitHub release body is extracted from the merged `CHANGELOG.md` by `release.yml`, not from this PR description._ --- ## [0.1.43](langchain-ai/deepagents@deepagents-code==0.1.42...deepagents-code==0.1.43) (2026-07-17) ### Features - Added classifier-backed Auto approval mode behind `DEEPAGENTS_CODE_EXPERIMENTAL=1` ([langchain-ai#4804](langchain-ai#4804)). - Added a shutdown toast for deferred exits ([langchain-ai#4830](langchain-ai#4830)). - Task descriptions that were truncated can now be expanded by clicking or pressing `Ctrl+O` ([langchain-ai#4811](langchain-ai#4811)). - Debug Console clears with `Ctrl+L` now persist after reopening ([langchain-ai#4812](langchain-ai#4812)). - Added debug logging for skill-name override collisions ([langchain-ai#4772](langchain-ai#4772)). ### Bug Fixes - Keep chat input responsive during `/restart` ([langchain-ai#4808](langchain-ai#4808)). - Fixed paste placeholders disappearing when backspacing a newline below them ([langchain-ai#4757](langchain-ai#4757)). - Made markdown `AppMessage` output selectable ([langchain-ai#4814](langchain-ai#4814)). - Fixed live tool-group counts to include only running tools ([langchain-ai#4809](langchain-ai#4809)). - Kept `task` timers monotonic across nested subagent human-in-the-loop flows ([langchain-ai#4771](langchain-ai#4771)). - Preserved goal criteria proposals when marker clearing fails ([langchain-ai#4785](langchain-ai#4785)). - Reduced repeated probing of an unreachable Ollama daemon to once per reload ([langchain-ai#4806](langchain-ai#4806)). - Quieted MCP auth-skip debug logging for known patterns ([langchain-ai#4805](langchain-ai#4805)). - Improved `/version` diagnostics for editable installs and core dependency reporting, including surfacing `langchain-quickjs` ([langchain-ai#4816](langchain-ai#4816), [langchain-ai#4813](langchain-ai#4813)). - Removed the `uv install` tip from the `/version` update hint ([langchain-ai#4822](langchain-ai#4822)). _End release notes preview._ --- > [!NOTE] > A **New Contributors** section is appended to the GitHub release notes automatically at publish time (see [Release Pipeline](https://github.com/langchain-ai/deepagents/blob/main/.github/RELEASING.md#release-pipeline), step 2). --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: langchain-oss-automated-triage[bot] <248757908+langchain-oss-automated-triage[bot]@users.noreply.github.com>
Marcelo5444
pushed a commit
to Marcelo5444/deepagents
that referenced
this pull request
Jul 30, 2026
…4927) The `dcode` tool-group progress line now keeps already-finished tool calls visible (in past tense) while a step is still running. While a step is still running, the collapsed tool-group summary now keeps calls that already finished visible in the past tense next to the ones still in flight (e.g. `Ran 2 shell commands, running 1 agent…`), instead of shrinking to only the running calls. --- PR langchain-ai#4809 fixed finished calls being wrongly reported as still "running" by rebuilding the live line from only the in-progress members. That over-corrected: completed work vanished from the line entirely until the whole step settled, so expanding a `Running 1 agent…` group could reveal several already-finished commands and agents. This reconciles both concerns. The live line is now composed of a past-tense summary of the finished (successful) members plus a present-tense summary of the still-running members, so nothing is mislabeled as running and nothing silently disappears. Failed/rejected/skipped tools are still evicted to standalone rows, and the fully past-tense line shown once everything settles is unchanged. Made by [Open SWE](https://openswe.vercel.app/agents/f22422f0-4fb1-785e-f8d3-34c0b9e3ddd8) Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com>
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 join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Fix the live tool-group progress line in
dcodeso it counts only the tools still running instead of every tool in the step.The collapsed tool-group summary's live progress line summarizes the whole assistant step instead of what is actually still running. Because it aggregates every tool in the group, finished calls keep being reported as in progress — e.g. it shows
Running 1 shell command, running 2 agents…even after the shell command and one of the agents have completed.This builds the present-tense line from only the still-pending members, so finished calls drop out as they complete. The past-tense line (shown once everything finishes) continues to summarize every tool that ran. The cached present phrasing now rebuilds whenever the set of running members changes, not just when the group grows.
Made by Open SWE