Skip to content

progress-indicator

Shows a progress indicator in the terminal’s title bar or tab during agent turns using OSC 9;4 escape sequences.

When an agent turn starts, the extension emits an indeterminate progress sequence (state=3). When the turn ends, it clears the progress. Safety-net clears also fire on agent_end and session_shutdown to ensure the indicator never gets stuck.

Since the total number of tool calls per turn isn’t known ahead of time, indeterminate mode (pulsing/spinning) is used rather than a percentage bar.

TerminalDisplay
Windows TerminalTab progress indicator
iTerm2Title bar progress
WezTermTab progress indicator
ConEmuTaskbar progress

Unsupported terminals silently ignore the sequences — no errors or visual artifacts.

Progress is only emitted when process.stdout.isTTY is true, avoiding noise in piped or non-interactive contexts.

The underlying Terminal interface also exposes setProgress(percent) and clearProgress() methods for extensions that need determinate (percentage-based) progress bars with built-in throttling (max 1 update per 100ms).