# 🍃 memoripo **DeepSeek Harness Hindsight 长期记忆的常驻工作台 —— 在侧边栏里看着记忆生长、阅读并使用它。** *memoripo* = **memori**(es) + re**po** —— 把你的记忆变成一个可浏览的仓库。 [English](./README.md) --- ## 为什么做它 DSH 自带强大的长期记忆引擎(Hindsight),但它的状态藏在数据库和任务日志里。 memoripo 把这些变成一个**可视化工作台**:按天看记忆生长、看哪些记忆真的被召回、 浏览四层知识、管理知识页面 —— 全程不用离开聊天界面。 ## 功能 ### 🌱 花园视图(侧边栏工作台) - **银行状态一览** —— daemon 健康、节点/事实/链接计数、四层分布(世界 / 经验 / 观察) - **7 天生长曲线** —— 横向逐日堆叠条,安静的日子也清晰可读 - **时间线** —— 最近的后台操作(摄入 → 合并 → 图维护),带实时状态徽章 - **利用热度** —— 哪些文档真的被召回过(审计驱动);开启追踪后还显示最近读取 - **可读的活动流** —— 人话标签替代原始任务类型,超出上限可"显示更多" ### 🗂 管理视图(插件尺寸的浮层) - 完整的**知识页面浏览器**:卡片网格 + 文件夹树,新建/重命名/移动/删除,心理模型重新合成 - **页面阅读器**:悬浮目录、复制 Markdown、复制原始 JSON - **后台任务面板**:重试 / 全部重试 / 清除失败记录,每个任务有居中**详情弹窗**(进度阶段与计数、完整错误文本、复制 JSON) - 搜索、LLM 与嵌入配置测试、模板导出导入 —— 原管理器的能力全部迁入 ### ✨ 细节质感 - 统一顶部光源阴影系统、渐变卡面、hover 抬升、按压反馈、焦点环、细滚动条 - 完整双语(English / 简体中文),跟随主题变量(`--dsw-alias-*`,带安全回退色) ### ⚙️ 零配置 daemon - 插件**启动时自动拉起本地 Hindsight daemon**:挂载即检查,之后每 45 秒自检一次, 中途挂掉会自动重拉,无需任何外部启动脚本。daemon 输出写入 `~/.hindsight/daemon.out.log` / `daemon.err.log` 便于取证,拉起期间状态胶囊显示「正在尝试连接」。 ## 安装 ```bash dsh plugin add github:Dayi-Z/memoripo ``` 或从源码: ```bash git clone <本仓库> cd memoripo pnpm install && pnpm run build dsh plugin add ./ ``` 重启 Web 后,主侧边栏底部会出现 🍃 **Memoripo** 入口。 ## 环境要求 - DeepSeek Harness `>= 0.1.0-rc.6`,且启用了 Web 应用 - Node.js `^22.19 || >= 24` - Hindsight 后端(daemon + PostgreSQL)—— memoripo 启动时会自动拉起本地 daemon(见「零配置 daemon」),读取 DSH 当前配置的记忆银行 ## 架构(一分钟版) ``` src/ ├── index.ts # 宿主插件:/memoripo/* 路由(status/growth/heat/pages…)+ daemon 监督挂载 ├── daemon.ts # 插件内 daemon 监督:8888 检查、离线拉起、45 秒自检、日志捕获 ├── hindsight-routes.ts # 管理端点(页面 CRUD、任务、配置…) └── client/ ├── index.ts # 会话框侧栏挂载 + 主侧边栏入口 ├── Memoripo.tsx # 花园视图(状态卡、曲线、时间线、热度、动态流) └── … # 管理视图位于 src/hindsight-client/ ``` 宿主在 DSH webserver 上注册只读分析路由;客户端包把紧凑工作台挂进会话框侧栏, 完整管理浮层从主侧边栏底部进入。全部文案走两份扁平词典(`en`/`zh`), 支持 `{n}` 插值。 ## 开发 ```bash pnpm install pnpm run typecheck # 服务端 + 客户端两个 TS 工程 pnpm run build # lib/(宿主)+ client/client.js(浏览器包) pnpm run check # 以上全部 ``` 重新构建后需重启 Web 以加载新包。 ## 许可证 [MIT](./LICENSE)