把手机相机变成 dsh 会话的实时取景与拍照输入,经局域网或 USB 直连。
安装
# npm 包(预构建)
dsh plugin --profile web add phone-lens
# Release 预构建包
dsh plugin --profile web add "https://github.com/yxqfg/phone-lens/releases/latest/download/phone-lens.tgz"
# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)
dsh plugin --profile web add github:yxqfg/phone-lens#path:/packages/phone-lens
装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本——pnpm 默认拦截,所以安装可能停在 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 ERR_PNPM_IGNORED_BUILDS;dsh 会打印出需要添加的确切键名,把它加进该 profile 的 pnpm-workspace.yaml 的 allowBuilds 下,重跑一次即可装上。放行构建本身就是一次信任判断:请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。
README
phone-lens 是一个 dsh 双面插件,让手机相机成为 dsh 会话的即时视觉输入:
- host 半边:在 dsh 进程内起接收服务(Node HTTP + WebSocket,默认
0.0.0.0:8791),处理配对、上传、并将图片注入 dsh 会话输入框。 - client 半边:在 dsh Web UI 右下角注册一个悬浮取景小窗(
shell.overlay插槽),实时画面 + 快门 + 配对二维码。
环境要求
- Node.js ≥ 20、pnpm
- 一个 dsh web 配置(
dsh plugin --profile web)
安装
# 1. 构建
cd packages\phone-lens
pnpm install
pnpm build
# 2. 接入 dsh 的 web profile
dsh plugin --profile web add C:\Users\<you>\phone-lens\packages\phone-lens
也可以用仓库根的 scripts\dev-install.ps1 一键完成构建与接入,然后重启 dsh web,
终端会打印配对二维码。
发布到 npm 后,可直接
dsh plugin --profile web add phone-lens。
配置
默认配置见 cordis.patch.yml,可在你的 profile 层覆盖:
| 键 | 默认 | 说明 |
|---|---|---|
server.port |
8791 |
接收服务端口 |
limits.maxUploadBytes |
10485760 |
单张图片上限 |
limits.uploadsPerMinute |
10 |
上传频率限制 |
pairing.codeTtlMs |
900000 |
配对码有效期(15 分钟) |
preview.fps |
10 |
预览帧率 |
inject.notePrefix |
[手机拍照] |
注入消息文本块前缀 |
target.mode |
latest |
目标会话:latest(最近活跃)/ pinned(固定) |
使用
- 手机 App 扫码配对
- 手机端拍照(可选裁剪)→ 图片进入当前 dsh 会话
- 手机端「启动预览」→ 电脑端悬浮小窗实时取景;多设备时手机端「设为主机」抢占预览
详见仓库根 README 与 docs/。
开发
pnpm build # tsdown 构建 lib/index.js(host)与 dev.js
pnpm dev:standalone # 不进入 dsh,独立起接收服务(上传落盘 ~/.dsh/phone-lens/uploads)
node --check lib/client.js # 手写 client 的语法校验
协议与安全设计见 docs/protocol.md、docs/architecture.md。
链接
同类插件
liustack/modlens★ 4183
为纯文本模型架起视觉桥梁:粘贴图片,输出结构化 JSON 证据(OCR、版面、语义)。
ysr666/dsh-vision-router★ 1137
为纯文本 Agent 提供视觉能力:内置免 Key 视觉链 + 像素级视觉工具(看图问答、定位、裁剪、像素对比、取色、OCR、矢量化、抠图、截图);粘贴图片即可用。
Anionex/dsh-vision-toolkit★ 886
让纯文本模型处理视觉任务:粘贴图片后自动切换到 Vision Toolkit 变体,支持图片问答、多图比较、长截图 OCR、截图还原前端 UI、元素定位与像素对比。默认无需 API Key——图片经作者自建的免费服务处理,每台机器每天 100 张;也可改为指向自己的服务商。
fandc520/dsh-comfyui★ 105
让 DeepSeek Harness 的 Agent 直接驱动本地或远程 ComfyUI:comfyui_run / comfyui_object_info / comfyui_workflow 工具生成与编辑图像、视频,附带工作流库(图工作流提取:按分量 / 主流程 / 整体)、加载区分辨率自动匹配、实时队列、SDXL 与 Wan 2.1 模板、配套 skill 与同源媒体代理。
dickpy/dsh-imagegen★ 101
面向 DSH Web GUI 的 AI 生图插件:通过可配置的 OpenAI 兼容端点(gpt-image-2 / gpt-image-1 / dall-e-3)实现文生图与图生图,提供 api_url/api_key 设置卡片与侧边栏分栏生图工作台。
sunxin-ai/dsh-design-qa★ 44
给纯文本模型的设计稿保真判定:`deepseek_vision` 工具从任意 OpenAI 兼容视觉路由借来一只眼,让模型判断实现与设计稿是否一致——并附上支撑该判定的基准(4 组夹具、23 处注入缺陷、逐格原始输出)与其依赖的提问纪律。
社区评论
评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。