What It Does
The Customize skill helps you:- Add new input channels (Telegram, Slack, email, etc.)
- Add MCP integrations (calendar, databases, APIs)
- Change assistant behavior (name, trigger, persona)
- Add custom commands
- Modify deployment settings
How to Apply
Describe what you want
The skill will ask clarifying questions to understand:
- What you want to add or change
- Which groups should be affected
- Configuration preferences
What Changes
Depends on the customization requested. Common changes:Adding a New Input Channel
- Creates
src/channels/{name}.tsimplementing the Channel interface - Updates
src/index.tsto wire the channel - Adds channel-specific dependencies to
package.json
Adding MCP Integration
- Updates
src/container-runner.tswith MCP server config - Documents available tools in
groups/CLAUDE.md
Changing Assistant Behavior
- Simple changes: edits
src/config.ts - Persona changes: edits
groups/CLAUDE.md - Per-group behavior: edits specific group’s
CLAUDE.md
Adding Commands
- Updates
groups/CLAUDE.mdwith command instructions - Optionally modifies
src/index.tsfor routing changes
Key Files Reference
| File | Purpose |
|---|---|
src/index.ts | Message loop, agent invocation |
src/channels/whatsapp.ts | WhatsApp connection and messaging |
src/ipc.ts | Inter-process communication |
src/router.ts | Outbound message routing |
src/types.ts | TypeScript interfaces |
src/config.ts | Trigger pattern, assistant name |
src/db.ts | Database operations |
groups/CLAUDE.md | Global memory and persona |
Usage
Example: Adding Telegram
- Run
/customize - Say “Add Telegram as an input channel”
- Answer questions:
- Same trigger word or different?
- Shared memory or separate?
- New groups or existing?
- The skill creates
src/channels/telegram.ts - Follow authentication instructions
- Test by sending a message in Telegram
After Customization
Always rebuild and restart:The Customize skill is interactive and asks questions before making changes. It doesn’t modify code without your confirmation.