{"skill":{"slug":"main-image-editor","displayName":"Main Image Editor","summary":"Orchestrate screenshot + Chinese instruction into PSD batch edits with transaction rollback by reusing psd-automator.","description":"---\nname: main-image-editor\ndescription: \"Orchestrate screenshot + Chinese instruction into PSD batch edits with transaction rollback by reusing psd-automator.\"\ncommand-dispatch: tool\ncommand-tool: main_image_editor\ncommand-arg-mode: raw\nmetadata:\n  openclaw:\n    userInvocable: true\n    commandDispatch: tool\n    commandTool: main_image_editor\n    commandArgMode: raw\n---\n\n# main-image-editor\n\nOrchestration layer for \"main image modification\" workflows:\n\n1. Parse screenshot + Chinese instruction into structured edit tasks.\n2. Convert tasks into `psd-automator` task JSON.\n3. Execute serially with transaction rollback (rollback all on any failure).\n4. Reuse `psd-automator` export + bundle output.\n\n## Usage\n\n```bash\nnode skills/main-image-editor/scripts/run-main-image-editor.js \\\n  --request skills/main-image-editor/examples/request.sample.json \\\n  --index ~/.openclaw/psd-index.json\n```\n\nDry-run or force execute:\n\n```bash\nnode skills/main-image-editor/scripts/run-main-image-editor.js \\\n  --request skills/main-image-editor/examples/request.sample.json \\\n  --dry-run\n```\n\n```bash\nnode skills/main-image-editor/scripts/run-main-image-editor.js \\\n  --request skills/main-image-editor/examples/request.sample.json \\\n  --force\n```\n\n## Request payload\n\n`request` JSON supports:\n\n- `text`: Chinese requirement text\n- `screenshotPath`: screenshot path (used for match + audit)\n- `confidenceThreshold`: optional (default `0.8`)\n- `tasks`: optional pre-parsed tasks (skip regex parsing when provided)\n- `execution`: optional runtime controls (`indexPath`, `dryRun`, `force`)\n\nWhen `fileHint` is missing, parser will try to extract `.psd/.psb` filename from:\n\n1. request `text`\n2. OCR text from `screenshotPath` (local `tesseract` command or macOS Vision OCR fallback)\n\n## Failure policy\n\n- Default policy is `rollback_all`.\n- Any single PSD failure restores all touched PSD files from transaction backups.\n- Temporary outputs generated in the failed run are cleaned up before returning.\n","tags":{"latest":"1.0.1"},"stats":{"comments":0,"downloads":723,"installsAllTime":1,"installsCurrent":1,"stars":0,"versions":2},"createdAt":1773626357315,"updatedAt":1778491936802},"latestVersion":{"version":"1.0.1","createdAt":1774428434874,"changelog":"maintenance update","license":"MIT-0"},"metadata":{"setup":[],"os":null,"systems":null},"owner":{"handle":"dhrxy","userId":"s17ep23tvtyn3spbjjbf8j6zj183jznd","displayName":"dhrxy","image":"https://avatars.githubusercontent.com/u/51009660?v=4"},"moderation":{"isSuspicious":false,"isMalwareBlocked":false,"verdict":"clean","reasonCodes":["review.llm_review"],"summary":"Review: review.llm_review","engineVersion":"v2.4.24","updatedAt":1780090090689}}