@alisaitteke/photoshop-mcp 1.7.33 → 1.7.35
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +1 -1
- package/README.md +2 -2
- package/dist/core/ping-engine.d.ts.map +1 -1
- package/dist/core/ping-engine.js +8 -5
- package/dist/core/ping-engine.js.map +1 -1
- package/dist/core/tool-annotations.d.ts.map +1 -1
- package/dist/core/tool-annotations.js +1 -0
- package/dist/core/tool-annotations.js.map +1 -1
- package/dist/errors/envelope.d.ts +1 -1
- package/dist/errors/envelope.d.ts.map +1 -1
- package/dist/errors/envelope.js +30 -0
- package/dist/errors/envelope.js.map +1 -1
- package/dist/feedback/nudge.d.ts +4 -0
- package/dist/feedback/nudge.d.ts.map +1 -1
- package/dist/feedback/nudge.js +11 -0
- package/dist/feedback/nudge.js.map +1 -1
- package/dist/platform/connection.d.ts +4 -5
- package/dist/platform/connection.d.ts.map +1 -1
- package/dist/platform/connection.js +10 -9
- package/dist/platform/connection.js.map +1 -1
- package/dist/platform/macos-app.d.ts +41 -0
- package/dist/platform/macos-app.d.ts.map +1 -0
- package/dist/platform/macos-app.js +71 -0
- package/dist/platform/macos-app.js.map +1 -0
- package/dist/platform/macos-detector.d.ts.map +1 -1
- package/dist/platform/macos-detector.js +6 -13
- package/dist/platform/macos-detector.js.map +1 -1
- package/dist/platform/macos-executor.d.ts +5 -2
- package/dist/platform/macos-executor.d.ts.map +1 -1
- package/dist/platform/macos-executor.js +17 -18
- package/dist/platform/macos-executor.js.map +1 -1
- package/dist/prompts/registry.d.ts +1 -1
- package/dist/prompts/registry.d.ts.map +1 -1
- package/dist/prompts/registry.js +2 -0
- package/dist/prompts/registry.js.map +1 -1
- package/dist/prompts/templates/sticker-outline.d.ts +3 -0
- package/dist/prompts/templates/sticker-outline.d.ts.map +1 -0
- package/dist/prompts/templates/sticker-outline.js +39 -0
- package/dist/prompts/templates/sticker-outline.js.map +1 -0
- package/dist/tools/recipes/index.d.ts +1 -1
- package/dist/tools/recipes/index.d.ts.map +1 -1
- package/dist/tools/recipes/index.js +3 -0
- package/dist/tools/recipes/index.js.map +1 -1
- package/dist/tools/recipes/sticker-outline.d.ts +4 -0
- package/dist/tools/recipes/sticker-outline.d.ts.map +1 -0
- package/dist/tools/recipes/sticker-outline.js +366 -0
- package/dist/tools/recipes/sticker-outline.js.map +1 -0
- package/dist/tools/session-tools.js +1 -1
- package/dist/tools/session-tools.js.map +1 -1
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +19 -1
- package/dist/utils/logger.js.map +1 -1
- package/package.json +6 -3
package/AGENTS.md
CHANGED
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
|
|
16
16
|
**Prerequisites:** Photoshop running on Windows or macOS, Node.js 18+. This is unofficial and not affiliated with Adobe.
|
|
17
17
|
|
|
18
|
-
**Tool surface:**
|
|
18
|
+
**Tool surface:** 128 MCP tools — 111 atomic `photoshop_*` + 17 recipe `photoshop_recipe_*`; 24 MCP prompt templates (`ps.*`).
|
|
19
19
|
|
|
20
20
|
## Architecture (agent view)
|
|
21
21
|
|
package/README.md
CHANGED
|
@@ -64,7 +64,7 @@ Routes, thresholds and the off switch:
|
|
|
64
64
|
- 🎨 **Color grade & more** — film looks, sky replacement, generative fill (Adobe account required)
|
|
65
65
|
- ⏪ **Stay safe** — every multi-step "recipe" is a single undo step in Photoshop
|
|
66
66
|
|
|
67
|
-
Under the hood:
|
|
67
|
+
Under the hood: 128 tools (111 atomic + 17 one-step recipes) — full list in
|
|
68
68
|
[`docs/available-tools.md`](docs/available-tools.md).
|
|
69
69
|
|
|
70
70
|
## Try saying
|
|
@@ -153,7 +153,7 @@ next. Common fixes: [`docs/troubleshooting.md`](docs/troubleshooting.md).
|
|
|
153
153
|
|
|
154
154
|
## Documentation
|
|
155
155
|
|
|
156
|
-
- [Available tools](docs/available-tools.md) — all
|
|
156
|
+
- [Available tools](docs/available-tools.md) — all 128 tools with parameters
|
|
157
157
|
- [Standalone UI](docs/standalone-ui.md) — providers, auth modes, Action Plan, security
|
|
158
158
|
- [Prompt layer](docs/prompt-layer.md) — prompt templates and recipes
|
|
159
159
|
- [Architecture](docs/architecture.md) — how the bridge works under the hood
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ping-engine.d.ts","sourceRoot":"","sources":["../../src/core/ping-engine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"ping-engine.d.ts","sourceRoot":"","sources":["../../src/core/ping-engine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAQzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAGhE;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,iCAAiC,CAAC;AAKhE,wBAAsB,oBAAoB,CACxC,UAAU,EAAE,mBAAmB,GAC9B,OAAO,CAAC,cAAc,CAAC,CAczB"}
|
package/dist/core/ping-engine.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { PhotoshopAPIFactory } from '../api/photoshop-api.js';
|
|
2
|
-
import { buildPingToolResult } from '../feedback/nudge.js';
|
|
2
|
+
import { buildPingFailureResult, buildPingToolResult, PING_NOT_FOUND_REASON, PING_NOT_RUNNING_REASON, } from '../feedback/nudge.js';
|
|
3
3
|
import { DEFAULT_SCRIPT_TIMEOUT_MS } from '../platform/script-timeout.js';
|
|
4
4
|
/**
|
|
5
5
|
* Tiny read. Success means Photoshop accepted and finished a script on the
|
|
@@ -7,11 +7,12 @@ import { DEFAULT_SCRIPT_TIMEOUT_MS } from '../platform/script-timeout.js';
|
|
|
7
7
|
* so a busy engine fails here instead of inside get_state / get_layers.
|
|
8
8
|
*/
|
|
9
9
|
export const PING_PROBE_SCRIPT = 'return app.documents.length;';
|
|
10
|
-
const
|
|
10
|
+
const NOT_RUNNING = /photoshop is not running/i;
|
|
11
|
+
const NOT_FOUND = /photoshop not found|photoshop info not available/i;
|
|
11
12
|
export async function probePhotoshopEngine(connection) {
|
|
12
13
|
const installed = await connection.ping();
|
|
13
14
|
if (!installed)
|
|
14
|
-
return
|
|
15
|
+
return buildPingFailureResult(PING_NOT_FOUND_REASON);
|
|
15
16
|
try {
|
|
16
17
|
const api = await new PhotoshopAPIFactory(connection).createAPI();
|
|
17
18
|
await api.executeScript(PING_PROBE_SCRIPT, DEFAULT_SCRIPT_TIMEOUT_MS, { launch: false });
|
|
@@ -19,8 +20,10 @@ export async function probePhotoshopEngine(connection) {
|
|
|
19
20
|
}
|
|
20
21
|
catch (error) {
|
|
21
22
|
const message = error instanceof Error ? error.message : String(error);
|
|
22
|
-
if (
|
|
23
|
-
return
|
|
23
|
+
if (NOT_RUNNING.test(message))
|
|
24
|
+
return buildPingFailureResult(PING_NOT_RUNNING_REASON);
|
|
25
|
+
if (NOT_FOUND.test(message))
|
|
26
|
+
return buildPingFailureResult(PING_NOT_FOUND_REASON);
|
|
24
27
|
throw error;
|
|
25
28
|
}
|
|
26
29
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ping-engine.js","sourceRoot":"","sources":["../../src/core/ping-engine.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,
|
|
1
|
+
{"version":3,"file":"ping-engine.js","sourceRoot":"","sources":["../../src/core/ping-engine.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAE1E;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,8BAA8B,CAAC;AAEhE,MAAM,WAAW,GAAG,2BAA2B,CAAC;AAChD,MAAM,SAAS,GAAG,mDAAmD,CAAC;AAEtE,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,UAA+B;IAE/B,MAAM,SAAS,GAAG,MAAM,UAAU,CAAC,IAAI,EAAE,CAAC;IAC1C,IAAI,CAAC,SAAS;QAAE,OAAO,sBAAsB,CAAC,qBAAqB,CAAC,CAAC;IAErE,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,IAAI,mBAAmB,CAAC,UAAU,CAAC,CAAC,SAAS,EAAE,CAAC;QAClE,MAAM,GAAG,CAAC,aAAa,CAAC,iBAAiB,EAAE,yBAAyB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;QACzF,OAAO,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,IAAI,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,OAAO,sBAAsB,CAAC,uBAAuB,CAAC,CAAC;QACtF,IAAI,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,OAAO,sBAAsB,CAAC,qBAAqB,CAAC,CAAC;QAClF,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-annotations.d.ts","sourceRoot":"","sources":["../../src/core/tool-annotations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAEhF;;;;;;GAMG;AACH,MAAM,MAAM,wBAAwB,GAAG,QAAQ,CAC7C,IAAI,CAAC,eAAe,EAAE,cAAc,GAAG,iBAAiB,GAAG,gBAAgB,GAAG,eAAe,CAAC,CAC/F,CAAC;AAkBF,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,wBAAwB,
|
|
1
|
+
{"version":3,"file":"tool-annotations.d.ts","sourceRoot":"","sources":["../../src/core/tool-annotations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAEhF;;;;;;GAMG;AACH,MAAM,MAAM,wBAAwB,GAAG,QAAQ,CAC7C,IAAI,CAAC,eAAe,EAAE,cAAc,GAAG,iBAAiB,GAAG,gBAAgB,GAAG,eAAe,CAAC,CAC/F,CAAC;AAkBF,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,wBAAwB,CAqJrE,CAAC;AAEF,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CASpD"}
|
|
@@ -135,6 +135,7 @@ export const TOOL_ANNOTATIONS = {
|
|
|
135
135
|
photoshop_recipe_batch_watermark: edit(false),
|
|
136
136
|
photoshop_recipe_passport_photo: edit(false),
|
|
137
137
|
photoshop_recipe_csv_to_cards: edit(false),
|
|
138
|
+
photoshop_recipe_sticker_outline: edit(true),
|
|
138
139
|
};
|
|
139
140
|
export function withToolAnnotations(tool) {
|
|
140
141
|
const annotations = TOOL_ANNOTATIONS[tool.name];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-annotations.js","sourceRoot":"","sources":["../../src/core/tool-annotations.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"tool-annotations.js","sourceRoot":"","sources":["../../src/core/tool-annotations.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { CallToolResult } from '@modelcontextprotocol/sdk/types.js';
|
|
2
2
|
import type { ToolHandler } from '../core/tool-registry.js';
|
|
3
|
-
export type PhotoshopErrorCode = 'no_active_document' | 'no_active_layer' | 'layer_not_found' | 'document_not_found' | 'ambiguous_name' | 'invalid_arguments' | 'selection_required' | 'version_unsupported' | 'generative_unavailable' | 'generative_timeout' | 'extendscript_timeout' | 'scratch_disk_full' | 'artboard_not_found' | 'generative_credits_exhausted' | 'generative_no_selection' | 'uxp_bridge_unavailable' | 'extendscript_runtime_error' | 'file_not_found' | 'font_not_found' | 'not_text_layer' | 'unsupported_color_mode' | 'no_base_layer_below' | 'not_clipping' | 'unknown';
|
|
3
|
+
export type PhotoshopErrorCode = 'no_active_document' | 'no_active_layer' | 'layer_not_found' | 'document_not_found' | 'ambiguous_name' | 'invalid_arguments' | 'selection_required' | 'version_unsupported' | 'generative_unavailable' | 'generative_timeout' | 'extendscript_timeout' | 'scratch_disk_full' | 'artboard_not_found' | 'generative_credits_exhausted' | 'generative_no_selection' | 'uxp_bridge_unavailable' | 'extendscript_runtime_error' | 'file_not_found' | 'font_not_found' | 'not_text_layer' | 'unsupported_color_mode' | 'no_base_layer_below' | 'not_clipping' | 'photoshop_unreachable' | 'automation_permission_denied' | 'photoshop_app_not_resolved' | 'unknown';
|
|
4
4
|
export interface PhotoshopErrorEnvelope {
|
|
5
5
|
ok: false;
|
|
6
6
|
code: PhotoshopErrorCode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"envelope.d.ts","sourceRoot":"","sources":["../../src/errors/envelope.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAEzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAI5D,MAAM,MAAM,kBAAkB,GAC1B,oBAAoB,GACpB,iBAAiB,GACjB,iBAAiB,GACjB,oBAAoB,GACpB,gBAAgB,GAChB,mBAAmB,GACnB,oBAAoB,GACpB,qBAAqB,GACrB,wBAAwB,GACxB,oBAAoB,GACpB,sBAAsB,GACtB,mBAAmB,GACnB,oBAAoB,GACpB,8BAA8B,GAC9B,yBAAyB,GACzB,wBAAwB,GACxB,4BAA4B,GAC5B,gBAAgB,GAChB,gBAAgB,GAChB,gBAAgB,GAChB,wBAAwB,GACxB,qBAAqB,GACrB,cAAc,GACd,SAAS,CAAC;AAEd,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,KAAK,CAAC;IACV,IAAI,EAAE,kBAAkB,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1C;AAiCD;;;GAGG;AACH,eAAO,MAAM,wBAAwB,QAA0B,CAAC;AAmBhE,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,sBAAsB,CAM9E;AAED,6EAA6E;AAC7E,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,sBAAsB,GAAG,IAAI,CAMlG;
|
|
1
|
+
{"version":3,"file":"envelope.d.ts","sourceRoot":"","sources":["../../src/errors/envelope.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAEzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAI5D,MAAM,MAAM,kBAAkB,GAC1B,oBAAoB,GACpB,iBAAiB,GACjB,iBAAiB,GACjB,oBAAoB,GACpB,gBAAgB,GAChB,mBAAmB,GACnB,oBAAoB,GACpB,qBAAqB,GACrB,wBAAwB,GACxB,oBAAoB,GACpB,sBAAsB,GACtB,mBAAmB,GACnB,oBAAoB,GACpB,8BAA8B,GAC9B,yBAAyB,GACzB,wBAAwB,GACxB,4BAA4B,GAC5B,gBAAgB,GAChB,gBAAgB,GAChB,gBAAgB,GAChB,wBAAwB,GACxB,qBAAqB,GACrB,cAAc,GACd,uBAAuB,GACvB,8BAA8B,GAC9B,4BAA4B,GAC5B,SAAS,CAAC;AAEd,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,KAAK,CAAC;IACV,IAAI,EAAE,kBAAkB,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1C;AAiCD;;;GAGG;AACH,eAAO,MAAM,wBAAwB,QAA0B,CAAC;AAmBhE,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,sBAAsB,CAM9E;AAED,6EAA6E;AAC7E,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,sBAAsB,GAAG,IAAI,CAMlG;AAiCD,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,sBAAsB,CAoCrE;AAKD;;;;GAIG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,sBAAsB,GAC/B,sBAAsB,CAsBxB;AAmBD,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,sBAAsB,GAAG,cAAc,CAKrF;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,cAAc,GAAG,cAAc,CAqBxE;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,GAAG,cAAc,CAGrE;AAyBD;;;;GAIG;AACH,wBAAsB,yBAAyB,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,CAmB/F;AAED,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,WAAW,CA6BnF"}
|
package/dist/errors/envelope.js
CHANGED
|
@@ -59,6 +59,31 @@ export function diagnoseScratchDiskTimeout(freeBytes) {
|
|
|
59
59
|
const freeGb = (freeBytes / (1024 * 1024 * 1024)).toFixed(1);
|
|
60
60
|
return scratchDiskFullEnvelope(`Scripting timed out. The OS drive, Photoshop's default scratch disk, has ${freeGb} GB free, below the 10 GB minimum.`);
|
|
61
61
|
}
|
|
62
|
+
/**
|
|
63
|
+
* macOS osascript failures. Matched on the numeric AppleEvent / Launch Services
|
|
64
|
+
* code in parentheses, which stays the same when macOS localizes the message.
|
|
65
|
+
* The raw osascript text is kept in the message so the cause is not lost (#72).
|
|
66
|
+
*/
|
|
67
|
+
const APPLE_EVENT_ERRORS = [
|
|
68
|
+
{
|
|
69
|
+
pattern: /\(-1743\)/,
|
|
70
|
+
code: 'automation_permission_denied',
|
|
71
|
+
hint: 'macOS blocked Apple events to Photoshop. Open System Settings > Privacy & Security > Automation, allow the app that runs this MCP server (for example Claude, Cursor or Terminal) to control Adobe Photoshop, then call photoshop_ping.',
|
|
72
|
+
suggested_next_tool: 'photoshop_ping',
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
pattern: /\((?:-600|-609|-10810|-10822|-10827)\)/,
|
|
76
|
+
code: 'photoshop_unreachable',
|
|
77
|
+
hint: 'Apple events could not reach Photoshop. Make sure Photoshop is open in the same macOS user session as this MCP server. If the server runs inside a sandbox (an agent sandbox, a Seatbelt profile or a container), allow it to send Apple events or run it outside the sandbox.',
|
|
78
|
+
suggested_next_tool: 'photoshop_ping',
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
pattern: /\((?:-1728|-2741|-10814)\)/,
|
|
82
|
+
code: 'photoshop_app_not_resolved',
|
|
83
|
+
hint: 'AppleScript could not resolve the Photoshop application. Set PHOTOSHOP_PATH to the full .app path, for example "/Applications/Adobe Photoshop 2026/Adobe Photoshop 2026.app", then restart the MCP server.',
|
|
84
|
+
suggested_next_tool: 'photoshop_get_capabilities',
|
|
85
|
+
},
|
|
86
|
+
];
|
|
62
87
|
export function classifyError(message) {
|
|
63
88
|
if (SCRATCH_DISK_FULL_PATTERN.test(message)) {
|
|
64
89
|
return scratchDiskFullEnvelope(message);
|
|
@@ -71,6 +96,11 @@ export function classifyError(message) {
|
|
|
71
96
|
suggested_next_tool: 'photoshop_list_fonts',
|
|
72
97
|
};
|
|
73
98
|
}
|
|
99
|
+
for (const { pattern, code, hint, suggested_next_tool } of APPLE_EVENT_ERRORS) {
|
|
100
|
+
if (pattern.test(message)) {
|
|
101
|
+
return { ok: false, code, message: `${message.trim()} ${hint}`, suggested_next_tool };
|
|
102
|
+
}
|
|
103
|
+
}
|
|
74
104
|
for (const { pattern, code, suggested_next_tool } of ERROR_PATTERNS) {
|
|
75
105
|
if (pattern.test(message)) {
|
|
76
106
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"envelope.js","sourceRoot":"","sources":["../../src/errors/envelope.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAEhE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"envelope.js","sourceRoot":"","sources":["../../src/errors/envelope.ts"],"names":[],"mappings":"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"}
|
package/dist/feedback/nudge.d.ts
CHANGED
|
@@ -9,6 +9,8 @@ export declare const FEEDBACK_NUDGE_QUESTION_TR = "Sizin i\u00E7in bu MCP'yi dah
|
|
|
9
9
|
export declare const FEEDBACK_NUDGE_LANGUAGE_RULE = "MUST ask the user in the language they are using in this conversation. Detect it from their messages; if mixed, use their latest message. Never default to English. Translate Q1 into that language and show only that translation. English and Turkish below are meaning-only examples \u2014 do not paste them unless the user is actually speaking that language.";
|
|
10
10
|
export declare const PING_CONNECTED_TEXT = "Successfully connected to Photoshop";
|
|
11
11
|
export declare const PING_FAILED_TEXT = "Failed to connect to Photoshop";
|
|
12
|
+
export declare const PING_NOT_FOUND_REASON = "Photoshop was not found. Set PHOTOSHOP_PATH to the Photoshop app (macOS: the .app bundle, Windows: Photoshop.exe), then restart the MCP server.";
|
|
13
|
+
export declare const PING_NOT_RUNNING_REASON = "Photoshop is not running. Open Photoshop, wait until it finishes starting, then call photoshop_ping again. Ping never launches Photoshop.";
|
|
12
14
|
export type FeedbackChoice = 'yes' | 'not_now' | 'dont_ask';
|
|
13
15
|
export type FeedbackNudgeStatus = 'shown' | 'yes' | 'dont_ask';
|
|
14
16
|
export interface FeedbackNudgeStore {
|
|
@@ -39,4 +41,6 @@ export declare function buildFeedbackNudgeBlock(): string;
|
|
|
39
41
|
*/
|
|
40
42
|
export declare function buildPingToolResult(connected: boolean, now?: number): CallToolResult;
|
|
41
43
|
export declare function submitFeedbackFromArgs(args: Record<string, unknown>): CallToolResult;
|
|
44
|
+
/** Failed ping: PING_FAILED_TEXT stays the first block so existing clients still match it. */
|
|
45
|
+
export declare function buildPingFailureResult(reason: string): CallToolResult;
|
|
42
46
|
//# sourceMappingURL=nudge.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nudge.d.ts","sourceRoot":"","sources":["../../src/feedback/nudge.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AASzE,eAAO,MAAM,0BAA0B,QAA0B,CAAC;AAClE,eAAO,MAAM,yBAAyB,QAAiB,CAAC;AACxD,eAAO,MAAM,6BAA6B,MAAM,CAAC;AACjD,eAAO,MAAM,qBAAqB,mBAAmB,CAAC;AACtD,eAAO,MAAM,kBAAkB,mBAAmB,CAAC;AACnD,eAAO,MAAM,0BAA0B,4GACoE,CAAC;AAC5G,eAAO,MAAM,0BAA0B,wNACgG,CAAC;AACxI,eAAO,MAAM,4BAA4B,yWAC0T,CAAC;AACpW,eAAO,MAAM,mBAAmB,wCAAwC,CAAC;AACzE,eAAO,MAAM,gBAAgB,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"nudge.d.ts","sourceRoot":"","sources":["../../src/feedback/nudge.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AASzE,eAAO,MAAM,0BAA0B,QAA0B,CAAC;AAClE,eAAO,MAAM,yBAAyB,QAAiB,CAAC;AACxD,eAAO,MAAM,6BAA6B,MAAM,CAAC;AACjD,eAAO,MAAM,qBAAqB,mBAAmB,CAAC;AACtD,eAAO,MAAM,kBAAkB,mBAAmB,CAAC;AACnD,eAAO,MAAM,0BAA0B,4GACoE,CAAC;AAC5G,eAAO,MAAM,0BAA0B,wNACgG,CAAC;AACxI,eAAO,MAAM,4BAA4B,yWAC0T,CAAC;AACpW,eAAO,MAAM,mBAAmB,wCAAwC,CAAC;AACzE,eAAO,MAAM,gBAAgB,mCAAmC,CAAC;AACjE,eAAO,MAAM,qBAAqB,oJACiH,CAAC;AACpJ,eAAO,MAAM,uBAAuB,8IACyG,CAAC;AAE9I,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,SAAS,GAAG,UAAU,CAAC;AAC5D,MAAM,MAAM,mBAAmB,GAAG,OAAO,GAAG,KAAK,GAAG,UAAU,CAAC;AAE/D,MAAM,WAAW,kBAAkB;IACjC,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,cAAc,CAAC;CACzB;AASD,wBAAgB,cAAc,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,OAAO,CAE5E;AAOD,uFAAuF;AACvF,wBAAgB,sBAAsB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,OAAO,CAEpF;AAkBD,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAKxF;AAMD,wBAAgB,kBAAkB,CAAC,GAAG,SAAa,GAAG,OAAO,CAY5D;AAED,gFAAgF;AAChF,wBAAgB,qBAAqB,CAAC,GAAG,SAAa,GAAG,IAAI,CAO5D;AAED,wBAAgB,sBAAsB,CAAC,GAAG,SAAa,GAAG,IAAI,CAQ7D;AAED,wBAAgB,cAAc,CAC5B,MAAM,EAAE,cAAc,EACtB,UAAU,CAAC,EAAE,MAAM,GAClB;IAAE,QAAQ,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,cAAc,CAAC;IAAC,cAAc,EAAE,OAAO,CAAA;CAAE,CA0CrE;AAED,wBAAgB,uBAAuB,IAAI,MAAM,CAmBhD;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,OAAO,EAAE,GAAG,SAAa,GAAG,cAAc,CAsBxF;AAOD,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,cAAc,CA0BpF;AAED,8FAA8F;AAC9F,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc,CAOrE"}
|
package/dist/feedback/nudge.js
CHANGED
|
@@ -17,6 +17,8 @@ export const FEEDBACK_NUDGE_QUESTION_TR = "Sizin için bu MCP'yi daha hızlı ve
|
|
|
17
17
|
export const FEEDBACK_NUDGE_LANGUAGE_RULE = "MUST ask the user in the language they are using in this conversation. Detect it from their messages; if mixed, use their latest message. Never default to English. Translate Q1 into that language and show only that translation. English and Turkish below are meaning-only examples — do not paste them unless the user is actually speaking that language.";
|
|
18
18
|
export const PING_CONNECTED_TEXT = 'Successfully connected to Photoshop';
|
|
19
19
|
export const PING_FAILED_TEXT = 'Failed to connect to Photoshop';
|
|
20
|
+
export const PING_NOT_FOUND_REASON = 'Photoshop was not found. Set PHOTOSHOP_PATH to the Photoshop app (macOS: the .app bundle, Windows: Photoshop.exe), then restart the MCP server.';
|
|
21
|
+
export const PING_NOT_RUNNING_REASON = 'Photoshop is not running. Open Photoshop, wait until it finishes starting, then call photoshop_ping again. Ping never launches Photoshop.';
|
|
20
22
|
const STORE_FILE = 'feedback-nudge.json';
|
|
21
23
|
const TRUNCATION_SUFFIX = '…[truncated]';
|
|
22
24
|
function getStorePath() {
|
|
@@ -216,4 +218,13 @@ export function submitFeedbackFromArgs(args) {
|
|
|
216
218
|
],
|
|
217
219
|
};
|
|
218
220
|
}
|
|
221
|
+
/** Failed ping: PING_FAILED_TEXT stays the first block so existing clients still match it. */
|
|
222
|
+
export function buildPingFailureResult(reason) {
|
|
223
|
+
return {
|
|
224
|
+
content: [
|
|
225
|
+
{ type: 'text', text: PING_FAILED_TEXT },
|
|
226
|
+
{ type: 'text', text: reason },
|
|
227
|
+
],
|
|
228
|
+
};
|
|
229
|
+
}
|
|
219
230
|
//# sourceMappingURL=nudge.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nudge.js","sourceRoot":"","sources":["../../src/feedback/nudge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACjE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAC3F,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAClE,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AACxD,MAAM,CAAC,MAAM,6BAA6B,GAAG,GAAG,CAAC;AACjD,MAAM,CAAC,MAAM,qBAAqB,GAAG,gBAAgB,CAAC;AACtD,MAAM,CAAC,MAAM,kBAAkB,GAAG,gBAAgB,CAAC;AACnD,MAAM,CAAC,MAAM,0BAA0B,GACrC,yGAAyG,CAAC;AAC5G,MAAM,CAAC,MAAM,0BAA0B,GACrC,qIAAqI,CAAC;AACxI,MAAM,CAAC,MAAM,4BAA4B,GACvC,iWAAiW,CAAC;AACpW,MAAM,CAAC,MAAM,mBAAmB,GAAG,qCAAqC,CAAC;AACzE,MAAM,CAAC,MAAM,gBAAgB,GAAG,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"nudge.js","sourceRoot":"","sources":["../../src/feedback/nudge.ts"],"names":[],"mappings":"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"}
|
|
@@ -29,13 +29,12 @@ export declare class PhotoshopConnection {
|
|
|
29
29
|
getPhotoshopInfo(): PhotoshopInfo | null;
|
|
30
30
|
ensurePhotoshopRunning(): Promise<void>;
|
|
31
31
|
/**
|
|
32
|
-
* Point the macOS executor at the detected
|
|
32
|
+
* Point the macOS executor at the detected install. Must run after
|
|
33
33
|
* getExecutor(): the executor is created lazily, and before this ordering fix
|
|
34
34
|
* the first script of every session ran against the hard-coded default
|
|
35
|
-
* ("Adobe Photoshop 2025")
|
|
36
|
-
* as
|
|
37
|
-
* to compile `do javascript` (-2741) because the app name did not resolve.
|
|
35
|
+
* ("Adobe Photoshop 2025"). The bundle path is the AppleScript target; the
|
|
36
|
+
* name stays for logs and as a fallback when the path is not a bundle (#72).
|
|
38
37
|
*/
|
|
39
|
-
private
|
|
38
|
+
private applyMacOSTarget;
|
|
40
39
|
}
|
|
41
40
|
//# sourceMappingURL=connection.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../src/platform/connection.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,QAAQ,CAA+B;IAC/C,OAAO,CAAC,aAAa,CAA8B;IACnD,OAAO,CAAC,aAAa,CAAC,CAAgB;IACtC,OAAO,CAAC,aAAa,CAAC,CAAwB;;IAU9C,oEAAoE;IACpE,OAAO,CAAC,WAAW;IAenB,qEAAqE;IACrE,gBAAgB,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI;IAIvD,8DAA8D;IAC9D,gBAAgB,IAAI,OAAO;IAc3B,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,eAAe;YAST,oBAAoB;IA4B5B,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC;IAWxB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAU7B,aAAa,CACjB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,GAC7B,OAAO,CAAC,OAAO,CAAC;IA2BnB,gBAAgB,IAAI,aAAa,GAAG,IAAI;IAIlC,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC;IAe7C
|
|
1
|
+
{"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../src/platform/connection.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,QAAQ,CAA+B;IAC/C,OAAO,CAAC,aAAa,CAA8B;IACnD,OAAO,CAAC,aAAa,CAAC,CAAgB;IACtC,OAAO,CAAC,aAAa,CAAC,CAAwB;;IAU9C,oEAAoE;IACpE,OAAO,CAAC,WAAW;IAenB,qEAAqE;IACrE,gBAAgB,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI;IAIvD,8DAA8D;IAC9D,gBAAgB,IAAI,OAAO;IAc3B,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,eAAe;YAST,oBAAoB;IA4B5B,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC;IAWxB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAU7B,aAAa,CACjB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,GAC7B,OAAO,CAAC,OAAO,CAAC;IA2BnB,gBAAgB,IAAI,aAAa,GAAG,IAAI;IAIlC,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC;IAe7C;;;;;;OAMG;IACH,OAAO,CAAC,gBAAgB;CAKzB"}
|
|
@@ -121,7 +121,7 @@ export class PhotoshopConnection {
|
|
|
121
121
|
throw new Error('Photoshop not found on this system');
|
|
122
122
|
}
|
|
123
123
|
const executor = this.getExecutor();
|
|
124
|
-
this.
|
|
124
|
+
this.applyMacOSTarget();
|
|
125
125
|
const isRunning = await executor.isPhotoshopRunning();
|
|
126
126
|
if (!isRunning) {
|
|
127
127
|
if (options?.launch === false) {
|
|
@@ -147,7 +147,7 @@ export class PhotoshopConnection {
|
|
|
147
147
|
throw new Error('Photoshop not found on this system');
|
|
148
148
|
}
|
|
149
149
|
const executor = this.getExecutor();
|
|
150
|
-
this.
|
|
150
|
+
this.applyMacOSTarget();
|
|
151
151
|
const isRunning = await executor.isPhotoshopRunning();
|
|
152
152
|
if (!isRunning) {
|
|
153
153
|
this.logger.info('Launching Photoshop...');
|
|
@@ -155,17 +155,18 @@ export class PhotoshopConnection {
|
|
|
155
155
|
}
|
|
156
156
|
}
|
|
157
157
|
/**
|
|
158
|
-
* Point the macOS executor at the detected
|
|
158
|
+
* Point the macOS executor at the detected install. Must run after
|
|
159
159
|
* getExecutor(): the executor is created lazily, and before this ordering fix
|
|
160
160
|
* the first script of every session ran against the hard-coded default
|
|
161
|
-
* ("Adobe Photoshop 2025")
|
|
162
|
-
* as
|
|
163
|
-
* to compile `do javascript` (-2741) because the app name did not resolve.
|
|
161
|
+
* ("Adobe Photoshop 2025"). The bundle path is the AppleScript target; the
|
|
162
|
+
* name stays for logs and as a fallback when the path is not a bundle (#72).
|
|
164
163
|
*/
|
|
165
|
-
|
|
166
|
-
if (this.macosExecutor
|
|
164
|
+
applyMacOSTarget() {
|
|
165
|
+
if (!this.macosExecutor || !this.photoshopInfo)
|
|
166
|
+
return;
|
|
167
|
+
if (this.photoshopInfo.appName)
|
|
167
168
|
this.macosExecutor.setAppName(this.photoshopInfo.appName);
|
|
168
|
-
|
|
169
|
+
this.macosExecutor.setAppPath(this.photoshopInfo.path);
|
|
169
170
|
}
|
|
170
171
|
}
|
|
171
172
|
//# sourceMappingURL=connection.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection.js","sourceRoot":"","sources":["../../src/platform/connection.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"connection.js","sourceRoot":"","sources":["../../src/platform/connection.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/** What AppleScript and pgrep need to address one installed Photoshop. */
|
|
2
|
+
export interface MacAppTarget {
|
|
3
|
+
/** Bundle display name, e.g. "Adobe Photoshop 2026". Fallback target and log label. */
|
|
4
|
+
appName: string;
|
|
5
|
+
/** Full .app bundle path when known. Preferred: it names exactly one install. */
|
|
6
|
+
appPath?: string;
|
|
7
|
+
}
|
|
8
|
+
export type CommandRunner = (file: string, args: string[]) => Promise<{
|
|
9
|
+
stdout: string;
|
|
10
|
+
}>;
|
|
11
|
+
/** Escape a string for use as a pgrep -f pattern (extended regex). */
|
|
12
|
+
export declare function escapeForPgrep(value: string): string;
|
|
13
|
+
/** Quote a value as an AppleScript string literal. */
|
|
14
|
+
export declare function appleScriptString(value: string): string;
|
|
15
|
+
/**
|
|
16
|
+
* The .app bundle that contains `path`, or undefined when `path` is not inside
|
|
17
|
+
* one. PHOTOSHOP_PATH may name the bundle, the bundle with a trailing slash, or
|
|
18
|
+
* the executable under Contents/MacOS.
|
|
19
|
+
*/
|
|
20
|
+
export declare function bundlePathOf(path: string): string | undefined;
|
|
21
|
+
/**
|
|
22
|
+
* `application "<bundle path>"`, or by name when no path is known. A path names
|
|
23
|
+
* exactly the detected install (2025, 2026 and Beta share com.adobe.Photoshop)
|
|
24
|
+
* and does not depend on Launch Services resolving the display name (#72).
|
|
25
|
+
*/
|
|
26
|
+
export declare function appleScriptAppRef(target: MacAppTarget): string;
|
|
27
|
+
/**
|
|
28
|
+
* pgrep -f pattern for the app's own executable. Anchored at the start of the
|
|
29
|
+
* command line: AdobeIPCBroker carries the Photoshop executable path in its
|
|
30
|
+
* arguments, so an unanchored match reports a closed Photoshop as running.
|
|
31
|
+
*/
|
|
32
|
+
export declare function executablePgrepPattern(appPath: string): string;
|
|
33
|
+
/**
|
|
34
|
+
* Whether this exact install is running. An anchored pgrep comes first: it
|
|
35
|
+
* matches only this bundle's executable, while AppleScript may answer for any
|
|
36
|
+
* running copy because 2025, 2026 and Beta share com.adobe.Photoshop. When
|
|
37
|
+
* pgrep cannot read the process list (exit 3 inside an agent sandbox),
|
|
38
|
+
* AppleScript answers instead: `running` never launches the app.
|
|
39
|
+
*/
|
|
40
|
+
export declare function isMacAppRunning(target: MacAppTarget, run?: CommandRunner): Promise<boolean>;
|
|
41
|
+
//# sourceMappingURL=macos-app.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"macos-app.d.ts","sourceRoot":"","sources":["../../src/platform/macos-app.ts"],"names":[],"mappings":"AAKA,0EAA0E;AAC1E,MAAM,WAAW,YAAY;IAC3B,uFAAuF;IACvF,OAAO,EAAE,MAAM,CAAC;IAChB,iFAAiF;IACjF,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,aAAa,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAS1F,sEAAsE;AACtE,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED,sDAAsD;AACtD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEvD;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAG7D;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CAE9D;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE9D;AAKD;;;;;;GAMG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,YAAY,EACpB,GAAG,GAAE,aAA6B,GACjC,OAAO,CAAC,OAAO,CAAC,CAiBlB"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { execFile } from 'child_process';
|
|
2
|
+
import { promisify } from 'util';
|
|
3
|
+
const execFileAsync = promisify(execFile);
|
|
4
|
+
const RUNNING_CHECK_TIMEOUT_MS = 10_000;
|
|
5
|
+
const defaultRunner = async (file, args) => {
|
|
6
|
+
const { stdout } = await execFileAsync(file, args, { timeout: RUNNING_CHECK_TIMEOUT_MS });
|
|
7
|
+
return { stdout: String(stdout) };
|
|
8
|
+
};
|
|
9
|
+
/** Escape a string for use as a pgrep -f pattern (extended regex). */
|
|
10
|
+
export function escapeForPgrep(value) {
|
|
11
|
+
return value.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
12
|
+
}
|
|
13
|
+
/** Quote a value as an AppleScript string literal. */
|
|
14
|
+
export function appleScriptString(value) {
|
|
15
|
+
return `"${value.replace(/\\/g, '\\\\').replace(/"/g, '\\"')}"`;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* The .app bundle that contains `path`, or undefined when `path` is not inside
|
|
19
|
+
* one. PHOTOSHOP_PATH may name the bundle, the bundle with a trailing slash, or
|
|
20
|
+
* the executable under Contents/MacOS.
|
|
21
|
+
*/
|
|
22
|
+
export function bundlePathOf(path) {
|
|
23
|
+
const match = /^(.*?\.app)(?:\/.*)?$/.exec(path.trim());
|
|
24
|
+
return match ? match[1] : undefined;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* `application "<bundle path>"`, or by name when no path is known. A path names
|
|
28
|
+
* exactly the detected install (2025, 2026 and Beta share com.adobe.Photoshop)
|
|
29
|
+
* and does not depend on Launch Services resolving the display name (#72).
|
|
30
|
+
*/
|
|
31
|
+
export function appleScriptAppRef(target) {
|
|
32
|
+
return `application ${appleScriptString(target.appPath ?? target.appName)}`;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* pgrep -f pattern for the app's own executable. Anchored at the start of the
|
|
36
|
+
* command line: AdobeIPCBroker carries the Photoshop executable path in its
|
|
37
|
+
* arguments, so an unanchored match reports a closed Photoshop as running.
|
|
38
|
+
*/
|
|
39
|
+
export function executablePgrepPattern(appPath) {
|
|
40
|
+
return `^${escapeForPgrep(appPath)}/Contents/MacOS/`;
|
|
41
|
+
}
|
|
42
|
+
/** pgrep exit code for "no process matched" (3 means it could not read the process list). */
|
|
43
|
+
const PGREP_NO_MATCH = 1;
|
|
44
|
+
/**
|
|
45
|
+
* Whether this exact install is running. An anchored pgrep comes first: it
|
|
46
|
+
* matches only this bundle's executable, while AppleScript may answer for any
|
|
47
|
+
* running copy because 2025, 2026 and Beta share com.adobe.Photoshop. When
|
|
48
|
+
* pgrep cannot read the process list (exit 3 inside an agent sandbox),
|
|
49
|
+
* AppleScript answers instead: `running` never launches the app.
|
|
50
|
+
*/
|
|
51
|
+
export async function isMacAppRunning(target, run = defaultRunner) {
|
|
52
|
+
if (target.appPath) {
|
|
53
|
+
try {
|
|
54
|
+
const { stdout } = await run('pgrep', ['-f', executablePgrepPattern(target.appPath)]);
|
|
55
|
+
return stdout.trim().length > 0;
|
|
56
|
+
}
|
|
57
|
+
catch (error) {
|
|
58
|
+
if (error.code === PGREP_NO_MATCH)
|
|
59
|
+
return false;
|
|
60
|
+
// pgrep missing or denied; ask AppleScript.
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
try {
|
|
64
|
+
const { stdout } = await run('osascript', ['-e', `${appleScriptAppRef(target)} is running`]);
|
|
65
|
+
return stdout.trim() === 'true';
|
|
66
|
+
}
|
|
67
|
+
catch {
|
|
68
|
+
return false;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=macos-app.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"macos-app.js","sourceRoot":"","sources":["../../src/platform/macos-app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAEjC,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;AAY1C,MAAM,wBAAwB,GAAG,MAAM,CAAC;AAExC,MAAM,aAAa,GAAkB,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;IACxD,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC,CAAC;IAC1F,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;AACpC,CAAC,CAAC;AAEF,sEAAsE;AACtE,MAAM,UAAU,cAAc,CAAC,KAAa;IAC1C,OAAO,KAAK,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;AACtD,CAAC;AAED,sDAAsD;AACtD,MAAM,UAAU,iBAAiB,CAAC,KAAa;IAC7C,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC;AAClE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,MAAM,KAAK,GAAG,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IACxD,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACtC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAoB;IACpD,OAAO,eAAe,iBAAiB,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;AAC9E,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CAAC,OAAe;IACpD,OAAO,IAAI,cAAc,CAAC,OAAO,CAAC,kBAAkB,CAAC;AACvD,CAAC;AAED,6FAA6F;AAC7F,MAAM,cAAc,GAAG,CAAC,CAAC;AAEzB;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAoB,EACpB,MAAqB,aAAa;IAElC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,IAAI,CAAC;YACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,sBAAsB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YACtF,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;QAClC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAK,KAA4B,CAAC,IAAI,KAAK,cAAc;gBAAE,OAAO,KAAK,CAAC;YACxE,4CAA4C;QAC9C,CAAC;IACH,CAAC;IAED,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,GAAG,iBAAiB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC;QAC7F,OAAO,MAAM,CAAC,IAAI,EAAE,KAAK,MAAM,CAAC;IAClC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"macos-detector.d.ts","sourceRoot":"","sources":["../../src/platform/macos-detector.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"macos-detector.d.ts","sourceRoot":"","sources":["../../src/platform/macos-detector.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAKhD,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAS;;IAMjB,MAAM,IAAI,OAAO,CAAC,aAAa,CAAC;YA6BxB,oBAAoB;IAuBlC,OAAO,CAAC,cAAc;YA2BR,SAAS;YA4BT,qBAAqB;YAwCrB,cAAc;IAKtB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;CAW9D"}
|
|
@@ -2,6 +2,7 @@ import { exec } from 'child_process';
|
|
|
2
2
|
import { promisify } from 'util';
|
|
3
3
|
import { access, constants, readFile } from 'fs/promises';
|
|
4
4
|
import { Logger } from '../utils/logger.js';
|
|
5
|
+
import { bundlePathOf, isMacAppRunning } from './macos-app.js';
|
|
5
6
|
const execAsync = promisify(exec);
|
|
6
7
|
export class MacOSDetector {
|
|
7
8
|
logger;
|
|
@@ -70,8 +71,9 @@ export class MacOSDetector {
|
|
|
70
71
|
}
|
|
71
72
|
async checkPath(path) {
|
|
72
73
|
try {
|
|
73
|
-
//
|
|
74
|
-
|
|
74
|
+
// PHOTOSHOP_PATH may point inside the bundle or end with a slash; the
|
|
75
|
+
// version, name, AppleScript target and `open -a` all need the .app (#72).
|
|
76
|
+
const cleanPath = bundlePathOf(path) ?? path.trim();
|
|
75
77
|
// Check if path exists
|
|
76
78
|
await access(cleanPath, constants.F_OK);
|
|
77
79
|
// Get version from Info.plist
|
|
@@ -122,17 +124,8 @@ export class MacOSDetector {
|
|
|
122
124
|
return 'Unknown';
|
|
123
125
|
}
|
|
124
126
|
async checkIfRunning(appPath) {
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
const appName = appPath.split('/').pop()?.replace('.app', '') || 'Adobe Photoshop';
|
|
128
|
-
// Use pgrep to check if process is running
|
|
129
|
-
const { stdout } = await execAsync(`pgrep -f "${appName}"`);
|
|
130
|
-
return stdout.trim().length > 0;
|
|
131
|
-
}
|
|
132
|
-
catch {
|
|
133
|
-
// pgrep returns non-zero exit code if no process found
|
|
134
|
-
return false;
|
|
135
|
-
}
|
|
127
|
+
const appName = appPath.split('/').pop()?.replace('.app', '') || 'Adobe Photoshop';
|
|
128
|
+
return isMacAppRunning({ appName, appPath: bundlePathOf(appPath) });
|
|
136
129
|
}
|
|
137
130
|
async getAppBundleId(appPath) {
|
|
138
131
|
try {
|