customize
Skill1 starsChanged 40 days agoMITView on GitHub
Add new capabilities or modify NanoClaw behavior. Use when user wants to add channels (Telegram, Slack, email input), change triggers, add integrations, modify the router, or make any other customizations. This is an interactive skill that asks questions to understand what the user wants.
- Reads credentials
40 other projects use a version of this, 15 of them edited.
Adopted by
Most recently taken up by
- HughYau/AcademicForgetheir own version, first seen Nov 8, 2026
- nanocoai/nanoclawedited, first seen Nov 3, 2026
- microsoft/frontier-ai-governance-rvastheir own version, first seen Oct 25, 2026
- JonathanChan-geek/claude-science-skillstheir own version, first seen Oct 25, 2026
- microsoft/frontier-ai-starter-kit-rvastheir own version, first seen Oct 13, 2026
- microsoft/frontier-agentic-cobuild-rvastheir own version, first seen Oct 13, 2026
Used with
Projects with it also use add-parallel and x-integration.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
MicrosoftSkilladd-parallel
Also in 8 projects that use this
MicrosoftSkillx-integration
X (Twitter) integration for NanoClaw. Post tweets, like, reply, retweet, and quote. Use for setup, testing, or troubleshooting X functionality. Triggers on "setup x", "x integration", "twitter", "post tweet", "tweet".
Also in 8 projects that use this
Other versions40 projects use a version of this.
Word for word · 0
None found.
Edited · 15
- gavrielc/nanoclaw★ 31k94% same
- nanocoai/nanoclaw★ 31k94% same
- qwibitai/nanoclaw★ 31k94% same
- Runchuan-BU/BioClaw★ 40525% same
- DingyangLyu/MatClaw★ 9825% same
- b1rdmania/ghostclaw★ 9125% same
- microsoft/amplifier-app-nanoclaw★ 532% same
- 0-CYBERDYNE-SYSTEMS-0/FFT_nano★ 427% same
- TomGranot/groupguard★ 394% same
- jaypyles/nanoclaw-discord★ 229% same
5 more not listed
Wrote their own version · 25
- anthropics/claude-for-legal★ 9.5ksame name
- anthropics/defending-code-reference-harness★ 7.5ksame name
- microsoft/agent-skills★ 3.2ksame name
- microsoft/skills★ 3.2ksame name
- HughYau/AcademicForge★ 2.6ksame name
- microsoft/azure-skills★ 1.6ksame name
- xuzhougeng/wisp-science★ 1.1ksame name
- microsoft/GitHub-Copilot-for-Azure★ 262same name
- JimLiu/science-skills★ 228same name
- projectbluefin/finpilot★ 131same name
15 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository54 other files it gives its agents.
- container/AGENTS.mdAGENTS.md
- container/CLAUDE.mdCLAUDE.md
- add-atomic-chat-toolSkill
- add-codexSkill
- add-dashboardSkill
- add-deltachatSkill
- add-discordSkill
- add-emacsSkill
- add-gcal-toolSkill
- add-gchatSkill
- add-githubSkill
- add-gmail-toolSkill
- add-imessageSkill
- add-karpathy-llm-wikiSkill
- add-linearSkill
- add-macos-statusbarSkill
- add-matrixSkill
- add-mnemonSkill
- add-ollama-providerSkill
- add-ollama-toolSkill
- add-opencodeSkill
- add-piSkill
- add-resendSkill
- add-rtkSkill
- add-signalSkill
- add-slackSkill
- add-teamsSkill
- add-telegramSkill
- add-vercelSkill
- add-webexSkill
- add-wechatSkill
- add-whatsapp-cloudSkill
- add-whatsappSkill
- archive-tripSkill
- debugSkill
- get-qodo-rulesSkill
- init-first-agentSkill
- init-onecliSkill
- learnSkill
- manage-channelsSkill
- manage-mountsSkill
- migrate-from-openclawSkill
- migrate-from-v1Skill
- migrate-memorySkill
- migrate-nanoclawSkill
- nano-pvt-hubSkill
- new-knowledge-graph-tutorSkill
- new-tripSkill
- qodo-pr-resolverSkill
- reflectSkill
- setupSkill
- update-nanoclawSkill
- update-skillsSkill
- use-native-credential-proxySkill
The file
We split this skill into the rules it gives an agent
12 rules. 0 are common, 6 are distinctive, and 6 are very specific to this project.
0
Common
Most of the 37 edited versions we read keep these.
6
Distinctive
This author's own choices. Worth a look.
6
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 50
Should this channel reach an existing agent group or a new one?
- Very specific: line 55
Run the matching install skill (/add-telegram, /add-slack, …).
- Very specific: line 56
Run /manage-channels (or use ncl messaging-groups + ncl wirings) to create the messaging group, choose the isolation level, and wire it to …
- Very specific: line 66
If an /add-<service>-tool skill exists (e.g.
- Distinctive: line 97
Create the appropriate service files.
- Very specific: line 98
Update paths in .env / config.
- Distinctive: line 103
Always tell the user.
- Distinctive: line 105
Run from your NanoClaw project root:
- Very specific: line 122
Run /add-telegram to install the adapter, wire its registration, and build.
- Distinctive: line 123
Ask: "Should Telegram reach an existing agent group, or a new one?"
- Distinctive: line 124
Ask: "Share an agent group with your other channels, or keep Telegram separate?"
- Very specific: line 125
Run /manage-channels (or ncl messaging-groups create + ncl wirings create) to create the messaging group and wire it to the chosen agent …
“Common” is measured: kept by at least 6 in 10 of the 37 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
NanoClaw Customization
This skill helps users add capabilities or modify behavior. Use AskUserQuestion to understand what they want before making changes.
Workflow
- Understand the request — Ask clarifying questions.
- Prefer a dedicated skill — If a skill covers the request, invoke it instead of editing core by hand:
- Channels:
/add-telegram,/add-slack,/add-discord,/add-whatsapp,/add-signal,/add-imessage, and the rest of the/add-<channel>family. - Wiring channels to agents and isolation levels:
/manage-channels. - Container directory access:
/manage-mounts. - Agent providers (non-default):
/add-opencode,/add-codex,/add-ollama-provider. - Integrations as MCP tools:
/add-gmail-tool,/add-gcal-tool,/add-ollama-tool, etc.
- Channels:
- Plan the changes — Identify the v2 surface the change belongs to (entity model in the central DB, per-agent-group container config, per-group
CLAUDE.md, or core code). - Implement — Make the change on the right surface.
- Test guidance — Tell the user how to verify.
Entity Model
Customizations route through the v2 entity model: users → messaging groups → agent groups → sessions. A messaging group is one chat/channel on one platform; an agent group holds the workspace, personality, and container config; a wiring links a messaging group to an agent group with a session mode and trigger rules. Inspect and edit all of this with the ncl admin CLI. See docs/isolation-model.md for the three isolation levels.
Key Files
| File | Purpose |
src/index.ts | Entry point: init DB, migrations, channel adapters, delivery polls, sweep, shutdown |
src/router.ts | Inbound routing: messaging group → agent group → session → inbound.db → wake |
src/delivery.ts | Polls outbound.db, delivers via adapter, handles system actions |
src/session-manager.ts | Resolves sessions; opens inbound.db / outbound.db; heartbeat path |
src/container-runner.ts | Spawns per-agent-group containers with session DB + outbox mounts, OneCLI ensureAgent |
src/channels/ | Channel adapter infra (registry, Chat SDK bridge); specific adapters install from the channels branch |
src/config.ts | Process-level config (assistant name, paths, timeouts) read from .env |
data/v2.db | Central DB: users, roles, agent_groups, messaging_groups, wirings, container_configs |
data/v2-sessions/<session>/ | Per-session inbound.db (host→container) + outbound.db (container→host) |
groups/<folder>/CLAUDE.md | Per-agent-group memory/persona and instructions |
For ad-hoc DB queries, use pnpm exec tsx scripts/q.ts <db> "<sql>".
Common Customization Patterns
Adding a New Input Channel (e.g., Telegram, Slack, Email)
Questions to ask:
- Which channel? (Telegram, Slack, Discord, WhatsApp, Signal, email, etc.)
- Should this channel reach an existing agent group or a new one?
- What isolation level — share an agent group with other channels, or keep it separate?
- Same trigger rules as other channels on that agent group, or different?
Implementation:
- Run the matching install skill (
/add-telegram,/add-slack, …). It fetches the adapter from thechannelsbranch, wires the registration import, installs the pinned package, and builds. - Run
/manage-channels(or usencl messaging-groups+ncl wirings) to create the messaging group, choose the isolation level, and wire it to an agent group with a session mode and trigger rules.
Adding a New MCP Integration
Questions to ask:
- What service? (Calendar, Notion, database, etc.)
- What operations are needed? (read, write, both)
- Which agent group should have access?
Implementation:
- If an
/add-<service>-toolskill exists (e.g./add-gmail-tool,/add-gcal-tool), run it — it wires the MCP server and routes credentials through OneCLI so no raw keys reach the container. - Otherwise wire the MCP server into the agent group's container config:
ncl groups config add-mcp-server --id <group-id> --name <name> --command <cmd> [--args <json-array>] [--env <json-object>], thenncl groups restart --id <group-id>to take effect. From inside a container the agent uses theadd_mcp_serverself-mod tool, which requires one admin approval.
Changing Assistant Behavior
Questions to ask:
- What aspect? (persona, response style, instructions)
- Apply to one agent group or several?
Implementation:
- Persona, instructions, and personality live per agent group in
groups/<folder>/CLAUDE.md— edit that file for the target group. - Container runtime behavior (provider, model, packages, MCP servers) lives in the
container_configstable:ncl groups config get/update --id <group-id>.
Adding New Commands
Questions to ask:
- What should the command do?
- Which agent group(s)?
- Does it need new MCP tools?
Implementation:
- The agent interprets requests naturally — add instructions to the agent group's
groups/<folder>/CLAUDE.md. - For routing or trigger changes (which messages wake which agent group), update the wiring's trigger rules:
ncl wirings update --id <wiring-id> ....
Changing Deployment
Questions to ask:
- Target platform? (Linux server, different Mac)
- Service manager? (launchd, systemd)
Implementation:
- Create the appropriate service files.
- Update paths in
.env/ config. - Provide setup instructions.
After Changes
Always tell the user.
Run from your NanoClaw project root:
# Rebuild and restart
pnpm run build
source setup/lib/install-slug.sh
# macOS:
launchctl unload ~/Library/LaunchAgents/$(launchd_label).plist
launchctl load ~/Library/LaunchAgents/$(launchd_label).plist
# Linux:
# systemctl --user restart $(systemd_unit)Example Interaction
User: "Add Telegram as an input channel"
- Run
/add-telegramto install the adapter, wire its registration, and build. - Ask: "Should Telegram reach an existing agent group, or a new one?"
- Ask: "Share an agent group with your other channels, or keep Telegram separate?"
- Run
/manage-channels(orncl messaging-groups create+ncl wirings create) to create the messaging group and wire it to the chosen agent group with a session mode and trigger rules. - Tell the user how to authenticate and test.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

