InDesign — Claude Code skill: what it does, how to install
Connects a coding agent to desktop Adobe InDesign using the Flue bridge. It lets the agent inspect spreads, frames, and styles without an MCP server.
npx skills add SFKislev/Flue --skill indesign -a claude-codeWhat InDesign does
The skill sends ExtendScript directly into indesign_bridge.py. The bridge runs commands inside desktop Adobe InDesign and returns structured JSON back to the agent. This allows the CLI agent to inspect open documents, pages, text flows, and styling, or execute bounded layout edits.
Flue is required on the host system. If it is missing, the agent will prompt for approval before running pip install flue && flue setup. No external MCP server is needed because communication relies on standard stdin and stdout streams.
Because operations affect live documents in professional desktop software, agents should keep actions small and inspectable. Destructive modifications should only run with explicit user confirmation.
What it helps with
- inspect spreads, pages, and text frames inside an open InDesign document
- run bounded ExtendScript steps to update document styles
- return InDesign layout metadata as structured JSON to the CLI agent
- control desktop InDesign directly from the terminal without an MCP server
Example prompts for the agent
- Inspect the active InDesign document and list all spreads and frames
- Run an ExtendScript snippet via indesign_bridge.py to check paragraph styles
- Locate all text frames on page 2 in InDesign and return their bounds
How to install InDesign
1Skills CLI (Vercel)
npx skills add SFKislev/Flue --skill indesign -a claude-code2Manually: put the files in place
~/.claude/skills/indesign/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/indesign/
1Skills CLI (Vercel)
npx skills add SFKislev/Flue --skill indesign -a codex2Manually: put the files in place
.agents/skills/indesign/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add SFKislev/Flue --skill indesign -a cursor2Manually: put the files in place
.cursor/skills/indesign/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install SFKislev/Flue indesign2Manually: put the files in place
.github/skills/indesign/SKILL.md1Skills CLI (Vercel)
npx skills add SFKislev/Flue --skill indesign -a gemini-cli2Platform CLI
gemini skills install https://github.com/SFKislev/Flue --path skills/indesignManually: put the files in place
.devin/skills/indesign/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add SFKislev/Flue --skill indesign -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about InDesign
How to install InDesign in Claude Code?
Run npx skills add SFKislev/Flue --skill indesign -a claude-code in your terminal.
What does the InDesign skill do?
It allows a command-line agent to interact with desktop Adobe InDesign. The agent pipes ExtendScript to a local bridge and inspects or modifies documents without manual exporting.
Does this skill require an MCP server?
No MCP server is needed. The skill communicates via the Flue CLI bridge and indesign_bridge.py, which requires pip install flue && flue setup.
Source text
SKILL.md · MIT
--- name: InDesign description: Control Adobe InDesign from the shell via Flue - ExtendScript bridges without an MCP server. --- This skill lets a coding agent operate **Adobe InDesign** on the desktop through [Flue](https://github.com/SFKislev/flue), a local shell-to-application bridge. The agent pipes ExtendScript into `indesign_bridge.py` and gets structured JSON back. > agent shell -> `indesign_bridge.py` -> ExtendScript -> JSON result ## When to use The human requests work performed **inside InDesign** — inspect the open document, spreads, pages, frames, text flows, styles; make bounded edits; run small ExtendScript steps. A CLI agent cannot act inside InDesign without a bridge like Flue. ## How to proceed 1. **Read `FLUE.md` in this directory first.** It explains how Flue works, the bridge contract, a worked ExtendScript example, and safety expectations. 2. **If Flue is installed:** also read `C:\Users\fredd\.claude\skills\flue\SKILL.md` and `adapters/indesign_adapter/APP.md` for the operational contract, then work from there. 3. **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. ## Other apps Flue also supports Photoshop, Illustrator, Premiere, After Effects, Audition, Blender, Houdini, 3ds Max, Unity, and Microsoft Office through the same stdin/stdout contract. One install covers all adapters. ## Safety Flue 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.
© SFKislev · MIT · SFKislev/Flue