Xubin Ren
dbdb43faff
feat: channel plugin architecture with decoupled configs
- Add plugin discovery via Python entry_points (group: nanobot.channels)
- Move 11 channel Config classes from schema.py into their own channel modules
- ChannelsConfig now only keeps send_progress + send_tool_hints (extra=allow)
- Each built-in channel parses dict->Pydantic in __init__, zero internal changes
- All channels implement default_config() for onboard auto-population
- nanobot onboard injects defaults for all discovered channels (built-in + plugins)
- Add nanobot plugins list CLI command
- Add Channel Plugin Guide (docs/CHANNEL_PLUGIN_GUIDE.md)
- Fully backward compatible: existing config.json and sessions work as-is
- 340 tests pass, zero regressions
2026-03-14 16:13:38 +08:00
..
2026-03-07 03:57:57 +00:00
2026-03-07 16:36:12 +00:00
2026-03-14 16:13:38 +08:00
2026-02-13 15:10:07 +08:00
2026-03-13 04:05:08 +00:00
2026-03-10 19:55:06 +00:00
2026-03-08 02:58:25 +00:00
2026-03-10 19:55:06 +00:00
2026-03-08 15:39:40 +00:00
2026-03-04 16:53:07 +01:00
2026-03-14 16:13:38 +08:00
2026-02-06 07:28:39 +00:00
2026-03-14 16:13:38 +08:00
2026-03-07 15:02:06 +00:00
2026-03-01 15:13:44 +01:00
2026-03-11 16:20:11 +00:00
2026-03-11 15:32:43 +08:00
2026-03-10 10:10:37 +00:00
2026-03-10 19:55:06 +00:00
2026-03-12 02:50:28 +00:00
2026-03-14 16:13:38 +08:00
2026-03-08 16:01:06 +00:00
2026-03-13 03:53:50 +00:00
2026-03-10 19:55:06 +00:00
2026-02-20 18:06:13 +01:00
2026-03-11 09:47:04 +00:00
2026-03-14 16:13:38 +08:00
2026-03-12 04:33:51 +00:00
2026-03-10 09:16:23 +00:00
2026-03-14 16:13:38 +08:00
2026-03-11 03:47:24 +00:00
2026-03-14 16:13:38 +08:00
2026-03-11 16:20:11 +00:00
2026-03-13 05:44:16 +00:00