In 2025, what isn't possible with UXP scripting compared to old school ExtendScript (ECMA Script 3) scripting?

Hi.

I’ve just come across this UXP scripting, which seems to be the new way of writing scripts or plugins for Photoshop.

I have almost no experience with writing scripts for Photoshop, but we have an old script written in ExtendScript, similar to one of the scripts that come with Photoshop, which, in my case, can be found at /Applications/Adobe Photoshop 2024/Presets/Scripts/, which could be written using new JavaScript and UXP in order to take benefit from the new JavaScript features (like consts, let, classes, etc.), which would improve the code.

From what I’ve been reading, apparently, UXP still doesn’t support all features that ExtendScript supports, but I don’t know what the missing features are. What are they? For example, is it possible to rewrite the scripts at /Applications/Adobe Photoshop 2024/Presets/Scripts/ using the new UXP approach? Has anyone tried to do this?

If UXP is the future and it’s been around for a while, then why doesn’t the 2024 Photoshop application come with UXP scripts and instead still comes with old scripts? I’ve looked at some repositories and they have not been updated for a couple of years, which is a bit worrying.

I also was looking at the samples GitHub - AdobeDocs/uxp-photoshop-plugin-samples: UXP Plugin samples for Photoshop 22 and higher., but it’s still unclear what can’t be done with UXP scripting that can be done with old school scripting in JS (ECMA script 3).

Finally, I’d like to ask about something that is written in the documentation.

Scripts can be executed in a headless manner or with minimal UI, without the need for any manifest setup.

Does this mean that it’s possible to execute scripts that act on .psd files without opening the Photoshop app? So, could these scripts run in a CI pipeline? If yes, can you provide an example, if there’s? If not, then what does it mean to be headless? Ideally, our script should be run in a headless manner maybe in the cloud, so that’s why I’m asking this.

I’m not very good at UXP, but I’m working hard to learn how to use it. UXP has been out for a few years and, unfortunately, it still isn’t comparable to ExtendScript. That’s why, even with the latest version of Photoshop 2025, you’re still using JSX files. Adobe has not yet converted its scripts to JSX. From what I know, UXP cannot work headless; but we are waiting for the more experts to answer this question. A personal reflection: One problem I encounter is that every time a new version of Photoshop comes out, some UXP panels cause problems. This is really frustrating and wastes a lot of time troubleshooting. This makes me think that we are still far from having a stable system for UXP.

It would improve so much our lives if

  1. we could run scripts on PSD files without opening Photoshop, so that we could run them in headless manner in the cloud or in a pipeline, as we have some repetitive intensive tasks that can take hours and right now we have to manually do a lot of things and use our own computers

  2. we could use modern JavaScript. The old JavaScript was really bad compared to say ES6.

It’s sad that UXP is not really alive. I think we can’t really invest on migrating our script to UXP if the UXP future is uncertain.