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.
Fast, streaming indexing, query, and agentic LLM applications in Rust
| Date | Stars |
|---|---|
| 2026-07-31 | 753 |
| 2026-08-06 | 763 |
Today
+10 stars today
This week
— stars this week
This month
— stars this month
Momentum
40.0
growth rate 0.00%/day
<a name="readme-top"></a>


[![Crate Badge]][Crate]
[![Docs Badge]][API Docs]
[![Contributors][contributors-shield]][contributors-url]
[![Stargazers][stars-shield]][stars-url]

[![MIT License][license-shield]][license-url]
[![LinkedIn][linkedin-shield]][linkedin-url]
<br />
<div align="center">
<a href="https://github.com/bosun-ai/swiftide">
<img src="https://raw.githubusercontent.com/bosun-ai/swiftide/master/images/logo.png" alt="Swiftide logo" width="190" height="190">
</a>
<h1 align="center">Swiftide</h1>
<p align="center">
Composable LLM agents and harness, typed task graphs, and streaming RAG pipelines in Rust.
<br />
<a href="https://docs.rs/swiftide/latest/swiftide/"><strong>API docs</strong></a>
·
<a href="https://github.com/bosun-ai/swiftide/tree/master/examples"><strong>Examples</strong></a>
·
<a href="https://swiftide.rs"><strong>Website</strong></a>
·
<a href="https://discord.gg/3jjXYen9UY"><strong>Discord</strong></a>
</p>
</div>
Swiftide is an opinionated framework for building LLM applications. It gives you
an agent harness, typed task graphs for orchestration, and streaming, composable indexing/query
pipelines for RAG.
<div align="center">
<img src="images/composition.svg" alt="Swiftide composition overview" width="100%" >
</div>
<details>
<summary>Table of Contents</summary>
- [Why Swiftide](#why-swiftide)
- [Quick Start](#quick-start)
- [Agent Harness](#agent-harness)
- [Typed Task Graphs](#typed-task-graphs)
- [RAG Pipelines](#rag-pipelines)
- [Integrations](#integrations)
- [Examples](#examples)
- [Project Status](#project-status)
- [Contributing](#contributing)
- [Core Team Members](#core-team-members)
- [License](#license)
</details>
## Why Swiftide
- Build agents that loop over LLM calls, tool calls, lifecycle hooks, and stop conditions.
- Compose prompt steps, agents, command executors, and domain-specific Rust code in typed task
graphs.
- Fan out work into parallel branches and join typed results back into one task output.
- Pause and resume agents or tasks for human approval, external callbacks, or persisted state.
- Bring tools from local Rust functions, custom `Tool` implementations, or MCP servers.
- Stream large indexing and retrieval workloads through loaders, transformers, embedders, caches,
and storage backends.
- Trace agent, task, and pipeline execution with `tracing`, metrics, and Langfuse support.
The core primitives provide the shared interaction model. Around them, use pipelines for data
flows, agents for tool loops, and tasks for graphs of typed hand-offs.
## Quick Start
Swiftide keeps default dependencies light. Start with the agent harness and add the integrations
your application needs.
```sh
cargo add swiftide --features swiftide-agents,openai
cargo add anyhow
cargo add tokio --features macros,rt-multi-thread
```
If using OpenAI, set the API key expected by the OpenAI-compatible integration:
```sh
export OPENAI_API_KEY=...
```
## Agent Harness
Swiftide provides a harnass for building (semi) autonomous agents. The harnass owns message history, call an LLM, invoke tools,
run hooks, and stopping. Tools are pure functions and easy to add. The AgentContext abstracts over message history (in memory by default) and provides tools access to the outside world via a ToolExecutor (local by default, see also the [docker executor](https://github.com/bosun-ai/swiftide-docker-executor)).
```rust
use anyhow::Result;
use swiftide::{
agents,
chat_completion::{ToolOutput, errors::ToolError},
traits::AgentContext,
};
#[swiftide::tool(
description = "Looks up a Swiftide concept",
Excerpt of 15,432 characters
Read on GitHubWould you bet a product on this? Bounded 0–100 and slow moving.
matched fp:d3480263e5f5a8a5, topic:rag, topic:retrieval-augmented-generation
matched fp:d3480263e5f5a8a5, topic:llmops
matched fp:d3480263e5f5a8a5, topic:llm
matched fp:d3480263e5f5a8a5, topic:agents, desc:agentic