dshbase

插件目录 / Developer / dsh-local-project

dsh-local-project

未验证 0xKcyzz

✓ 持续维护 3 位贡献者 基于 6 个官方 DSH 包

查看 GitHub ↗ ← 返回插件目录

1Stars
0Forks
0未关闭 issue
语言
2026-08-15最近推送
跨平台平台

功能简介

DSH plugin: import a local folder as a server workspace and sync DSH changes back to local.

我们的评价
未验证 — 尚未实测

DSH plugin: import a local folder as a server workspace and sync DSH changes back to local. 尚未验证——请自行安装测试。

「未验证」表示我们的自动化 CI 尚未安装过该插件。功能描述与版本兼容性均为作者声明。这不是安全审计,也不代表对第三方代码的背书。

你是插件作者? 想拿到「已验证」标签——提交你自己的验证证据(截图、日志或短视频),我们审核通过后即改为「已验证」。

提交验证证据 ↗

README

简体中文 | English

License DSH Plugin Platform Sync File System Access

DSH Local Project · 本地项目

将本地文件夹导入为服务器 DSH 的工作区,并让 DSH 的修改自动同步回本地文件夹。
适合在浏览器中把本机代码或资料交给远程 DSH 直接读写,同时保留本地副本。

功能特性

  • 点击「添加工作区」选择本地文件夹,自动上传并在服务器创建镜像工作区。
  • DSH 使用原生 read/write/edit/glob/bash 工具直接操作服务器镜像,无需自定义工具。
  • DSH 修改文件后通过 WebSocket 实时同步回本地,断线自动重连并补齐漏掉的变更。
  • 删除项目只删除服务器副本与工作区记录,不影响本地文件。
  • 刷新页面后可从服务器恢复项目列表,并可重新选择本地文件夹恢复同步。

安装

dsh plugin --profile web add github:0xKcyzz/dsh-local-project

安装后重启 DSH,「添加工作区」会打开本地项目导入对话框。

使用

  1. 在 DSH 侧边栏或空状态中点击「添加工作区」。
  2. 输入项目名称,点击「选择文件夹并导入」。
  3. 在系统对话框中选择本地文件夹(需要 Chrome/Edge 浏览器授权)。
  4. 首次导入会开始上传文件;完成后左侧工作区列表出现「本地项目: 名称」。
  5. 打开该工作区对话,DSH 操作的是服务器镜像副本,文件改动会自动同步回本地。

限制

  • 需要浏览器支持 File System Access API:Chrome / Edge(含 Chromium)。Firefox / Safari 不支持。
  • 单个文件上限约 15MB(上传使用 base64 JSON);超大文件请勿放入项目。
  • 不传播单个文件的删除:只有「删除项目」会整包删除服务器副本,本地/服务器各自删除的文件不会被对面清除。
  • 本地改动不会自动上传:只有首次导入会上传本地文件;之后本地手改的文件不会同步到服务器。
  • 实时推送需要保持 WebSocket 连接;断线会自动重连并补齐漏掉的变更。
  • 桌面端 Electron 窗口若 API 不可用,请用系统浏览器打开 DSH 的 Web 地址。

工作原理

  • Host 侧:提供 /local-project/* HTTP 接口和 WebSocket 推送,负责创建/上传/删除服务器镜像,并用 fs.watch 监听文件变化。
  • Client 侧:填充 DSH 的「添加工作区」目录流,负责选择本地文件夹、上传文件、接收 WebSocket 变更并写回本地。
  • 同步方向为 DSH → 本地:服务器文件变化通过 WebSocket 推送,浏览器只下载被改动的文件;不做持续双向同步。

Host 接口

接口 说明
POST /local-project/create 创建服务器目录 + 工作区记录
POST /local-project/upload 上传/覆盖服务器文件(base64)
GET /local-project/rev 获取项目变更号
GET /local-project/pull 获取断线期间漏掉的变更
GET /local-project/list 列出服务器镜像项目
GET /local-project/manifest 获取服务器文件清单
GET /local-project/download 下载服务器文件(base64)
POST /local-project/delete 删除服务器目录 + 工作区记录
GET /local-project/ws WebSocket 实时变更推送

配置(环境变量)

变量 默认值 说明
DSH_LOCAL_PROJECT_ROOT $DSH_HOME/workspaces 本地项目的服务器镜像目录。

开发 / 构建

npm install
npm run build   # 产出 lib/index.js(Host)+ lib/client.js(浏览器)

License

MIT

安装

🧩 让 Agent 自动装(推荐)

装一次目录插件,之后本站所有插件都能让 DeepSeek Harness 自动找、自动装:

dsh plugin add dshbase-catalog

然后对 agent 说「帮我装 dsh-local-project」,它会在目录里找到并自动安装。文档:dshbase-catalog · 已验证场景包

该插件是 GitHub 源码(未发 npm)——直接从仓库装:

Web profile:

dsh plugin --profile web add github:0xKcyzz/dsh-local-project

Headless(CLI)profile:

dsh plugin --profile headless add github:0xKcyzz/dsh-local-project

实测报告

尚未 L3 验证——若已跑过,见下方失败备注。

状态:pending · 最近测试 2026-08-27 · 标记 webonly
备注:验证: web-only;待 L4 web CDP;L4 web CDP runtime-fail on dsh 0.1.0-rc.8. 浏览全部待验证失败 →
安全:尚未扫描——我们的每日静态扫描将很快覆盖它。

分享徽章

Developer 里更多

浏览全部 7795 个插件 →