Update adapter documentation for macOS compatibility

- Change code blocks from PowerShell to Bash for macOS examples across all adapters.
- Add macOS-specific instructions for running context scripts in the documentation of each adapter.
- Update session file paths to reflect user-scoped locations for both Windows and macOS.
- Enhance overall clarity and consistency in the documentation for better user experience.
This commit is contained in:
SFKislev
2026-04-26 13:24:23 +03:00
parent a0851b3c46
commit 5e6cfc0dce
11 changed files with 141 additions and 33 deletions
+16 -3
View File
@@ -2,7 +2,7 @@
Bridge:
```powershell
```bash
python adapters/after_effects_adapter/after_effects_bridge.py --stdin
```
@@ -11,10 +11,18 @@ Effects ExtendScript.
Context:
Windows:
```powershell
Get-Content adapters/after_effects_adapter/examples/context.jsx -Raw | python adapters/after_effects_adapter/after_effects_bridge.py --stdin
```
macOS:
```bash
cat adapters/after_effects_adapter/examples/context.jsx | python adapters/after_effects_adapter/after_effects_bridge.py --stdin
```
## Local Memory
If `APP.local.md` exists in this directory, review it before performing an
@@ -59,14 +67,19 @@ panel:
powershell -ExecutionPolicy Bypass -File adapters/after_effects_adapter/install_cep_bridge.ps1
```
On macOS, follow the manual CEP install steps in
`adapters/after_effects_adapter/README.md`.
Restart After Effects after reinstalling.
After Effects-specific notes:
- This adapter uses a CEP panel rather than a COM automation bridge.
- The CEP panel generates a random token on startup and writes it with the eval
URL to `%APPDATA%\creative-adapters\after_effects.json`. The Python bridge
reads this file automatically and sends `X-Bridge-Token`.
URL to a user-scoped session file:
`%APPDATA%\creative-adapters\after_effects.json` on Windows or
`~/creative-adapters/after_effects.json` on macOS. The Python bridge reads
this file automatically and sends `X-Bridge-Token`.
- The manifest uses `AutoVisible`, and the panel attempts
`app.setExtensionPersistent(...)`. The panel may auto-open in later sessions.
If it does not, instruct the user to open
+15 -3
View File
@@ -2,7 +2,7 @@
Bridge:
```powershell
```bash
python adapters/audition_adapter/audition_bridge.py --stdin
```
@@ -11,10 +11,18 @@ ExtendScript.
Context:
Windows:
```powershell
Get-Content adapters/audition_adapter/examples/context.jsx -Raw | python adapters/audition_adapter/audition_bridge.py --stdin
```
macOS:
```bash
cat adapters/audition_adapter/examples/context.jsx | python adapters/audition_adapter/audition_bridge.py --stdin
```
## Local Memory
If `APP.local.md` exists in this directory, review it before performing an
@@ -59,6 +67,9 @@ panel:
powershell -ExecutionPolicy Bypass -File adapters/audition_adapter/install_cep_bridge.ps1
```
On macOS, follow the manual CEP install steps in
`adapters/audition_adapter/README.md`.
Restart Audition after reinstalling.
Audition-specific notes:
@@ -68,8 +79,9 @@ Audition-specific notes:
ExtendScript to communicate with Audition.
- Adobe's CEP samples use Audition host ID `AUDT`.
- The CEP panel generates a random token on startup and writes it with the eval
URL to `%APPDATA%\creative-adapters\audition.json`. The Python bridge reads
this file automatically and sends `X-Bridge-Token`.
URL to a user-scoped session file: `%APPDATA%\creative-adapters\audition.json`
on Windows or `~/creative-adapters/audition.json` on macOS. The Python bridge
reads this file automatically and sends `X-Bridge-Token`.
- Do not save, export, mix down, batch process, relink media, close sessions, or
overwrite audio files unless the user explicitly asks.
- Grep-friendly API index: `docs/api-index.txt` (records are prefixed with
+14 -5
View File
@@ -2,7 +2,7 @@
Bridge:
```powershell
```bash
python adapters/blender_adapter/blender_bridge.py --stdin
```
@@ -11,10 +11,18 @@ Blender's main thread.
Context:
Windows:
```powershell
Get-Content adapters/blender_adapter/examples/context.py -Raw | python adapters/blender_adapter/blender_bridge.py --stdin
```
macOS:
```bash
cat adapters/blender_adapter/examples/context.py | python adapters/blender_adapter/blender_bridge.py --stdin
```
## Local Memory
If `APP.local.md` exists in this directory, review it before performing an
@@ -55,16 +63,17 @@ If the addon is missing, install it:
powershell -ExecutionPolicy Bypass -File adapters/blender_adapter/install_addon.ps1
```
Then restart Blender or use `Edit > Preferences > Add-ons` to enable
`Creative Adapter Bridge`.
On macOS, install `adapters/blender_adapter/addon/creative_adapter_bridge.py`
through Blender's add-on installer, then enable `Creative Adapter Bridge`.
Blender-specific notes:
- Blender has no out-of-process `bpy`; Python runs inside Blender. This adapter
therefore installs an in-process addon.
- The addon generates a random token on startup and writes it with the eval URL
to `%APPDATA%\creative-adapters\blender.json`. The Python bridge reads this
file automatically and sends `X-Bridge-Token`.
to a user-scoped session file: `%APPDATA%\creative-adapters\blender.json` on
Windows or `~/creative-adapters/blender.json` on macOS. The Python bridge
reads this file automatically and sends `X-Bridge-Token`.
- Scripts run in a persistent namespace with `bpy` already imported. Set
`_result` in the script to return structured data.
- For user-visible edits, include an undo label and call
+9 -1
View File
@@ -2,7 +2,7 @@
Bridge:
```powershell
```bash
python adapters/houdini_adapter/houdini_bridge.py --stdin
```
@@ -11,10 +11,18 @@ localhost eval endpoint -> Houdini Object Model (`hou`).
Context:
Windows:
```powershell
Get-Content adapters/houdini_adapter/examples/context.py -Raw | python adapters/houdini_adapter/houdini_bridge.py --stdin
```
macOS:
```bash
cat adapters/houdini_adapter/examples/context.py | python adapters/houdini_adapter/houdini_bridge.py --stdin
```
## Local Memory
If `APP.local.md` exists in this directory, review it before performing an
+15 -4
View File
@@ -2,18 +2,29 @@
Bridge:
```powershell
```bash
python adapters/illustrator_adapter/illustrator_bridge.py --stdin
```
Runtime: COM `Illustrator.Application` -> `DoJavaScript`.
Runtime:
- Windows: COM `Illustrator.Application` -> `DoJavaScript`.
- macOS: AppleScript `do javascript`.
Context:
Windows:
```powershell
Get-Content adapters/illustrator_adapter/examples/context.jsx -Raw | python adapters/illustrator_adapter/illustrator_bridge.py --stdin
```
macOS:
```bash
cat adapters/illustrator_adapter/examples/context.jsx | python adapters/illustrator_adapter/illustrator_bridge.py --stdin
```
## Local Memory
If `APP.local.md` exists in this directory, review it before performing an
@@ -42,8 +53,8 @@ API lookup workflow:
Connection recovery:
If the bridge cannot connect, ask the user to open Illustrator and retry the
context command. This adapter connects to the running COM application by
default; do not launch Illustrator unless the user explicitly asks.
context command. This adapter connects to the running app by default; do not
launch Illustrator unless the user explicitly asks.
Illustrator-specific notes:
+15 -4
View File
@@ -2,18 +2,29 @@
Bridge:
```powershell
```bash
python adapters/indesign_adapter/indesign_bridge.py --stdin
```
Runtime: COM `InDesign.Application` -> `DoScript(JavaScript)`.
Runtime:
- Windows: COM `InDesign.Application` -> `DoScript(JavaScript)`.
- macOS: AppleScript `do script ... language JavaScript`.
Context:
Windows:
```powershell
Get-Content adapters/indesign_adapter/examples/context.jsx -Raw | python adapters/indesign_adapter/indesign_bridge.py --stdin
```
macOS:
```bash
cat adapters/indesign_adapter/examples/context.jsx | python adapters/indesign_adapter/indesign_bridge.py --stdin
```
## Local Memory
If `APP.local.md` exists in this directory, review it before performing an
@@ -42,8 +53,8 @@ API lookup workflow:
Connection recovery:
If the bridge cannot connect, ask the user to open InDesign and retry the
context command. This adapter connects to the running COM application by
default; do not launch InDesign unless the user explicitly asks.
context command. This adapter connects to the running app by default; do not
launch InDesign unless the user explicitly asks.
InDesign-specific notes:
+15 -4
View File
@@ -2,18 +2,29 @@
Bridge:
```powershell
```bash
python adapters/photoshop_adapter/photoshop_bridge.py --stdin
```
Runtime: COM `Photoshop.Application` -> `DoJavaScript`.
Runtime:
- Windows: COM `Photoshop.Application` -> `DoJavaScript`.
- macOS: AppleScript `do javascript`.
Context:
Windows:
```powershell
Get-Content adapters/photoshop_adapter/examples/context.jsx -Raw | python adapters/photoshop_adapter/photoshop_bridge.py --stdin
```
macOS:
```bash
cat adapters/photoshop_adapter/examples/context.jsx | python adapters/photoshop_adapter/photoshop_bridge.py --stdin
```
## Local Memory
If `APP.local.md` exists in this directory, review it before performing an
@@ -42,8 +53,8 @@ API lookup workflow:
Connection recovery:
If the bridge cannot connect, ask the user to open Photoshop and retry the
context command. This adapter connects to the running COM application by
default; do not launch Photoshop unless the user explicitly asks.
context command. This adapter connects to the running app by default; do not
launch Photoshop unless the user explicitly asks.
Photoshop-specific notes:
+18 -5
View File
@@ -2,7 +2,7 @@
Bridge:
```powershell
```bash
python adapters/premiere_adapter/premiere_bridge.py --stdin
```
@@ -11,10 +11,18 @@ Premiere Pro ExtendScript.
Context:
Windows:
```powershell
Get-Content adapters/premiere_adapter/examples/context.jsx -Raw | python adapters/premiere_adapter/premiere_bridge.py --stdin
```
macOS:
```bash
cat adapters/premiere_adapter/examples/context.jsx | python adapters/premiere_adapter/premiere_bridge.py --stdin
```
## Local Memory
If `APP.local.md` exists in this directory, review it before performing an
@@ -48,8 +56,8 @@ panel is not running in Premiere or the session file points at an old panel
session.
If it says the session file is missing, the fix is the same: open the CEP panel
so it can write `%APPDATA%\creative-adapters\premiere.json`. Do not ask the user
to create or copy the token manually.
so it can write the session file. Do not ask the user to create or copy the
token manually.
Ask the user to:
@@ -67,6 +75,10 @@ panel:
powershell -ExecutionPolicy Bypass -File adapters/premiere_adapter/install_cep_bridge.ps1
```
On macOS, follow the manual CEP install steps in
`adapters/premiere_adapter/README.md`. Premiere Pro 26+ on macOS does not load
CEP panels; see `docs/known-issues.md`.
Restart Premiere after reinstalling.
Premiere-specific notes:
@@ -80,8 +92,9 @@ Premiere-specific notes:
`Window > Extensions > Creative Adapter Bridge`; do not ask them to manage
ports or tokens.
- The CEP panel generates a random token on startup and writes it with the eval
URL to `%APPDATA%\creative-adapters\premiere.json`. The Python bridge reads
this file automatically and sends `X-Bridge-Token`.
URL to a user-scoped session file: `%APPDATA%\creative-adapters\premiere.json`
on Windows or `~/creative-adapters/premiere.json` on macOS. The Python bridge
reads this file automatically and sends `X-Bridge-Token`.
- The panel calls `app.setExtensionPersistent("com.creativeadapters.premiere.panel", 1)`
when loaded. This keeps it in memory during the current Premiere session, but
does not guarantee automatic opening after a full app restart.
+13 -3
View File
@@ -2,7 +2,7 @@
Bridge:
```powershell
```bash
python adapters/unity_adapter/unity_bridge.py --stdin
```
@@ -11,10 +11,18 @@ Runtime: Unity Editor package -> tokenized localhost command endpoint ->
Context:
Windows:
```powershell
Get-Content adapters/unity_adapter/examples/context.json -Raw | python adapters/unity_adapter/unity_bridge.py --stdin
```
macOS:
```bash
cat adapters/unity_adapter/examples/context.json | python adapters/unity_adapter/unity_bridge.py --stdin
```
## Local Memory
If `APP.local.md` exists in this directory, review it before performing an
@@ -59,8 +67,10 @@ Unity-specific notes:
- For deeper project-specific behavior, add explicit actions to the package or
create project-local Editor scripts. Do not pretend arbitrary C# was executed.
- The package generates a random token on Editor startup and writes it with the
eval URL to `%APPDATA%\creative-adapters\unity.json`. The Python bridge reads
this file automatically and sends `X-Bridge-Token`.
eval URL to a user-scoped session file:
`%APPDATA%\creative-adapters\unity.json` on Windows or
`~/creative-adapters/unity.json` on macOS. The Python bridge reads this file
automatically and sends `X-Bridge-Token`.
- Commands run on Unity's main Editor thread.
- Do not enter/exit Play Mode, save scenes, build, import large assets, edit
project settings, or change scenes unless explicitly asked.
+2
View File
@@ -14,8 +14,10 @@ authors = [
maintainers = []
classifiers = [
"Development Status :: 3 - Alpha",
"Environment :: MacOS X",
"Environment :: Win32 (MS Windows)",
"Intended Audience :: Developers",
"Operating System :: MacOS :: MacOS X",
"Operating System :: Microsoft :: Windows",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3 :: Only",
+9 -1
View File
@@ -12,8 +12,16 @@ All bridge scripts:
Run context first:
Windows:
```powershell
Get-Content adapters/<app>_adapter/examples/context.<jsx|py> -Raw | python adapters/<app>_adapter/<app>_bridge.py --stdin
Get-Content adapters/<app>_adapter/examples/context.<jsx|py|json> -Raw | python adapters/<app>_adapter/<app>_bridge.py --stdin
```
macOS/Linux shell:
```bash
cat adapters/<app>_adapter/examples/context.<jsx|py|json> | python adapters/<app>_adapter/<app>_bridge.py --stdin
```
For non-trivial scripts, prefer stdin over command-line quoting.