Meet NanoCo, maintainers of NanoClaw: we raised $12M to give every member of your team a professional assistant →
Skills
Utility Official

Customize

Add new capabilities or modify NanoClaw behavior. An interactive skill that builds what you describe.

What it does

  • Interactive skill that asks what you want to build
  • Add new messaging channels, triggers, or integrations
  • Modify the router, assistant behavior, or deployment setup
  • Understands NanoClaw's architecture and modifies it safely
  • Follows existing code patterns and conventions

What you'll need

  • NanoClaw installed and running

Run the skill

Claude Code: /customize
Codex: $customize

OpenCode loads the same skill through its skill tool.

How it works

The /customize skill is NanoClaw’s guided way to modify behavior. Instead of manually editing source files, describe what you want in plain language and your coding agent works out which surfaces need to change.

The skill follows a four-step workflow: Understand what you’re asking for, Plan the changes, Implement them, and Test that everything works. At each step, it explains what it’s doing and asks for confirmation before making changes.

What you can customize

The skill understands NanoClaw’s architecture and knows which files handle what. Here are the most common customization types:

Adding new input channels. If you want to connect a messaging platform that doesn’t have a dedicated skill yet, /customize can build a self-registering adapter against the interface in src/channels/adapter.ts and wire its import into the channel barrel.

Adding MCP integrations. NanoClaw agents run inside containers and can use MCP (Model Context Protocol) servers for tool access. If you want your agent to have access to a new tool — a database, a file system, an API — the skill configures the MCP server and mounts it into the container.

Changing assistant behavior. Each agent group has instructions.prepend.md for standing instructions and a memory/ tree for durable memory. NanoClaw composes provider-specific instruction surfaces at spawn, so edit those source files rather than the generated CLAUDE.md.

Adding new commands. If you want NanoClaw to respond to specific trigger words or patterns differently from normal messages, the skill can add command handlers to the router.

Changing deployment. The skill can modify how NanoClaw runs — changing the service configuration, adjusting concurrency limits, modifying container settings, or updating environment variables.

Key files

The skill knows the purpose of every file in NanoClaw’s codebase. The most commonly modified ones are:

  • src/index.ts — the main orchestrator that polls for messages and spawns containers.
  • src/channels/ — channel adapter infrastructure (registry, Chat SDK bridge); platform adapters (WhatsApp, Telegram, Slack, Discord, …) are installed from the channels branch by the /add-<channel> skills.
  • src/router.ts — decides which messages should trigger the agent.
  • src/config.ts — environment variables and configuration.
  • src/session-manager.ts and src/delivery.ts — host↔container communication via per-session inbound.db/outbound.db queues under data/v2-sessions/.
  • groups/<folder>/instructions.prepend.md — the agent group’s standing instructions and persona.
  • groups/<folder>/memory/ — provider-neutral durable memory shared by the group’s sessions.

After customization

After making changes, the skill runs the relevant build and tests, then tells you whether a host restart or container-image rebuild is needed. The exact validation depends on the surface changed.

Tips

  • Be specific about what you want. “Make the agent respond in Spanish” is better than “change the language.”
  • The skill preserves existing functionality. If you ask to add Telegram, it won’t break your WhatsApp setup.
  • You can chain customizations. Run /customize multiple times to iteratively build the behavior you want.
  • For common channel additions, the dedicated skills (/add-telegram, /add-slack, etc.) are more thorough. Use /customize for things that don’t have a dedicated skill.