You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Temporal users building AI agents have to wire workflows, activities, and workers themselves — this SDK does that for you. Runs are durable Temporal workflows out of the box. LLM, tools, MCP, and conversation are all pluggable via interfaces.
Long Description
Building AI agents in Go? This SDK puts Temporal at the center — every agent run is a workflow, every LLM call and tool execution is an activity. You get durability, retries, and observability without writing any workflow code yourself.
What problem does it solve?
Building AI agents on Temporal is powerful but involves a lot of boilerplate — workflow definitions, activity registration, worker setup, signal handling for approvals, child workflows for sub-agent delegation. Most developers end up writing the same scaffolding from scratch every time. This SDK removes that work entirely — you define your agent, connect your LLM, and the Temporal plumbing is already done.
Every LLM call, tool execution, MCP call, human approval step, and sub-agent delegation maps directly to a Temporal activity or child workflow — retries, timeouts, and failure handling all apply naturally without any extra code.
Problems it solves
Durability by default — agent runs survive crashes and deploys. No more lost runs when your server restarts mid-conversation.
Tools, MCP, and approvals without plumbing — connect any MCP server as a tool source, require human approval before sensitive tool calls, and delegate to specialist sub-agents — all wired into Temporal activities and child workflows automatically.
Multi-agent coordination — sub-agents run on their own task queues as child workflows. Stream events from the entire delegation tree through a single subscription.
Frontend ready — stream events conform to the AG-UI protocol out of the box, so agents work with any AG-UI compatible frontend like CopilotKit without any extra wiring.
Pluggable and extensible — built around interfaces for LLM providers, tools, MCP clients, and conversation storage. Bring your own implementation without touching the agent runtime. OpenAI, Anthropic, and Gemini included out of the box.
Observability out of the box — since every agent run is a Temporal workflow, you get full observability and tracing out of the box. Inspect run history, activity inputs and outputs, retries, and failures directly in the Temporal UI without any extra instrumentation.
Examples and reference app
Examples — runnable examples for every feature including tools, MCP, sub-agents, approvals, streaming, and async runs
agent-chat — reference web chat app showing the SDK wired into a real HTTP-backed application with durable conversations. Includes a separate Temporal worker deployment, AG-UI shaped streaming over SSE, and a Docker Compose setup running the API and worker from the same image — a real-world example of how agent runs stay durable across a split process deployment.
Project link
https://github.com/agenticenv/agent-sdk-go
Language
Go
Short description
Temporal users building AI agents have to wire workflows, activities, and workers themselves — this SDK does that for you. Runs are durable Temporal workflows out of the box. LLM, tools, MCP, and conversation are all pluggable via interfaces.
Long Description
Building AI agents in Go? This SDK puts Temporal at the center — every agent run is a workflow, every LLM call and tool execution is an activity. You get durability, retries, and observability without writing any workflow code yourself.
What problem does it solve?
Building AI agents on Temporal is powerful but involves a lot of boilerplate — workflow definitions, activity registration, worker setup, signal handling for approvals, child workflows for sub-agent delegation. Most developers end up writing the same scaffolding from scratch every time. This SDK removes that work entirely — you define your agent, connect your LLM, and the Temporal plumbing is already done.
How it maps to Temporal
graph TD A[Agent] --> WF[Workflow: agent loop] W[Agent Worker] --> WF WF --> LLM[Activity: LLM call] WF --> Appr[Activity: approval] WF --> Child[Child Workflow: sub-agent loop] WF --> Tool[Activity: tool execution] WF --> Mem[Activity: save memory] Child --> LLM2[Activity: LLM call] Child --> Tool2[Activity: tool execution] Child --> Mem2[Activity: save memory]Every LLM call, tool execution, MCP call, human approval step, and sub-agent delegation maps directly to a Temporal activity or child workflow — retries, timeouts, and failure handling all apply naturally without any extra code.
Problems it solves
Durability by default — agent runs survive crashes and deploys. No more lost runs when your server restarts mid-conversation.
Tools, MCP, and approvals without plumbing — connect any MCP server as a tool source, require human approval before sensitive tool calls, and delegate to specialist sub-agents — all wired into Temporal activities and child workflows automatically.
Multi-agent coordination — sub-agents run on their own task queues as child workflows. Stream events from the entire delegation tree through a single subscription.
Frontend ready — stream events conform to the AG-UI protocol out of the box, so agents work with any AG-UI compatible frontend like CopilotKit without any extra wiring.
Pluggable and extensible — built around interfaces for LLM providers, tools, MCP clients, and conversation storage. Bring your own implementation without touching the agent runtime. OpenAI, Anthropic, and Gemini included out of the box.
Observability out of the box — since every agent run is a Temporal workflow, you get full observability and tracing out of the box. Inspect run history, activity inputs and outputs, retries, and failures directly in the Temporal UI without any extra instrumentation.
Examples and reference app
Author(s)
Vinod Babu Vanjarapu / https://avatars.githubusercontent.com/u/8429554?v=4