xfy2412/dsh-session-sync--packages-plugin ↗★ 0
dsh-session-sync
DSH 会话云同步插件:自部署服务端、端到端加密,同步会话、附件、设备台账与 agent 笔记。 适合有多设备同步需求且注重隐私、具备自部署能力的用户。
같은 패키지 이름의 다른 저장소
설치
$
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:xfy2412/dsh-session-sync#b14ff547f7626440f2ac8079546543dc2f388245&path:packages/plugindsh-session-sync
给 DeepSeek Harness(DSH)做的会话云同步:自部署服务端、端到端加密,同步会话、附件、设备台账与 agent 笔记。
状态:M1/M2 已完成,M3 已完成,M4 进行中。 帧工具/加密、服务端(含管理台与初始化)、M0 免重启 ingest 已经可跑;M3 的推送/拉取、安全边界、双 home E2E、durable journal 与错误退避已通过。M4 目前完成 A1–A5(可靠状态、手动同步、
status/setup/workspaces/sync宿主 API、子代理闭包与工作区白名单),设置页、首启向导与客户端防误操作待做。里程碑见 docs/ROADMAP.md。
支持版本
DSH >=0.2.1-rc.1 ;按向导设置管理密码、存储配额,可选创建第一台设备。之后管理台用密码登录;忘记密码执行 node packages/server/src/index.ts admin reset`(重启后重新打印初始化密钥)。
隔离的 DSH 开发实例
pnpm dev:dsh 会:
- 把
DSH_HOME指到.tmp/dev-dsh/home; - 用
--patch覆盖workspace-controller的documentsDirectory,让默认工作区落在.tmp/dev-dsh/documents/(否则 DSH 会建到系统 Documents 下); - 清掉从当前会话继承的
DSH_*变量,避免新实例误以为自己在嵌套运行。
需要保留已登录状态时:node scripts/dev-dsh.mjs --credentials 。脚本拒绝在 .tmp/ 之外创建实例目录。
两条硬约定
- 测试绝不碰真实
~/.dsh:所有临时 home 经tests/helpers/tmp-home.mjs创建,位于.tmp/且被 git 忽略;规则与断言清单见 tests/README.md。 - 仓库文档写我们的选择与中性事实,不评价其他项目。
文档
- docs/ROADMAP.md:M0–M4 里程碑、当前状态与文档地图。
- docs/M4-PLAN.md:M4 工作项、依赖顺序与待拍板项。
- docs/DESIGN.md:范围、数据分层、并发与加密的取舍。
- docs/PROTOCOL.md:服务端端点与不变量。
- docs/SYNC-SAFETY.md:开放尾与安全边界、拉取原子性、客户端防误操作。
- tests/README.md:临时 home 与夹具约定。
许可证
本仓库按目录拆分许可:
packages/server/**:AGPL-3.0-only(全文)。对外提供修改后的服务端时,需按 AGPL §13 向使用者提供对应源码;个人自部署、仅自己使用不受影响。packages/plugin/**、packages/shared/**及其余部分:MIT(全文)。
根目录的 LICENSE 是拆分范围的简短说明;各 package 目录下也各有一份对应全文。