Commit Graph

  • 53ba410e49 feat(read_file): add DOCX, XLSX, PPTX support via document.extract_text() aiguozhi123456 2026-04-20 23:57:47 +08:00
  • 46864b0911 fix: use try/finally in _extract_xlsx to prevent resource leak 彭星杰 2026-04-21 16:16:27 +08:00
  • a00beebd06 fix: use context manager in _extract_xlsx to prevent resource leak 彭星杰 2026-04-21 14:44:37 +08:00
  • e15705b471 fix(tests): add _cancel_active_tasks mock to cmd_new test fixtures chengyongru 2026-04-21 21:33:55 +08:00
  • d4e34f8c67 fix(commands): intercept non-priority commands during active turn chengyongru 2026-04-21 21:28:58 +08:00
  • f8a023218d fix(telegram): improve markdown rendering for modern LLM output hussein1362 2026-04-21 10:44:06 +03:00
  • 37ea8b8f5b fix(retry): recognize ZhiPu 1302 rate-limit error for retry chengyongru 2026-04-21 17:37:10 +08:00
  • 1b692debdc docs(webui): revise README to clarify WebSocket channel setup and sequence of startup steps Xubin Ren 2026-04-21 12:46:17 +00:00
  • c1957e14ff refactor(memory): centralize cursor validation behind a single gate Xubin Ren 2026-04-21 05:54:17 +00:00
  • c0a11c7cf4 fix(memory): harden cursor recovery against non-integer corruption Muata Kamdibe 2026-04-20 16:28:03 -04:00
  • 409afe1a3d test(tools): add basic regression tests for ContextVar routing context chengyongru 2026-04-21 11:18:14 +08:00
  • ff8c28d5a8 agent: use ContextVar for tool routing context jr_blue_551 2026-03-18 19:10:57 +00:00
  • 82aa9efc02 test(mcp): pin CancelledError short-circuits the retry loop Xubin Ren 2026-04-21 05:21:39 +00:00
  • 368752e707 fix(mcp): retry once on transient connection errors hussein1362 2026-04-20 21:19:26 +03:00
  • 6c24f24e9e feat(models): add support for kimi-k2.6 with temperature override and update documentation Xubin Ren 2026-04-20 18:18:06 +00:00
  • 009cce78ad fix(anthropic): also enforce leading-user + empty-array recovery Xubin Ren 2026-04-20 17:31:12 +00:00
  • 2f02342083 fix(anthropic): strip trailing assistant messages to prevent prefill error hussein1362 2026-04-19 09:17:27 +03:00
  • 00de55072d test(agent): exercise /stop cancellation through _dispatch Xubin Ren 2026-04-20 17:13:04 +00:00
  • 847c50b2de fix(loop): preserve partial context when /stop cancels a task hussein1362 2026-04-19 09:35:34 +03:00
  • 899a9073ce fix(memory): do not fall back to raw entry when strip_think empties it hlg 2026-04-20 16:32:38 +08:00
  • 8e7d8bef6a fix(utils): handle malformed think tags and channel markers in strip_think hlg 2026-04-20 16:28:26 +08:00
  • f900c5bb8e fix(telegram): address code review issues from cherry-pick merge chengyongru 2026-04-20 11:59:28 +08:00
  • 2eea82f5ee fix(telegram): split oversized stream buffer mid-flight stutiredboyandstutiredboy 2026-04-20 11:33:44 +08:00
  • fd8f08cc83 fix(telegram): convert markdown to HTML before splitting to avoid message length overflow himax12 2026-04-20 11:32:24 +08:00
  • 297b852f6e feat(telegram): change to mid-stream split per review feedback(#2967 PR) jhkim43 2026-04-11 15:49:12 +09:00
  • ecfbb0ed4f refactor(email): use _remember_processed_uid in SPF/DKIM reject paths chengyongru 2026-04-20 14:50:44 +08:00
  • ffac8d3b0a fix: deduplicate SPF/DKIM-rejected emails to stop log spam flobo3 2026-04-19 20:28:32 +03:00
  • 26fd2c099a build: ship THIRD_PARTY_NOTICES and fix webui packaging in wheel Xubin Ren 2026-04-20 08:22:10 +00:00
  • 68466b1c2a fix(agent): propagate effective session key through subagent pipeline chengyongru 2026-04-20 11:53:29 +08:00
  • 2193a64c80 fix(agent): align subagent result session key with main agent for mid-turn injection chengyongru 2026-04-20 10:56:27 +08:00
  • 79821a571f fix: suppress intermediate progress output in cron jobs chengyongru 2026-04-20 09:46:16 +08:00
  • 8eddacf2f8 fix(webui): sync code block theme with dark mode toggle instantly chengyongru 2026-04-20 00:17:22 +08:00
  • a3adec08a9 style(webui): improve typography with Apple-inspired font stack and CJK support chengyongru 2026-04-20 00:03:38 +08:00
  • 56a779c128 fix(session): repair read-only corrupt session paths Xubin Ren 2026-04-19 15:25:37 +00:00
  • efb04a1712 fix(session): use atomic writes and add corrupt-file repair aiguozhi123456 2026-04-19 22:36:16 +08:00
  • 5d976d79ff test(discord): update tests for bot-to-bot fix (#3217) Alfredo Arenas 2026-04-18 08:11:27 -06:00
  • 3fd24c72fd fix(discord): allow bot-to-bot messaging, only drop self-loops (#3217) Alfredo Arenas 2026-04-18 07:15:38 -06:00
  • 7527961b19 fix(cron): drop top-level oneOf so OpenAI Codex/Responses accept tool schema coldxiangyuandfactory-droid[bot] 2026-04-19 11:07:34 +08:00
  • 97ae9cb318 docs: refine README for WebUI development workflow clarity Xubin Ren 2026-04-19 13:42:02 +00:00
  • d920f07715 Merge PR #3310: feat(webui): add initial browser UI with websocket chat and i18n Xubin Ren 2026-04-19 21:41:07 +08:00
  • b3049f7323 fix(webui): stabilize empty session history state Xubin Ren 2026-04-19 13:38:47 +00:00
  • f9e1d92abd docs: update README and webui documentation for WebUI development workflow Xubin Ren 2026-04-19 13:10:36 +00:00
  • c4b3837c5f Merge remote-tracking branch 'origin/main' into nanobot-webui Xubin Ren 2026-04-19 12:36:52 +00:00
  • 46e11a68a7 test: speed up cron and restart timing tests Xubin Ren 2026-04-19 12:35:57 +00:00
  • b6d63fb1ec fix: normalize responses circuit breaker keys Xubin Ren 2026-04-19 12:15:21 +00:00
  • 3036b16140 style: fix import sorting (ruff I001) Mohamed Elkholy 2026-04-16 05:58:27 -04:00
  • 4aad6b737d style: move loguru import to module top level Mohamed Elkholy 2026-04-16 05:52:25 -04:00
  • baba3b2160 fix(providers): add circuit breaker for Responses API fallback Mohamed Elkholy 2026-04-16 00:11:43 -04:00
  • ccd6c05f71 fix: include pending summaries in consolidation estimates Xubin Ren 2026-04-19 11:57:03 +00:00
  • 54b659929e test: cover summary persistence after token consolidation Xubin Ren 2026-04-19 11:34:45 +00:00
  • d95bc9c9c4 fix: unify summary injection strategy between consolidation paths Jiajun Xie 2026-04-19 09:54:31 +00:00
  • 107eae14d7 docs: add badges for commit activity and closed issues in README Xubin Ren 2026-04-19 09:53:37 +00:00
  • 508e247c82 docs: remove feature showcase and update memory and Python SDK documentation for clarity and completeness Xubin Ren 2026-04-19 09:51:54 +00:00
  • ed150a4228 docs: enhance README installation instructions for better readability Xubin Ren 2026-04-19 09:48:16 +00:00
  • 622c467839 docs: refine README description for clarity Xubin Ren 2026-04-19 09:47:21 +00:00
  • 53fb3c199a docs: update README and docs for clarity and consistency Xubin Ren 2026-04-19 09:46:35 +00:00
  • 8ff7b56cb2 docs: refactor README into a docs-first landing page Xubin Ren 2026-04-19 09:42:17 +00:00
  • 4650b23d75 feat(webui): add i18n support and locale switcher Xubin Ren 2026-04-19 06:39:06 +00:00
  • be10ba1f0d Merge remote-tracking branch 'origin/main' into nanobot-webui Xubin Ren 2026-04-19 05:15:27 +00:00
  • 2d0442976e test(cli): update _make_console tests for isatty-based fix (#3265) Alfredo Arenas 2026-04-18 08:23:20 -06:00
  • 261b843839 fix(cli): respect sys.stdout.isatty() in stream renderer (#3265) Alfredo Arenas 2026-04-18 00:09:20 -06:00
  • 9773d4b8ab Merge PR #3112: fix(config): return provider default api base in config resolution Xubin Ren 2026-04-19 04:14:46 +08:00
  • 384bad17b4 Merge origin/main into fix/config-default-api-base Xubin Ren 2026-04-18 20:08:21 +00:00
  • 3218307f80 Merge PR #3125: fix: harden cron tool contract Xubin Ren 2026-04-19 04:01:27 +08:00
  • 9c0dc8b276 fix: drop generic repeated tool-call guard Xubin Ren 2026-04-18 19:59:58 +00:00
  • adc1e843b4 Merge origin/main into fix/cron-contract-repeat-guard Xubin Ren 2026-04-18 19:42:48 +00:00
  • e08507f3ce fix: handle git worktrees in GitStore nested repo protection Xubin Ren 2026-04-18 19:35:06 +00:00
  • ff5b97dc34 Remove .oss from .gitignore Lê Bảo Long 2026-04-18 23:24:25 +07:00
  • fb28678b64 fix: prevent GitStore from creating nested repos and overwriting .gitignore (#2980) longle325 2026-04-18 23:16:04 +07:00
  • 1b211c7d3a Merge branch 'main' into nanobot-webui Xubin Ren 2026-04-18 19:17:16 +00:00
  • 8f8e41fe06 chore: ignore tsbuildinfo cache files Xubin Ren 2026-04-18 18:55:05 +00:00
  • 9ed3031a42 feat(webui): add initial webui with websocket chat flow Xubin Ren 2026-04-18 18:51:53 +00:00
  • 48692afa38 chore: remove PR template, keep only issue templates chengyongru 2026-04-19 00:00:48 +08:00
  • 8f383655b5 feat: add issue and PR templates chengyongru 2026-04-18 23:48:05 +08:00
  • 5818569e8f feat(wizard): auto-detect Literal fields as select menus chengyongru 2026-04-18 17:57:42 +08:00
  • ebb5179cab feat(wizard): add Channel Common, API Server menus and field constraint validation chengyongru 2026-04-18 17:50:40 +08:00
  • 58110afb88 fix(templates): keep Search & Discovery heading in identity.md chengyongru 2026-04-18 17:54:25 +08:00
  • 34e8f97b1f refactor(templates): separate identity and SOUL responsibilities chengyongru 2026-04-18 17:50:11 +08:00
  • 6bfb75ed03 feat(websocket): multiplex multiple chat_ids over a single connection Xubin Ren 2026-04-18 08:44:12 +00:00
  • 70a1279b86 test: pin retry-wait callback routing so internal heartbeats stay off channels Xubin Ren 2026-04-18 05:48:15 +00:00
  • 9c19de67bf fix: 错误消息流转路径:1. 当 LLM 服务出现临时性错误(如网络波动、超时、429限流等)时, base.py 中的 _run_with_retry 方法会启动重试机制。2. 在重试等待期间, _sleep_with_heartbeat 方法会周期性调用 on_retry_wait 回调函数,发送类似 'Model request failed, retry in 1s (attempt 1)' 的心跳消息。3. 之前 on_retry_wait 参数被错误地绑定到 _bus_progress ,导致这些内部诊断消息被当作普通进度消息发送到飞书客户端。4. manager.py 的消息分发器没有过滤这类重试心跳消息。 修复方案:1. loop.py - 新增重试等待回调- 新增独立的 _on_retry_wait 回调函数,为重试消息添加 _retry_wait: True 元数据标识- 在 AgentRunSpec 中传入 retry_wait_callback 参数。2. runner.py - 支持重试回调参数- 在 AgentRunSpec 数据类中新增 retry_wait_callback 字段- 在 _build_request_kwargs 中将 on_retry_wait 参数从 progress_callback 改为 retry_wait_callback。3. manager.py - 过滤重试心跳消息- 在 _dispatch_outbound 方法中新增过滤逻辑,丢弃所有带 _retry_wait 标识的消息,确保重试心跳不会发送到任何客户端。 chengjun.zhu 2026-04-17 09:02:24 +08:00
  • c8d834a504 fix(loop): document subagent-followup persistence and guard empty content Xubin Ren 2026-04-18 05:24:36 +00:00
  • 1c939e8a5f fix(loop): persist subagent follow-up events in history xzq.xu 2026-04-17 13:40:27 +08:00
  • c27b4d07c4 fix(utils): recurse into PPTX groups and tables when extracting text (#3250) 04cb 2026-04-18 11:09:29 +08:00
  • 34fccb2ee9 Prevent self-inspection from leaking configured secrets JunghwanNA 2026-04-18 00:33:36 +09:00
  • c196b5b0c2 Prevent failed SSE requests from masquerading as successful completions JunghwanNA 2026-04-18 00:33:51 +09:00
  • 39dd59f2ba fix(cron): state per-action requirements in descriptions, keep list/remove callable Steve 2026-04-17 14:23:32 +00:00
  • 19dada927a fix: make cron tool schema require message for add action Your NameandClaude Sonnet 4.6 2026-04-15 17:13:27 +08:00
  • 14ee7cb121 style: revert unrelated Black-style formatting churn (#3220) Xubin Ren 2026-04-17 12:35:30 +00:00
  • 9a569fdc6a style: collapse should_execute_tools docstring to one line Xubin Ren 2026-04-17 12:26:03 +00:00
  • b8d327dc41 test + docs: lock should_execute_tools guard semantics (#3220) Xubin Ren 2026-04-17 12:24:06 +00:00
  • b7de21131f fixed the CI issue and reverted the formating changes Subal 2026-04-17 14:08:54 +05:30
  • 322da6ca06 fix: guard tool execution against non-compliant API gateway injection Subal 2026-04-17 00:13:44 +05:30
  • aabc3d5017 fix(memory): fall back to raw_archive on LLM error response Cheng Yongru 2026-04-17 17:33:18 +08:00
  • ebbed1cbe2 fix(docs): depend on nanobot-ai, not the unrelated nanobot package Xubin Ren 2026-04-17 08:58:32 +00:00
  • 19c1facf7f fix(docs): update channel plugin build backend to hatchling Jiajun Xie 2026-04-16 08:44:08 +08:00
  • d0e65ebf70 fix(exec): pass allowed_env_keys to exec tool calls in subagents Mariano Campo 2026-04-17 00:28:14 -03:00
  • 3ae4333cef test(email): cover smtp_username / imap_username / case-insensitive self-address match Xubin Ren 2026-04-17 05:51:28 +00:00
  • 1011ea5ac8 fix(email): ignore self-sent mailbox messages yorkhellen 2026-04-17 08:54:04 +08:00
  • 8c0c4e5b31 refactor(agent): tighten comments, extract constant, strengthen edge case test chengyongru 2026-04-17 11:11:39 +08:00