Goal
Make the scaffold -> run -> chat -> inspect loop feel live when micro chat talks to a registered Go Micro agent, not only when it falls back to direct service/tool access. Today micro chat --stream streams provider output for the direct-service path, but the registered-agent path still calls Agent.Chat and prints the final reply after the run completes.
Scope
- Add a streaming registered-agent chat path for
micro chat --stream when exactly one target/registered agent is selected.
- Prefer the existing agent/A2A streaming primitives where possible instead of inventing a second protocol.
- Preserve the non-streaming
micro chat behavior and the multi-agent router fallback.
- Keep run history/inspect output coherent after a streamed reply.
Acceptance criteria
- A focused CLI/unit test proves
micro chat --stream <agent> --prompt ... prints reply chunks before the final completion when a stream-capable agent is available.
- A fallback test proves unsupported streaming still uses the existing Agent.Chat path.
- Documentation/help text explains when
--stream applies and how to fall back.
go build ./..., go test ./..., and golangci-lint run ./... are run or any environment limitation is recorded.
Goal
Make the scaffold -> run -> chat -> inspect loop feel live when
micro chattalks to a registered Go Micro agent, not only when it falls back to direct service/tool access. Todaymicro chat --streamstreams provider output for the direct-service path, but the registered-agent path still calls Agent.Chat and prints the final reply after the run completes.Scope
micro chat --streamwhen exactly one target/registered agent is selected.micro chatbehavior and the multi-agent router fallback.Acceptance criteria
micro chat --stream <agent> --prompt ...prints reply chunks before the final completion when a stream-capable agent is available.--streamapplies and how to fall back.go build ./...,go test ./..., andgolangci-lint run ./...are run or any environment limitation is recorded.