mirror of
https://github.com/usestrix/strix.git
synced 2026-08-24 20:02:39 +02:00
feat(runtime): mount local targets instead of copying them in (#958)
Co-authored-by: Ahmed Allam <ahmed39652003@gmail.com>
This commit is contained in:
co-authored by
Ahmed Allam
parent
b6cf156e95
commit
dbc427d816
@@ -815,6 +815,8 @@ class StrixTUIApp(App): # type: ignore[misc]
|
||||
self._scan_stop_event = threading.Event()
|
||||
self._scan_completed = threading.Event()
|
||||
self._scan_error: BaseException | None = None
|
||||
self._startup_status = "Starting up"
|
||||
self._startup_status_step = 0
|
||||
self._error_noted_agents: set[str] = set()
|
||||
self._budget_pause_notified = False
|
||||
|
||||
@@ -1111,7 +1113,9 @@ class StrixTUIApp(App): # type: ignore[misc]
|
||||
self,
|
||||
) -> tuple[Any, str | None]:
|
||||
if not self.selected_agent_id:
|
||||
return self._get_chat_placeholder_content("Loading...", "placeholder-no-agent")
|
||||
return self._get_chat_placeholder_content(
|
||||
f"{self._startup_status}...", f"placeholder-no-agent-{self._startup_status_step}"
|
||||
)
|
||||
|
||||
events = self._gather_agent_events(self.selected_agent_id)
|
||||
|
||||
@@ -1525,6 +1529,7 @@ class StrixTUIApp(App): # type: ignore[misc]
|
||||
max_budget_usd=getattr(self.args, "max_budget_usd", None),
|
||||
max_turns=getattr(self.args, "max_turns", DEFAULT_MAX_TURNS),
|
||||
event_sink=self._capture_sdk_event,
|
||||
status_sink=self._capture_startup_status,
|
||||
),
|
||||
)
|
||||
|
||||
@@ -1556,6 +1561,18 @@ class StrixTUIApp(App): # type: ignore[misc]
|
||||
self._scan_thread = threading.Thread(target=scan_target, daemon=True)
|
||||
self._scan_thread.start()
|
||||
|
||||
def _capture_startup_status(self, phase: str) -> None:
|
||||
try:
|
||||
self.call_from_thread(self._record_startup_status, phase)
|
||||
except RuntimeError:
|
||||
self._record_startup_status(phase)
|
||||
|
||||
def _record_startup_status(self, phase: str) -> None:
|
||||
self._startup_status = phase
|
||||
self._startup_status_step += 1
|
||||
if not self.show_splash and not self.selected_agent_id:
|
||||
self.call_later(self._update_chat_view)
|
||||
|
||||
def _capture_sdk_event(self, agent_id: str, event: Any) -> None:
|
||||
try:
|
||||
self.call_from_thread(self._record_sdk_event, agent_id, event)
|
||||
|
||||
Reference in New Issue
Block a user