Discord threads use their own channel IDs, so allowChannels was blocking thread replies unless each thread ID was listed explicitly. - Include the thread parent channel ID as an allowlist candidate - Enforce allow_channels on slash commands (previously bypassed) - Show parent channel ID in runtime context, reply to the thread - Fix subagent cancel key via effective_key propagation - Detect bot mentions via raw_mentions and reply-to-bot references - Cache seen thread channels for outbound delivery - Ignore system messages that become empty prompts
nanobot Docs
For the latest documentation, visit nanobot.wiki.
The pages in this directory track the current repository and may move faster than the published website.
Core Docs
Start here for setup, everyday usage, and deployment.
| Topic | Repo docs | What it covers |
|---|---|---|
| Install and quick start | quick-start.md |
Installation, onboarding, and first-run setup |
| Chat apps | chat-apps.md |
Connect nanobot to Telegram, Discord, WeChat, and more |
| Agent social network | agent-social-network.md |
Join external agent communities from nanobot |
| Configuration | configuration.md |
Providers, tools, channels, MCP, and runtime settings |
| Multiple instances | multiple-instances.md |
Run isolated bots with separate configs and workspaces |
| CLI reference | cli-reference.md |
Core CLI commands and common entrypoints |
| In-chat commands | chat-commands.md |
Slash commands and periodic task behavior |
| OpenAI-compatible API | openai-api.md |
Local API endpoints, request format, and file uploads |
| Deployment | deployment.md |
Docker and Linux service setup |
Advanced Docs
Use these when you want deeper customization, integration, or extension details.
| Topic | Repo docs | What it covers |
|---|---|---|
| Memory | memory.md |
How nanobot stores, consolidates, and restores memory |
| Python SDK | python-sdk.md |
Use nanobot programmatically from Python |
| Channel plugin guide | channel-plugin-guide.md |
Build and test custom chat channel plugins |
| WebSocket channel | websocket.md |
Real-time WebSocket access and protocol details |
| Custom tools | my-tool.md |
Inspect and tune runtime state with the my tool |