Top AI Repos — open-source AI, indexed and scored
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Blades is a Go-based multimodal AI Agent framework.
| Date | Stars |
|---|---|
| 2026-07-24 | 801 |
| 2026-07-25 | 802 |
| 2026-07-28 | 804 |
| 2026-07-30 | 805 |
| 2026-08-06 | 806 |
Today
+1 stars today
This week
+1 stars this week
This month
— stars this month
Momentum
10.0
growth rate 0.12%/day
<p align="center">
<a href="https://github.com/go-kratos/blades/actions"><img src="https://github.com/go-kratos/blades/workflows/Go/badge.svg" alt="Build Status"></a>
<a href="https://pkg.go.dev/github.com/go-kratos/blades"><img src="https://pkg.go.dev/badge/github.com/go-kratos/blades" alt="GoDoc"></a>
<a href="https://deepwiki.com/go-kratos/blades"><img src="https://deepwiki.com/badge.svg" alt="DeepWiki"></a>
<a href="https://github.com/go-kratos/blades/blob/main/LICENSE"><img src="https://img.shields.io/github/license/go-kratos/blades" alt="License"></a>
</p>
## Blades
Blades is a multimodal AI Agent framework for the Go language, supporting custom models, tools, memory, middleware, etc. It is suitable for multi-turn conversations, chain-of-thought reasoning, and structured output, among other use cases.
> The name originates from: The game *God of War*, set against the backdrop of Greek mythology, tells the adventure story of Kratos transforming from a mortal into the God of War and embarking on a god-slaying rampage. The Blades are Kratos's iconic weapons.
## Architecture Design
Blades leverages the characteristics of the Go language to provide a flexible and efficient AI Agent solution. Its core lies in achieving a high degree of decoupling and extensibility through unified interfaces and pluggable components. The overall architecture is as follows:

- Go Idiomatic: Built entirely according to Go's philosophy, with a code style and user experience that feel familiar to Go developers.
- Simple to Use: Define AI Agents through concise code declarations, enabling rapid requirement delivery and making complex logic clear, easy to manage, and maintain.
- Middleware Ecosystem: Drawing inspiration from Kratos's middleware design philosophy, features like Observability and Guardrails can be easily integrated into AI Agents.
- Highly Extensible: Achieves a high degree of decoupling and extensibility through unified interfaces and pluggable components, facilitating the integration of different LLM models and external tools.
## Core Concepts
The Blades framework realizes its powerful functionality and flexibility through a series of carefully designed core components. These components work together to build the intelligent behavior of the Agent:
* Agent: The core unit that executes tasks, capable of invoking models and tools.
* Prompt: Templated text used for interacting with LLMs, supporting dynamic variable substitution and complex context construction.
* Chain: Connects multiple Agents or other Chains to form complex workflows.
* ModelProvider: A pluggable LLM interface, allowing you to easily switch and integrate different language model services (such as OpenAI, etc.).
* Tool: External capabilities that an Agent can use, such as calling APIs, querying databases, accessing the file system, etc.
* Memory: Provides short-term or long-term memory capabilities for the Agent, enabling continuous conversation with context.
* Middleware: Similar to middleware in web frameworks, it enables cross-cutting control over the Agent.
### Agent
`Agent` is the most core interface in the Blades framework, defining the basic behavior of all executable components. Its design aims to provide a unified execution paradigm. Through the `Run` method, it achieves **decoupling, standardization, and high composability** for various functional modules within the framework. Components like `Agent`, `Chain`, and `ModelProvider` all implement this interface, thereby unifying their execution logic and allowing different components to be flexibly combined like Lego bricks to build complex AI Agents.
```go
// Agent represents an autonomous agent that can process invocations and produce a sequence of messages.
type Agent interface {
Name() string
Description() string
Run(context.Context, *Invocation) Generator[*Message, error]
}
```
### ModelProvider
`ModelProvider` is the core absExcerpt of 10,938 characters
Read on GitHub110
16
15
4
3
3
3
2
2
2
1
Songlin Yang · bytedance · China
1
1
1
1
1
1
Would you bet a product on this? Bounded 0–100 and slow moving.
matched fp:55fdce4d8b310990, topic:agent-framework, topic:multi-agent, desc:ai agent