[Bug]: Desktop TODOS panel ignores todo_write calls made inside codemode

オープン
#159 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
48/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
活発
領域
desktop

調査の方向性

Start by tracing how createCodemodeTool runs nested tools and emits events, then inspect the activeTodos logic in workspace-screen-C6Kunc9Q.js and the ACP sessionUpdate: "plan" translator. Reproduce with the todos mod enabled and codemode set to tools. Done means nested todo_write updates appear in the transcript and the tray reflects completion, including hiding when all items are complete.

索引モデルが issue の本文から書いたものです。

説明

bug
GUI version

0.1.60

Operating system

Windows

Reproduction steps
  1. Enable the todos mod and set codemode to tools (/config or config.json).
  2. Start a multi-step task so the agent creates a todo list (todo_write).
  3. Let the agent finish the work; it will complete the list using await tools.todo_write(...) inside a codemode script, because todo_write is read-only and therefore script-first in this mode.
  4. Watch the TODOS tray above the composer, and reopen the thread afterwards.
Expected behavior

The TODOS tray and the transcript TODO card reflect the latest statuses from the nested update (all items checked off, tray hides once everything is completed).

Actual behavior
  • The tray and TODO card keep showing the original list indefinitely (e.g. 0/8, first item in_progress, rest pending), even though the agent's codemode call marked every item completed and the harness session state is correct.
  • The nested update is visible only as a generic codemode output line (✓ todo_write …); no new TODO tool row or status change is rendered.
Screenshots, recordings, or sanitized logs

Root cause: createCodemodeTool executes nested tools with runner.execute({ ..., nested: true }) and emits no tool_queued/tool_completed events. The desktop computes activeTodos only from top-level thread items whose tool name starts with todo (IJ/Bx/LJ in workspace-screen-C6Kunc9Q.js), so nested todo_write updates are invisible. The ACP sessionUpdate: "plan" translator has the same top-level-only gap.

Safety check
  • I removed credentials and private project information from this report.
主要言語
Shell
スター
110
フォーク
9
平均マージ
12分
マージ済み PR(30日)
1

環境構築

このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

CommandCodeAI/desktop のほかの issue

CommandCodeAI/desktop の issue をすべて見る

似ている issue

Shell/Bash の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。