🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

Livis 连接器 fyy99/dsh-livis-connector

DeepSeek 客户端
fyy9980 天前有提交已提供中文文档扫描:含敏感能力兼容 / 相关生态

在设置页完成授权,把 Livis 消息接入 DSH Agent

28/100
综合分
2
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/9/18 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

相关生态插件(非 dsh 原生,按其对应运行时安装)
git clone https://github.com/fyy99/dsh-livis-connector.git

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么
生态应用
桌面端 / Web 外壳,不以 dsh plugin add 安装
装得上吗
本站已真实安装成功
非静态推断
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 80 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件写入剪贴板(不计风险)发起外部网络请求
查看扫描证据(共 22 处,展示前 21 条)
  • 写入剪贴板
    lib/client.js:269
    await navigator.clipboard.writeText(value)
  • 删除本地文件
    lib/state.js:25
    unlinkSync(this.path)
  • 读取本地文件
    lib/state.js:32
    return existsSync(this.path) && Boolean(this.getRefreshToken())
  • 发起网络请求
    lib/auth.js:12
    const response = await fetch(new URL(pathname, `${baseUrl}/`), {
  • 读取本地文件
    lib/file-bridge.js:18
    const root = await realpath(this.config.uploadRoot)
  • 读取本地文件
    lib/file-bridge.js:20
    const candidate = await realpath(candidateInput)
  • 读取本地文件
    lib/file-bridge.js:22
    const info = await stat(candidate)
  • 读取本地文件
    lib/file-bridge.js:46
    form.append('file', new Blob([await readFile(file.candidate)], { type: file.mimeType }), fullName)
  • 发起网络请求
    lib/file-bridge.js:50
    const response = await fetch(`${this.config.relayHttpUrl}/api/v1/files/upload?${query}`, {
  • 读取本地文件
    lib/secure-store.js:17
    if (!existsSync(path)) return
  • 读取本地文件
    lib/secure-store.js:18
    const stat = lstatSync(path)
  • 写入本地文件
    lib/secure-store.js:25
    mkdirSync(path, { recursive: true, mode: 0o700 })
  • 写入本地文件
    lib/secure-store.js:27
    if (process.platform !== 'win32') chmodSync(path, 0o700)
  • 读取本地文件
    lib/secure-store.js:31
    if (!existsSync(path)) return structuredClone(fallback)
  • 读取本地文件
    lib/secure-store.js:34
    const stat = lstatSync(path)
  • 读取本地文件
    lib/secure-store.js:40
    const raw = readFileSync(path, 'utf8')
  • 写入本地文件
    lib/secure-store.js:53
    writeFileSync(descriptor, `${JSON.stringify(value, null, 2)}\n`, 'utf8')
  • 写入本地文件
    lib/secure-store.js:56
    renameSync(temp, path)
  • 写入本地文件
    lib/secure-store.js:57
    if (process.platform !== 'win32') chmodSync(path, 0o600)
  • 删除本地文件
    lib/secure-store.js:61
    unlinkSync(temp)
  • 读取本地文件
    lib/secure-store.js:68
    if (!existsSync(path) || process.platform === 'win32') return undefined
扫描于 2026/11/3(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

依赖的 DSH / Cordis 模块
@deepseek-ai/schemastery
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 应用内授权
  • 中继管理

把 Livis 接入 DeepSeek Harness,支持应用内授权和中继管理。

README

由 DeepSeek 最新模型翻译生成
dsh-livis-connector 将 Livis 接入 DeepSeek Harness 的原生 Cordis 插件。授权、Agent ID 绑定引导与连接状态都在 DSH 设置页完成,运行时不依赖 OpenClaw。 dsh-livis-connector 管理页 功能 - 在 DSH 设置页完成 Livis 账号授权和连接管理。 - 生成并展示 Agent ID,引导在 Livis App 中完成设置。 - 将 Livis 消息交给持久 DSH Agent,并把结果可靠回传。 - 支持取消、结果确认、断线重连和 job_id 幂等。 - 支持白名单文档上传,并限制在配置的目录内。 - refresh token 仅保存在 DSH Host,不会下发到浏览器页面。 环境要求 - Node.js ^22.19.0 || >=24.0.0 - DeepSeek Harness 0.1.0-rc.6 - 已在 DSH 中配置可用的模型和 API Key - 可正常访问 Livis 账号授权与中继服务 DSH 仍处于 developer preview。本插件跟随其插件 API 演进,升级 DSH 前请先检查兼容性。
展开完整文档(README 剩余 1 节)
dsh-livis-connector

将 Livis 接入 DeepSeek Harness 的原生 Cordis 插件。授权、Agent ID 绑定引导与连接状态都在 DSH 设置页完成,运行时不依赖 OpenClaw。

dsh-livis-connector 管理页

功能

- 在 DSH 设置页完成 Livis 账号授权和连接管理。
- 生成并展示 Agent ID,引导在 Livis App 中完成设置。
- 将 Livis 消息交给持久 DSH Agent,并把结果可靠回传。
- 支持取消、结果确认、断线重连和 job_id 幂等。
- 支持白名单文档上传,并限制在配置的目录内。
- refresh token 仅保存在 DSH Host,不会下发到浏览器页面。

环境要求

- Node.js ^22.19.0 || >=24.0.0
- DeepSeek Harness 0.1.0-rc.6
- 已在 DSH 中配置可用的模型和 API Key
- 可正常访问 Livis 账号授权与中继服务

DSH 仍处于 developer preview。本插件跟随其插件 API 演进,升级 DSH 前请先检查兼容性。

安装

使用 DSH 官方插件命令安装 GitHub 仓库:

dsh plugin --profile web add github:fyy99/dsh-livis-connector
dsh --profile web --dump-config

随后启动 Web profile:

dsh web

需要可复现部署时,请把 GitHub 依赖固定到经过验证的 commit SHA,而不是长期跟随默认分支。

也可以先执行 npm pack 生成 tarball,再把 tarball 路径交给同一个 dsh plugin --profile web add 命令。

连接 Livis

1. 打开 DSH,进入「设置 → 插件 → Livis」。
2. 点击「开始授权」,在打开的理想账号页面确认授权。
3. 等待页面显示已连接到 DSH,并复制生成的 Agent ID。
4. 在 Livis App 打开「我的 → 连接与服务 → 我的 Agent」,粘贴 Agent ID。
5. 从 Livis App 发送一条测试消息。第三步点亮后即可使用。

如果授权中断或过期,回到同一页面重新发起即可。插件不会在页面加载时自动开始授权。

配置

插件可在 DSH 插件配置中覆盖以下字段:

| 字段 | 默认值 | 用途 |
| enabled | true | 启用或停用连接器 |
| stateDir | $DSH_HOME/livis | 保存授权、身份和幂等任务状态 |
| workspaceRoot | DSH 启动目录 | Livis Agent 的工作区 |
| uploadRoot | workspaceRoot | 允许回传文件的根目录 |
| provider / model | DSH 当前默认模型 | 同时设置时覆盖默认模型 |
| agentPreset | DSH 当前默认 preset | Livis Agent 使用的预设 |

三个目录字段必须使用绝对路径。生产端点强制 HTTPS/WSS;仅 localhost 测试允许明文协议。

安全与数据

- 不要把 DSH Web 监听到 0.0.0.0。管理 RPC 只允许 loopback,但 DSH Web 本身不提供用户登录认证。
- Livis relay 会处理账号令牌、设备与 Agent ID、消息、回复,以及用户明确上传的文件。
- 插件为断线恢复在 stateDir/jobs.json 暂存请求与结果,终态任务默认保留 24 小时;DSH 也会保存 Agent session。
- 远端文本始终作为普通用户消息进入模型,不会作为 DSH 斜杠命令执行。
- Livis Agent 的审批策略固定为 never;需要本地批准的操作会失败,不会在不可见的页面中等待。
- 建议使用专用低权限 API Key,并让 DSH 在无敏感数据的工作区运行。不要使用 danger-full-access。

发现安全问题时,请使用仓库的 Security Advisories 私下报告,不要在公开 Issue 中提交令牌、Agent ID、消息内容或本机路径。

开发与验证

corepack pnpm install --frozen-lockfile
corepack pnpm run check
corepack pnpm test
npm pack --dry-run

测试覆盖 OAuth Device Flow、token 轮换、权限存储、DSH preset/model/turn 关联、文件边界、任务恢复与幂等、管理页脱敏,以及模拟 relay 下的握手、回执、重复消息和运行中取消。

这个包使用预构建 JavaScript,不依赖 Git 安装阶段的 prepare 构建脚本。cordis.patch.yml 通过 dsh.bundle.patch 声明,符合 DSH installable bundle 约定。

项目说明

本项目是独立的社区连接器,不隶属于或代表 DeepSeek、理想汽车或 Livis。Livis、DeepSeek Harness 及相关名称归各自权利人所有。使用本项目即表示你会使用本人有权访问的账号与服务,并遵守相应条款。

在线兼容字段沿用 Livis 当前连接方式所需的客户端标识;这不表示本地安装或运行 OpenClaw。

License

MIT
预览分享卡片长什么样 ↓fyy99/dsh-livis-connector
分享 · DeepSeek Harness Hub
fyy99/dsh-livis-connector

在设置页完成授权,把 Livis 消息接入 DSH Agent

回到顶部