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
Install
/customize How it works
The /customize skill is NanoClaw’s built-in way to modify its own behavior. Instead of manually editing source files, you describe what you want in plain language, and Claude Code figures out which files to change and how.
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 the channel adapter from scratch. It follows the Channel interface from src/types.ts and wires the new channel into the polling loop.
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 group in NanoClaw has its own CLAUDE.md memory file that shapes how the agent behaves. The skill can modify these instructions, change the system prompt, adjust how the router decides which messages to respond to, or alter the agent’s personality.
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/— individual channel adapters (WhatsApp, Telegram, Slack, Discord).src/router.ts— decides which messages should trigger the agent.src/config.ts— environment variables and configuration.src/ipc.ts— handles communication between containers and the host.groups/CLAUDE.md— the agent’s memory and behavior instructions.
After customization
After making changes, the skill rebuilds NanoClaw and restarts the background service so changes take effect immediately. If the build fails, it rolls back and explains what went wrong.
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
/customizemultiple times to iteratively build the behavior you want. - For common channel additions, the dedicated skills (
/add-telegram,/add-slack, etc.) are more thorough. Use/customizefor things that don’t have a dedicated skill.