nanoclawbster: Skill for Claude Code

.claude/skills/customize/SKILL.md

customize is a skill for Claude Code from sskarz/nanoclawbster. It costs 61 tokens per session (946 once invoked), scanned A, a copy of customize, MIT.

An interactive customization guide for NanoClawbster, an assistant that can receive messages through connected channels.

In plain words
What is it for?
Use it to add channels such as Telegram, Slack, or email; change triggers; modify routing; update configuration; and identify the files to edit and test.
Why use it?
It helps you plan and make changes when the assistant needs a new input channel, trigger, integration, router behavior, or other code customization.

Skill for Claude Code

Written for Claude Code: installed under .claude/. Also seen: mentions CLAUDE.md; names the AskUserQuestion tool.

This is sskarz/nanoclawbster's own configuration. It tells Claude Code how to work on nanoclawbster itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything nanoclawbster configures →

Reuse

Borrowing it

Nothing to install: this file belongs to sskarz/nanoclawbster. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/sskarz/nanoclawbster/main/.claude/skills/customize/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/sskarz/nanoclawbster

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for customize

README.md
[![agentmods](https://agentmods.dev/badge/skills/sskarz/nanoclawbster/customize/github.svg)](https://agentmods.dev/skills/sskarz/nanoclawbster/customize)
Your own site
<a href="https://agentmods.dev/skills/sskarz/nanoclawbster/customize"><img src="https://agentmods.dev/badge/skills/sskarz/nanoclawbster/customize/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for customize

Your own site · 80×15
<a href="https://agentmods.dev/skills/sskarz/nanoclawbster/customize"><img src="https://agentmods.dev/badge/skills/sskarz/nanoclawbster/customize.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 61 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 946 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin 91% copy Near-identical to another mod in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00061 $0.00946
Opus 5 $0.00030 $0.00473
Sonnet 5 $0.00012 $0.00189
Haiku 4.5 $0.00006 $0.00095

Measured 8d ago against content hash 015ed3d6017b, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-08, from the pricing page.

Security

Grade A, and why

customize scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 8d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

Origin

This is a copy

91% identical to customize — 12 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

.claude/skills/customize/SKILL.md · 111 lines

How it starts

The opening of the file, as written. The whole thing — 111 lines — stays where its author put it; the contents beside it link to each section on GitHub.

NanoClawbster Customization

This skill helps users add capabilities or modify behavior. Use AskUserQuestion to understand what they want before making changes.

Workflow

  1. Understand the request - Ask clarifying questions
  2. Plan the changes - Identify files to modify
  3. Implement - Make changes directly to the code
  4. Test guidance - Tell user how to verify

Key Files

File Purpose
src/index.ts Orchestrator: state, message loop, agent invocation
src/channels/whatsapp.ts WhatsApp connection, auth, send/receive
src/ipc.ts IPC watcher and task processing
src/router.ts Message formatting and outbound routing
src/types.ts TypeScript interfaces (includes Channel)
src/config.ts Assistant name, trigger pattern, directories
src/db.ts Database initialization and queries
src/whatsapp-auth.ts Standalone WhatsApp authentication script
groups/CLAUDE.md Global memory/persona

Common Customization Patterns

Adding a New Input Channel (e.g., Telegram, Slack, Email)

Questions to ask:

  • Which channel? (Telegram, Slack, Discord, email, SMS, etc.)
  • Same trigger word or different?
  • Same memory hierarchy or separate?
  • Should messages from this channel go to existing groups or new ones?

Implementation pattern:

  1. Create src/channels/{name}.ts implementing the Channel interface from src/types.ts (see src/channels/whatsapp.ts for reference)
  2. Add the channel instance to main() in src/index.ts and wire callbacks (onMessage, onChatMetadata)
  3. Messages are stored via the onMessage callback; routing is automatic via ownsJid()

Adding a New MCP Integration

Questions to ask:

  • What service? (Calendar, Notion, database, etc.)
  • What operations needed? (read, write, both)
  • Which groups should have access?

Implementation:

  1. Add MCP server config to the container settings (see src/container-runner.ts for how MCP servers are mounted)
  2. Document available tools in groups/CLAUDE.md

Read the full file on GitHub · 111 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 8d ago First seen · 111 lines · 61 tokens per session scan A 015ed3d6017b

Subscribe to this mod's changes

customize is a skill published in the GitHub repository sskarz/nanoclawbster (2 stars, last pushed 1mo ago), licensed MIT. It adds 61 tokens to every session and 946 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. It is 91% identical to customize, differing in 12 lines, and is treated as a copy.

Related

Other skills, from other repositories

host-ssh

Run PowerShell on a GuideAnts SSH machine (Windows OpenSSH) via the machine registry in the guide Environment. Use when the user needs host OS tasks — drives, dotnet, Playwright, processes — not file I/O on paths already visible in the workspace file list.

Elumenotion/GuideAnts · 61 tokens

html-craft

Create and verify single-file interactive HTML pages in the sandbox: build or edit the file, then prove the result with headless-Chromium screenshots, in-page DOM/geometry assertions, and JS-error capture (Playwright). No GPU, no service, no network. Use when the user wants an HTML page, animation, demo, dashboard, or…

Elumenotion/GuideAnts · 84 tokens

mssql-query

Query the stack's SQL Server (mssql-express) from the sandbox: probe, databases, tables, schema, sample rows, read-only SQL, and opt-in DML/DDL. Connection string comes from GADBCONNECTIONSTRING in the Guide's Environment variables. Use when the user wants to inspect or query the GuideAnts database.

Elumenotion/GuideAnts · 73 tokens

audiocpp-asr-extended

Transcription beyond the GuideAnts wrapper contract: transcribe workspace files by path (no upload, no 50 MB gateway cap), pass language hints, and sideload other qwen3-family ASR snapshots from Hugging Face through the wrapper. Use when a transcription needs a language hint, the file is large, or the user wants to…

Elumenotion/GuideAnts · 88 tokens

audiocpp-diarize

Speaker diarization: figure out who spoke when in a recording and produce a speaker-labeled transcript, by spawning a private audio.cpp engine with the sortformer diarization model and labeling each turn with the local ASR engine. Use when the user asks to diarize a meeting or call recording, separate or identify…

Elumenotion/GuideAnts · 81 tokens

audiocpp-tts-controls

Advanced synthesis controls on the loaded audio.cpp TTS model: deterministic output via seed, forcing the spoken language, voice-design from a text description (instructions), and enumerating builtin speaker ids — none of which the built-in GuideAnts audio tools expose. Use when the user wants reproducible audio, a…

Elumenotion/GuideAnts · 83 tokens