# Disable live agent text streaming by default and enable thoughts panel by default

> Turned off live text streaming rendering in the TUI by default to reduce visual jitter.

- Skill: `tools-only/disable-live-agent-text-streaming-by-default-and-enable` (Agent Skill, multi-file: 3 files)
- Install (CLI): `npx skillmds@latest add tools-only/disable-live-agent-text-streaming-by-default-and-enable`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tools-only/disable-live-agent-text-streaming-by-default-and-enable/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: tools-only (https://skillmd.com/u/tools-only)
- Updated: 2026-09-29
- Page: https://skillmd.com/skills/tools-only/disable-live-agent-text-streaming-by-default-and-enable

---


# Disable live agent text streaming by default and enable thoughts panel by default

## Summary

Turned off live text streaming rendering in the TUI by default to reduce visual jitter.

Added `settings.stream_agent_text` (default `false`) and wired request creation to pass the streaming callback only when that setting is enabled.

Changed session defaults so the thoughts panel starts enabled (`SessionState.show_thoughts = True`) to keep reasoning visible even with text streaming disabled.

Kept tinyagent event streaming in place for tool lifecycle handling and final message assembly.

## Key behavioral detail

`RequestOrchestrator._handle_message_update()` now appends `text_delta` content to `_debug_raw_stream_accum` even when no streaming callback is attached. This preserves interrupted-response recovery behavior when live streaming output is disabled.

## Files changed

- `src/tunacode/ui/app.py`
- `src/tunacode/configuration/defaults.py`
- `src/tunacode/core/agents/main.py`
- `src/tunacode/core/session/state.py`
- `tests/unit/core/test_thinking_stream_routing.py`
- `tests/unit/core/test_session_state_defaults.py` (new)
- `tests/unit/configuration/test_default_config_stream_agent_text.py` (new)
- `tests/unit/ui/test_stream_agent_text_setting.py` (new)

## Validation

- `uv run ruff check --fix src/tunacode/ui/app.py src/tunacode/core/agents/main.py src/tunacode/core/session/state.py src/tunacode/configuration/defaults.py tests/unit/core/test_thinking_stream_routing.py tests/unit/core/test_session_state_defaults.py tests/unit/configuration/test_default_config_stream_agent_text.py tests/unit/ui/test_stream_agent_text_setting.py` ✅
- `uv run pytest tests/unit/core/test_thinking_stream_routing.py tests/unit/core/test_session_state_defaults.py tests/unit/configuration/test_default_config_stream_agent_text.py tests/unit/ui/test_stream_agent_text_setting.py -q` ✅
- `uv run ruff check .` ✅

