Skip to main content

MeshPOP Runtime Linux — L0 node OS for AI infrastructure mesh

Project description

rtlinux — MeshPOP Runtime Linux

Spawn your own AI assistants. Run them anywhere. Distribute them across machines.

pip install rtlinux → Claude attaches → describe what you want → your assistant is running.


The Idea

Most AI assistants are someone else's service. rtlinux lets you build and own yours — running on your laptop, your VPS, your home server. Each assistant is a self-contained node that auto-joins your MeshPOP mesh and responds to mpop ask.

You: "I want an assistant that monitors Hacker News and tells me about AI news every 6 hours"
Claude: [calls rtlinux_create] → builds image → starts container → joins Wire mesh
You: mpop ask hn-monitor "what's trending today?"

Multiple assistants, multiple machines, all talking to each other. Your fleet.


Install

pip install rtlinux

Add to Claude Desktop (claude_desktop_config.json):

{
  "mcpServers": {
    "rtlinux": {
      "command": "python3",
      "args": ["-m", "rtlinux.mcp.rtlinux_mcp_server"]
    }
  }
}

Restart Claude Desktop. You now have rtlinux tools.


Usage

Via Claude (recommended)

Just tell Claude what you want:

"Make me an assistant that checks my email every 30 minutes and flags anything urgent"

"I want a research bot that summarizes AI papers daily"

"Set up a system monitor that alerts me if any server goes above 80% CPU"

Claude will use rtlinux_create to build it, run it, and tell you how to talk to it.

Via CLI

# See available templates
rtlinux templates list

# Scaffold from template (then customize)
rtlinux new email --name my-email-bot
# → creates my-email-bot/template.yaml

# Edit it
nano my-email-bot/template.yaml

# Build + run (docker-compose style)
rtlinux up my-email-bot/

# Talk to it
mpop ask my-email-bot "check my inbox"

# Manage
rtlinux ps              # list running assistants
rtlinux logs my-email-bot
rtlinux down my-email-bot

Deploy to remote server

# Build locally
rtlinux build --config my-email-bot/template.yaml

# Deploy to VPS
rtlinux deploy node1 --image output/rtlinux-my-email-bot-1.0.0.tar

# It joins the Wire mesh on that server — talk to it from anywhere
mpop ask my-email-bot "what's in my inbox?"

Built-in Templates

Template Description Schedule
email Monitor inbox, draft replies, flag urgent every 30m
news Aggregate and summarize news by topic every 6h
code-reviewer Review code, explain diffs, suggest improvements on demand
research Deep research on any topic on demand
system-monitor Monitor server health, alert on anomalies every 15m

template.yaml Format

name: my-assistant
description: "What this assistant does"
model: claude-sonnet-4-6          # or claude-opus-4-6, claude-haiku-4-5

system_prompt: |
  You are a specialized assistant that...

tools:
  - web_search
  - meshdb_search

packages:
  - imapclient                    # extra pip packages baked into image

schedule: "every 6h"              # optional: run automatically
schedule_task: "Summarize the latest AI news"

on_message: "Handle the user request"

env:
  - ANTHROPIC_API_KEY             # required environment variables
  - IMAP_USER

Architecture

pip install rtlinux
        │
        ▼
Claude Desktop (MCP)
        │ rtlinux_create / rtlinux_up
        ▼
  template.yaml ──► Docker image
                         │
                    BusyBox + Python
                    + MeshPOP stack
                    + your assistant code
                    + Wire mesh auto-connect
                         │
              ┌──────────┴──────────┐
         MacBook               VPS / server
         (local)               (remote)
              │                    │
              └────── Wire ────────┘
                         │
                    mpop ask assistant "..."

Each assistant is a lightweight container (~150MB) that:

  • Boots directly into the assistant loop
  • Auto-connects to your Wire mesh
  • Responds to mpop ask <name> "..."
  • Runs scheduled tasks autonomously

MeshPOP Stack

Layer Package Role
L0 rtlinux Runtime OS + assistant builder
L1 Wire WireGuard mesh VPN
L2 vssh Secure remote execution
L3 mpop Fleet orchestration
L4 MeshDB Distributed file search
L5 Vault Secrets management

Share Your Templates

Built something useful? Share it:

  1. Fork github.com/meshpop/rtlinux-templates
  2. Add your template directory with template.yaml
  3. Open a PR

Community templates are browsable via rtlinux templates search.


Links

License

Apache-2.0

Project details


Download files

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

Source Distribution

rtlinux-0.3.0.tar.gz (22.6 kB view details)

Uploaded Source

Built Distribution

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

rtlinux-0.3.0-py3-none-any.whl (23.1 kB view details)

Uploaded Python 3

File details

Details for the file rtlinux-0.3.0.tar.gz.

File metadata

  • Download URL: rtlinux-0.3.0.tar.gz
  • Upload date:
  • Size: 22.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for rtlinux-0.3.0.tar.gz
Algorithm Hash digest
SHA256 ec6f5c404a181b664a7afd440577e0f105296a23dff77e967da923262e34f9fc
MD5 0d32c04f8dc1c40f48c8d28e80db8466
BLAKE2b-256 ba82215b70c3f69ab536294d8cfeca5ea2cac78071680dd661ba8f29e3b18c4e

See more details on using hashes here.

File details

Details for the file rtlinux-0.3.0-py3-none-any.whl.

File metadata

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

File hashes

Hashes for rtlinux-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4e18daa113658e9408b4b858326c761dd7a73efa8727e128acb1f8b9a429db7a
MD5 ec0f6ed411593949bae9e35e7059dfe1
BLAKE2b-256 9eff6ebe5a359704aabba93744c91f61ea1263993609c75db53f249693829afb

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