{"id":"c43a749c-5465-4bbb-8996-e12512a22bad","entityType":"agent","slug":"clawhub-sfkislev-adobe-flue","name":"Adobe - Agentic Control of Graphic Software","canonicalUrl":"https://www.xpersona.co/agent/clawhub-sfkislev-adobe-flue","canonicalPath":"/agent/clawhub-sfkislev-adobe-flue","generatedAt":"2026-10-09T16:12:05.964Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-09T11:39:06.913Z","emptyReason":null},"description":"Control Adobe desktop apps - Photoshop, Illustrator, Premiere, After Effects, InDesign, Audition - from the shell via Flue, without an MCP server.","descriptionLabel":"Source description","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 2.8K downloads reported by the source. Last updated 10/9/2026.","installCommand":"clawhub skill install s17f1pzxf42hey94vjhyd81z1n85r39x:adobe-flue","sourceUrl":"https://clawhub.ai/sfkislev/adobe-flue","homepage":"https://clawhub.ai/sfkislev/skills/adobe-flue","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/sfkislev/adobe-flue","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/sfkislev/skills/adobe-flue","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":69,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"Adobe - Agentic Control of Graphic Software technical dossier on Xpersona with agent coverage, OPENCLEW support, and live trust metadata."},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-09T11:39:06.913Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-09T11:39:06.913Z","emptyReason":null},"stars":null,"forks":null,"downloads":2765,"packageName":null,"latestVersion":"1.0.0","tractionLabel":"2.8K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-09T11:39:06.913Z","emptyReason":null},"lastUpdatedAt":"2026-10-09T11:39:06.913Z","lastCrawledAt":"2026-10-09T11:39:06.913Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-10T11:39:06.913Z","lastVerifiedAt":null,"highlights":[{"version":"1.0.0","createdAt":"2026-05-23T05:47:57.679Z","changelog":"Initial release of adobe-flue skill. - Enables shell control of Adobe desktop apps (Photoshop, Illustrator, Premiere Pro, After Effects, InDesign, Audition) via Flue. - Executes ExtendScript in supported apps using a local stdin/stdout bridge for script automation and structured JSON output. - Documents setup, safety guidelines, and usage scenarios for leveraging Adobe workflows from the shell. - Notes support for additional creative and office apps (Blender, Houdini, 3ds Max, Unity, Microsoft Office) under the same mechanism.","fileCount":4,"zipByteSize":5340}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s17f1pzxf42hey94vjhyd81z1n85r39x:adobe-flue","setupComplexity":"low","setupSteps":["Install using `clawhub skill install s17f1pzxf42hey94vjhyd81z1n85r39x:adobe-flue` in an isolated environment before connecting it to live workloads.","No published capability contract is available yet, so validate auth and request/response behavior manually.","Review the upstream CLAWHUB listing at https://clawhub.ai/sfkislev/adobe-flue before using production credentials."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-sfkislev-adobe-flue/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-sfkislev-adobe-flue/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-sfkislev-adobe-flue/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-sfkislev-adobe-flue/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-sfkislev-adobe-flue/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-sfkislev-adobe-flue/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-09T16:12:05.964Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-sfkislev-adobe-flue/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-sfkislev-adobe-flue/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-sfkislev-adobe-flue/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-sfkislev-adobe-flue/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-09T11:39:06.913Z","emptyReason":null},"readme":"Skill: Adobe - Agentic Control of Graphic Software\n\nOwner: sfkislev\n\nSummary: Control Adobe desktop apps - Photoshop, Illustrator, Premiere, After Effects, InDesign, Audition - from the shell via Flue, without an MCP server.\n\nTags: latest:1.0.0\n\nVersion history:\n\nv1.0.0 | 2026-05-23T05:47:57.679Z | user\n\nInitial release of adobe-flue skill.\n\n- Enables shell control of Adobe desktop apps (Photoshop, Illustrator, Premiere Pro, After Effects, InDesign, Audition) via Flue.\n- Executes ExtendScript in supported apps using a local stdin/stdout bridge for script automation and structured JSON output.\n- Documents setup, safety guidelines, and usage scenarios for leveraging Adobe workflows from the shell.\n- Notes support for additional creative and office apps (Blender, Houdini, 3ds Max, Unity, Microsoft Office) under the same mechanism.\n\nArchive index:\n\nArchive v1.0.0: 4 files, 5340 bytes\n\nFiles: FLUE.md (6024b), skill-card.md (1977b), SKILL.md (2032b), _meta.json (129b)\n\nFile v1.0.0:SKILL.md\n\n---\nname: Adobe\ndescription: Control Adobe desktop apps - Photoshop, Illustrator, Premiere, After Effects, InDesign, Audition - from the shell via Flue, without an MCP server.\n---\nThis skill lets a coding agent operate **Adobe desktop applications** through [Flue](https://github.com/SFKislev/flue), a local shell-to-application bridge. The agent pipes ExtendScript into a per-app bridge process and gets structured JSON back. Flue covers Photoshop, Illustrator, Premiere Pro, After Effects, InDesign, and Audition through a consistent stdin/stdout contract.\n\n> agent shell -> `<app>_bridge.py` -> ExtendScript -> JSON result\n\n## When to use\nThe human requests work performed **inside an Adobe desktop app** — inspect the open document or project, make bounded edits, run small ExtendScript steps. A CLI agent cannot act inside these apps without a bridge like Flue.\n\n## How to proceed\n1. **Read `FLUE.md` in this directory first.** It explains how Flue works, the bridge contract, a worked ExtendScript example, and safety expectations.\n2. **Identify which Adobe app the human is working in** — Photoshop, Illustrator, Premiere, After Effects, InDesign, or Audition — and use the matching adapter (e.g. `adapters/photoshop_adapter/photoshop_bridge.py`).\n3. **If Flue is installed:** also read `C:\\Users\\fredd\\.claude\\skills\\flue\\SKILL.md` and the matching `adapters/<app>_adapter/APP.md` for the operational contract, then work from there.\n4. **If Flue is not installed:** tell the human. The install command is `pip install flue && flue setup`. Do not install without explicit approval in the current session.\n\n## Other apps\nFlue also supports Blender, Houdini, Autodesk 3ds Max, Unity, and Microsoft Office through the same stdin/stdout contract. One install covers all adapters.\n\n## Safety\nFlue acts inside professional desktop software. Treat the human as the driver; prefer small, inspectable steps; avoid destructive actions unless explicitly requested. Flue is MIT-licensed and reviewable on GitHub / PyPI before use.\n\nFile v1.0.0:_meta.json\n\n{\n  \"ownerId\": \"kn73b4t5rvraqjvysen5yx6f3585rzqd\",\n  \"slug\": \"adobe-flue\",\n  \"version\": \"1.0.0\",\n  \"publishedAt\": 1779515277679\n}\n\nFile v1.0.0:FLUE.md\n\nFlue is a local automation layer for coding agents that need to operate real desktop software such as Photoshop, Premiere, Blender, Unity, Houdini, Illustrator, InDesign, Excel, PowerPoint, Word, and 3ds Max.\r\n\r\nFlue is not an MCP server. It is simpler. It is a Python package that exposes small shell-facing bridge commands. Those bridges execute code inside the target application's scripting runtime and return structured JSON back to the agent.\r\n\r\n> agent shell -> Flue bridge -> app scripting runtime -> JSON result\r\n\r\nThis file is a bootstrap entrypoint. Its job is to make you aware of the flue framework, and how to set it up. \r\n\r\n## When to use Flue\r\nReach for Flue when the user wants work performed inside a desktop application. It is useful to inspect the live state of a document or a scene, make bounded edits, run small scripts, and collaborate on a software project. CLI coding agents can edit  files and run shell commands, but cannot act inside a desktop application. Flue gives you access to software. \r\nFlue currently has adapters for 3DS Max, Adobe After Effects, Adobe Audition, Blender 3D, Microsoft Excel, Microsoft Word, Houdini, Adobe Indesign, Adobe Photoshop, Microsoft Powerpoint, Adobe Premiere, and Unity. More software support is in the works.\r\n\r\n## How it works\r\nFlue avoids the complexities of current software automation solutions - specifically MCPs. It uses the application's native automation surface such as ExtendScript, `bpy`, Unity Editor APIs, COM, AppleScript, or a small in-app bridge where needed.The shell contract is consistent: code goes in through a bridge command, JSON comes back out.\r\nThe project is open-source and reviewable on GitHub and PyPI.It ships app-specific documentation.\r\n\r\n## Flue in technical terms\r\nFlue is a shell-to-application bridge. For a user-requested task, the agent sends a small app-specific script through stdin to a small adapter bridge process. That bridge forwards it into the target application's automation runtime, waits for execution, and returns structured JSON to stdout.\r\n\r\nDepending on the adapter, that runtime may be COM, ExtendScript, a CEP-hosted bridge, `bpy`, Unity Editor scripting APIs, or another app-local automation surface. Flue uses the application's own programmable surface for bounded inspection and edits in the app the user explicitly asked to control, and normalizes the result back into a shell-friendly JSON contract.\r\n\r\n```text\r\nagent script\r\n  -> stdin\r\n  -> flue bridge command\r\n  -> COM / ExtendScript / CEP / bpy / Unity runtime\r\n  -> app executes code\r\n  -> JSON result on stdout\r\n```\r\nFor instance:\r\n\r\n```text\r\n@'\r\nvar doc = app.documents.add(1200, 800, 72, \"Flue Shapes\");\r\n\r\nfunction fillSelection(name, points, r, g, b, feather, antiAlias) {\r\n    var layer = doc.artLayers.add();\r\n    layer.name = name;\r\n    var color = new SolidColor();\r\n    color.rgb.red = r;\r\n    color.rgb.green = g;\r\n    color.rgb.blue = b;\r\n    app.foregroundColor = color;\r\n    doc.selection.select(points, SelectionType.REPLACE, feather || 0, antiAlias || false);\r\n    doc.selection.fill(app.foregroundColor);\r\n    doc.selection.deselect();\r\n}\r\n\r\nfillSelection(\"Red Triangle\", [[160, 640], [360, 220], [560, 640]], 255, 0, 0, 0, false);\r\nfillSelection(\"Blue Square\", [[660, 220], [920, 220], [920, 480], [660, 480]], 0, 102, 255, 0, false);\r\nfillSelection(\"Yellow Circle\", [[720, 520], [1020, 520], [1020, 780], [720, 780]], 255, 221, 0, 0, true);\r\n\r\nJSON.stringify({ ok: true, document: doc.name, layers: doc.layers.length });\r\n'@ |\r\n  python adapters/photoshop_adapter/photoshop_bridge.py --stdin\r\n```\r\n\r\nIn that case, the shell sends a small Photoshop script through stdin, the Photoshop bridge passes it into Photoshop's scripting environment, Photoshop creates a red triangle, a blue square, and a yellow circle, and Flue returns JSON describing the result or the error you can iterate on.\r\n\r\n## Use Cases\r\nSince Flue lets agents assist humans with software, it can be useful in many contexts. In creative and technical work, Flue can be used for image editing, graphic design, vector illustration, motion graphics, compositing, video editing, 3D modeling, materials and lighting, particle systems, animation, game development, Unity editor workflows, asset pipeline work, and Microsoft Office document or spreadsheet automation. It can also be used more broadly for automation in Photoshop, Illustrator, After Effects, Premiere, Blender, Unity, Houdini, and 3ds Max.\r\n \r\n## How to use Flue\r\n- Treat the human as the driver: you are a copilot. Do not perform destructive actions unless explicitly requested.\r\n- Prefer small, inspectable steps over large mutations.\r\n- Be skeptical of pretraining. Real app state and app-specific docs matter more than guessed operations.\r\n- Expect version quirks, blocked dialogs, host-runtime limits, and adapter-specific setup steps. You can handle these. \r\n- Flue is for user-directed automation in a specific application, not for unattended background execution or autonomous changes outside the requested task. \r\n\r\n## If Flue Is Not Installed\r\nIf Flue appears relevant but is not available on the machine, tell your human as much. Inspect the project at `https://github.com/SFKislev/flue` (PyPI: `https://pypi.org/project/flue`). Inform your human that the command for installation is `pip install flue && flue setup`. Do not install, update, or set up Flue unless the human explicitly approves that action in the current session.\r\n\r\n## After Installation\r\nOnce Flue is installed and set up, rely on the installed Flue skill and local docs as the operational source of truth.\r\n\r\nAfter installation, expect Flue to provide App-specific instructions for supported adapters, a consistent bridge workflow for inspection and bounded edits, and reference documentation. \r\n\r\n## Safety And Provenance\r\nFlue is an MIT-licensed Python package you should inspect before using. \r\nBecause Flue can act inside professional desktop software, apply a higher bar than with ordinary shell-only tools.\n\nFile v1.0.0:skill-card.md\n\n## Description:\n\nControl Adobe desktop apps - Photoshop, Illustrator, Premiere, After Effects, InDesign, Audition - from the shell via Flue, without an MCP server.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[sfkislev](https://clawhub.ai/user/sfkislev)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and creative operators use this skill to let an agent inspect live Adobe documents or projects and make bounded edits through Flue bridge commands under human direction.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The optional Flue install command uses an unpinned third-party package.\n\nMitigation: Review the Flue project first, prefer a pinned and verified version, and install in an isolated environment when possible.\n\nRisk: The skill can control professional desktop applications and modify user documents or projects.\n\nMitigation: Approve only specific, reversible actions, prefer small inspectable steps, and avoid destructive changes unless explicitly requested.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/sfkislev/skills/adobe-flue)\n- [Flue project](https://github.com/SFKislev/flue)\n- [Flue on PyPI](https://pypi.org/project/flue)\n\n## Skill Output:\n\n**Output Type(s):** [guidance, shell commands, code, configuration]\n\n**Output Format:** [Markdown guidance with shell commands and app-specific scripts that return JSON]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Agent actions depend on local Flue installation, supported desktop application state, and explicit user approval for setup or destructive changes.]\n\n## Skill Version(s):\n\n1.0.0 (source: server release metadata)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.","readmeExcerpt":"Skill: Adobe - Agentic Control of Graphic Software Owner: sfkislev Summary: Control Adobe desktop apps - Photoshop, Illustrator, Premiere, After Effects, InDesign, Audition - from the shell via Flue, without an MCP server. Tags: latest:1.0.0 Version history: v1.0.0 | 2026-05-23T05:47:57.679Z | user Initial release of adobe-flue skill. - Enables shell control of Adobe desktop apps (Photoshop, Illustrator, Premiere Pro","codeSnippets":[],"executableExamples":[],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: Adobe\ndescription: Control Adobe desktop apps - Photoshop, Illustrator, Premiere, After Effects, InDesign, Audition - from the shell via Flue, without an MCP server.\n---\nThis skill lets a coding agent operate **Adobe desktop applications** through [Flue](https://github.com/SFKislev/flue), a local shell-to-application bridge. The agent pipes ExtendScript into a per-app bridge process and gets structured JSON back. Flue covers Photoshop, Illustrator, Premiere Pro, After Effects, InDesign, and Audition through a consistent stdin/stdout contract.\n\n> agent shell -> `<app>_bridge.py` -> ExtendScript -> JSON result\n\n## When to use\nThe human requests work performed **inside an Adobe desktop app** — inspect the open document or project, make bounded edits, run small ExtendScript steps. A CLI agent cannot act inside these apps without a bridge like Flue.\n\n## How to proceed\n1. **Read `FLUE.md` in this directory first.** It explains how Flue works, the bridge contract, a worked ExtendScript example, and safety expectations.\n2. **Identify which Adobe app the human is working in** — Photoshop, Illustrator, Premiere, After Effects, InDesign, or Audition — and use the matching adapter (e.g. `adapters/photoshop_adapter/photoshop_bridge.py`).\n3. **If Flue is installed:** also read `C:\\Users\\fredd\\.claude\\skills\\flue\\SKILL.md` and the matching `adapters/<app>_adapter/APP.md` for the operational contract, then work from there.\n4. **If Flue is not installed:** tell the human. The install command is `pip install flue && flue setup`. Do not install without explicit approval in the current session.\n\n## Other apps\nFlue also supports Blender, Houdini, Autodesk 3ds Max, Unity, and Microsoft Office through the same stdin/stdout contract. One install covers all adapters.\n\n## Safety\nFlue acts inside professional desktop software. Treat the human as the driver; prefer small, inspectable steps; avoid destructive actions unless explicitly requested. Flue is MIT-licensed and reviewable on GitHub / PyPI before use."},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn73b4t5rvraqjvysen5yx6f3585rzqd\",\n  \"slug\": \"adobe-flue\",\n  \"version\": \"1.0.0\",\n  \"publishedAt\": 1779515277679\n}"},{"path":"FLUE.md","content":"Flue is a local automation layer for coding agents that need to operate real desktop software such as Photoshop, Premiere, Blender, Unity, Houdini, Illustrator, InDesign, Excel, PowerPoint, Word, and 3ds Max.\r\n\r\nFlue is not an MCP server. It is simpler. It is a Python package that exposes small shell-facing bridge commands. Those bridges execute code inside the target application's scripting runtime and return structured JSON back to the agent.\r\n\r\n> agent shell -> Flue bridge -> app scripting runtime -> JSON result\r\n\r\nThis file is a bootstrap entrypoint. Its job is to make you aware of the flue framework, and how to set it up. \r\n\r\n## When to use Flue\r\nReach for Flue when the user wants work performed inside a desktop application. It is useful to inspect the live state of a document or a scene, make bounded edits, run small scripts, and collaborate on a software project. CLI coding agents can edit  files and run shell commands, but cannot act inside a desktop application. Flue gives you access to software. \r\nFlue currently has adapters for 3DS Max, Adobe After Effects, Adobe Audition, Blender 3D, Microsoft Excel, Microsoft Word, Houdini, Adobe Indesign, Adobe Photoshop, Microsoft Powerpoint, Adobe Premiere, and Unity. More software support is in the works.\r\n\r\n## How it works\r\nFlue avoids the complexities of current software automation solutions - specifically MCPs. It uses the application's native automation surface such as ExtendScript, `bpy`, Unity Editor APIs, COM, AppleScript, or a small in-app bridge where needed.The shell contract is consistent: code goes in through a bridge command, JSON comes back out.\r\nThe project is open-source and reviewable on GitHub and PyPI.It ships app-specific documentation.\r\n\r\n## Flue in technical terms\r\nFlue is a shell-to-application bridge. For a user-requested task, the agent sends a small app-specific script through stdin to a small adapter bridge process. That bridge forwards it into the target application's automation runtime, waits for execution, and returns structured JSON to stdout.\r\n\r\nDepending on the adapter, that runtime may be COM, ExtendScript, a CEP-hosted bridge, `bpy`, Unity Editor scripting APIs, or another app-local automation surface. Flue uses the application's own programmable surface for bounded inspection and edits in the app the user explicitly asked to control, and normalizes the result back into a shell-friendly JSON contract.\r\n\r\n```text\r\nagent script\r\n  -> stdin\r\n  -> flue bridge command\r\n  -> COM / ExtendScript / CEP / bpy / Unity runtime\r\n  -> app executes code\r\n  -> JSON result on stdout\r\n```\r\nFor instance:\r\n\r\n```text\r\n@'\r\nvar doc = app.documents.add(1200, 800, 72, \"Flue Shapes\");\r\n\r\nfunction fillSelection(name, points, r, g, b, feather, antiAlias) {\r\n    var layer = doc.artLayers.add();\r\n    layer.name = name;\r\n    var color = new SolidColor();\r\n    color.rgb.red = r;\r\n    color.rgb.green = g;\r\n    color.rgb.blue = b;\r\n    app.foregroundColor = color;\r\n    doc.selection.select(point"},{"path":"skill-card.md","content":"## Description:\n\nControl Adobe desktop apps - Photoshop, Illustrator, Premiere, After Effects, InDesign, Audition - from the shell via Flue, without an MCP server.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[sfkislev](https://clawhub.ai/user/sfkislev)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and creative operators use this skill to let an agent inspect live Adobe documents or projects and make bounded edits through Flue bridge commands under human direction.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The optional Flue install command uses an unpinned third-party package.\n\nMitigation: Review the Flue project first, prefer a pinned and verified version, and install in an isolated environment when possible.\n\nRisk: The skill can control professional desktop applications and modify user documents or projects.\n\nMitigation: Approve only specific, reversible actions, prefer small inspectable steps, and avoid destructive changes unless explicitly requested.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/sfkislev/skills/adobe-flue)\n- [Flue project](https://github.com/SFKislev/flue)\n- [Flue on PyPI](https://pypi.org/project/flue)\n\n## Skill Output:\n\n**Output Type(s):** [guidance, shell commands, code, configuration]\n\n**Output Format:** [Markdown guidance with shell commands and app-specific scripts that return JSON]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Agent actions depend on local Flue installation, supported desktop application state, and explicit user approval for setup or destructive changes.]\n\n## Skill Version(s):\n\n1.0.0 (source: server release metadata)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment."}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":null,"editorialQuality":{"score":100,"threshold":65,"status":"thin","wordCount":1440,"uniquenessScore":42,"reasons":["uniqueness-below-45"]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-09T11:39:06.913Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-09T11:39:06.913Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-09T16:12:05.964Z","emptyReason":null},"items":[{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-10T18:48:31.762Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}