← all repositories
cloudwego/eino

Go gets a native LLM framework with graphs, agents, and streaming

Eino brings LangChain-style LLM orchestration to Go, with graph-based workflows, multi-agent teams, and built-in human-in-the-loop support.

eino
Velocity · 7d
+16
★ / day
Trend
steady
star history

What it does Eino is a Go framework for building LLM applications. It offers reusable components—ChatModel, Tool, Retriever, and others—alongside an Agent Development Kit for creating tool-using agents and a compose package for wiring components into explicit execution graphs. The framework also manages streaming, callback hooks, and checkpointing across the stack.

The interesting bit Rather than bolting on streaming and human-in-the-loop later, Eino builds them into the orchestration layer: streams are automatically merged and routed between graph nodes, and any agent or tool can pause for human input and resume from a persisted checkpoint. That’s plumbing most AI frameworks leave to you.

Key highlights

  • Graph composition: Build deterministic workflows with compose.NewGraph, then wrap them as invokable tools that higher-level agents can call.
  • Streaming orchestration: The framework handles stream concatenation, boxing, and merging between nodes; individual components implement only the streaming patterns they need.
  • Multi-agent delegation: DeepAgent decomposes tasks and delegates to specialized sub-agents, with built-in support for tools like shell commands, Python execution, and web search.
  • Callback aspects: Attach logging, tracing, and metrics at fixed lifecycle hooks—OnStart, OnEnd, OnError, plus stream-specific variants—across components, graphs, and agents.
  • Ecosystem split: Core types and orchestration live here; provider-specific implementations for OpenAI, Claude, Gemini, Ark, Ollama, and Elasticsearch are maintained in the separate eino-ext repo.

Verdict Pick it up if you’re shipping LLM features in Go and want a single stack that covers graph workflows, agents, and streaming without fighting the type system. If you’re happily entrenched in Python’s ecosystem, this won’t pull you away.

Frequently asked

What is cloudwego/eino?
Eino brings LangChain-style LLM orchestration to Go, with graph-based workflows, multi-agent teams, and built-in human-in-the-loop support.
Is eino open source?
Yes — cloudwego/eino is open source, released under the Apache-2.0 license.
What language is eino written in?
cloudwego/eino is primarily written in Go.
How popular is eino?
cloudwego/eino has 12.4k stars on GitHub and is currently holding steady.
Where can I find eino?
cloudwego/eino is on GitHub at https://github.com/cloudwego/eino.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.