Skip to content

feat(ui): add live status updates during agent execution#5

Draft
0xhis wants to merge 22 commits into
mainfrom
feat/tui-live-status
Draft

feat(ui): add live status updates during agent execution#5
0xhis wants to merge 22 commits into
mainfrom
feat/tui-live-status

Conversation

@0xhis
Copy link
Copy Markdown
Owner

@0xhis 0xhis commented Mar 21, 2026

Summary

Add real-time status messages to the TUI showing what each agent is doing at any given moment. Previously agents only showed "Initializing" or a generic sweep animation.

Changes

  • Add status messages during key lifecycle points: "Compressing memory...", "Waiting for LLM provider...", "Generating response...", "Executing {tools}...", "Setting up sandbox environment..."
  • Add update_agent_system_message() to Tracer for status propagation
  • Fix Text span out-of-bounds crash when merging Rich Text renderables
  • Render thinking blocks in chat history from metadata
  • Fix indented thought display in ThinkRenderer for multi-line thoughts

Files Changed

  • strix/agents/base_agent.py (+21)
  • strix/interface/tool_components/thinking_renderer.py (+2/-1)
  • strix/interface/tui.py (+63/-13)
  • strix/llm/llm.py (+19/-2)
  • strix/telemetry/tracer.py (+6)

Split from usestrix#328.

0xallam and others added 21 commits February 26, 2026 14:58
Bumps [pypdf](https://github.com/py-pdf/pypdf) from 6.7.1 to 6.7.2.
- [Release notes](https://github.com/py-pdf/pypdf/releases)
- [Changelog](https://github.com/py-pdf/pypdf/blob/main/CHANGELOG.md)
- [Commits](py-pdf/pypdf@6.7.1...6.7.2)

---
updated-dependencies:
- dependency-name: pypdf
  dependency-version: 6.7.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps [pypdf](https://github.com/py-pdf/pypdf) from 6.7.2 to 6.7.4.
- [Release notes](https://github.com/py-pdf/pypdf/releases)
- [Changelog](https://github.com/py-pdf/pypdf/blob/main/CHANGELOG.md)
- [Commits](py-pdf/pypdf@6.7.2...6.7.4)

---
updated-dependencies:
- dependency-name: pypdf
  dependency-version: 6.7.4
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: 0xallam <ahmed39652003@gmail.com>
us-central1 doesn't have access to the latest gemini models like gemini-3-flash-preview
The perplexity API key check in strix/tools/__init__.py used
Config.get() which only checks os.environ. At import time, the
config file (~/.strix/cli-config.json) hasn't been applied to
env vars yet, so the check always returned False.

Replace with _has_perplexity_api() that checks os.environ first
(fast path for SaaS/env var), then falls back to Config.load()
which reads the config file directly.
Re-architects the agent loop to support interactive (chat-like) mode
where text-only responses pause execution and wait for user input,
while tool-call responses continue looping autonomously.

- Add `interactive` flag to LLMConfig (default False, no regression)
- Add configurable `waiting_timeout` to AgentState (0 = disabled)
- _process_iteration returns None for text-only → agent_loop pauses
- Conditional system prompt: interactive allows natural text responses
- Skip <meta>Continue the task.</meta> injection in interactive mode
- Sub-agents inherit interactive from parent (300s auto-resume timeout)
- Root interactive agents wait indefinitely for user input (timeout=0)
- TUI sets interactive=True; CLI unchanged (non_interactive=True)
Co-authored-by: 0xallam <ahmed39652003@gmail.com>
Add real-time status messages to the TUI showing what each agent is
doing at any given moment.

Status messages shown:
- 'Compressing memory...' during conversation history preparation
- 'Waiting for LLM provider...' during API call setup
- 'Generating response...' after first chunk received
- 'Executing {tool1}, {tool2} +N more...' during tool execution
- 'Setting up sandbox environment...' during sandbox init

Also renders thinking blocks in chat history from metadata and fixes
indented thought display for multi-line thoughts in ThinkRenderer.
@0xhis 0xhis force-pushed the feat/tui-live-status branch from 62677ca to b9474d5 Compare March 21, 2026 08:15
@0xhis 0xhis force-pushed the feat/tui-live-status branch from 2533d7b to 7a4c008 Compare March 21, 2026 08:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants