ArtificerINNOVATIONS
Labs · Open source

NanoClaw packages

Keep the host small. Ship the product as packages. These npm packages add chat, live traces, admin APIs, pluggable agent hosts, and shared extension abstractions for NanoClaw without baking business logic into core.

Why they exist

Extend NanoClaw without forking it.

NanoClaw keeps its trunk small on purpose. These packages add the surfaces you actually use day to day as installable skills, so the host stays a stable runtime and the product work lives in code you own and can version independently.

More on the approach in why I chose NanoClaw, extending NanoClaw without forking, and launching agents on external hosts.

How they fit together

Shared abstractions, separate product surfaces.

Hosthooks is the extension layer for operator UX. Sessionio and agenthosts are the abstractions for mailbox wire and the agent container. Product packages register on top.

nanoclaw-hosthooks
Composable, append-only extension points on the host and in the agent runner. Named registrations, unregister functions, fail-closed defaults. Webchat and agenttrace register here so their business logic stays out of the NanoClaw host.
nanoclaw-webchat
Local-first browser chat on those hooks. Lobby @mentions, per-agent DMs, threading, attachments, and an MCP server so Cursor can read and send in the same rooms.
nanoclaw-agenttrace
Live activity during long turns. Tools, task progress, optional reasoning summaries, and silence keepalives so chat does not look dead while the agent works.
nanoclaw-adminapi
Token-authenticated HTTP for agent-group lifecycle: create, list, update, config, and restart. Independent of hosthooks, for automation and control planes.
nanoclaw-sessionio
SessionTransport registry for the host↔agent mailbox. Filesystem stays the default. HTTP unlocks agents that do not share a mount with the host.
nanoclaw-agenthosts
RuntimeDriver registry for the agent container abstraction. Docker remains the default. Drivers register side by side; each agent group picks a runtime.
nanoclaw-agenthost-process
Local child-process spawn without Docker. Still a container, just without strong boundaries. Co-located with the host on a filesystem mailbox.
nanoclaw-agenthost-flyio
Fly Machines lifecycle for remote agents. Pairs with HTTP sessionio so a slim always-on host can wake heavy agent VMs on demand.
Packages

Install what you need.

Each package is on npm and GitHub. Start with hosthooks for operator UX, or sessionio and agenthosts if you need alternate spawn and mailbox paths.

nanoclaw-hosthooks Open source
Composable host extension hooks that webchat and agenttrace build on.
nanoclaw-webchat Open source
Local-first web chat for NanoClaw agents, with an MCP server for Cursor.
nanoclaw-agenttrace Open source
Live tool and task traces for NanoClaw agents during long turns.
nanoclaw-adminapi Open source
Token-authenticated HTTP admin API for managing NanoClaw agent groups.
nanoclaw-sessionio Open source
Pluggable host↔agent session mailbox transports for NanoClaw.
nanoclaw-agenthosts Open source
Pluggable agent process lifecycle (RuntimeDriver registry) for NanoClaw.
nanoclaw-agenthost-process Open source
Local child-process RuntimeDriver — run agents without Docker.
nanoclaw-agenthost-flyio Open source
Fly Machines RuntimeDriver for remote NanoClaw agents.
How we built it

Platform judgment in package form.

Keep the host small, and ship product surfaces as installable packages. That same instinct shows up in client work: keep the core stable, and put product logic where you can version and replace it.

These packages also exist because a small team of NanoClaw agents reviews PRs, files bugs, and ships code on the repos that publish them. Meet the team →

Work with the studio →
Get started

Pick a package and install it.

Start from npm, or read the blog posts for the design rationale behind keeping these surfaces out of core.