Garudust Agent

communication MCP Server

🦅 Open-source AI agent runtime in Rust — Self-hostable with persistent memory, self-improving skills, MCP support, built-in cron, multi-platform messaging & production gateway.

Verified
communicationcommunication
5 views28 stars8 forksMIT

Why This Matters

Discovered via github-topic:mcp and last synced 1w ago.

Verified
Source
github-topic:mcp
Stars
28
Last synced
1w ago
Install
Check source

Install

Install instructions not detected yet

Check the source repository for the latest setup steps.

View source instructions
87
Tools
0
Resources
0
Prompts
Standard I/O
Transport

Available Tools (87)

Platform

Required tokens

auto

Same as `smart` — for trusted automation pipelines

Slack

`SLACK_BOT_TOKEN`, `SLACK_APP_TOKEN`

OPENAI_API_KEY

`/v1/responses` endpoint

browser

Control Chrome/Chromium via CDP — click, type, screenshot, run JS

delegate_task

Spawn a parallel sub-agent for decomposed work (depth-limited by `max_delegation_depth`)

garudust-memory

`FileMemoryStore` (markdown) + `SessionDb` (SQLite + FTS5)

Pattern

Example

Telegram

`TELEGRAM_TOKEN`

Anthropic

`anthropic`

web_search

Search the web (Brave / Serper / DuckDuckGo)

user_profile

Read and update the persistent user profile

garudust-transport

LLM adapters: Anthropic, OpenAI-compat, Bedrock, Codex, Ollama, vLLM, ThaiLLM

Windows

`garudust-*-x86_64-pc-windows-msvc.zip`

deny

Blocks all destructive calls — for read-only agents

Matrix

`MATRIX_HOMESERVER`, `MATRIX_USER`, `MATRIX_PASSWORD`

Ollama

`ollama` *(add `url:` for custom endpoint)*

read_file

Read a file from the filesystem

skills_list

List available skills

garudust-agent

Agent run loop, context compressor, prompt builder

vllm

ollama

Provider

`providers.default.name`

web_fetch

Fetch a URL

memory

Persistent key-value memory across sessions

garudust-core

Shared traits & types — zero I/O

Enter

Send message

Preferences

output format, language, tone, tool choices

WhatsApp

`WHATSAPP_ACCESS_TOKEN`, `WHATSAPP_PHONE_NUMBER_ID`, `WHATSAPP_VERIFY_TOKEN`

ThaiLLM

`thaillm`

list_directory

List files with glob patterns and depth limits

write_skill

Create or update a skill in `~/.garudust/skills/`

garudust-cron

Cron scheduler

Key

Action

Mode

Behaviour

Quit

--- ## Contents - [Why Garudust?](#why-garudust) - [Supported Platforms](#supported-platforms) - [Quick Start](#quick-start) - [Architecture](#architecture) - [Configuration](#configuration) - [Platform Adapters](#platform-adapters) - [LLM Providers](#llm-providers) - [Tools](#tools) - [RAG (Document Search)](#rag-document-search) - [Hub](#hub) - [Memory](#memory) - [Access Control](#access-control) - [Security Notes](#security-notes) - [Contributing](#contributing) - [License](#license) - [Contributors](#contributors) - [Star History](#star-history) --- ## Why Garudust? - **~10 MB binary, < 20 ms cold start** — statically linked, zero runtime dependencies - **Self-improving** — learns your preferences, auto-generates reusable skills, corrects itself without being told twice - **Parallel tool execution** — conflict-aware grouping runs independent tools simultaneously, serializes only when necessary - **Credential rotation** — set `LLM_FALLBACK_API_KEYS` and the agent rotates to the next key on any auth failure, automatically - **Smart context compression** — 3-region strategy preserves the original task and recent turns; only the middle is summarized - **Lifecycle hooks** — `AgentHooks` callbacks for every turn, compression event, delegation, and session end - **agentskills.io compatible** — install community skills from the hub or any GitHub repo with one command - **7 platform adapters** — Telegram, Discord, Slack, Matrix, LINE, WhatsApp, Webhook — all in one process - **24 LLM providers, named profiles** — Anthropic, OpenAI, Gemini, Groq, Mistral, DeepSeek, xAI, Together AI, Fireworks, Cerebras, Perplexity, Cohere, NVIDIA NIM, Alibaba DashScope, ByteDance Doubao, Zhipu AI, Moonshot, Baidu ERNIE, OpenRouter, AWS Bedrock, Ollama, vLLM, ThaiLLM, or any OpenAI-compatible endpoint — configure named `providers:` profiles in `config.yaml` and route per-task - **Provider routing hints** — map hint names to provider/model pairs in config; pass `--hint fast` to route a single task to a cheaper model without changing the default - **Per-tool model config** — override the model (and fallback) used by each hub tool or skill script via `tools.<name>.model` in `config.yaml` - **Secure by design** — Docker sandbox, hardline command blocks, memory-poisoning protection, automatic secret redaction --- ## Supported Platforms Download a pre-built binary from [**GitHub Releases**](https://github.com/garudust-org/garudust-agent/releases/latest) — no Rust required:

Corrections

anything you tell the agent to stop doing — saved immediately

Webhook

always-on at `POST /webhook` — no token needed

Tool

Description

terminal

Run shell commands (Docker sandbox optional — see security note below)

Command

Who

garudust-gateway

axum HTTP gateway — `/chat`, `/chat/stream`, `/chat/ws`, `/metrics`

Category

Examples

LINE

`LINE_CHANNEL_TOKEN`, `LINE_CHANNEL_SECRET`

vLLM

`vllm` *(add `url:` for custom endpoint)*

write_file

Write a file to the filesystem; sensitive credential paths are always blocked

skill_view

Load a skill's full instructions by name

garudust-platforms

Telegram, Discord, Slack, Matrix, LINE, WhatsApp, Webhook

Discord

`DISCORD_TOKEN`

OpenRouter

`openrouter`

http_request

Arbitrary HTTP requests with custom headers and body

session_search

Full-text search across past conversations (FTS5 trigram)

garudust-tools

Tool registry + built-in toolsets (web, files, terminal, browser, …)

mistral

deepseek # xai

gemini

`GEMINI_API_KEY`

zhipu

`ZHIPU_API_KEY`

approval_mode

`auto` / `smart` / `deny`

openai

gemini

OpenAI

`openai`

doubao

`ARK_API_KEY`

Field

Values

fireworks

`FIREWORKS_API_KEY`

Mistral

`mistral`

baidu

`QIANFAN_API_KEY`

allowed_tools

list of tool names

DeepSeek

`deepseek`

Cerebras

`cerebras`

bedrock

`AWS_ACCESS_KEY_ID` + `AWS_SECRET_ACCESS_KEY`

nvidia

`NVIDIA_API_KEY`

doc_list

List all documents indexed in the current session

admin

Generate a shareable invite code (1-use, 24 h expiry by default)

alibaba

`DASHSCOPE_API_KEY`

doc_forget

Remove one or all documents from the RAG index

ollama

vllm

Groq

`groq`

together

`TOGETHER_API_KEY`

allowed_toolsets

list of toolset names

moonshot

`MOONSHOT_API_KEY`

xai

`XAI_API_KEY`

Perplexity

`perplexity`

doc_ingest

Index a document (PDF, TXT, CSV, MD, …) for full-text search

smart

deny # smart = audits risky calls but does NOT block them; # use deny to block all tool use without explicit allow-list terminal_sandbox: none # none

Cohere

`cohere`

doc_search

Full-text search across all indexed documents

everyone

Show your current platform ID and role

denied_tools

list of tool names

Area

What it involves

name

filesystem