Documentation

How to install, how to publish, and exactly what the registry does and does not promise.

Getting started

Guides

Publishing skills, plugins, workflows and kits

What to upload for each kind, what its manifest block carries, and the exact web and API calls that publish it.

Building a Space App

A Space App from zero: its own repo on app-space-sdk, a loopback server with an embedded UI and MCP, packed into an installable zip.

The Space App API

Everything the daemon offers an app: bridge actions, REST endpoints, MCP in both directions, the iframe bridge, and chat widgets.

Space App SDKs

One daemon contract, four SDKs — Rust, Node, Python and Go: what each covers, what every app shares, and how to choose.

Space App in Node

Build a Space App in TypeScript with @senclaw/space-sdk: the daemon client, the lifecycle helpers, an MCP server in a few lines, and dispatch.

Space App in Python

Build a Space App in Python with senclaw-space-sdk: standard library only, one serve() call for health, UI, REST and MCP, and a venv the daemon manages.

Space App in Go

Build a Space App in Go: standard library only, one Serve() call for health, UI, REST and MCP — and the missing install step that catches every Go app once.

Publishing a Space App

Registry metadata, the first publish, shipping updates, and how installed apps know a new version exists.

Authoring widgets

Cards inline in the chat box and on the dashboard: choosing between built-in kinds, app and plugin widgets — and the manifest entry, HTML page, text fallback and skill that make one work.

Aliasing MCP tools

Give a tool a new name, or override it with another implementation — no code edits, no daemon restart: the alias registry, the resolve path, the REST API, and the manifest declaration with its approval gate.

Background & scheduled tasks

SenClaw's two automation systems — scheduled tasks that reply in a chat, and background tasks that run unattended into run records — plus calendar reminders: creating, managing, lifecycle, safety limits and the REST APIs.

The Kanban board

A work board where agents pick up and run the cards in the Ready column: boards, columns and cards, the dispatcher cycle and its outcomes, AI board generation, column templates, the MCP toolset and the REST API.

Provider sign-in

Run models from OAuth subscription accounts (Claude Code, Codex, Copilot, Gemini CLI…) or free-tier endpoints: the two sign-in flows, remote use, token refresh and storage, binding accounts to models, and troubleshooting.

Running code in a sandbox

Run shell commands and code isolated from the real machine: what your platform can enforce, the enforcement switches, disk read modes, port rules, restricting egress to one site, activity tracing and the sbx_ toolset.

Sandboxing a Space App

Confine an installed app to its own directories and a named set of sites: the three switches, how domain allowlisting is enforced by a proxy, what each platform can actually enforce, measured before/after results, and the traps that break real apps.

Monitoring a Space App

Is it running, since when, how many restarts, what is it talking to, and is it really sandboxed — the runtime panel, the fleet view, the crash-loop and adopted-process signals, and the runtime API.

Sandbox internals

How the isolation is actually built: the two backends, the generated Seatbelt profile, the three design decisions, port enforcement, tracing, and the measured findings — including a loopback escape that was found against a live daemon and fixed.

Remote access and API tokens

Opening the daemon beyond loopback: the bind-host opt-in, the API token it turns on, how each client sends it, and the limits of the scheme.

Reference

Policy

Pages marked generated are built from the code that implements the behaviour — the manifest tables come out of the validation schemas, the platform ids out of the translation table, the endpoint list out of the routes themselves. Tests fail if any of them drifts from what SenClaw actually does.