You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Here `../workspace` points to the repository-level `workspace/` directory, because the command runs inside `console/`.
176
176
177
-
The console reads `~/.mathclaw/config.json` by default; if you still keep the legacy layout, it automatically falls back to `~/.nanobot/config.json`. The old `NANOBOT_CONSOLE_*` environment variables remain supported as well.
177
+
The console reads `~/.mathclaw/config.json` by default; if you still keep the legacy directory layout or legacy environment variable naming, the console remains backward compatible.
Copy file name to clipboardExpand all lines: docs/CHANNEL_PLUGIN_GUIDE.md
+31-31Lines changed: 31 additions & 31 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,15 +1,15 @@
1
1
# Channel Plugin Guide
2
2
3
-
Build a custom nanobot channel in three steps: subclass, package, install.
3
+
Build a custom MathClaw channel in three steps: subclass, package, install.
4
4
5
-
> **Note:** We recommend developing channel plugins against a source checkout of nanobot (`pip install -e .`) rather than a PyPI release, so you always have access to the latest base-channel features and APIs.
5
+
> **Note:** We recommend developing channel plugins against a source checkout of MathClaw (`pip install -e .`) rather than a PyPI release, so you always have access to the latest base-channel features and APIs.
6
6
7
7
## How It Works
8
8
9
-
nanobot discovers channel plugins via Python [entry points](https://packaging.python.org/en/latest/specifications/entry-points/). When `nanobot gateway` starts, it scans:
9
+
MathClaw discovers channel plugins via Python [entry points](https://packaging.python.org/en/latest/specifications/entry-points/). When `mathclaw gateway` starts, it scans:
10
10
11
-
1. Built-in channels in `nanobot/channels/`
12
-
2. External packages registered under the `nanobot.channels` entry point group
11
+
1. Built-in channels in `mathclaw/channels/`
12
+
2. External packages registered under the `mathclaw.channels` entry point group
13
13
14
14
If a matching config section has `"enabled": true`, the channel is instantiated and started.
15
15
@@ -20,8 +20,8 @@ We'll build a minimal webhook channel that receives messages via HTTP POST and s
|`_handle_message(sender_id, chat_id, content, media?, metadata?, session_key?)`|**Call this when you receive a message.** Checks `is_allowed()`, then publishes to the bus. Automatically sets `_wants_stream` if `supports_streaming` is true. |
217
217
|`is_allowed(sender_id)`| Checks against `config["allowFrom"]`; `"*"` allows all, `[]` denies all. |
218
-
|`default_config()` (classmethod) | Returns default config dict for `nanobot onboard`. Override to declare your fields. |
218
+
|`default_config()` (classmethod) | Returns default config dict for `mathclaw onboard`. Override to declare your fields. |
219
219
|`transcribe_audio(file_path)`| Transcribes audio via Groq Whisper (if configured). |
220
220
|`supports_streaming` (property) |`True` when config has `"streaming": true`**and** subclass overrides `send_delta()`. |
0 commit comments