Jiku 通过 jiku-memory 将桌面交互经验本地持久化于 ~/.local/state/jiku/state.db(SQLite WAL + FTS5),并通过严格的两阶段人类审批门禁隔离所有 AI 合成的候选技能。
三层记忆体系(jiku-memory)
| 记忆层级 | 存储介质 | 核心职责与配额 |
|---|---|---|
L0:感知 dHash 环形缓存 |
内存环形缓冲(默认 l0_frame_ring_size = 32) |
对 Koma 捕获帧计算 64 位感知 dHash;汉明距离 <= 4 的静止帧直接去重,零冗余模型调用 |
L1:应用特性记忆(l1_app_quirks) |
SQLite 表(单应用上限 app_quirk_max_chars = 512) |
记录特定 app_id 的交互习惯(如终端需 Ctrl+Shift+V 粘贴),按需注入规划上下文 |
L2:情景记忆(l2_episodes) |
SQLite WAL + FTS5 BM25 | 索引历史目标、动作轨迹与结果;支持通过 jiku memory search <QUERY> 毫秒级全文检索 |
候选技能两阶段审批与静态净化
当 stage_new_skills = true 时,Jiku 会在完成重复性任务后提炼可复用 Lua 或 Markdown SOP 技能,但 绝不允许跳过人类审批直接执行:
- 暂存与静态词法净化:候选技能先存入
~/.local/state/jiku/state.db的staged_skills表(status = 'staged'),静态校验严格拦截io.*、os.*、debug.*、package.*、loadfile、dofile、load(与require(。 - 人类 Diff 审查(
jiku skills diff):逐行核查候选技能变更:jiku skills list jiku skills diff <skill_id> - 显式批准晋升(
jiku skills approve):仅当人类明确批准后,技能才会被写入~/.config/jiku/skills/并记录审计日志:jiku skills approve <skill_id>