openclaw/extensions/xmtp/examples/dev-network.json5
HeresMyGit 9a831636a5 feat(xmtp): add Web3 messaging channel via XMTP protocol
Add new XMTP channel extension for decentralized messaging:
- Direct messages (DMs) and group conversations
- Text messages, reactions, and attachments
- ENS address resolution for human-readable names
- Quantum-resistant encryption (MLS protocol)
- Multi-account support with per-account configuration
- Database isolation and network selection (dev/production)
- Comprehensive onboarding with wallet generation

Includes wallet generation scripts, example configurations,
troubleshooting guide, and test coverage for schemas, ENS
resolution, multi-account handling, and onboarding flows.

Note: Tests use Node's test runner format (node:test) and
should be converted to Vitest format in follow-up work.
2026-01-26 21:18:10 -08:00

56 lines
1.8 KiB
Plaintext

// XMTP Dev Network Configuration
// Use for: testing, development, experimentation
// Cost: FREE (no gas fees)
// Network: XMTP dev network (ephemeral, not production-grade)
{
channels: {
xmtp: {
// Enable the XMTP channel
enabled: true,
// Your bot's wallet private key (NEVER commit this to git!)
// Generate with: clawdbot onboard xmtp
// OR: npx tsx scripts/generate-wallet.ts
walletKey: "0x0000000000000000000000000000000000000000000000000000000000000000", // ⚠️ REPLACE THIS
// Network: "dev" for testing (free, ephemeral)
env: "dev",
// DM policy: who can message your bot
// - "pairing": Requires approval via `clawdbot pairing approve xmtp <code>`
// - "open": Anyone can message (commands restricted to authorized users)
// - "allowlist": Only addresses in `allowFrom` can message
dmPolicy: "pairing",
// Database path (where XMTP stores conversation state)
// - Relative paths are relative to working directory
// - Use different paths for different networks!
dbPath: ".xmtp/dev/db",
// Optional: Allowlist for "allowlist" or "pairing" policies
// Only these addresses can message your bot (or bypass pairing)
// allowFrom: [
// "0x1234567890123456789012345678901234567890",
// "vitalik.eth", // ENS names supported
// "0xabcd...5678"
// ],
// Optional: Text message chunk limit (default: 4000)
// XMTP protocol limit is 1MB, but chunk for readability
// textChunkLimit: 4000
}
},
// Optional: Agent settings
agent: {
// Default agent ID for XMTP conversations
// id: "main"
}
// Optional: Model settings
// model: {
// default: "anthropic/claude-sonnet-4-5"
// }
}