@maudeai/runtime
v0.1.4
Published
Headless runtime supervisor for Maude — connects an agent CLI (Claude Code, Codex, etc.) to a Maude workspace.
Readme
@maudeai/runtime
Headless runtime supervisor for Maude. Replaces the legacy daemon: connects an agent CLI (Claude Code, Codex, Aider, …) to a Maude workspace.
What it does
- Registers itself with Maude as an
agent_runtime(one-shot, persisted to~/.maude/runtime.json). - Subscribes to
task:assignedSSE events for that runtime. - For each assignment: atomically claims the task, runs the configured agent CLI (configured to talk to Maude's hosted MCP server at
/api/mcpover Streamable HTTP), marks complete or failed when the agent is done. - Heartbeats every 30s.
The agent itself does the work. The supervisor is ~200 lines of plumbing.
Quick start
The simplest path is the UI flow: in Maude, go to Runtimes → "Add remote runtime". You'll get a one-time token and the exact npx @maudeai/runtime … command to paste into your remote shell. The dialog provides MAUDE_RUNTIME_ID and an mrt_* runtime token; the supervisor uses both directly.
MAUDE_BASE_URL=https://maude.example.com \
MAUDE_WORKSPACE_ID=… \
MAUDE_RUNTIME_ID=… \
MAUDE_TOKEN=mrt_… \
npx @maudeai/runtime --agent claude --parallel 4Alternatively, the PAT flow: pass a workspace PAT (mul_*) as MAUDE_TOKEN without MAUDE_RUNTIME_ID. The supervisor registers a new runtime on first boot and persists the issued credentials to ~/.maude/runtime.json. Subsequent runs reuse the persisted token; the PAT is no longer needed.
Adapters
claude(the only one implemented in v0.1)codex,aider— theAgentAdapterinterface insrc/adapters/types.tsis stable; PRs welcome.
