67 Commits

Author SHA1 Message Date
jxxghp
cc2e02793e fix(telegram): wait for final streaming edit interval
Wait once for the remaining message edit interval during Agent finalization, without bypassing Telegram 429 cooldown or replaying confirmed text.

Refs #7124
2026-10-22 08:25:25 +08:00
jxxghp
53c5344f4e fix(agent): avoid replaying delivered streaming progress 2026-10-21 00:20:13 +08:00
DDSRem
e0642eafa7 chore(types): reduce v3 host mypy debt (#7057)
* chore(types): clear AniList endpoint mypy debt

* chore(types): clear Douban endpoint mypy debt

* chore(types): clear recommendation endpoint mypy debt

* chore(types): clear subscription notification mypy debt

* chore(types): clear SDK string compatibility mypy debt

* chore(types): ratchet v3 host mypy across remaining files

* chore(types): reduce v3 host mypy debt and retire ledger

* chore(types): reconcile host snapshot with upstream HTTP pool

* test(types): cover host paths exposed by mypy cleanup
2026-10-18 09:37:49 +08:00
DDSRem
2de976f6b3 Merge pull request #7050 from DDSRem-Dev/codex-comment-migration
docs: 统一全项目中文注释和结构化契约说明
2026-10-17 19:26:29 +08:00
jxxghp
226ecd7fd1 refactor(agent): type streaming callback task lifecycle 2026-10-17 02:10:50 +08:00
jxxghp
bdbc801e83 fix(agent): steer active channel conversations into new replies 2026-10-02 09:12:21 +08:00
jxxghp
2967544ba1 fix(agent): align thinking status with model lifecycle 2026-10-01 17:18:14 +08:00
jxxghp
17db0b22b9 fix(agent): preserve historical tool styles 2026-10-01 14:41:10 +08:00
jxxghp
3d6f29f0e8 fix(agent): keep message channel thinking status during tools 2026-10-01 14:30:23 +08:00
jxxghp
842ba547ec fix(agent): keep thinking status separate 2026-10-01 10:26:22 +08:00
jxxghp
d324f5ebfa feat(agent): expose model thinking progress 2026-10-01 09:10:47 +08:00
jxxghp
3eb339b8e0 feat(agent): unify memory retrieval and activity history 2026-09-16 18:24:30 +08:00
jxxghp
f70d7c1410 feat(agent): stream non-verbose tool progress 2026-09-13 00:22:58 +08:00
jxxghp
ef51cf6da4 fix(agent): honor verbose mode in WebAgent tool display 2026-09-12 23:09:48 +08:00
jxxghp
643efea1aa fix(agent): preserve WebAgent event timeline 2026-09-11 16:44:05 +08:00
jxxghp
74db54f067 refactor(agent): keep one general subagent profile 2026-09-11 06:48:00 +08:00
jxxghp
294fe3b36c fix(agent): preserve multiline Telegram tool quotes 2026-09-09 13:49:30 +08:00
jxxghp
c20515971a fix: restore multi-exception syntax 2026-09-02 20:22:57 +08:00
jxxghp
b6fa21e9e0 fix(agent): honor verbose mode for middleware tools 2026-09-01 12:19:15 +08:00
jxxghp
f8d75ac492 fix(agent): quote verbose telegram tool messages 2026-09-01 11:30:25 +08:00
jxxghp
d512f528be refactor(api): make collection pagination explicit 2026-09-01 09:13:56 +08:00
jxxghp
fdba2c7d64 refactor(agent): unify tools behind API gateway and provider skills 2026-08-31 16:57:54 +08:00
jxxghp
2fe39d856c refactor(architecture): invert application adapter boundaries 2026-08-28 18:45:47 +08:00
jxxghp
88dce4ca8e fix(agent): keep tool summaries separated in telegram rich messages 2026-08-24 17:20:20 +08:00
jxxghp
473c0588cc fix: retain agent streaming flush owners 2026-08-24 10:39:11 +08:00
jxxghp
371383f0a8 refactor: unify host threadpool boundary 2026-08-24 03:28:10 +08:00
jxxghp
508bf0bc38 fix(ci): restore lint and architecture gates 2026-08-22 10:23:18 +08:00
jxxghp
9273d68aa7 feat(telegram): support rich Agent messages 2026-08-22 10:11:18 +08:00
jxxghp
5128ae9e1e refactor: 推进后端分层架构治理 2026-08-18 00:29:14 +08:00
jxxghp
d7e610e656 feat(agent): 新增 apply_patch 多文件补丁编辑工具
参考 Codex apply_patch 设计,支持单次调用对多个文本文件执行新增、
更新和删除:补丁以 *** Begin Patch / *** End Patch 包裹,Update 段
用 @@ 分隔 hunk,上下文行须与当前内容精确一致;先整体校验全部文件
操作,通过后才逐个原子写盘,并以校验期 sha256 防止并发修改。

- 工具描述与系统提示词明确 apply_patch / edit_file / write_file 分工:
  跨多文件或增删文件用 apply_patch,单文件单处替换用 edit_file
- 注册进工具工厂与 ALWAYS_INCLUDE 列表,加入策略 inventory 与
  MCP 隐藏列表,流式回调归类为 file_write
- 同步 create-moviepilot-plugin / publish-moviepilot-plugin /
  create-moviepilot-skill 技能的 allowed-tools 与版本
- 新增 tests/test_agent_apply_patch.py 覆盖解析、多文件应用、
  整体拒绝、权限边界与版本冲突场景
2026-08-17 08:01:59 +08:00
jxxghp
240a4dffe6 refactor(schemas): 统一 message/notification 命名边界,旧名收敛至兼容映射表
- notification 域:渠道能力(MessageChannel→NotificationChannel、ChannelCapability* 迁入 notification.py)
- message 域:消息收发(Notification→Message、NotificationType→MessageType、CommingMessage→IncomingMessage、NotificationHistoryItem→MessageHistoryItem、NotificationClear*→MessageClear*)
- Agent 工具契约:send_notification_message→send_message、notification_callback→message_callback
- 源码不保留旧名物理别名,旧导入经 app/runtime/compat/manifest.py SYMBOL_ALIASES 惰性解析
- API 路径与持久化键冻结不变,前端零改动
- 新增兼容守护测试与 docs/rules/07 命名边界规范
2026-08-16 19:32:20 +08:00
jxxghp
369d7d6448 refactor: reorganize backend module boundaries 2026-08-14 19:53:33 +08:00
jxxghp
7b3444c366 refactor backend module architecture 2026-08-14 15:45:38 +08:00
InfinityPacer
010899f369 feat(agent): add host policy foundation (#6273) 2026-08-12 10:48:14 +08:00
jxxghp
027330f714 fix: disable notification history saving for agent messages 2026-06-28 15:25:52 +08:00
jxxghp
78ddd6093f Improve streaming tool summary counts 2026-06-21 18:49:27 +08:00
jxxghp
c89df496a5 feat(agent): add ToolTag-based tags to all agent tools; implement tags.py for unified tool capability tagging 2026-05-31 18:30:39 +08:00
jxxghp
9076acc52e feat: add managed agent command sessions 2026-05-18 20:17:59 +08:00
jxxghp
6fb6996d81 fix: ensure stop_streaming waits for inflight initial flush before final edit; improve message edit/delete return types and logging
- Update stop_streaming logic to await inflight initial flush task, preventing duplicate message sends on stream stop
- Change message edit/delete methods to return Optional[bool] for clearer channel mismatch handling
- Refine Feishu logging to include message_id instead of full data object
- Suppress allowed_objects warnings in __init__.py
- Add test to verify stop_streaming waits for inflight flush before final edit
- Update .pylintrc to use 'E' for error enabling
2026-05-13 10:11:31 +08:00
jxxghp
19526146c5 docs: update docstrings for message metadata and reply fields; fix markdown capability check in format instructions; improve streaming card update logic in Feishu 2026-05-13 08:36:27 +08:00
jxxghp
fa939dfbe6 fix(agent): reply Feishu agent streams with cards 2026-05-13 06:56:03 +08:00
jxxghp
77aa65bfdc fix(agent): route streaming finalization through channel modules 2026-05-13 00:50:53 +08:00
jxxghp
d86d24fc4f feat(feishu): enhance message handling with file and voice support, add reaction management 2026-05-13 00:34:03 +08:00
jxxghp
2375508616 Restore background dispatch without channel context 2026-04-30 07:04:59 +08:00
jxxghp
baebd0ed1a Fix background prompt message leakage 2026-04-30 06:58:43 +08:00
jxxghp
54d6c2ad4a 更新 __init__.py 2026-04-29 15:27:37 +08:00
jxxghp
7fc496cf5b 更新 __init__.py 2026-04-29 07:31:52 +08:00
jxxghp
8789f35228 Improve non-verbose agent tool summaries 2026-04-29 07:07:33 +08:00
jxxghp
6a6bcf59a0 增强 execute_command 工具:支持输出截断、并发限制与进程组清理,新增单元测试 2026-04-27 10:05:25 +08:00
jxxghp
140d224a9a fix agent stream blocking during command execution
Offload synchronous message edits from the event loop and stream subprocess output so long-running commands stay responsive.
2026-04-27 07:57:32 +08:00