You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
🤖 refactor: derive workspace status from todo list
Derive workspace sidebar and landing-page progress from the current todo list.
- publish todo-derived activity snapshots for live and background workspaces
- prefer todo-derived status over legacy status_set payloads in the UI
- remove status_set from the default tool surface and refresh agent/docs guidance
---
_Generated with `mux` • Model: `openai:gpt-5.4` • Thinking: `xhigh` • Cost: `$n/a`_
<!-- mux-attribution: model=openai:gpt-5.4 thinking=xhigh costs=n/a -->
@@ -128,7 +129,7 @@ Mobile app tests live in `mobile/src/**/*.test.ts` and use Bun's built-in test r
128
129
- Never use emoji characters as UI icons or status indicators; emoji rendering varies across platforms and fonts.
129
130
- Prefer SVG icons (usually from `lucide-react`) or shared icon components under `src/browser/components/icons/`.
130
131
- For tool call headers, use `ToolIcon` from `src/browser/components/tools/shared/ToolPrimitives.tsx`.
131
-
- If a tool/agent provides an emoji string (e.g., `status_set` or `displayStatus`), render via `EmojiIcon` (`src/browser/components/icons/EmojiIcon.tsx`) instead of rendering the emoji.
132
+
- If a tool/agent provides an emoji string (e.g., todo-derived status or `displayStatus`), render via `EmojiIcon` (`src/browser/components/icons/EmojiIcon.tsx`) instead of rendering the emoji.
132
133
- If a new emoji appears in tool output, extend `EmojiIcon` to map it to an SVG icon.
133
134
- Colors defined in `src/browser/styles/globals.css` (`:root @theme` block). Reference via CSS variables (e.g., `var(--color-plan-mode)`), never hardcode hex values.
134
135
- For incrementing numeric UI (costs, timers, token counts, percentages), use semantic numeric typography utilities (`counter-nums` / `counter-nums-mono`) to prevent width jitter.
@@ -229,9 +230,9 @@ Freely make breaking changes, and reorganize / cleanup IPC as needed.
229
230
- E2E tests (tests/e2e) work with Radix but are slow (~2min startup); reserve for scenarios that truly need real Electron.
230
231
- Only use `validateApiKeys()` in tests that actually make AI API calls.
231
232
232
-
## Tool: status_set
233
+
## Tool: todo_write
233
234
234
-
-Set status url to the Pull Request once opened
235
+
-Keep the TODO list current during multi-step work; sidebar progress is derived from it.
Copy file name to clipboardExpand all lines: docs/config/notifications.mdx
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -43,7 +43,7 @@ The recommended way to configure the `notify` tool is via a `Tool: notify` scope
43
43
- Notify on CI failures or deployment issues
44
44
- Notify when waiting for user input longer than 30 seconds
45
45
- Do not notify for routine status updates
46
-
- Use status_set for progress updates instead
46
+
- Use `todo_write` for routine progress updates instead
47
47
```
48
48
49
49
See [Instruction Files](/agents/instruction-files) for more on scoped instructions.
@@ -94,7 +94,7 @@ notify: {
94
94
description:
95
95
"Send a system notification to the user. Use this to alert the user about important events that require their attention, such as long-running task completion, errors requiring intervention, or questions. "+
96
96
"Notifications appear as OS-native notifications (macOS Notification Center, Windows Toast, Linux). "+
97
-
"Infer whether to send notifications from user instructions. If no instructions provided, reserve notifications for major wins or blocking issues. Do not use for routine status updates (use status_set instead).",
97
+
"Infer whether to send notifications from user instructions. If no instructions provided, reserve notifications for major wins or blocking issues. Do not use for routine progress updates — keep the todo list current instead.",
|`MUX_TOOL_INPUT_EMOJI`|`emoji`| string | A single emoji character representing the current activity |
583
-
|`MUX_TOOL_INPUT_MESSAGE`|`message`| string | A brief description of the current activity (auto-truncated to 60 chars with ellipsis if needed) |
584
-
|`MUX_TOOL_INPUT_URL`|`url`| string | Optional URL to external resource with more details (e.g., Pull Request URL). The URL persists and is displayed to the user for easy access. |
0 commit comments