strix/strix
0xallam fbc39d7f36 feat(run-loop): lift the interactive continuation loop — applies to all agents
The previous commit only kept the root agent alive across cycles. But
``interactive`` propagates to children via ``make_child_factory``, and
the legacy harness's continuation loop applied to every interactive
agent in the tree — children also stayed alive after ``agent_finish``,
ready to receive follow-up messages from the parent or siblings.

Lift the demo-loop pattern out of ``entry.run_strix_scan`` into a
shared helper :func:`strix.run_loop.run_with_continuation` and use it
at both call sites:

- ``entry.run_strix_scan`` for the root agent.
- ``tools.agents_graph.tools.create_agent`` for child agents — the
  ``asyncio.create_task(Runner.run(...))`` becomes
  ``asyncio.create_task(run_with_continuation(...))``.

``StrixOrchestrationHooks.on_agent_end`` drops the ``parent_id is None``
constraint — any interactive agent parks instead of finalizing.
Children that crash still finalize so parents stop waiting on them.

Cancellation propagates correctly: ``bus.cancel_descendants`` cancels
the task; ``run_with_continuation``'s ``await bus.wait_for_message``
catches ``CancelledError`` and returns the last result.

Lint at baseline.
2026-04-25 17:02:44 -07:00
..
agents refactor: nuke `strix_tool` shim + dead package re-exports 2026-04-25 15:17:46 -07:00
config refactor(config): pydantic-settings revamp + drop `is_whitebox` plumbing 2026-04-25 16:05:40 -07:00
interface refactor(config): pydantic-settings revamp + drop `is_whitebox` plumbing 2026-04-25 16:05:40 -07:00
io refactor(telemetry): extract scan artifact I/O into `strix.io.scan_artifacts` 2026-04-25 16:28:07 -07:00
llm refactor(config): pydantic-settings revamp + drop `is_whitebox` plumbing 2026-04-25 16:05:40 -07:00
orchestration feat(run-loop): lift the interactive continuation loop — applies to all agents 2026-04-25 17:02:44 -07:00
runtime refactor(config): pydantic-settings revamp + drop `is_whitebox` plumbing 2026-04-25 16:05:40 -07:00
skills docs(skill): document the agent-browser → view_image chain for screenshots 2026-04-25 14:38:13 -07:00
telemetry refactor(telemetry): extract scan artifact I/O into `strix.io.scan_artifacts` 2026-04-25 16:28:07 -07:00
tools feat(run-loop): lift the interactive continuation loop — applies to all agents 2026-04-25 17:02:44 -07:00
utils fix(agent): fix tool schemas not retrieved on pyinstaller binary and validate tool call args 2026-01-14 10:57:32 -08:00
__init__.py Open-source release for Alpha version 2025-08-08 20:36:44 -07:00
entry.py feat(run-loop): lift the interactive continuation loop — applies to all agents 2026-04-25 17:02:44 -07:00
run_config_factory.py feat(entry): interactive mode keeps the root agent alive across cycles 2026-04-25 16:54:36 -07:00
run_loop.py feat(run-loop): lift the interactive continuation loop — applies to all agents 2026-04-25 17:02:44 -07:00