AI workers, anywhere — run AI agents on any machine, no cloud required
Project description
meshclaw
Run AI agent workflows across your infrastructure. Build → test → deploy, in one command.
pip install meshclaw
What meshclaw does
# Parallel — build and test simultaneously on different servers
meshclaw parallel worker1:"make build" worker2:"make test"
# Pipeline — sequential, stops on first failure
meshclaw pipeline worker1:"make build" worker2:"make test" relay1:"./deploy.sh"
# Broadcast — same command on every node
meshclaw broadcast "pip install --upgrade meshpop"
meshclaw turns your servers, containers, and local runtimes into a unified execution surface. One command to run distributed workflows.
Key features
Parallel execution — different tasks on different nodes simultaneously. A build on worker1 and tests on worker2 finish in the time of the slower one.
Pipelines — chain tasks with dependency ordering. Build must succeed before tests run; tests must pass before deploy.
Broadcast — same command across all discovered nodes. Fleet-wide updates, health checks, config pushes.
Signal coordination — agents wait for signals from other agents before proceeding, enabling complex multi-step workflows.
Single-machine mode — works locally with Docker, LXC, or rtlinux containers as nodes. Same API whether you have one machine or twenty.
Quick Start
Discover nodes
meshclaw discover
Finds all nodes on the wire network (or from config).
Run commands
# Single node
meshclaw exec "uptime" -s worker1
# Parallel
meshclaw parallel worker1:"make build" worker2:"make test"
# Pipeline (stops on failure)
meshclaw pipeline worker1:"make build" worker2:"make test" relay1:"./deploy.sh"
# Broadcast to all nodes
meshclaw broadcast "systemctl status nginx"
# History
meshclaw history
Python API
from meshclaw import Orchestrator, Task
with Orchestrator() as orch:
orch.discover()
# Parallel
orch.parallel("build-and-test", [
Task("build", command="make build", server="worker1"),
Task("test", command="make test", server="worker2"),
])
# Pipeline
orch.pipeline("release", [
{"server": "worker1", "command": "make build"},
{"server": "worker2", "command": "make test"},
{"server": "relay1", "command": "./deploy.sh"},
])
# Broadcast
orch.broadcast("systemctl reload nginx")
Single-Machine Mode
Works without a network — local runtimes treated as nodes:
meshclaw parallel \
docker:trainer1:"python train.py --shard 0" \
docker:trainer2:"python train.py --shard 1" \
docker:trainer3:"python train.py --shard 2"
Supports Docker containers, LXC containers, rtlinux instances, and the host machine.
MCP Integration
{
"mcpServers": {
"meshclaw": { "command": "meshclaw-mcp" }
}
}
"Run the build on worker1 and tests on worker2 in parallel" "Deploy to all production nodes" "What's the history of deployments this week?" "Run a health check broadcast across the fleet"
CLI Reference
meshclaw discover # Find available nodes
meshclaw exec "<cmd>" -s <node> # Run on specific node
meshclaw parallel <node>:<cmd> ... # Parallel execution
meshclaw pipeline <node>:<cmd> ... # Sequential pipeline
meshclaw broadcast "<cmd>" # All nodes
meshclaw history [count] [filter] # Command history
meshclaw version # Show version
Architecture
meshclaw uses only what's available — components are optional:
meshclaw (Orchestrator)
├── vssh command execution
├── wire node discovery (optional)
├── mpop scheduling (optional)
└── meshdb state and search (optional)
MeshPOP Stack
mpop Fleet orchestration
vssh Authenticated transport
wire Encrypted mesh VPN
meshclaw Agent workflows ← this
meshdb Distributed search
License
MIT — MeshPOP
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file meshclaw-0.5.3.tar.gz.
File metadata
- Download URL: meshclaw-0.5.3.tar.gz
- Upload date:
- Size: 80.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7a47e476e6f95d907d1f1ef86ca6b818f52ca349d7c59206f2aa23e5cafe2c8c
|
|
| MD5 |
4794270e1272c29747bd2a02d7ccb101
|
|
| BLAKE2b-256 |
ed34055079c17575c24f7b9253a8dcf9091d7455b646888eaa2db703037bcb41
|
File details
Details for the file meshclaw-0.5.3-py3-none-any.whl.
File metadata
- Download URL: meshclaw-0.5.3-py3-none-any.whl
- Upload date:
- Size: 85.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6b8a38ae1e81ab5160e811a3743f1e5664e0e58b0d7961ccf3424dd2f789c0ca
|
|
| MD5 |
ca8e0da14abf9a9aa6b38cb3e73affd3
|
|
| BLAKE2b-256 |
702bf884f7483fb220cb2df9c0bfdabf39df81d93868bf569be106b28bd815d5
|