Command Console III is ready for testing: a console for ExtendScript and UXP inside InDesign
My Command Console III plugin for InDesign is now ready for testing.
It’s fitting that I announce it here first, as this is where it all started: the very first script I shared with the community, on the old InDesign scripting forum, was a primitive, ScriptUI dialog-based version of it: https://community.adobe.com/questions-671/indesign-command-box-859385. A version of this tool has been my constant companion throughout my scripting career, and this is its newest iteration.
A few more details in the YouTube video:
So, what is it? A developer tool running directly in InDesign as a UXP panel, offering a REPL-like environment where you can quickly test and inspect your script snippets live, with full history and all the conveniences you would expect from a modern developer tool.
You type a bit of ExtendScript or UXP, hit Enter, and the answer comes back in the panel, complex results as a tree you can click open. On ExtendScript, modern JavaScript works, it’s translated down to ES3 with Babel and polyfilled, so something like this runs as it is:
app.activeDocument.textFrames.everyItem().getElements().filter(
f => f.contents === "" && f.label === "X"
)
On UXP you also get smart top-level await support (a small toast notification letting you know you might be missing the await), plus expansion of some of the UXP objects like FileSystemProvider Entries.
The second big feature is the Inspector tab: the entire scripting reference is read from your own InDesign installation, so the classes and DOM additions of installed third-party plugins are available. A property shows what it returns and what it accepts separately (fillColor returns a Swatch, but takes a swatch name as well), and if a result in the console contains a native InDesign object or an enum, clicking on it opens its page. Enums are named by the enumeration you read them from, and when the console can’t tell (NONE alone is in 40 of them), it says it’s guessing.
There’s also a brand new part: it can let an AI agent (Claude Code or any other MCP client) run code through the panel, to test, debug or just plainly drive InDesign. That’s off by default, and until I see it in other people’s hands, I prefer not to say more about it.
So far I’ve only tested it on Windows, so if you script InDesign on a Mac, I’d very much like to hear from you. In UXP nothing is kept between commands, and only a single expression echoes its value, otherwise return it. The testers’ notes have the rest of the known issues.
It’s free, and will be open-sourced after the beta.
Sign up here: https://tally.so/r/o9be2x, and the page after the form gives you the folder with the build, the testers’ notes and the user guide.
Bugs, ideas and feedback go here: https://tally.so/r/aOQ5Bv
Vlad
