Commit Graph
1596 Commits
Author SHA1 Message Date
Xubin RenandGitHub b084122f9e Merge PR #2643: feat: unify web tool config under WebToolsConfig
feat: unify web tool config under WebToolsConfig + add web tool toggle controls
2026-04-04 02:51:40 +08:00
Xubin Ren 400f8eb38e docs: update web search configuration information 2026-04-03 18:44:46 +00:00
Xubin Ren 652377bee9 Merge origin/main into feat/web-disable-flag
Made-with: Cursor
2026-04-03 18:41:43 +00:00
imfondofandXubin Ren 896d578677 fix(restart): show restart completion with elapsed time across channels 2026-04-04 02:21:42 +08:00
imfondofandXubin Ren ba7c07ccf2 fix(restart): send completion notice after channel is ready and unify runtime keys 2026-04-04 02:21:42 +08:00
Lingao MengandXubin Ren a05f83da89 test(providers): cover reasoning_content extraction in OpenAI compat provider
Add regression tests for the non-streaming (_parse dict branch) and
streaming (_parse_chunks dict and SDK-object branches) paths that extract
reasoning_content, ensuring the field is populated when present and None
when absent.

Signed-off-by: Lingao Meng <menglingao@xiaomi.com>
2026-04-04 02:09:57 +08:00
Lingao MengandXubin Ren 210643ed68 feat(provider): support reasoning_content in OpenAI compat provider
Extract reasoning_content from both non-streaming and streaming responses
in OpenAICompatProvider. Accumulate chunks during streaming and merge into
LLMResponse, enabling reasoning chain display for models like MiMo and DeepSeek-R1.

Signed-off-by: Lingao Meng <menglingao@xiaomi.com>
2026-04-04 02:09:57 +08:00
Xubin RenandGitHub 0a31e84044 Merge PR #2495: feat(provider): add Xiaomi MiMo LLM support
feat(provider): add Xiaomi MiMo LLM support
2026-04-04 02:02:16 +08:00
Xubin RenandGitHub 4d7493dd4a Merge PR #2646: fix(weixin): restore weixin typing indicator
fix: restore Weixin typing indicator
2026-04-04 02:00:47 +08:00
Xubin Ren f409337fcf Merge remote-tracking branch 'origin/main' into pr-2646 2026-04-03 17:53:52 +00:00
FloandXubin Ren 3ada54fa5d fix(telegram): change drop_pending_updates to False on startup (#2686) 2026-04-04 01:52:39 +08:00
FloandXubin Ren 8b4d6b6512 fix(tools): strip <think> blocks from message tool content (#2621) 2026-04-04 01:52:39 +08:00
daliu858andXubin Ren 06989fd65b feat(qq): add configurable instant acknowledgment message (#2561)
Add ack_message config field to QQConfig (default: Processing...). When non-empty, sends an instant text reply before agent processing begins, filling the silence gap for users. Uses existing _send_text_only method; failure is logged but never blocks normal message handling.

Made-with: Cursor
2026-04-04 01:52:39 +08:00
FloandXubin Ren 49c40e6b31 feat(telegram): include author context in reply tags (#2605) (#2606)
* feat(telegram): include author context in reply tags (#2605)

* fix(telegram): handle missing attributes in reply_user safely
2026-04-04 01:52:39 +08:00
FloandXubin Ren 2e5308ff28 fix(telegram): remove acknowledgment reaction when response completes (#2564) 2026-04-04 01:52:39 +08:00
FloandXubin Ren 0709fda568 fix(telegram): handle RetryAfter delay internally in channel (#2552) 2026-04-04 01:52:39 +08:00
FloandXubin Ren 0fa82298d3 fix(telegram): support commands with bot username suffix in groups (#2553)
* fix(telegram): support commands with bot username suffix in groups

* fix(command): preserve metadata in builtin command responses
2026-04-04 01:52:39 +08:00
Xubin Ren cb84f2b908 docs: update nanobot news section 2026-04-03 16:18:36 +00:00
Xubin Ren 3c3a72ef82 update .gitignore 2026-04-03 16:02:23 +00:00
Lingao Meng cf6c979339 feat(provider): add Xiaomi MiMo LLM support
Register xiaomi_mimo as an OpenAI-compatible provider with its API base URL,
add xiaomi_mimo to the provider config schema, and document it in README.

Signed-off-by: Lingao Meng <menglingao@xiaomi.com>
2026-04-03 14:42:57 +08:00
Xubin RenandGitHub 7113ad34f4 Merge PR #2733: harden agent runtime for long-running tasks 2026-04-02 22:34:00 +08:00
Xubin Ren e4b335ce81 refactor: extract runtime response guards into utils runtime module 2026-04-02 13:54:40 +00:00
Xubin Ren 714a4c7bb6 fix(runtime): address review feedback on retry and cleanup 2026-04-02 10:57:12 +00:00
Xubin Ren eefd7e60f2 Merge remote-tracking branch 'origin/main' into feat/runtime-hardening 2026-04-02 10:40:49 +00:00
Xubin RenandXubin Ren 3558fe4933 fix(cli): honor custom config path in channel commands 2026-04-02 18:37:46 +08:00
masterlyjandXubin Ren 11ba733ab6 fix(test): update load_config mock to accept config_path parameter 2026-04-02 18:37:46 +08:00
masterlyjandXubin Ren 7332d133a7 feat(cli): add --config option to channels login and status commands
Allows users to specify custom config file paths when managing channels.

Usage:
  nanobot channels login weixin --config .nanobot-feishu/config.json
    nanobot channels status -c .nanobot-qq/config.json

    - Added optional --config/-c parameter to both commands
    - Defaults to ~/.nanobot/config.json when not specified
    - Maintains backward compatibility
2026-04-02 18:37:46 +08:00
haosenwang1018andXubin Ren 7a6416bcb2 test(matrix): skip cleanly when optional deps are missing 2026-04-02 18:17:00 +08:00
cypggs ca68a89ce6 merge: resolve conflicts with upstream/main, preserve typing indicator 2026-04-02 14:28:23 +08:00
Xubin RenandXubin Ren cc33057985 refactor(providers): rename openai responses helpers 2026-04-02 13:43:34 +08:00
Xubin RenandXubin Ren ded0967c18 fix(providers): sanitize azure responses input messages 2026-04-02 13:43:34 +08:00
Kunal KarmakarandXubin Ren 61d7411238 Fix failing test 2026-04-02 13:43:34 +08:00
Kunal KarmakarandXubin Ren 76226274bf Failing test 2026-04-02 13:43:34 +08:00
Kunal KarmakarandXubin Ren e206cffd7a Add tests and handle json 2026-04-02 13:43:34 +08:00
Kunal KarmakarandXubin Ren ac2ee58791 Add tests and logs 2026-04-02 13:43:34 +08:00
Kunal KarmakarandXubin Ren 7c44aa92ca Fill up gaps 2026-04-02 13:43:34 +08:00
Kunal KarmakarandXubin Ren 8c0607e079 Use SDK for stream 2026-04-02 13:43:34 +08:00
Kunal KarmakarandXubin Ren 0417c3f03b Use OpenAI responses API 2026-04-02 13:43:34 +08:00
Xubin RenandXubin Ren 9ba413c82e test(cron): cover deliver flag on scheduled jobs 2026-04-02 13:03:46 +08:00
lucarioandXubin Ren 15faa3b115 fix(cron): fix extra indent for properties closing brace and required field 2026-04-02 13:03:46 +08:00
lucarioandXubin Ren 35b51c0694 fix(cron): fix extra indent for deliver param 2026-04-02 13:03:46 +08:00
lucarioandXubin Ren 5f2157baeb fix(cron): move deliver param before job_id in parameters schema 2026-04-02 13:03:46 +08:00
archlinuxandXubin Ren 2e3cb5b20e fix default value True 2026-04-02 13:03:46 +08:00
lucarioandXubin Ren 73e80b199a feat(cron): add deliver parameter to support silent jobs, default true for backward compatibility 2026-04-02 13:03:46 +08:00
Xubin RenandXubin Ren a3e4c77fff fix(providers): normalize anthropic cached token usage 2026-04-02 12:51:45 +08:00
chengyongruandXubin Ren da08dee144 feat(provider): show cache hit rate in /status (#2645) 2026-04-02 12:51:45 +08:00
Tejas1KoliandXubin Ren 42fa8fa933 fix(providers): only apply cache_control for Claude models on OpenRouter 2026-04-02 04:04:18 +08:00
Tejas1KoliandXubin Ren 05fe73947f fix(providers): only apply cache_control for Claude models on OpenRouter 2026-04-02 04:04:18 +08:00
Xubin RenandXubin Ren 485c75e065 test(exec): verify windows drive-root workspace guard 2026-04-02 04:00:03 +08:00
zhangxiaoyu.yorkandXubin Ren bc2e474079 Fix ExecTool to block root directory paths when restrict_to_workspace is enabled 2026-04-02 04:00:03 +08:00