Skip to content

angee.agents.runners

Runtime-neutral contract for executing one persisted agent turn.

The agents addon owns the session runner seam but no implementation. Provider addons return ACP-shaped updates through the caller-supplied sink and return opaque replay state without teaching the catalogue about their SDK types.

SessionUpdateSink

Sink for one ACP session/update payload.

SessionHeartbeat

Synchronous callback refreshing the workflow-owned execution lease.

TurnOutcome

python
@dataclass(frozen=True, slots=True)
class TurnOutcome()

Runtime-neutral result of one bounded agent turn.

SessionRunner

python
class SessionRunner()

Execute turns for one runtime without owning persistence or scheduling.

run_turn

python
def run_turn(session: Any, turn: Any, *, deferred_results: list[Mapping[str,
                                                                        Any]],
             emit: SessionUpdateSink,
             heartbeat: SessionHeartbeat) -> TurnOutcome

Run one turn and return its neutral outcome.

Released under the AGPL-3.0 License.