Skip to content

Latest commit

History

902 Commits

Folders and files

NameName
Last commit message
Last commit date

Astromesh

Agent Runtime Platform for building AI agents

Astromesh Logo

Astromesh · ExecuteCIReleasePyPI PublishADK PublishDocsVersionAstromesh PyPIAstromesh TestPyPIADK PyPIADK TestPyPIOrbit PublishOrbit PyPIOrbit TestPyPINode ReleaseNode GitHub ReleaseCLI ReleaseCLI PyPICLI TestPyPIGlyph ReleaseGlyph not on PyPI yetLicensePython 3.12+

Documentation · Quick Start · Releases


Build, orchestrate and run AI agents with multi-model routing, tools, memory, and RAG — all configured declaratively.

Astromesh is an open-source runtime for agentic systems, designed to standardize how AI agents execute, reason, and interact with external systems.

Think of it as Kubernetes for AI Agents.

⭐ If you find this project useful, consider starring the repository.


Why Astromesh

Most AI applications repeatedly rebuild the same infrastructure:

  • model orchestration
  • tool execution
  • memory systems
  • RAG pipelines
  • agent reasoning loops
  • observability
  • cost control

Astromesh centralizes these capabilities into a single runtime platform.

Instead of writing orchestration logic yourself, you define agents declaratively and let the runtime manage execution.


Documentation

Full documentation site: monaccode.github.io/astromesh

Includes getting started guides, architecture deep-dives, 7 deployment modes, configuration reference, and API docs.

Additional references in this repo:


Key Features

Multi-Model Runtime

Run agents across multiple LLM providers:

  • Ollama
  • OpenAI-compatible APIs
  • vLLM
  • llama.cpp
  • HuggingFace TGI
  • ONNX Runtime

The built-in Model Router automatically selects the best model using strategies such as:

  • cost optimized
  • latency optimized
  • quality first
  • round robin
  • capability match

Multiple Agent Reasoning Patterns

Astromesh includes several orchestration strategies:

PatternDescription
ReActreasoning + tool usage loop
Plan & Executegenerate plan then execute
Pipelinesequential processing
Parallel Fan-Outmulti-model collaboration
Supervisorhierarchical agents
Swarmdistributed agent collaboration
Glyphthe model writes one program; its dependency graph is executed in waves

Built-in Memory System

Agents can maintain multiple memory layers:

Memory TypePurpose
Conversationalchat history
Semanticvector embeddings
Episodicevent logs

Supported backends:

  • Redis
  • PostgreSQL
  • SQLite
  • pgvector
  • ChromaDB
  • Qdrant
  • FAISS

Retrieval-Augmented Generation (RAG)

Astromesh includes a complete RAG pipeline:

  • document chunking
  • embeddings
  • vector search
  • reranking
  • context injection

Supported vector stores:

  • pgvector
  • ChromaDB
  • Qdrant
  • FAISS

Tool System

Agents interact with external systems using tools:

TypeDescription
Built-in (18 tools)web_search, http_request, sql_query, send_email, read_file, and more
MCP Servers (3)code_interpreter, shell_exec, generate_image
Agent toolsInvoke other agents as tools for multi-agent composition
WebhooksCall external HTTP endpoints
RAGQuery and ingest documents

Tools are configured declaratively in agent YAML with zero-code setup for built-ins.


Messaging Channels

Astromesh supports external messaging integrations.

In the runtime:

  • WhatsApp (Meta Cloud API), through the built-in channel adapter
  • send_message, a built-in tool that lets an agent reach a person mid-run instead of only answering whoever wrote first

Through Herald, the communications gateway of the suite: two-way routing decided by an entry agent, a Postgres outbox with a retry budget, and an operator console. WhatsApp is live there; Telegram, Web Chat and SMTP have contract stubs in place.


Observability

Full observability stack with zero configuration:

  • Structured tracing — span trees for every agent execution
  • Metrics — counters and histograms (runs, tokens, cost, latency)
  • Built-in dashboard — web UI at /v1/dashboard/
  • CLI accessastromeshctl traces, astromeshctl metrics, astromeshctl cost
  • OpenTelemetry export — compatible with Jaeger, Grafana Tempo, etc.
  • VS Code integration — traces panel and metrics dashboard in your editor

Developer Experience

Astromesh provides a complete developer toolkit:

ToolDescription
CLI (astromeshctl)Scaffold agents, run workflows, inspect traces, view metrics, validate configs
CopilotBuilt-in AI assistant that helps build and debug agents
VS Code ExtensionYAML IntelliSense, workflow visualizer, traces panel, metrics dashboard, copilot chat
Built-in DashboardWeb UI at /v1/dashboard/ with real-time observability
# Scaffold a new agent
astromeshctl new agent customer-support
# Run it
astromeshctl run customer-support "How do I reset my password?"# See what happened
astromeshctl traces customer-support --last 5
# Check costs
astromeshctl cost --window 24h
# Ask the copilot for help
astromeshctl ask "Why is my agent slow?"

Architecture

Astromesh follows a layered architecture (see also docs/GENERAL_ARCHITECTURE.md for the full reference):

flowchart TB
api["`**API Layer**
REST / WebSocket`"]
runtime["`**Runtime Engine**
Agent lifecycle and execution`"]
core["`**Core Services**
Model Router · Memory Manager · Tool Registry · Guardrails`"]
infra["`**Infrastructure**
LLM Providers · Vector Databases · Observability · Storage Backends`"]
api --> runtime --> core --> infra
Loading

Quick Start

Requirements

  • Python 3.12+
  • uv package manager

Install uv

pip install uv

Clone the repository

git clone https://github.com/monaccode/astromesh.git
cd astromesh

Install dependencies

uv sync

Run the runtime

uv run uvicorn astromesh.api.main:app --reload

API will be available at http://localhost:8000


Create Your First Agent

Create the file: config/agents/my-agent.agent.yaml

apiVersion: astromesh/v1kind: Agentmetadata:
name: my-agentspec:
identity:
display_name: "My Agent"model:
primary:
provider: ollamamodel: "llama3.1:8b"prompts:
system: | You are a helpful assistant.orchestration:
pattern: react

Run the Agent

curl -X POST http://localhost:8000/v1/agents/my-agent/run \
-H "Content-Type: application/json" \
-d '{"query":"Hello","session_id":"demo"}'

Example Use Cases

AI Copilots

  • developer assistants
  • support agents
  • internal knowledge assistants

Autonomous Workflows

  • document processing
  • business automation
  • API orchestration

Multi-Agent Systems

  • distributed reasoning
  • hierarchical agents
  • collaborative agents

AI APIs

Expose agents as programmable services.


Docker Deployment

Astromesh includes a full development stack:

docker compose up

Includes:

  • Agent runtime API
  • Ollama inference
  • vLLM inference
  • embeddings service
  • PostgreSQL + pgvector
  • Redis
  • Prometheus
  • Grafana

Ecosystem

Astromesh is an ecosystem covering the full agent lifecycle. Every component moves on its own clock, so the current versions live in one place — the ecosystem map and its release ledger — rather than in a table that goes stale the day after a release.

ComponentWhat it doesWhere it lives
AuthorADKPython-first agent SDK with decorators, hot reload and a project CLIastromesh-adk
ForgeVisual agent builder, served by the node itself at /forgeastromesh-forge
CortexDesktop IDE that reaches every runtime you own (Electron + React)own repo
LeiaAgent operations in plain English, from inside Claude Codeown repo
ExecuteCore RuntimeMulti-model agent engine with 7 orchestration patternsastromesh
GlyphAction language: the model writes one program instead of one tool call per turnastromesh-glyph
ReachHeraldCommunications gateway — a person reaches an agent, and an agent reaches backown repo
ShipNodeCross-platform system installer and daemonastromesh-node
OSImmutable, API-only Linux appliance with A/B slotsown repo
OrbitCloud-native IaC deployment with Terraform (GCP first)astromesh-orbit
OperateNexusMulti-tenant control plane: publishes, dispatches, meters, billsown repo
CLIastromeshctl — the terminal interface to a nodeastromesh-cli
ModelsNebulaThe open-model foundry that trains and publishes what the runtime routes toown repo

Anything listed with a package name is a directory of this monorepo, released on its own tag.


Astromesh ADK

The Agent Development Kit is a Python SDK for building, testing, and deploying agents on Astromesh. It provides a high-level API that wraps the runtime, so you can define agents in Python code instead of YAML.

pip install astromesh-adk
fromastromesh_adkimportAgent, Toolagent=Agent(
name="my-agent",
model="ollama/llama3.1:8b",
system_prompt="You are a helpful assistant.",
tools=[Tool.web_search(), Tool.http_request()],
)
response=agent.run("What's the weather in Buenos Aires?")
  • Python-first — Define agents, tools, memory, and guardrails in code
  • CLI includedastromesh-adk init, astromesh-adk run, astromesh-adk test
  • Hot reload — Edit your agent code and see changes immediately
  • Compatible — Generates standard Astromesh agent YAML under the hood

Docs: docs/ADK_QUICKSTART.md | docs/ADK_PENDING.md


Astromesh Node

Cross-platform system installer and daemon — deploy Astromesh as a native system service on Linux, macOS, and Windows.

# Debian/Ubuntu
sudo dpkg -i astromesh-node-0.1.2-amd64.deb
sudo astromeshctl init --profile full
sudo systemctl start astromeshd
  • Cross-platform.deb (Debian/Ubuntu), .rpm (RHEL/Fedora), .tar.gz (macOS), .zip (Windows)
  • System service — systemd, launchd, or Windows Service with auto-restart
  • CLI managementastromeshctl with 17 commands (status, doctor, agents, mesh, etc.)
  • 7 profiles — full, gateway, worker, inference, mesh-gateway, mesh-worker, mesh-inference

Docs: Node Introduction | Installation Guides


Astromesh Cloud

A managed multi-tenant platform for deploying and operating Astromesh agents as a service. Includes a REST API, a web-based Studio for no-code agent design, and usage tracking.

# Cloud API (FastAPI + PostgreSQL)cd astromesh-cloud/api && uvicorn astromesh_cloud.main:app --port 8001
# Cloud Studio (Next.js)cd astromesh-cloud/web && npm run dev
  • Multi-tenant — Organizations, members, API keys, rate limiting
  • Agent lifecycle — draft → deployed → paused with quota enforcement
  • BYOK — Bring your own provider keys (OpenAI, Anthropic, etc.) with Fernet encryption
  • Studio — 5-step agent wizard, deploy preview, test chat, usage dashboard
  • Runtime proxy — Proxies execution to Astromesh core with namespace isolation

Docs: docs/CLOUD_OVERVIEW.md | docs/CLOUD_QUICKSTART.md | docs/CLOUD_API_REFERENCE.md


Astromesh Orbit

Orbit is a standalone deployment tool that provisions the full Astromesh stack on cloud infrastructure with a single command. It generates Terraform from Jinja2 templates using a provider plugin architecture.

pip install astromesh-orbit[gcp]
astromeshctl orbit init --provider gcp --preset starter
astromeshctl orbit plan
astromeshctl orbit apply

One command deploys Cloud Run (runtime + Cloud API + Studio), Cloud SQL, Memorystore, Secret Manager, VPC networking, and IAM — all configured from a single orbit.yaml file.

  • GCP first — Cloud-native managed services. AWS and Azure providers on the roadmap.
  • Escape hatchorbit eject produces standalone Terraform files with no Orbit dependency.
  • Two presets — Starter ($30/mo) and Pro ($150/mo), or configure every field manually.

Docs: docs/ORBIT_OVERVIEW.md | docs/ORBIT_QUICKSTART.md | docs/ORBIT_CONFIGURATION.md


Project Structure

astromesh/ # Core runtime
├── api/ # REST + WebSocket API
├── runtime/ # Agent lifecycle engine
├── core/ # Model router, memory, tools, guardrails
├── providers/ # LLM provider adapters
├── orchestration/ # ReAct, Plan&Execute, Pipeline, etc.
├── rag/ # RAG pipeline
├── channels/ # WhatsApp, Slack, etc.
└── mesh/ # Distributed agent networking
astromesh-adk/ # Agent Development Kit (pip install astromesh-adk)
├── astromesh_adk/
└── tests/
astromesh-cloud/ # Managed platform (SaaS)
├── api/ # Cloud API (FastAPI + PostgreSQL)
└── web/ # Cloud Studio (Next.js)
astromesh-orbit/ # Cloud deployment tool (pip install astromesh-orbit)
├── astromesh_orbit/
│ ├── core/ # Provider Protocol + data types
│ ├── terraform/ # Terraform runner + state backend
│ ├── wizard/ # Interactive setup + presets
│ └── providers/gcp/ # GCP templates
└── tests/
astromesh-cli/ # Astromesh CLI — standalone CLI tool for managing nodes and clusters
├── astromesh_cli/
└── tests/
astromesh-node/ # Astromesh Node — daemon, CLI, and packaging (pip install astromesh-node)
├── daemon/ # astromeshd process (systemd / launchd / Windows Service)
├── cli/ # astromeshctl command-line tool
├── packaging/ # APT/RPM/Homebrew packaging configs
└── tests/

Configuration:

config/
├── agents/
├── rag/
├── providers.yaml
└── runtime.yaml
orbit.yaml # Orbit deployment config (project root)

Optional: Rust Native Extensions

Astromesh includes optional Rust-powered native extensions for CPU-bound hot paths (chunking, PII redaction, token counting, routing). When compiled, they provide 5-50x speedup. Without them, the system falls back to pure Python automatically.

pip install maturin
maturin develop --release

See docs/NATIVE_ESTENSIONS_RUST.md for details.


Roadmap

  • Multi-model runtime with 6 providers
  • 6 orchestration patterns (ReAct, Plan&Execute, Pipeline, Fan-Out, Supervisor, Swarm)
  • Memory system (conversational, semantic, episodic)
  • RAG pipeline with 4 vector stores
  • 18 built-in tools + 3 MCP servers
  • Full observability (tracing, metrics, dashboard)
  • CLI with copilot
  • Multi-agent composition (agent-as-tool)
  • Workflow YAML engine
  • VS Code extension
  • Agent Development Kit (ADK) — Python SDK
  • Astromesh Cloud — managed multi-tenant platform
  • Astromesh Orbit — cloud-native deployment (GCP)
  • Distributed agent execution
  • GPU-aware model scheduling
  • Event-driven agents
  • Multi-tenant runtime
  • Agent marketplace

Contributing

Contributions are welcome.

Ways to contribute:

  • new providers
  • orchestration patterns
  • vector stores
  • tools
  • bug fixes
  • documentation improvements

License

Apache-2.0 (see LICENSE)


Community

Community resources coming soon:

  • Discord
  • Roadmap discussions
  • Contributor guide

⭐ If you like Astromesh, give the repo a star. It helps the project reach more developers.

About

Multi-model AI agent runtime. Define agents in YAML, route each role to a model, orchestrate with 7 patterns (ReAct, Plan & Execute, Fan-Out, Pipeline, Supervisor, Swarm, Glyph), and deploy as a REST/WebSocket API with RAG, memory, MCP tools, guardrails and OpenTelemetry observability.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

31 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages