@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.
Files changed (53) hide show
  1. package/AGENTS.md +1 -1
  2. package/README.md +2 -2
  3. package/dist/core/ping-engine.d.ts.map +1 -1
  4. package/dist/core/ping-engine.js +8 -5
  5. package/dist/core/ping-engine.js.map +1 -1
  6. package/dist/core/tool-annotations.d.ts.map +1 -1
  7. package/dist/core/tool-annotations.js +1 -0
  8. package/dist/core/tool-annotations.js.map +1 -1
  9. package/dist/errors/envelope.d.ts +1 -1
  10. package/dist/errors/envelope.d.ts.map +1 -1
  11. package/dist/errors/envelope.js +30 -0
  12. package/dist/errors/envelope.js.map +1 -1
  13. package/dist/feedback/nudge.d.ts +4 -0
  14. package/dist/feedback/nudge.d.ts.map +1 -1
  15. package/dist/feedback/nudge.js +11 -0
  16. package/dist/feedback/nudge.js.map +1 -1
  17. package/dist/platform/connection.d.ts +4 -5
  18. package/dist/platform/connection.d.ts.map +1 -1
  19. package/dist/platform/connection.js +10 -9
  20. package/dist/platform/connection.js.map +1 -1
  21. package/dist/platform/macos-app.d.ts +41 -0
  22. package/dist/platform/macos-app.d.ts.map +1 -0
  23. package/dist/platform/macos-app.js +71 -0
  24. package/dist/platform/macos-app.js.map +1 -0
  25. package/dist/platform/macos-detector.d.ts.map +1 -1
  26. package/dist/platform/macos-detector.js +6 -13
  27. package/dist/platform/macos-detector.js.map +1 -1
  28. package/dist/platform/macos-executor.d.ts +5 -2
  29. package/dist/platform/macos-executor.d.ts.map +1 -1
  30. package/dist/platform/macos-executor.js +17 -18
  31. package/dist/platform/macos-executor.js.map +1 -1
  32. package/dist/prompts/registry.d.ts +1 -1
  33. package/dist/prompts/registry.d.ts.map +1 -1
  34. package/dist/prompts/registry.js +2 -0
  35. package/dist/prompts/registry.js.map +1 -1
  36. package/dist/prompts/templates/sticker-outline.d.ts +3 -0
  37. package/dist/prompts/templates/sticker-outline.d.ts.map +1 -0
  38. package/dist/prompts/templates/sticker-outline.js +39 -0
  39. package/dist/prompts/templates/sticker-outline.js.map +1 -0
  40. package/dist/tools/recipes/index.d.ts +1 -1
  41. package/dist/tools/recipes/index.d.ts.map +1 -1
  42. package/dist/tools/recipes/index.js +3 -0
  43. package/dist/tools/recipes/index.js.map +1 -1
  44. package/dist/tools/recipes/sticker-outline.d.ts +4 -0
  45. package/dist/tools/recipes/sticker-outline.d.ts.map +1 -0
  46. package/dist/tools/recipes/sticker-outline.js +366 -0
  47. package/dist/tools/recipes/sticker-outline.js.map +1 -0
  48. package/dist/tools/session-tools.js +1 -1
  49. package/dist/tools/session-tools.js.map +1 -1
  50. package/dist/utils/logger.d.ts.map +1 -1
  51. package/dist/utils/logger.js +19 -1
  52. package/dist/utils/logger.js.map +1 -1
  53. 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:** 127 MCP tools — 111 atomic `photoshop_*` + 16 recipe `photoshop_recipe_*`; 23 MCP prompt templates (`ps.*`).
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: 127 tools (111 atomic + 16 one-step recipes) — full list in
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 127 tools with parameters
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;AAGzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAGhE;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,iCAAiC,CAAC;AAIhE,wBAAsB,oBAAoB,CACxC,UAAU,EAAE,mBAAmB,GAC9B,OAAO,CAAC,cAAc,CAAC,CAazB"}
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"}
@@ -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 NOT_REACHABLE = /photoshop is not running|photoshop not found|photoshop info not available/i;
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 buildPingToolResult(false);
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 (NOT_REACHABLE.test(message))
23
- return buildPingToolResult(false);
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,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAE1E;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,8BAA8B,CAAC;AAEhE,MAAM,aAAa,GAAG,4EAA4E,CAAC;AAEnG,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,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAElD,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,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,OAAO,mBAAmB,CAAC,KAAK,CAAC,CAAC;QACnE,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
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,CAoJrE,CAAC;AAEF,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CASpD"}
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;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,sBAAsB,CA8BrE;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"}
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"}
@@ -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":"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"}
1
+ {"version":3,"file":"envelope.js","sourceRoot":"","sources":["../../src/errors/envelope.ts"],"names":[],"mappings":"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"}
@@ -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;AAEjE,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"}
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"}
@@ -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":"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"}
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 app bundle name. Must run after
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"), so on any other version pgrep reported Photoshop
36
- * as not running, launchPhotoshop() stole focus for 5s, and osascript failed
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 applyMacOSAppName;
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;;;;;;;OAOG;IACH,OAAO,CAAC,iBAAiB;CAK1B"}
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.applyMacOSAppName();
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.applyMacOSAppName();
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 app bundle name. Must run after
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"), so on any other version pgrep reported Photoshop
162
- * as not running, launchPhotoshop() stole focus for 5s, and osascript failed
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
- applyMacOSAppName() {
166
- if (this.macosExecutor && this.photoshopInfo?.appName) {
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;AAIhD,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAS;;IAMjB,MAAM,IAAI,OAAO,CAAC,aAAa,CAAC;YA6BxB,oBAAoB;IAuBlC,OAAO,CAAC,cAAc;YA2BR,SAAS;YA2BT,qBAAqB;YAwCrB,cAAc;IActB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;CAW9D"}
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
- // Clean up path
74
- const cleanPath = path.trim();
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
- try {
126
- // Get the app name from path
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 {