Back to directory

Agent SDK for Go

An open-source Go SDK for building AI agents whose state, tool calls and execution loops survive process crashes, running in-process by default or, for distributed execution, through Temporal or Restate.

Agent SDK for Go

Agent SDK for Go is a durable-execution framework for building AI agents in Go. Agents run in-process with crash-resilient execution by default, requiring no separate infrastructure, and can reconnect to an active run and resume its event stream after a restart; adding a Temporal or Restate deployment extends that durability across processes and machines.

It connects to OpenAI, Anthropic, Gemini, DeepSeek and local Ollama models through a pluggable client interface, supports built-in and custom tools and MCP servers over stdio or HTTP, can expose or consume agents through the A2A protocol, and can delegate work to sub-agents with their own models, tools and task queues. Other features include human-in-the-loop approval gates on tool calls, conversation history backed by memory or Redis, retrieval-augmented generation, per-run token budgets, lifecycle hooks, and OpenTelemetry traces and metrics.

It requires Go 1.26 or later, is an independent community library not affiliated with Temporal or Restate, and is licensed under Apache-2.0.

More in Agent frameworks

See all 902
  • Recurse

    recurse.run

    A serverless harness that lets a coding agent design, test, and deploy its own specialist sub-agents as tools, MCP servers, or bots, defined by a schema-validated manifest.

  • ProofForge

    shulgin.is-a.dev

    An AI-agent pipeline that decomposes a mathematics problem, proves each piece, and formalizes the result in Lean 4 and Mathlib until the Lean kernel accepts it, with six of its proofs already merged into Google DeepMind's formal-conjectures repository.

  • local-coder

    github.com

    Builds a local coding-agent team on top of Ollama and OpenCode by detecting the machine's hardware, recommending models for seven specialist roles, and testing whether each assigned model can actually use tools, edit a repository and pass verification.