# PSD 输出 CLI dry-run / doctor 测试

目的：先不启动 Photoshop、不执行 AppleScript、不做 GUI 操作，只验证“Photoshop JSX 最后一跳”是否具备 CLI 化封装条件，并检查现有 PSD handoff 包是否适合交给 CLI runner。

当前边界：

- 本工具只做 dry-run / doctor；不会启动 Photoshop。
- 不调用 `osascript`、`open -a`、AppleScript、键鼠或可视化 GUI。
- 实际执行 JSX 保存最终 PSD 仍需要 `visual-operator` 或未来的 operator-owned 后台服务。

## 文件

- `tools/psd_finalize_doctor.py`：dry-run 检查工具。
- `reports/system_probe.json`：本机 Photoshop 静态探测结果。
- `reports/system_probe.txt`：可读摘要。

## 用法

只探测本机 Photoshop 脚本能力：

```bash
python3 tools/psd_finalize_doctor.py --system-only --json
```

检查某个 PSD handoff 工作目录：

```bash
python3 tools/psd_finalize_doctor.py \
  --work-dir /path/to/work/slide1_psd_decomposition \
  --jsx build_editable_text_overlay.jsx \
  --base layered_raster_base_no_text.psd \
  --manifest psd_export_work/layer_manifest.json \
  --out final_photoshop_editable_text.psd \
  --log photoshop_build_log.txt \
  --json
```

## 当前初步结论

静态探测显示 bot1 已安装 Photoshop 2026，且 `Info.plist` 标明 AppleScript enabled，`Photoshop.sdef` 里有 JavaScript file/text 脚本执行参数。因此“把 JSX 执行包装成 CLI 命令”具备技术可行性。

但它不是纯 headless Photoshop：实际执行仍会启动/控制 Photoshop 应用，按当前规则不能由普通设计 profile 直接控制本机 GUI。
