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
{{ message }}
Repository navigation
Shell mode (!) output hidden when "Hide tool details" is enabled; AI-invoked tools flicker before hiding #22667
When tool_details_visibility is set to false (via the "Hide tool details" command or tool_details keybind), user-initiated shell commands via ! mode are hidden after execution. The command output appears briefly (fraction of a second). The same flickering behavior occurs for AI-invoked tool calls — they flash on screen while running and then vanish.
Expected behavior
User-initiated shell commands (!) should always be visible regardless of the tool details toggle. The user explicitly ran the command and expects to see its output.
When tool details are hidden, AI-invoked tools should never appear at all — not even briefly while running. The current flicker is caused by shouldHide only checking for status === "completed", leaving running/pending states visible.
Root cause suggested by Claude Opus 4.6
shouldHide in the ToolPart component (packages/opencode/src/cli/cmd/tui/routes/session/index.tsx:1490-1494):
This only hides completed tool parts, so running tools remain visible until they finish — causing the flicker. It also makes no distinction between user-initiated shell commands and AI-invoked tool calls.
Proposed fix
Add synthetic: z.boolean().optional() to the ToolPart schema in message-v2.ts (mirrors the existing field on TextPart). No database migration needed since parts are stored as JSON.
Set synthetic: true on the tool part created in shellImpl (prompt.ts) to mark it as user-initiated.
Activity
github-actions commentedon Jul 4, 2026
To stay organized issues are automatically closed after 60 days of no activity. If the issue is still relevant please open a new one.