随时回看历史图片并精确读取指定区域像素
30/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/24 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add ZhangShurong/dsh-vista该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:仅索引
是什么
dsh 原生插件 · vision
装得上吗
本站尚未做安装检查
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 11 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
读写/删除本地文件
查看扫描证据(共 8 处,展示前 8 条)
- 写入本地文件src/archive.ts:74
await mkdir(this.config.archiveDir, { recursive: true, mode: 0o700 }) - 读取本地文件src/archive.ts:78
raw = await readFile(this.indexPath, 'utf8') - 读取本地文件src/archive.ts:113
await access(path, constants.R_OK) - 写入本地文件src/archive.ts:115
await writeFile(path, bytes, { mode: 0o400 }) - 读取本地文件src/archive.ts:147
return readFile(visual.path) - 写入本地文件src/archive.ts:218
await writeFile(this.indexPath, line, { flag: 'a', mode: 0o600 }) - 删除本地文件src/archive.ts:229
await unlink(visual.path) - 读取本地文件src/content.ts:16
if (typeof hostPath === 'string') return readFile(hostPath)
扫描于 2026/11/3(1 天前) · 范围 全包扫描(包内未声明入口) · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-attachment@deepseek-ai/dsh-llm@deepseek-ai/dsh-tools@deepseek-ai/schemastery给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
为 DeepSeek Harness 提供视觉记忆和主动检查:随时回看任意图像、检查任意区域、读取精确像素。
README
由 DeepSeek 最新模型翻译生成dsh-vista
为 DeepSeek Harness 提供视觉记忆与主动查看能力。
你的智能体只看一眼图片。dsh-vista 让它随时都能找回来。
DSH 智能体经常处理截图、图表和渲染后的页面,但真正重要的那张图,往往在下一次工具调用或上下文压缩之后就没了。dsh-vista 把见过的每张图都存进一个可寻址的归档,并给智能体三个工具,随时回去翻:
- inspect —— 回看任意历史图片,裁剪任意区域,放大时不做平滑处理;
- read_pixels —— 从某个区域采样精确颜色,输出紧凑的符号矩阵;
- visuals —— 列出智能体已经见过的图片。
每张送到模型的图片都会自动打上稳定 id:
<visual id="v12" source="tool:read_image" size="1280x720"></visual>
即使原图已经滑出上下文窗口,模型之后仍能引用 v12。
dsh-vista 实际效果
为什么需要它
- 压缩丢掉的是字节,不是含义。 上下文翻篇之后,dsh-vista 仍能寻址到原始字节。
- 重新截图又贵又有损。 屏幕已经变了;你要的那张图,是三步之前的那张。
- 「再看一遍整张图」不叫查看。 好的视觉智能体会针对具体区域提具体问题。
- 纯文本兜底。 即使模型路由只接受文本,read_pixels 照样能用。
展开完整文档(README 剩余 1 节)
dsh-vista
为 DeepSeek Harness 提供视觉记忆与主动查看能力。
你的智能体只看一眼图片。dsh-vista 让它随时都能找回来。
DSH 智能体经常处理截图、图表和渲染后的页面,但真正重要的那张图,往往在下一次工具调用或上下文压缩之后就没了。dsh-vista 把见过的每张图都存进一个可寻址的归档,并给智能体三个工具,随时回去翻:
- inspect —— 回看任意历史图片,裁剪任意区域,放大时不做平滑处理;
- read_pixels —— 从某个区域采样精确颜色,输出紧凑的符号矩阵;
- visuals —— 列出智能体已经见过的图片。
每张送到模型的图片都会自动打上稳定 id:
<visual id="v12" source="tool:read_image" size="1280x720"></visual>
即使原图已经滑出上下文窗口,模型之后仍能引用 v12。
dsh-vista 实际效果
为什么需要它
- 压缩丢掉的是字节,不是含义。 上下文翻篇之后,dsh-vista 仍能寻址到原始字节。
- 重新截图又贵又有损。 屏幕已经变了;你要的那张图,是三步之前的那张。
- 「再看一遍整张图」不叫查看。 好的视觉智能体会针对具体区域提具体问题。
- 纯文本兜底。 即使模型路由只接受文本,read_pixels 照样能用。
安装
dsh plugin --profile web add dsh-vista
或者锁定版本:
dsh plugin --profile web add dsh-vista@0.1.3
然后验证:
dsh --profile web --dump-config | grep dsh-vista
dsh --profile web
从 GitHub 检出安装:
dsh plugin --profile web add github:ZhangShurong/dsh-vista#v0.1.3
工具
| 工具 | 作用 | 输出 |
| inspect | 选中归档中的 visual 和可选区域;从原图裁剪,用最近邻算法放大。 | 图像块 |
| read_pixels | 把区域划分成等分的行和列,采样每个中心像素。 | 调色板 + 符号行 |
| visuals | 列出最近的视觉对象,含 id、来源、尺寸和时间戳。 | JSON |
inspect 示例:
{
"question": "Did the button move after the click?",
"views": [
{
"label": "button before",
"visual": "v11",
"region": { "x": 1180, "y": 40, "width": 100, "height": 60 }
}
]
}
read_pixels 结果示例:
{
"palette": { "0": "#FF0000", "1": "#0000FF" },
"views": [
{ "label": "quadrant", "visual": "v1", "rows": 2, "columns": 2, "samples": ["01", "11"] }
]
}
read_pixels 只做测量。它不对像素做对齐、变换或解读。
工作原理
tool result / attachment
│
▼
tools/post-execute ──► archive bytes, assign vN, prepend <visual id="vN">
│
▼
model sees: <visual id="v12" ...></visual> [image]
│
├── inspect(v12, region) ──► cropped + enlarged image
├── read_pixels(v12, region) ──► palette + symbol rows
└── visuals() ──► index of previous images
归档按内容寻址,只追加(index.jsonl 加上 archiveDir 下的文件)。送到模型的图像仍由 DSH 的附件服务管理;dsh-vista 另存一份副本,让视觉 id 在压缩和图像卸载后依然有效。
配置
默认值在 src/config.ts。在 bundle 行或配置档补丁里覆盖:
- id: dsh-vista
config:
archiveDir: /home/me/.dsh/dsh-vista/archive
displaySize: 1024
maxInspectViews: 8
maxPixelViews: 16
maxPixelSamples: 4096
annotate: true
retentionDays: 7
| 字段 | 默认值 | 含义 |
| archiveDir | $DSH_HOME/dsh-vista/archive | 字节存储和 index.jsonl。 |
| displaySize | 1024 | 裁剪图最长边的尺寸。 |
| maxInspectViews | 8 | 每次 inspect 调用的视图数。 |
| maxPixelViews | 16 | 每次 read_pixels 调用的视图数。 |
| maxPixelSamples | 4096 | 每次 read_pixels 调用的采样总数。 |
| annotate | true | 在每张归档图像前插入 <visual id="...">。 |
| retentionDays | 7 | 删除更早的归档视觉对象;0 表示永久保留。 |
已在 DSH 0.2.1-rc.2 上验证
用 deepseek-flash 做了端到端测试:
1. read_image 返回图像;dsh-vista 归档它,并追加 <visual id="v1" source="tool:read_image" size="16x16">。
2. visuals 列出 v1。
3. inspect 裁剪并放大归档图像,返回模型可见的 1024×1024 PNG。
4. read_pixels 返回预期的 01 / 11 颜色采样。
5. 模型正确描述了红蓝象限。
src/content.ts 里的附件桥接使用:
ctx.attachments.saveImage({ data, mediaType, name })
ctx.attachments.imageHostPath(ref)
两者都在已安装的 @deepseek-ai/dsh-attachment 中确认可用。
有意不做的事
- 没有环境适配器(ARC-AGI-3、GameWorld、浏览器自动化)。
- 没有 play / act 动作工具。
- 没有每回合只允许一个动作的策略、预算或评估框架。
- 没有 Python sidecar。
这些都属于后续插件。这个插件只回答一个更窄的问题:可寻址的视觉记忆加上主动检查,能否改善 DSH 智能体的视觉工作?
开发
pnpm install
pnpm typecheck
pnpm build
npm pack --dry-run
这个包是 ESM bundle。lib/ 是生成产物;assets/ 存放 logo 和 README 图片。
发布
发布在 GitHub Actions 里跑,不在本地笔记本上跑。
打标签触发(推荐):
npm version patch # or minor / major
git push --follow-tags
手动按钮:
Actions → Publish → Run workflow → 选择 patch、minor 或 major。
工作流会升版本号、提交、打标签并发布。
工作流使用 npm Trusted Publishing(OIDC),发布时带 provenance。一次性设置:
1. 打开 https://www.npmjs.com/package/dsh-vista/access
2. 添加 Trusted Publisher → GitHub Actions:
- Owner:ZhangShurong
- Repository:dsh-vista
- Workflow filename:publish.yml
3. 不需要 NPM_TOKEN secret。
如果你更想用 token,添加 NPM_TOKEN 仓库 secret,并在发布步骤上设置 NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}。
CI(.github/workflows/ci.yml)在每次 push 和 pull request 时跑 typecheck、build 和 npm pack --dry-run。
许可证
MIT预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
ZhangShurong/dsh-vista
随时回看历史图片并精确读取指定区域像素
相关插件 · 视觉能力
智能体工作台Devin-AXIS/iPolloWork
企业级、本地优先的智能体工作台,面向个人和智能体团队——一个工作区,容纳多个智能体引擎;一套统一体系,管理插件和技能;支…
★ 7,364已汉化DSH
72
开源设计工作台nexu-io/open-design
OpenDesign:首个协作式 AI 设计智能体工作区
★ 105,709已汉化DSH
71.8
GPT 图像提示词库freestylefly/awesome-gpt-image-2
Prompt as Code | GPT Image 2 / 2.5 提示词与案例库,530+ 个案例、20+…
★ 34,534已汉化DSH
71.5
多智能体编码工作区spacering-net/codeg
多智能体协作的 AI 编程工作区:汇总 Claude Code、Codex、OpenCode、Pi、Grok Build 等来源的会话。支持桌面应用、自托管服务器或 Docker。
★ 4,319已汉化DSH
71.5
AI 用量桌面小部件Javis603/token-monitor
EN | 简 | 繁 | KO | JA | PT
★ 3,533已汉化DSH
71.1
架构图生成器tt-a1i/archify
把你想理解、规划或分享的事,变成可以互动的可视化作品。
★ 93,105已汉化DSH
71.1
这是你的仓库?认领条目