# AgentsMeeting — Session Handoff > 创建时间: 2026-06-12 04:00 > 源会话: hermes session (ses_1d95d15c4ffehQaZ6hrbIbak5k) ## 🔴 关键操作手册(必读) ### 如何发送消息到 coregroup(核心群聊) > **任何时候要向 coregroup 发消息,不要从 246 操作。用本地 HTTP bridge。** ```powershell # ✅ 正确方式(UTF-8 编码,中文不会乱码) $json = '{"message":"你好大家,开发完成,请 git pull 测试"}' $bytes = [System.Text.Encoding]::UTF8.GetBytes($json) Invoke-WebRequest -Uri "http://127.0.0.1:5802/send" -Method POST -Body $bytes -ContentType "application/json; charset=utf-8" -UseBasicParsing # ❌ 错误 — Invoke-WebRequest -Body "字符串" 会走系统 GBK 编码,中文变问号 # ❌ 错误 — 不要从 246 发 # ❌ 错误 — 不要用 send_xmpp_groupmsg.py(没有 join MUC 被丢弃) ``` **原理:** - 我的 XMPP bot JID: `xxm@yoin.fun`(运行在这个 Windows 机器上) - bot 启动时已自动 join MUC rooms(含 `coregroup@conference.yoin.fun`) - HTTP bridge(`xmpp_bot.py` 内置)绑定 `127.0.0.1:5802` - 只有这个方式发的消息会出现在 coregroup 里 ### 如何查看是否有新消息 ```powershell # 查看 mohe 发给我的消息 curl "http://127.0.0.1:5802/messages?from=mohe" # 查看全部消息 curl "http://127.0.0.1:5802/messages" ``` ### 状态检查 ```powershell # 检查 bot 是否在运行 Get-Process -Name python* | Where-Object { $_.CommandLine -match "xmpp_bot" } # 检查 HTTP bridge 是否在监听 netstat -ano | findstr :5802 ## 已完成 ### 系统修复 - `part_` 前缀 bug (chat_bridge.py:335): `part_` → `prt_` - 工具调用 XML 泄漏: final force 用干净上下文 + `_strip_toolcall_xml()` - 静默模式误杀: `_SHUTUP_PATTERNS` 缩紧到仅 "闭嘴"/"住口"/"shut up" - self-message 回声静默: on_group_message 中 self-msg 检查提前到 shutup 之前 - MAX_TOOL_LOOPS: 15 → 30,超限后走 clean final force - watchdog 进程唯一: `start_bot()` 先 `kill_all_bots()` 再启动 - 健康检查: 检测 "alive 但无消息接收" 状态,自动重启 - 日志轮转: watchdog 每 15 分钟检查 >5MB 自动轮转 ### 架构设计 - docs/ARCHITECTURE.md (17.5 KB): 系统总览/拓扑/数据流/模块/监控 - docs/AUDIT.md (4.2 KB): 稳定性审计报告 - docs/DEPLOY.md (2.8 KB): 部署指南 (Windows + Linux) - docs/OPS.md (3.2 KB): 运维手册/常见故障/日志轮转 - docs/QUICKSTART.md: 快速操作手册 - README.md (4.4 KB): 项目概览 ### 部署脚本 - deploy/windows/{start,stop,check,rollback}.ps1 - deploy/linux/{install.sh,hermes-gateway@.service,xmpp-bot@.service} ### 源码 - src/shared/config.py: 集中配置管理 (env var + YAML) - src/shared/bot_base.py: Bot 基类 (BotConfig/BaseBot/extract_response) - src/ops/watch_group.py: 消息监控脚本 - src/channels/qq/bridge.py: QQ 通道骨架 - config/.env.example: 环境变量模板 ### HTTP 桥 (:5802) - POST /send: 发送群消息 - GET /messages: 读取最近 200 条消息 (支持 ?from=mohe 过滤) - 集成到 xmpp_bot.py,bot 重启自动恢复 ### 测试 - tests/test_core.py: 单元测试 - tests/verify_deploy.py: 部署验证 (12 项全部通过) - HTTP bridge 验证: send+receive 均正常 ### 运行状态 - xmpp_bot: RUNNING (watchdog 守护) - wechat_agent: RUNNING (uptime 35h+) - watchdog: RUNNING (30s 检查 + 日志轮转) - api_proxy: RUNNING - health_check: 5 分钟定时任务 ## 待完成 ### 需 mohe 在 Linux 侧 - 部署 systemd services (hermes-gateway@.service, xmpp-bot@.service) - 配置 provider 环境变量 (替换 configs/*/config.yaml 中的占位符) - 排查 ejabberd MUC conference.yoin.fun 响应问题 - state.db 829MB 归档清理 ### 需 mohe 配合 - 架构文档最终审核 - 部署验证 - hermes-gateway@.service 使用实际 systemd 模板 ## 关键文件 - projects/wechat-hermes-gateway/scripts/xmpp_bot.py (HTTP bridge) - projects/wechat-hermes-gateway/scripts/chat_bridge.py (final force 修复) - projects/wechat-hermes-gateway/scripts/xmpp_watchdog.py (log rotation) - projects/wechat-hermes-gateway/scripts/health_check_xxm.py - projects/AgentsMeeting/src/shared/config.py - projects/AgentsMeeting/src/shared/bot_base.py - projects/AgentsMeeting/deploy/windows/start.ps1 - projects/AgentsMeeting/deploy/windows/check.ps1 - projects/AgentsMeeting/docs/ARCHITECTURE.md - projects/AgentsMeeting/tests/verify_deploy.py ## 注意事项 - HTTP bridge (:5802) 绑定 127.0.0.1,不对外暴露 - bot 重启后消息 buffer 会清空,新消息到达后自动重建 - 健康检查 lastMsg=999min 是 MAM 恢复期间正常现象 - MUC join 一直超时,bot 通过 MAM 订阅工作