Skip to main content

memory-hub

Jz-Plugin v4.0 的记忆-日志回路内核:集中式单写入口 + 按 type 分片的 append-only JSONL(issue/evolution/status_event 三 shard)+ 共享 envelope schema + 纯 stdlib 校验。CC 自动归集管:CC handoff → mem_ingest → cqi_runtime → mem_merge → Obsidian CQI 持续审计。 把技能的「问题/纠正」(issue) 与「演进/版本变更」(evolution) 沉淀为机器可审计的真相源,经 git 同步、按 issue id 关联 Obsidian CQI 文档。 Use when: 记录技能问题/用户纠正/审计发现、登记技能演进、校验记忆日志、append CQI event、 memory-hub write、validate logs、记忆回路、日志回路、CC 事件归集、CQI 自动 ack、合并审计文档。 DO NOT use for: 通用长期记忆/向量检索(用 supermemory)、自主改写技能正文或评判技能质量。

跳到安装

来源信息

仓库
Loveacup/jz-skills
最近来源活动
2026年6月18日 11:58
检测到的 SKILL.md 语言
中文
星标
1
分支
1

安装方式

默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。

检查来源文件

决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。

文件资源管理器
14 个文件

正在显示 SKILL.md

SKILL.md
来源说明 · 只读预览
name
memory-hub
description
Jz-Plugin v4.0 的记忆-日志回路内核:集中式单写入口 + 按 type 分片的 append-only JSONL(issue/evolution/status_event 三 shard)+ 共享 envelope schema + 纯 stdlib 校验。CC 自动归集管:CC handoff → mem_ingest → cqi_runtime → mem_merge → Obsidian CQI 持续审计。 把技能的「问题/纠正」(issue) 与「演进/版本变更」(evolution) 沉淀为机器可审计的真相源,经 git 同步、按 issue id 关联 Obsidian CQI 文档。 Use when: 记录技能问题/用户纠正/审计发现、登记技能演进、校验记忆日志、append CQI event、 memory-hub write、validate logs、记忆回路、日志回路、CC 事件归集、CQI 自动 ack、合并审计文档。 DO NOT use for: 通用长期记忆/向量检索(用 supermemory)、自主改写技能正文或评判技能质量。
type
routine
version
0.2.1
author
Hermes + Claude Code — Phase 1.5 收尾(mem_merge + 自动触发 + cron 兜底)
license
MIT
# memory-hub(Phase 1.5:CC × CQI 自动化接入) Cursor 插件生态只是参考样板;**这个回路才是 Jz-Plugin 的主体**。Phase 1 落地了单写入口 + append-only 三 shard + git 回路。Phase 1.5 接入了 CC 自动归集管道 + CQI runtime + mem_merge 自动审计 + cron 兜底。不碰 marketplace/UI/Kanban 关键路径。 ## 铁律(违反即破坏真相源) 1. **单写入口**:所有结构化记录只经 `scripts/mem_write.py`;**不手改 jsonl**(手改绕过校验与 provenance)。 2. **只追加**:writer 仅 `O_APPEND`,永不重写既有行。 3. **分片不混库**:`type` 决定 shard——`issue`→`references/issue-log.jsonl`,`evolution`→`references/evolution-log.jsonl`,`status_event`→`references/status-log.jsonl`。 4. **存储层不做业务判断**:只管格式/溯源完整性,不评判技能质量、不改技能正文。 ## 快速用法 ```bash # 记录一条「用户纠正」(issue);id/ts 缺省自动生成 python3 scripts/mem_write.py --type issue --skill <skill> --source user \ --trigger user_correction --evidence "<原话,逐字>" --implicated-rule <rule-id> # 登记一条「技能演进」(evolution) python3 scripts/mem_write.py --type evolution --skill <skill> --source cc \ --change-type rule_add --validation-score 90 --evidence "<改了什么>" \ --changelog-ref "CHANGELOG.md#xyz" # 也可整条 JSON 从 stdin 写入 echo '{...}' | python3 scripts/mem_write.py --stdin # push 前必过:逐行校验(exit 0 才提交) python3 scripts/validate_logs.py ``` 校验失败 → exit 2,**零写入**;IO 失败 → exit 3(不阻断调用方主任务,降级报告)。 ## Phase 1.5:CC × CQI 自动化接入 闭环:**CC 吐事件 → Hermes 归集 → CQI 自动确认 → 状态可查**。三个新脚本,零新依赖,全 fail-open。 ```bash # ① 归集:Hermes 检测 CC session 结束时调,读 handoff → 校验 → 批量写 → 删 handoff → 最终闸门 python3 scripts/mem_ingest.py # 默认 glob /tmp/cc-cqi-events-*.jsonl # ② 查询:按 status_event 的 ts 最新归约出每条 issue 的 current_status(无事件=new) python3 scripts/mem_read.py --type issue --status new --skill <skill> --since 2026-06-01 # ③ CQI runtime 薄层:拉 new issue,自动追加 status_event(new→acknowledged, by=cqi-auto) python3 scripts/cqi_runtime.py # 不碰 resolved/wontfix/duplicate(裁判面边界) python3 scripts/cqi_runtime.py --quiet # cron/no_agent 模式:无事零 stdout 静默 # ④ 合并:把新 issue 按 waterline 增量合并进 Obsidian CQI 审计文档(只追加、去重、幂等) python3 scripts/mem_merge.py # 无 waterline=全量但仅近 30 天;文档不存在则建带 frontmatter 新档 python3 scripts/mem_merge.py --quiet # cron/no_agent 模式:无事零 stdout 静默 ``` - **自动触发链**:CC session 结束后 Hermes 异步依次跑 `mem_ingest → cqi_runtime → mem_merge`,全 fail-open。 另设每 30 分钟 cron 兜底 `cqi_runtime --quiet && mem_merge --quiet`(捕获漏触发,两脚本幂等)。**必须加 `--quiet`**——cron `no_agent=true` 时非空 stdout = 消息投递,不加则无事也每 30 分钟推送一条噪音。 - **CC 接入协议**:见 `autonomous-ai-agents/claude-code` skill「§CQI 事件吐出」——CC 每轮结束把 issue/evolution 以 JSONL 写到 `/tmp/cc-cqi-events-<session>.jsonl`(只吐原始事件,不写 status)。 - **状态机边界**:`new→acknowledged` 由 `cqi_runtime.py` 自动;`resolved/wontfix/duplicate` 必须裁判面,禁止自动。 - **fail-open**:ingest 单行坏不阻断其余行(计 degraded);任一环节写失败不阻断 Hermes 主任务。 ## Schema 速览 硬校验(缺失/非法即拒写):`id` · `type`(issue|evolution|status_event) · `skill` · `source`(user|cc|agent|hook|runtime|audit) · `evidence`(存原话) · `ts`(ISO-8601 带时区)。`status_event` 额外硬校验 `payload.issue_id` + `payload.status`(new|acknowledged|in_progress|resolved|wontfix|duplicate)。 软校验(告警):`requester` · `source_hash`(sha256:…) · `trigger` · `skill_version` · `payload`。 完整规范见 `schemas/event.schema.json`。 ## ⚠️ 常见坑 - **`mem_write --type status_event` 必须同时带 `--source`**(如 `--source audit`),否则校验以 `invalid source None` 拒写。仅 `--by human` 不够——`by` 只是 payload 字段,不替代信封的 `source`。 - **`mem_write --issue-id` 指向的 issue 必须已存在**,否则 status-log 中出现孤立状态事件。手动裁决前先 `mem_read` 确认 issue_id 正确。 - **手改 jsonl = 绕过校验**。即使只是改一个字符,也可能引入不可解析的 ts 或非法 type,导致 `mem_read` 的 reduce 崩溃(已知 bug:ts 不可解析 + 合法 ts 混排会炸 TypeError,待修)。 - **cron `no_agent=true` + 脚本有 stdout = 噪音轰炸**:`no_agent=true` 模式下,非空 stdout 会作为消息投递给用户。`cqi_runtime.py` 和 `mem_merge.py` 在无事发生时默认打印 `✓ no new issues`、`→ waterline at` 等,导致每 tick 一条噪音。**解决方案:cron shell 脚本中加 `--quiet`,无事时零 stdout → 静默**。手工跑不加 `--quiet`(保留可读输出),只有 cron 模板加。 - **`sync-all.sh` 部署后必须 `diff` 验证**:修改脚本后跑 `./deploy/sync-all.sh hermes`,部署端文件可能因 `rm -rf` + `cp -r` 时序问题未实际更新(2026-06-04 真实案例:源码加了 `--quiet` flag 并 commit,`sync-all.sh` 显示 `✅ Hermes (3 profiles)`,但部署端 `cqi_runtime.py` 和 `mem_merge.py` 仍是旧版无 `--quiet`,cron 继续每 30 分钟推送噪音)。**部署后必须验证:** `diff ~/code/jz-skills/hermes/memory-hub/scripts/cqi_runtime.py ~/.hermes/skills/governance/memory-hub/scripts/cqi_runtime.py` 等关键文件两端一致。不一致时手动 `cp` 补齐。 - **Cron shell 脚本路径:profile 目录优先** 🆕:`cronjob()` 的 `script` 字段解析相对路径时走 `~/.hermes/profiles/<profile>/scripts/`,**不是** `~/.hermes/scripts/`。cron 兜底脚本必须落在 profile 目录下(如 `~/.hermes/profiles/regent/scripts/memory-hub-cqi-sweep.sh`),否则 cron scheduler 找不到脚本。多 profile 环境每个 profile 独立维护。2026-06-04 真实案例:脚本更新到 `~/.hermes/scripts/` 但 cron 实际执行 `~/.hermes/profiles/regent/scripts/` 下的旧版——cron 持续推送噪音直至发现并修复。 - **Cron 实体不存在 — 静默故障** 🆕:Jz-Plugin doc 说每 30 分钟兜底但 cron 从未创建时,CC handoff 文件在 /tmp/ 堆积无声,88-审计/ 停更。部署后必须验证 cron 存在:cronjob list | grep memory-hub。2026-06-06:16 个 event 堆了 2 天,修复后建 cf4559e475c9。 ## Git 同步回路 `append(单写入口)→ validate(exit 0)→ git add references/*.jsonl → 双语 commit → push/pull → Obsidian 按 issue id 关联`。 ## 深入 - **完整 Phase 1 方案 / 架构 / 研究采纳-暂缓 / 验收标准** → [references/phase-1-scheme.md](references/phase-1-scheme.md) - **CQI 审计工作流(全管道 + Obsidian 文档映射 + 裁决命令)** → [references/cqi-audit-workflow.md](references/cqi-audit-workflow.md) - **CQI 方法学根基** → `governance/skill-authoring`(`log-driven-cqi-mvp`、`structured-cqi-log-memory`) - **路线图全景** → Obsidian `02-Plan&CQI/Jz-Plugin-v4.0-Cursor插件生态研究计划.md`(第 3 节 Phase 1) ## 边界(Phase 1.5 明确不做) Kanban 关键路径 / A2A / 自主改写技能 / 自动 resolved/wontfix/duplicate;SQLite / 向量 / 知识图谱 / MCP 记忆服务——数据积累后于 P5 评估。
在 GitHub 查看