← all repositories
neurocult/agency

Go gets its own LLM toolkit, no Python baggage

A Go-native library for building LLM apps and autonomous agents without importing LangChain's design opinions.

agency
Velocity · 7d
+0.5
★ / day
Trend
steady
star history

What it does

Agency is a Go library for talking to LLMs and other generative AI. It wraps OpenAI-compatible APIs for text, image, speech, and multimodal operations, and lets you chain steps into observable processes. The pitch: write AI code that looks like actual Go, not a Python translation layer.

The interesting bit

The authors explicitly built this because LangChainGo felt like a forced port. Agency bets that Go developers want small interfaces they can implement themselves, not a framework that hides the LLM behind too many abstractions. The “process” and “interceptor” model for composing operations is the architectural hook — it keeps the core tiny and pushes complexity into user-defined steps.

Key highlights

  • Pure Go, statically typed, no Python/JS runtime required
  • OpenAI-compatible provider with text→text, text→image, text→speech, speech→text, and image→text operations
  • Custom operations via a simple interface; compose them into processes with interceptors for observability
  • Examples cover RAG and multimodal use cases
  • ~500 stars, active enough to have a tutorial series and Russian translation

Caveats

  • Only OpenAI-compatible providers for now; more adapters are on the roadmap but not here yet
  • Metadata like token counts and audio duration are listed as upcoming, not implemented
  • The “powerful API for autonomous agents” is aspirational — current agent support appears to be the composable process model, not a full agent framework

Verdict

Worth a look if you’re building LLM features in Go and want something lighter than LangChainGo. Skip it if you need broad provider support today or want batteries-included agent orchestration.

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