StackA2A
generallangchainrust

Distri

38

by distrihub

Distri is A2A compatible agent framework built in Rust. Build agents with simply a markdown definition and much more.

3 starsUpdated 2026-02-19MIT
Quality Score38/100
Community
13
Freshness
84
Official
30
Skills
10
Protocol
40
🔒 Security
20

Getting Started

1Clone the repository
$ git clone https://github.com/distrihub/distri
2Navigate to the project
$ cd distri
3Install dependencies
$ cargo build
4Run the agent
$ cargo run

Or connect to the hosted endpoint: https://distri.dev

README

Distri

Distri is an A2A-compatible agent framework built in Rust. Build agents with simple markdown definitions and integrate them within your React frontend. Tools can be added as either backend tools via Deno or frontend tools, making building agents much easier.

Documentation · Website · A2A Protocol

Distri Dashboard

Architecture

Distri is organized as a monorepo with Rust crates and TypeScript packages:

distri/
├── Rust Crates
│   ├── distri-cli          # CLI tool for agent management
│   ├── distri-a2a          # A2A protocol implementation
│   ├── distri-types        # Shared type definitions
│   ├── distri-filesystem   # File system utilities
│   └── distri              # Core library
│
├── Server (ELv2 License)
│   ├── distri-server       # A2A-compatible agent server
│   ├── distri-core         # Core server logic
│   ├── distri-stores       # Storage backends
│   ├── distri-plugins      # Plugin system
│   └── distri-plugin-executor  # Deno-based plugin runtime
│
├── DistriJS (TypeScript)
│   ├── @distri/core        # Agent client & A2A integration
│   ├── @distri/react       # React hooks & components
│   ├── @distri/components  # Shared UI components (shadcn/ui)
│   └── @distri/fs          # File system tools for frontend
│
├── samples/                # Example applications
└── plugins/                # Integration plugins

Screenshots

Installation

curl -fsSL https://distri.dev/install.sh | sh

Pin a specific version or choose an install location:

DISTRI_VERSION=0.3.0 DISTRI_INSTALL_DIR=/usr/local/bin sh -c "$(curl -fsSL https://distri.dev/install.sh)"

Direct download (macOS / Linux)

# darwin-arm64 | darwin-x86_64 | linux-arm64 | linux-x86_64
TARGET=darwin-arm64
curl -L "https://github.com/distrihub/distri/releases/latest/download/distri-${TARGET}.tar.gz" -o distri.tar.gz
sudo tar -xzf distri.tar.gz -C /usr/local/bin distri

Homebrew (macOS / Linux)

brew tap distrihub/distri
brew install distri

Windows (PowerShell)

Invoke-WebRequest https://github.com/distrihub/distri/releases/latest/download/distri-windows-x86_64.zip -OutFile distri.zip
Expand-Archive distri.zip -DestinationPath $Env:LOCALAPPDATA\distri -Force
$Env:Path += ";$Env:LOCALAPPDATA\distri"

Verify installation

distri --version
distri help

Quick Start

# Navigate to your project
cd path/to/your/project

# Push agents to Distri Cloud
distri push

# Run a task
distri run <agent-name> --task "Your task"

Built-in Agents

These agents are auto-loaded in both distri-server (self-hosted) and Distri Cloud. Access them via the CLI client (distri run) or the server directly (distri-server run).

fast_search — Quick lookups

distri run fast_search --task "What is the population of Tokyo?"

search — Search + scrape

distri run search --task "What are the top 3 programming languages in 2026?"

web — Browser automation + scraping

distri run web --task "Scrape https://news.ycombinator.com and extract the top 5 story titles and links"

code — Sandboxed code execution (Python, bash, JavaScript)

distri run code --task "Calculate the sum of all prime numbers below 1000 using Python"

deepresearch — Multi-phase research with sub-agent delegation

distri run deepresearch --task "Research the current state of quantum computing. What are the top 3 companies and their latest breakthroughs?"

distri — Master orchestrator

distri run distri --task "Find the latest SpaceX launch date and calculate how many days from now"

agent_designer — Design new agents

distri run agent_designer --task "Design an agent that monitors stock prices and sends alerts when they cross a threshold"

Environment: BROWSR_BASE_URL and BROWSR_API_KEY are required for search, scrape, browser, and shell tools. When using Distri Cloud these are configured automatically.

Samples

Sample Type Description Demo
maps-demo React/Vite Interactive Google Maps with AI chat Live
coder CLI/Rust Code generation assistant -
scraper CLI/Rust Web scraping and data extraction agent -

Embedding in iframe

<iframe
  src="https://distrihub.github.io/distri/samples/maps"
  width="100%"
  height="600"
  frameborder="0">
</iframe>

Plugins

Ready-to-use integrations in plugins/:

Plugin Description
slack Slack messaging and workflows
notion Notion pages and databases
gmail Gmail read/send capabilities
google-calendar Calendar events management
google-docs Document creation and editing
google-sheets Spreadsheet operations
postgresql Database queries
clickhouse Analytics database

Development

Building Rust crates

cargo build

Publishing crates

cargo publish -p distri-a2a
cargo publish -p distri-types
cargo publish -p distri-filesystem
cargo publish -p distri

DistriJS development

cd distrijs
pnpm install
pnpm dev

Releases

Check the GitHub Releases page for the latest binaries and changelog.

Licensing

Support

Questions or feedback? Open an issue.

Capabilities

StreamingPush NotificationsMulti-TurnAuth: none
agents-sdklangchainrust-lang
View on GitHub