Skip to main content

AI workers, anywhere — run AI agents on any machine, no cloud required

Project description

meshclaw

PyPI Python License: MIT

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

meshclaw-0.5.4-py3-none-any.whl (62.3 kB view details)

Uploaded Python 3

File details

Details for the file meshclaw-0.5.4-py3-none-any.whl.

File metadata

  • Download URL: meshclaw-0.5.4-py3-none-any.whl
  • Upload date:
  • Size: 62.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for meshclaw-0.5.4-py3-none-any.whl
Algorithm Hash digest
SHA256 71e7a13e3d920471e075f4ce5d251ed18f7a0842896d8d145e65da79d51d393c
MD5 d56e7484365c4c492874fafb9d150a1f
BLAKE2b-256 971b9aacea53ebc06424523169ecf8836052a28fbd0e068dc9aacec7bd367cd4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page