phone-lens

DSH PLUGIN视觉与多模态

仓库 yxqfg/phone-lens

视觉与多模态 L5 · 运行验证通过 安全审查:低风险 可信度:金 可安装插件
安装这个插件

把手机相机变成 dsh 会话的实时取景与拍照输入,经局域网或 USB 直连。

验证等级 L5 L5 · 运行验证通过
GitHub 星标 2 复刻 未标注 · 未关闭 issue 未标注
最近更新 2026-10-07 创建于 未标注
README 7.1 KB 正文体量,越大说明说明书写得越细

安装

可安装插件
在 DSH 里执行,装完用 dsh plugin list 确认已挂上;标了 L4 / L5 的命令已在沙盒里真实跑通
dsh plugin --profile web add phone-lens
兼容 DSH 版本0.2.0-rc.2 等 10 个版本版本不匹配时安装会报错
Node.js 要求未标注来自仓库 package.json 的 engines 字段
前置依赖无需要同时安装的同级依赖
npm 包名未发布到 npm可用 npm view 查看包信息

能做什么

视觉与多模态
字段来自项目仓库与公开索引,中文说明由本站标注

适用场景

视觉识别文件读写

同仓库子包(1 个)

这是一个多包仓库,上游还列出了下列子包。本站按仓库合并成一条记录,安装时注意区分具体子包名。

packages-phone-lens

验证等级与安全审查

L5 · 运行验证通过
自动化流程结论,不是人工审核
验证等级L5 · 运行验证通过在 dsh 沙盒中完成安装与运行冒烟——装得上、跑得起来
安全审查低风险静态分析结论,未标注不代表已通过审查
仓库健康度活跃按仓库活跃度与最近更新时间给出
可信度金综合仓库活跃度与验证结果

上面的结论来自上游最近一次自动化验证(2026-10-08): 同一套检查会在插件发新版后重跑,页面显示的是最新一次的逐项结果。

逐项检查结果

L1 · 已找到 ✓ 通过
  • L1.0_DEFAULTED_FROM_L3 由 L3 推定 默认通过——L3 安装规范已通过(全库 L3 扫描策略)
L2 · 结构化 ✓ 通过
  • L2.0_DEFAULTED_FROM_L3 由 L3 推定 默认通过——L3 安装规范已通过(全库 L3 扫描策略)
L3 · 安装规范 ✓ 通过
  • L3.1_INSTALL_COMMAND_PARSED 安装命令已解析 方式:安装规范解析
  • L3.2_DSH_VERSION_DECLARED DSH 版本已声明 方式:DSH 版本声明
L4 · 安装已测 ✓ 通过
  • L4.1_INSTALL_EXECUTED_CONFINED 受限沙盒内执行安装 方式:沙盒安装执行
  • L4.2_INSTALL_SUCCESS 沙盒安装成功 方式:沙盒安装执行
  • L4.3_ARTIFACT_CONFIRMED 安装产物已确认 方式:沙盒安装执行
L5 · 运行已测 ✓ 通过
  • L5.1_INSTALL_PASSED_SANDBOXED 沙盒安装通过 方式:沙盒安装执行
  • L5.2_WEB_BOOT_READY Web 启动就绪 方式:Web 启动
  • L5.3_HTTP_SERVED HTTP 服务响应 方式:HTTP 请求
  • L5.4_PLUGIN_INVENTORY_ACTIVE 插件清单中已激活 方式:插件清单查询

风险详情

  • 审查结论 通过
  • 结论说明 vet 静态分析未发现可疑行为,判定为干净(clean)。
  • 风险计数 严重 0 / 高 0 / 中 0
  • 风险详情 未发现严重或警告级问题。

仓库档案

视觉与多模态
字段来自项目仓库与公开索引,中文说明由本站标注
作者 / 维护方yxqfg仓库 phone-lens · 默认分支 未标注
分类视觉与多模态vision
收录类型可安装插件声明了 dsh.bundle、可用 dsh plugin add 安装的条目
开发语言未标注仓库主语言
许可证MIT商用或二次分发前请确认条款原文
星标 / 复刻 / issue2 / 未标注 / 未标注收录时的数值,非实时
创建 / 更新未标注 · 2026-10-07最后推送 未标注
本站收录2026-10-14首次进入本站目录的时间

README 全文

7.1 KB
作者原文,中文版优先;只做安全转义,不改内容

PhoneLens —— 手机拍照直连 DeepSeek Harness

> 手机拍照 / 实时取景,一键送达本机 dsh 会话,成为模型可直接消费的图片输入;模型也能反过来调用手机相机(默认逐次审批)。

  • 主机插件(packages/phone-lens):dsh 双面插件——host 半边是 Node HTTP + WebSocket 接收服务,client 半边在 Web UI 右下角挂悬浮取景小窗
  • 手机 App(packages/app):Flutter / Android,扫码配对、实时取景、拍照上传

链路为局域网 HTTP/WebSocket,扫码一次性配对;USB 网络共享复用同一协议。支持 dsh Web 与 dsh 0.2.0 桌面端。


✨ 特性

  • 扫码配对:一次性 8 位配对码,15 分钟有效,临期自动刷新;设备 token 只存 SHA-256

  • 实时取景:手机以 MJPEG over WebSocket 推流,电脑端悬浮小窗 / 独立取景页实时显示

  • 取景控制:捏合缩放、闪光灯三态、点击对焦、长按锁定

  • 双端快门:任一端按快门,同一条上传 → 注入管线

  • 注入会话:照片自动写入 dsh 会话输入框,模型下一轮直接看到;目标会话可锁定(默认「最近活跃」)

  • 模型相机工具:在会话里说「用手机拍一张现在的屏幕」,模型即可调用 phone_take_photo / phone_camera_pause / phone_camera_resume 自己完成拍照,照片直接进会话;每次调用默认弹审批卡片确认,免确认须在设置里显式开启;远程拍照时手机震动提醒

  • 投递模式:注入对话 / 保存到指定文件夹 / 两者

  • 上传队列:拍照与上传解耦,断网时照片进后台队列不丢片,网络恢复自动续传;队列页可查看进度、逐张取消、失败重试

  • 上传画质三档:高 / 中 / 低
  • 照片加工:裁剪、90° 旋转、画笔标注、马赛克

  • 相册批量连续裁剪:多选后逐张「下一张」→ 裁剪 → 上传,一口气处理整批

  • 多设备并存:多台手机同时配对,电脑端切换预览,手机端「设为主机」一键抢占

  • 心跳保活:双端互唤醒心跳,自动识别半开连接并重连

  • 空闲自动关相机:默认 5 分钟,可调 1 / 5 / 30 / 永不;再点快门首击唤醒、二击拍摄
  • 发送历史三档(仅上传 / 留档 / 不留痕迹)+ 可选自动清理
  • App 内检查更新(Gitee / GitHub 双源),有新版时设置页亮角标

  • 降级取景页:http://127.0.0.1:8791/view.html 不依赖 dsh,支持画中画置顶小窗


🧭 新人快速安装(非开发者)

1. 手机端

  1. 打开 Releases(国内可走 Gitee 镜像)
  2. 下载最新版 app-release.apk 并安装(arm64-v8a)
  3. 打开 PhoneLens

2. 电脑端

dsh plugin --profile web add phone-lens

重启 dsh web 即可。也可以用预构建 tarball:

dsh plugin --profile web add https://github.com/yxqfg/phone-lens/releases/latest/download/phone-lens.tgz

或从源码(管理员 PowerShell):

powershell -ExecutionPolicy Bypass -File scripts\dev-install.ps1

3. 配对

手机扫电脑端二维码(dsh 终端 ASCII 码,或 Web UI 小窗)→ 配对成功 → 取景页拍照或「启动预览」。

> 手机没装 App?电脑端小窗「点此扫码下载」直接扫码下载 APK。

🚀 快速开始(开发)

# 主机插件:构建并装进 dsh web profile(需要 pnpm)
powershell -ExecutionPolicy Bypass -File scripts\dev-install.ps1

# 手机 App(需 Flutter SDK)
powershell -ExecutionPolicy Bypass -File scripts\adb-install.ps1 -Run

重启 dsh web 后终端打印配对二维码。

# 防火墙(首次,管理员):放行 8791(仅私有网段)
powershell -ExecutionPolicy Bypass -File scripts\firewall.ps1

# 无手机冒烟验证电脑端
cd packages\phone-lens; $env:LENS_DATA_DIR="$PWD\.smoke-data"; node lib\dev.js   # 终端 A
node scripts\smoke\smoke.mjs 8791                                              # 终端 B

完整使用说明见 docs/usage.md。

📁 目录结构

.
├── README.md
├── LICENSE                      # MIT
├── docs/
│   ├── architecture.md          # 架构方案:决策、目录结构、数据流、阶段计划
│   ├── protocol.md              # 传输协议:配对/上传/取景(HTTP + WS)
│   ├── dsh-caps.md              # DSH 能力缝调研:附件注入 / Slot UI / agent 事件
│   └── usage.md                 # 使用说明:日常操作与常见问题
├── packages/
│   ├── phone-lens/               # dsh 双面插件(电脑端主体,包名 phone-lens)
│   │   ├── src/                 #   host 半边(Node):server / inject / store
│   │   ├── lib/client.js        #   browser 半边:Web UI 悬浮取景小窗
│   │   └── package.json         #   dsh.bundle.patch + dsh.client 声明
│   └── app/                     # Flutter 手机端
│       ├── lib/core/            #   HTTP 客户端 / WS uplink / 上传队列 / 检查更新
│       └── lib/features/        #   配对、取景、裁剪、上传队列、历史、设置、关于
└── scripts/
├── dev-install.ps1          # 把插件装进 dsh web profile
├── firewall.ps1             # 放行 8791(仅私有网段)
├── adb-install.ps1          # flutter build apk + adb install
└── smoke/                   # 协议冒烟测试

> 注:插件包名与目录名统一为 phone-lens,应用显示名为 PhoneLens。

🛠️ 开发

# 主机插件
cd packages/phone-lens
pnpm install
pnpm build            # tsdown 构建 lib/index.js + lib/dev.js

# 手机 App
cd packages/app
flutter pub get
flutter run           # 或 flutter build apk --release

🛡️ 安全要点

  • 回环(127.0.0.1)免鉴权;非回环必须设备 token(配对签发,只存 SHA-256)
  • 配对码一次性 + TTL,签发即焚;/ws/view、/view.html、/qr* 仅回环
  • 上传白名单 JPEG/PNG,双验 Content-Type + magic bytes,≤10MB(可配)
  • 模型相机工具默认逐次审批;安全披露方式见 SECURITY.md

📄 许可

MIT。参与开发请阅读 CONTRIBUTING.md 与 CODE_OF_CONDUCT.md。

🏷️ 版本

当前 v1.1.0,详见 CHANGELOG.md。

常见问题

7 问
答案由本站依据条目字段整理,不引用上游原文
phone-lens 怎么安装?

在 DSH 里执行 `dsh plugin --profile web add phone-lens` 即可。

phone-lens 的验证等级是什么意思?

L5 · 运行验证通过。在 dsh 沙盒中完成安装与运行冒烟——装得上、跑得起来

phone-lens 安全吗?

低风险。vet 静态分析未发现可疑行为,判定为干净(clean)。

phone-lens 支持哪些 DSH 版本?

上游记录的兼容版本包括 0.2.0-rc.2、0.2.0-rc.1、0.1.7-rc.2、0.1.7-rc.1、0.1.7-alpha.2、0.1.6-alpha.2、0.1.6-alpha.1、0.1.5-rc.2。版本较多,只列出前 8 个。

phone-lens 用的是什么许可证?

上游标注为 MIT。商用或二次分发前请到仓库确认许可证原文。

phone-lens 仓库里有多个插件吗?

这是一个多包仓库,上游还列出了 1 个子包:packages-phone-lens。安装时注意区分具体子包。

这条记录的数据可靠吗?

本站按仓库名去重后合并整理,字段以作者仓库与 npm 元数据为准;安装命令、仓库地址与 README 保持原文,带 L4 / L5 标记的安装命令已在隔离沙盒里真实跑通。

视觉与多模态
按星标排序,可作替代方案

open-design

open-design

L4 · 沙盒安装通过 10.0 万 星

awesome-gpt-image-2

awesome-gpt-image-2

GPT Image 2 / 2.5 提示词与案例库,530+ 个案例、20+ 套工业级模板与可复用 Skills,新增 2.5 同提示词对比

L3 · 安装规范通过 3.4 万 星

PicGo

PicGo

L3 · 安装规范通过 2.7 万 星

iPolloWork

iPolloWork

L4 · 沙盒安装通过 6,775 星

modlens

modlens

ModLens 是 DeepSeek Harness 的视觉插件,为纯文本模型外挂视觉能力,粘贴图片即得结构化 JSON 证据(OCR、版面

L5 · 运行验证通过 4,207 星

OpenBiliClaw

OpenBiliClaw

本地私有、开源的自进化跨平台 AI 内容发现 Agent:先理解你,再主动从 B站、小红书、抖音、YouTube、X、知乎、Reddit、微

L4 · 沙盒安装通过 3,398 星

插件的元信息来自作者仓库;分类、验证等级与安全结论的中文说明为中文整理,最近核验 2026-10-08。