Co-authored-by: Codex <codex@openai.com>
4.0 KiB
Go Micro Roadmap
Go Micro is an agent harness and service framework for Go. A harness is the runtime around an agent — the tools, memory, guardrails, workflows, state, discovery, and protocols it needs to operate a system rather than just answer a prompt. An agent is a distributed system — it discovers services, calls them, holds state, and recovers from failure — so the harness is the runtime services already have, and building an agent is building a service. The roadmap has two jobs: make agentic development excellent, and make the developer experience around it excellent.
The full, current roadmap lives at go-micro.dev/docs/roadmap (source). The highlights:
Where we are (v6)
Services, agents (plan/delegate, guardrails, memory, tool middleware,
checkpoint/resume, and OpenTelemetry run spans), durable flows, the MCP and A2A
gateways (both directions, including A2A streaming,
push notifications, and multi-turn continuation), x402 paid tools, secure by
default.
Principles
- Build into what people run, never a separate product (no hosted platform, no enterprise edition, no VC).
- CLI-first — the CLI is the experience; UI must earn its place, never bloat.
- The getting-started flow is a contract: 0→1 (scaffold → run → call) and 0→hero (a working multi-agent system) must always work and are verified on every change.
- Interaction matters as much as running — chatting with agents, inspecting runs and history, end to end.
- Battle-tested: works across every provider, fails safely, observable.
Now — hardening
- Cross-provider conformance — the same agent scenario across all seven providers, gated on keys, on a schedule.
- Failure & resilience — timeouts, rate limits, cancellation, deadline/context propagation, retry/backoff.
- Getting-started contract — define and CI-verify the 0→1 and 0→hero flows.
Shipped agent depth
- Durable agent loop — opt-in
Checkpointsupport lets agentAskand streaming runs persist, list pending work, and resume without replaying completed tool calls. Human-input pauses resume through explicit input helpers. - Agent observability — agent
RunInfonow feeds OpenTelemetry spans/events across runs, model turns, tool calls, retries, delegation lineage, and resume checkpoints.
Next — agentic depth
- Streaming — broaden provider-backed
ai.Streamcoverage and keep chat/A2A streaming end to end. - Resume operations polish — keep improving CLI/docs breadcrumbs for finding pending agent runs and deciding whether to call resume, resume-input, or stream resume in production.
- Observability hardening — keep span attributes and run inspection coherent across agents, flows, and gateways as more providers and workflow paths are exercised.
Later
- Memory management (summarization, retrieval/RAG); human-in-the-loop pause/resume;
richer A2A live-stream reconnection (
tasks/resubscribe) andinput-requiredhandoffs.
Developer experience (ongoing)
- A seamless CLI inner loop (scaffold → run → chat → inspect → deploy); UI discipline (trim what isn't great); a maintained real-world example that doubles as the 0→hero reference; docs kept in lockstep with the code.
How it's sustained
The framework is the product, funded by sponsorship from those who run it — not a hosted service, enterprise tier, or venture funding. See the v6 story.
Contributing & feedback
Pick an item, open an issue to discuss the approach, and submit a PR. Or join the
Discord. Include tests, run make test and
make lint.
Version support
- v6 — active development (current).
- v5 — security fixes only.
- v4 and earlier — end of life.
Major versions (v5 → v6) carry breaking changes; minors are backward-compatible. See the v5 → v6 migration guide.