Agent::stream(...) returns AgentStreamResult:
reasoningStream(), itemStream(), or fullStream() for other projections. Each iterable is replayable after events have been consumed from the synchronous provider stream.
PHP item values remain generic arrays and objects rather than the TypeScript discriminated item union.