ConversationSpec · 议事厅
Mini Hermes Gateway Architecture & ConversationSpec
状态:active距今:28 天任务:27/30未决问题:3
ConversationSpec · 议事厅
/thread/,作为统一查看入口。threadspec.py 每次调用热读取,减少重启依赖。abos-at.work / Mini 自优化观测平台 的内容发错窗口;当前 thread 应回到 ConversationSpec 本身。~/.hermes/thread_specs/<platform>/<chat>/<thread>/。/thread/,发布所有 specs 的静态 HTML viewer。~/.hermes/config.yaml 的 conversation_spec.auto_update。hook 每轮热读取配置和脚本,减少对 gateway 重启的依赖。/thread/ 是观澜台的一等入口:已从 ABOS 首页导航、Hero 按钮和 Notes 卡片链接过去。last_auto_update_at 自动推进到真实 session。open_questions.md,不随便猜目标/任务。/thread/ viewer。conversation-spec。meta.json private=true 或 .private 文件。~/.hermes/thread_specs/.snapshots/thread_specs-*.tar.gz,保留最近 30 份。health.json / manifest.json。threadspec.py recover。threadspec.py backfill-feishu。gateway/conversation_spec_hook.py,提供 fail-soft 异步自动更新 hook。gateway/run.py 的 response ready 后接入 schedule_conversation_spec_update()。threadspec.py 新增 auto-update 子命令。~/.hermes/config.yaml 新增 conversation_spec.auto_update: true,限制 platforms: [feishu] 且 require_thread: true。gateway/conversation_spec_hook.py、gateway/run.py、threadspec.py。last_auto_update_at、last_session_id、brief 最近状态均能更新。conversation-spec skill 和 gateway hook reference:自动创建与内容谨慎是两件事;不确定项可向用户澄清或逐步完善。/thread/ viewer 和新增 spec 详情页统一为观澜首页设计样式:米色纸感、蓝绿水墨、ABOS 顶部导航、卡片布局。https://abos-at.work/、https://abos-at.work/thread/、当前详情页、health.json 均返回 200,且内容命中。abos-at.work / Mini 自优化观测平台 分支内容,恢复 ConversationSpec 主线。用户提出:Hermes 会话聊久后容易忘记前面安排和上下文,需要机制化解决。探索 OpenSpec 后,判断其核心价值是“把意图沉淀为工件”,适合借鉴,但 Hermes 聊天场景不必完整引入代码开发向 OpenSpec 流程。
Global Memory
稳定偏好、长期事实
ConversationSpec
每个 thread 的当前目标、决策、任务、背景、未决问题
Session History
原始记录,需要追溯时 session_search
观澜台 /thread/
所有可发布 specs 的 HTML 索引和详情页
open_questions.md;如果用户澄清成本低,可以直接问用户。~/.hermes/thread_specs/
└── feishu/
└── IM与AI/
└── omt_1923b78caa8f5b89/
├── meta.json
├── brief.md
├── decisions.md
├── tasks.md
├── context.md
├── open_questions.md
└── archive.md
https://abos-at.work/thread/
底层映射:
https://abos-at.work/thread/ -> /tmp/cc-wechat/files/thread/
~/.hermes/scripts/threadspec.py
create / append / recover / render / publish / list / snapshot / backfill-feishu / auto-update
~/.hermes/scripts/publish-thread-specs.sh
cron 薄壳,调用 threadspec.py publish
Hermes cron
job_id: e353051ee8d9
name: publish-thread-specs-to-guanlan
schedule: */15 * * * *
no_agent: true
deliver: local
gateway/conversation_spec_hook.py + gateway/run.py
response ready 后 fail-soft 异步触发 auto-update
meta.json private=true 或目录下 .private 文件,默认跳过公网发布。health.json 和 manifest.json,展示发布数量、跳过数量、过期 specs。recover 命令:恢复上下文时只输出 brief/tasks/decisions/open_questions。backfill-feishu 命令:从 channel_directory.json 回填已有 Feishu topics 的占位 spec。auto-update:每轮完成后自动创建/更新当前 thread spec。test-sessiontest-session-220260702_183655_0f757147conversation-spec - publish-file-to-cvm-public - 已查看观澜首页样式: - 首页实际文件在 CVM:/data/abos-home/index.html - 风格是:米色纸感背景、蓝绿水墨/玉色、宋体/衬线、固定顶部导航、卡片式 notes grid。 - 已…20260702_183655_0f757147launchctl kickstart 和打开 Terminal 间接执行,也都被同一保护拦截。 ## 已完成 ### 1. 观澜首页已链接 /thread/ 已改 CVM 首页: ``text /data/abos-home/index.html `` 加入了 3 个入…20260702_183655_0f757147text ~/.hermes/hermes-agent/gateway/run.py ~/.hermes/hermes-agent/gateway/conversation_spec_hook.py ` 新增逻辑是: `text 每轮 response ready 后 → 自动调用 ConversationSpec hook → 更新当前 thread spec `` 但当前正在运行的…20260702_183655_0f757147threadspec.py auto-update 分两种情况: ### 1. 新 thread:只建待整理占位 如果自动 hook 发现一个从没见过的新 thread,现在只会创建: ``json { "status": "needs_curation", "private": true, "init_policy": "history_review_required" } `` 也就…20260703_012541_deb1fb23threadspec.py auto-update 新 thread 现在会自动创建: ```json { "status": "needs_curation", "private": false, "…20260703_012541_deb1fb23threadspec.py 的规则改动不一定要重启。 我刚查了真实进程和日志: ```text gateway 进程启动时间:2026-07-03 01:25:23 run.py 修改时间: 2026-07-03 00:17:50 conversation_spec_hook.py 修改时间:2026-07-03 00:16:41 threadspec.py 修改时间:2026-07-03 01:33:43 gateway.lo…20260703_012541_deb1fb23text gateway/run.py 里的 response-ready 接入点 `` 也就是“gateway 主循环是否调用 ConversationSpec hook”这一小段代码,那么已经运行中的 Python 进程不会自动热替换这段逻辑,这类改动仍需要一次维护窗口重启。 …20260703_012541_deb1fb23hermes update 影响的部分 这次有本地改 Hermes 源码: ``text ~/.hermes/hermes-agent/gateway/run.py ~/.hermes/hermes-agent/gateway/conversation_spec_hook.py ` 我刚查了 git 状态: `text M gateway/run.py ?? gateway/conversation_spec_hook.py `` 含义: …