chengyongru 886e7e43d5 fix(signal): bypass base is_allowed for policy-approved messages
Override _handle_message to publish directly to the bus for messages
that have already passed _check_inbound_policy. The denied DM pairing
path calls super()._handle_message() to issue pairing codes via the
base class. This avoids cross-policy leakage where e.g. group open
policy would cause is_allowed to incorrectly allow denied DM senders.

Also includes:
- SSE: strip one optional leading space after 'data:' per spec
- Convert 20+ f-string log calls to loguru lazy formatting
- Add end-to-end tests for DM/group routing through the full chain
- Add cross-policy test (dm allowlist + group open) for pairing
- Add Signal channel documentation to docs/chat-apps.md
2026-05-21 01:00:36 +08:00
..

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
Image generation image-generation.md Configure image providers, WebUI image mode, and generated artifacts
WebUI ../webui/README.md Open the bundled browser UI; LAN access; Vite dev server for contributors
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, Linux service, and macOS LaunchAgent 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