DeepSeek Harness(DSH)采用插件化架构,为智能体开发提供了扩展能力。当智能体需要处理图像或操作本地桌面时,直接集成原生图形界面工具通常较为繁琐。dsh-photocraft 是一个社区插件,通过 MCP 协议将 PhotoCraft 的图像编辑能力与桌面自动化功能桥接到 DSH,使智能体能够执行图片编辑、图层管理、调色、添加文字形状、运行滤镜以及操作原生桌面画布和截图。
这是一个独立社区集成项目,非 PhotoCraft 或 DeepSeek 官方插件。该插件本身不包含编辑器二进制文件,也不包含生成式 AI 模型,而是通过脚本安装并链接官方 PhotoCraft 运行时。
安装与启用¶
安装前需确认环境满足要求:DSH 版本需兼容 ^0.2.0-rc.2,PowerShell 版本必须为 PowerShell 7(pwsh),且系统需有可用的桌面会话。
1. 安装插件包¶
在 PowerShell 7 中执行以下命令添加插件:
dsh plugin --profile web add github:DASHAN-0079/dsh-photocraft#v0.2.0
2. 安装原生 PhotoCraft 运行时¶
插件依赖本地安装的 PhotoCraft。执行插件包内的安装脚本:
$dshRoot = if ($env:DSH_HOME) { $env:DSH_HOME } else { Join-Path ([Environment]::GetFolderPath('UserProfile')) '.dsh' }
& "$dshRoot/profiles/web/node_modules/dsh-photocraft/scripts/Install-PhotoCraft.ps1"
脚本会根据系统自动下载并校验 SHA-256 后安装 PhotoCraft 到指定目录。安装完成后需重启 DSH 并创建新会话。注意:Linux、Windows ARM64 和无桌面会话的服务器不在支持范围。
3. 配置环境变量¶
若需自定义安装路径或控制端口,需在启动 DSH 前设置以下环境变量:
PHOTOCRAFT_DSH_HOME:默认为%LOCALAPPDATA%\dsh-photocraft(Windows)或~/Library/Application Support/dsh-photocraft(macOS)。安装器与插件必须使用同一路径。PHOTOCRAFT_DSH_PWSH:指定 PowerShell 7 可执行文件路径,默认为pwsh。PHOTOCRAFT_DSH_PORT:指定桌面本机控制端口,默认为17878。
使用方法¶
工作区路径¶
所有输入图片和输出文件应存放在工作区目录中:
* Windows: %LOCALAPPDATA%\dsh-photocraft\workspace
* macOS: ~/Library/Application Support/dsh-photocraft/workspace
插件中的相对路径均基于此目录。
工具分类¶
该插件提供两套工具集,分别对应无界面操作和桌面交互:
mcp__photocraft__*: 用于无界面编辑、保存、批处理、预览、切换和关闭文档。mcp__photocraft_ui__*: 用于桌面编辑、界面检查、画笔鼠标事件、菜单操作和截图。
两个后端拥有独立文档会话。要在无界面端打开文档,需先在桌面端保存并关闭,再由无界面端打开。断开 MCP 连接不会关闭桌面窗口。
典型示例¶
示例 1:创建宣传图
智能体可使用以下指令:
使用 PhotoCraft 创建一张 1200×800 的宣传图,背景深蓝,白色标题“周末摄影展”,加入黄色圆形装饰。生成预览,保存 poster.pcraft 和 poster.png。
示例 2:调整图片参数
用 PhotoCraft 打开 workspace 中的 input.jpg,提高亮度和对比度,缩放到宽度 1600 像素,保持比例,导出 output.jpg,不覆盖原图。
适用场景与注意¶
适用场景:
* DSH 智能体需要处理图片文件(如生成宣传图、调整截图质量)。
* 需要利用 PhotoCraft 的图层、滤镜和文本排版功能。
* 需要控制桌面环境进行截图或简单的鼠标交互。
注意事项:
* 系统限制:本版仅支持 Windows x64 和 macOS Intel / Apple Silicon。不支持 Linux、Windows ARM64 以及无桌面会话的服务器环境。
* 安全渲染:默认使用 --safe-gpu 模式,在 CPU 上渲染,以确保兼容性和稳定性。
* 权限要求:插件以当前 DSH 进程权限运行,安装前建议检查源码与许可证。
* 版本依赖:依赖 PowerShell 7,不支持 Windows PowerShell 5.1。