In why I chose NanoClaw, I wrote about isolation and sleep. This post is about the other half of that bet: keeping the host small while still shipping product surfaces.

NanoClaw’s trunk is intentionally thin. That’s a feature. It’s also a constraint. The moment you need a better UI, live feedback during long turns, or HTTP control of agent groups, you can either fork forever or treat those needs as packages. I chose packages. They live in Labs as open source under Artificer Innovations.

The rule

Product logic doesn’t belong in core. Core should offer stable extension points. Skills install into a fork, verify themselves, and stay replaceable when trunk moves.

That sounds obvious until you’ve patched the same three files by hand for the third feature. Then you want a registry.

hosthooks is the extension layer

nanoclaw-hosthooks installs composable, append-only extension points on the host and in the agent runner. Named registrations, unregister functions, fail-closed defaults. Webchat and agenttrace hang off those hooks so neither has to embed its business logic in NanoClaw itself.

That is the surface I wish every agent host shipped with: delivery policy, outbound transforms, container env contributions, and a small set of runner observers. Enough for real products, not a kitchen sink.

What I built on top

nanoclaw-webchat is a local-first browser desk. Lobby @mentions, per-agent DMs, threads, attachments, optional public auth, and an MCP server so Cursor can read and send in the same rooms. Default bind is localhost. Messages use NanoClaw’s normal router, not a side channel.

nanoclaw-agenttrace is live activity during long turns. Tools, task progress, optional reasoning summaries, silence keepalives so chat doesn’t look dead. Fail-closed until you enable it. Companion UI in webchat collapses noisy timelines so you can skim.

nanoclaw-adminapi is token-authenticated HTTP for agent-group lifecycle: create, list, update, config, restart. NanoClaw’s native admin surface is a Unix socket CLI. This closes the gap for automation and control planes without pretending the admin token is anything other than root-equivalent.

Together they form a stack: hosthooks is the extension layer, webchat and agenttrace as operator UX, adminapi as the machine interface. Details and links are on the Labs page.

How the loop feels in practice

I don’t treat these agents as autocomplete. Specialized reviewers (product/velocity, backend correctness, DX, efficiency) hit my PRs the way a sharp team would. They request changes when a README claims redaction that isn’t on the emit path, when authz is untested, when a “summary” is raw chain-of-thought. They also file follow-up issues and implement fixes. I merge when the loop closes. That only works if I can see what they’re doing (agenttrace), talk to them without leaving the browser (webchat), and manage groups without hand-editing host state (adminapi). Meet the team, including their GitHub profiles.

Skein sits beside that loop for durable memory across tools. NanoClaw is the runtime. The packages are how the runtime stays livable.

Why not merge it all upstream

Some of this may belong upstream someday. Shipping as skills first keeps pressure in the right place: prove the extension points, keep installers transactional and idempotent, and avoid turning every experiment into a core commit. It also lets other NanoClaw forks pick what they need. If you only want admin HTTP, you shouldn’t inherit my chat UI. For the contribution policy, PR backlog, and how the npm skill installers stay idempotent, see shipping NanoClaw skills as npm packages.

If you’re on a similar path

Start with isolation you trust. Add hosthooks before the third one-off patch. Put operator UX and automation in packages with verify steps. Keep secrets and mounts boring. And when an agent makes a security claim, make it prove the call site, not just the unit test of a helper nobody imports.

The code is MIT and on npm. Next in the series: launching NanoClaw agents on external hosts, covering sessionio, agenthosts, and Fly Machines without forking core. If you want help standing up an agent scaffold your team can actually operate, book a call.