60 Commits

Author SHA1 Message Date
Jeroen Evens
b161fa4f9a [github] Add Github Copilot 2026-02-17 23:07:04 +01:00
Re-bin
941c3d9826 style: restore single-line formatting for readability 2026-02-17 17:34:24 +00:00
Simon Guigui
4d4d629928 fix(config): mcpServers env variables should not be converted to snake case 2026-02-17 15:19:21 +01:00
Darye
5033ac1759 Added Github Copilot Provider 2026-02-16 15:02:12 +01:00
Re-bin
1ce586e9f5 fix: resolve Codex provider bugs and simplify implementation 2026-02-16 11:43:36 +00:00
Re-bin
9e5f7348fe Merge branch 'main' into pr-151 2026-02-16 09:19:40 +00:00
Re-bin
54d5f637e7 merge main into pr-554 2026-02-15 06:12:15 +00:00
Re-bin
b76cf05c3a feat: add custom provider and non-destructive onboard 2026-02-13 16:05:00 +00:00
Re-bin
fd7e477b18 fix(security): bind WhatsApp bridge to localhost + optional token auth 2026-02-13 05:37:56 +00:00
Re-bin
94c21fc235 feat: redesign memory system — two-layer architecture with grep-based retrieval 2026-02-12 15:02:52 +00:00
Sergio Sánchez Vallés
e89afe61f1
feat(tools): add mcp support 2026-02-12 10:09:00 +01:00
Sergio Sánchez Vallés
cbab72ab72 fix: pydantic deprecation configdict 2026-02-11 13:01:29 +01:00
Re-bin
39dd7feb28 resolve conflicts with main and adapt MiniMax 2026-02-10 16:27:10 +00:00
Re-bin
d1f0615282 resolve conflicts with main; remove test_mochat_channel.py 2026-02-10 06:52:52 +00:00
Re-bin
ec4340d0d8 feat: add App Home step to Slack guide, default groupPolicy to mention 2026-02-09 16:49:13 +00:00
pinhua33
c6915d27e9 Merge remote-tracking branch 'upstream/main' into feature/codex-oauth 2026-02-10 00:44:03 +08:00
Re-bin
2c45657b14 resolve merge conflicts: keep all channels and add QQ 2026-02-09 11:58:38 +00:00
Re-bin
74e3c411a1 resolve merge conflicts: keep all channels and add slack 2026-02-09 11:17:07 +00:00
tjb-tech
866942eedd fix: update agentUserId in README and change base_url to HTTPS in configuration 2026-02-09 09:12:53 +00:00
tjb-tech
ef7972b6d3 Merge origin/main into feat/mochat-channel 2026-02-09 09:01:25 +00:00
tjb-tech
3779225917 refactor(channels): rename moltchat integration to mochat 2026-02-09 08:50:17 +00:00
tjb-tech
20b8a2fc58 feat(channels): add Moltchat websocket channel with polling fallback 2026-02-09 08:46:47 +00:00
yinwm
34dc933fce feat: add QQ channel integration with botpy SDK
Add official QQ platform support using botpy SDK with WebSocket connection.

Features:
- C2C (private message) support via QQ Open Platform
- WebSocket-based bot connection (no public IP required)
- Message deduplication with efficient deque-based LRU cache
- User whitelist support via allow_from configuration
- Clean async architecture using single event loop

Changes:
- Add QQChannel implementation in nanobot/channels/qq.py
- Add QQConfig schema with appId and secret fields
- Register QQ channel in ChannelManager
- Update README with QQ setup instructions
- Add qq-botpy dependency to pyproject.toml
- Add botpy.log to .gitignore

Setup:
1. Get AppID and Secret from q.qq.com
2. Configure in ~/.nanobot/config.json:
   {
     "channels": {
       "qq": {
         "enabled": true,
         "appId": "YOUR_APP_ID",
         "secret": "YOUR_APP_SECRET",
         "allowFrom": []
       }
     }
   }
3. Run: nanobot gateway

Note: Group chat support will be added in future updates.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-09 15:54:14 +08:00
pinhua33
ae908e0dcd Merge upstream/main: resolve conflicts with OAuth support 2026-02-09 15:13:11 +08:00
Re-bin
994f5601e9 resolve merge conflicts: keep both dingtalk and email channels 2026-02-09 06:02:36 +00:00
Re-bin
eb2fbf80da fix: use config key to detect provider, prevent api_base misidentifying as vLLM 2026-02-08 19:31:25 +00:00
Re-bin
499f602223 Merge branch 'main' into pr-219 2026-02-08 17:34:06 +00:00
pinhua33
08efe6ad3f refactor: add OAuth support to provider registry system
- Add is_oauth and oauth_provider fields to ProviderSpec
- Update _make_provider() to use registry for OAuth provider detection
- Update get_provider() to support OAuth providers (no API key required)
- Mark OpenAI Codex as OAuth-based provider in registry

This improves the provider registry architecture to support OAuth-based
authentication flows, making it extensible for future OAuth providers.

Benefits:
- OAuth providers are now registry-driven (not hardcoded)
- Extensible design: new OAuth providers only need registry entry
- Backward compatible: existing API key providers unaffected
- Clean separation: OAuth logic centralized in registry
2026-02-08 16:48:11 +08:00
pinhua33
c1dc8d3f55 fix: integrate OpenAI Codex provider with new registry system
- Add OpenAI Codex ProviderSpec to registry.py
- Add openai_codex config field to ProvidersConfig in schema.py
- Mark Codex as OAuth-based (no API key required)
- Set appropriate default_api_base for Codex API

This integrates the Codex OAuth provider with the refactored
provider registry system introduced in upstream commit 299d8b3.
2026-02-08 16:33:46 +08:00
Re-bin
299d8b33b3 refactor: replace provider if-elif chains with declarative registry 2026-02-08 07:29:31 +00:00
w0x7ce
240db894b4 feat(channels): add DingTalk channel support and documentation 2026-02-08 11:58:49 +08:00
Vincent Wu
3c8eadffed feat: add MiniMax provider support via LiteLLM 2026-02-08 03:55:24 +08:00
Re-bin
572eab8237 feat: add AiHubMix provider support and refactor provider matching 2026-02-07 08:10:05 +00:00
张涔熙
cfe43e4920 feat(email): add consent-gated IMAP/SMTP email channel 2026-02-07 11:08:30 +08:00
Re-bin
7c2aec99a0 resolve conflicts with main 2026-02-07 02:41:28 +00:00
Re-bin
943579b96a refactor(security): lift restrictToWorkspace to tools level 2026-02-06 09:28:08 +00:00
Re-bin
760a369004 feat: fix API key matching by model name 2026-02-06 08:01:20 +00:00
mengjiechen
e680b734b1 feat: add Moonshot provider support
- Add moonshot to ProvidersConfig schema
- Add MOONSHOT_API_BASE environment variable for custom endpoint
- Handle kimi-k2.5 model temperature restriction (must be 1.0)
- Fix is_vllm detection to exclude moonshot provider

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 15:25:58 +08:00
Re-bin
71fc73ecc4 resolve conflicts with main 2026-02-06 07:08:29 +00:00
Re-bin
ac45630116 resolve conflicts with main 2026-02-05 08:51:11 +00:00
Kamal
051e396a8a feat: add Slack channel support 2026-02-04 23:26:20 +05:30
tao.jun
50fa024ab4 feishu support 2026-02-04 14:07:45 +08:00
Re-bin
a20d887f9e feat: add parameter validation and safety guard for exec tool 2026-02-04 03:45:26 +00:00
Anunay Aatipamula
7d2bebcfa3
Merge branch 'main' into feat/discord-support 2026-02-03 21:15:15 +05:30
ZJUCQR
8499dbf132 add dashscope support 2026-02-03 16:27:15 +08:00
Re-bin
eb20cea668 resolve conflicts with main 2026-02-03 06:16:17 +00:00
Kyya Wang
f23548f296 feat: add DeepSeek provider support 2026-02-03 03:09:13 +00:00
Anunay Aatipamula
226cb5b46b
Merge branch 'main' into feat/discord-support 2026-02-02 18:55:16 +05:30
Anunay Aatipamula
ba6c4b748f feat(discord): add Discord channel support
- Implement Discord channel functionality with websocket integration.
- Update configuration schema to include Discord settings.
- Enhance README with setup instructions for Discord integration.
- Modify channel manager to initialize Discord channel if enabled.
- Update CLI status command to display Discord channel status.
2026-02-02 18:41:17 +05:30
Re-bin
a0950cf6b7 resolve conflicts: keep both Gemini and Zhipu support 2026-02-02 13:00:24 +00:00