← all repositories
go-kratos/blades

This Go AI framework treats agents like HTTP handlers

Blades wires LLMs, tools, and memory into composable Go pipelines using familiar middleware patterns.

blades
Not currently ranked — collecting fresh signals.
star history

What it does

Blades is a Go framework for building multimodal AI agents. It provides pluggable components—models, tools, memory, and middleware—that connect through a single Agent interface to handle multi-turn conversations, reasoning chains, and structured output. The design prioritizes Go idioms like context.Context and option functions over external configuration or DSLs.

The interesting bit

The framework treats every executable piece—whether a single agent, a tool chain, or an LLM provider—as an implementation of the same Run interface, letting you compose them like Lego bricks. That uniformity is a deliberate architectural bet on decoupling, and it borrows the Kratos web framework’s middleware onion model to handle cross-cutting concerns like logging and guardrails inside agent execution.

Key highlights

  • Unified Agent interface means agents, chains, and model providers all execute through the same Run contract.
  • ModelProvider adapter abstracts LLM specifics, with built-in support for both synchronous generation and streaming responses.
  • Flow orchestrates multi-step reasoning by piping one agent’s output directly into another’s input.
  • Memory is session-scoped and swappable, with an in-memory default and hooks for persistent stores.
  • Skills can be loaded from disk or embedded filesystems via embed.FS, following the agentskills.io spec.

Caveats

  • The project describes itself as early-stage and iterating rapidly, so expect API churn while it finds its footing.

Verdict

Go developers who want a native, code-first way to wire up LLM pipelines will feel at home; if you need a mature, batteries-included platform with dozens of pre-built integrations, it is likely still too green.

Frequently asked

What is go-kratos/blades?
Blades wires LLMs, tools, and memory into composable Go pipelines using familiar middleware patterns.
Is blades open source?
Yes — go-kratos/blades is open source, released under the MIT license.
What language is blades written in?
go-kratos/blades is primarily written in Go.
How popular is blades?
go-kratos/blades has 801 stars on GitHub.
Where can I find blades?
go-kratos/blades is on GitHub at https://github.com/go-kratos/blades.

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