@xqli02/openmem
v0.1.2
Published
One-command bootstrap for using claude-mem/openmem in OpenCode with intranet npm registry support
Maintainers
Readme
openmem
把 OpenCode 里接入 claude-mem(openmem 插件)这件事,收敛成一条命令,尤其适配 IDC / 内网只能使用公司 npm 源的环境。
目标
- 一键安装插件依赖
- 自动修改
~/.config/opencode/opencode.json - 自动兼容
plugin/plugins两种配置写法 - 支持
--registry指定公司 npm 源
快速使用
方式 1:全局安装(目标形态)
npm i -g @xqli02/openmem
openmem --registry https://your.company.npm.registry/方式 2:仓库本地验证
npm run test
node ./bin/openmem.js --registry https://your.company.npm.registry/方式 3:从本仓库全局安装(发布前)
npm install -g .
openmem --registry https://your.company.npm.registry/命令参数
--registry <url>:npm registry(IDC 推荐显式指定)--package <name>:插件包名(默认@xqli02/openmem)--opencode-dir <path>:OpenCode 配置目录(默认~/.config/opencode)--skip-install:仅写配置,不执行 npm install--dry-run:只打印计划,不写文件--no-backup:修改前不创建配置备份
它会做什么
- 定位
opencode.json - 自动把插件加入:
- 若存在
plugin字段:追加@xqli02/openmem@latest - 若存在
plugins字段:追加@xqli02/openmem - 若都不存在:创建
plugin字段
- 若存在
- 执行
npm install(可带--registry) - 提示重启 OpenCode 生效
验证建议
执行后检查:
~/.config/opencode/opencode.json已新增插件配置~/.config/opencode/package.json有对应依赖- 重启 OpenCode 后插件可用
说明
这个 bootstrap 本身不依赖外部 API;网络只用于 npm 安装插件包。IDC 环境建议统一传入公司 npm 源参数。
Adapter 骨架(Phase 1 起步)
本仓库现在已包含 src/ 下的 OpenCode ↔ claude-mem adapter 骨架,便于后续逐步接入 claude-mem 全能力。
- 插件入口:
src/index.js - 生命周期 Hook:
experimental.chat.system.transform→src/hooks/systemTransform.jstool.execute.after→src/hooks/toolAfter.jsexperimental.session.compacting→src/hooks/sessionCompacting.js
- 工具层:
src/tools/memory{Search,Timeline,Detail,Save}.js - 后端抽象与选择:
src/backend/client.jssrc/backend/mockBackend.jssrc/backend/sdkAdapter.js(待接 claude-mem SDK)src/backend/sidecarAdapter.js(待接 sidecar/worker)
环境变量(adapter)
OPENMEM_BACKEND=mock|sdk|sidecar(默认sidecar)OPENMEM_TOKEN_BUDGET(默认500)OPENMEM_MAX_TOPICS(默认20)OPENMEM_SIDECAR_URL(默认http://127.0.0.1:37777)
当前版本是第一版可用适配:
sidecar后端已实现 claude-mem worker 的核心接口对接(search/timeline/detail/save/capture/index)sdk模式当前委托给 sidecar(先保证可用性)mock后端保留用于离线联调和测试
claude-mem worker 前置
adapter 运行时需要 claude-mem worker 可访问(默认 127.0.0.1:37777)。
常见方式:
npx claude-mem install --ide opencode
npx claude-mem start然后重启 OpenCode。
