screenhand 0.4.1 → 0.4.2
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/dist-app-maps/com.apple.Music.json +6587 -0
- package/dist-app-maps/com.apple.Notes.json +6098 -0
- package/dist-app-maps/com.apple.Photos.json +406 -0
- package/dist-app-maps/com.apple.Terminal.json +3968 -0
- package/dist-app-maps/com.apple.finder.json +420 -0
- package/dist-app-maps/com.apple.iCal.json +2375 -0
- package/dist-app-maps/com.apple.iWork.Keynote.json +2374 -0
- package/dist-app-maps/com.apple.iWork.Pages.json +7564 -0
- package/dist-app-maps/com.apple.mail.json +8353 -0
- package/dist-app-maps/com.apple.reminders.json +3322 -0
- package/dist-app-maps/net.whatsapp.WhatsApp.json +5151 -0
- package/dist-playbooks/calendar-create-event.json +20 -0
- package/dist-playbooks/calendar-list-events.json +20 -0
- package/dist-playbooks/calendar-navigate-views.json +47 -0
- package/dist-playbooks/calendar-open-settings.json +20 -0
- package/dist-playbooks/google-ads-transparency-competitor-research.json +89 -0
- package/dist-playbooks/google-search-competitor-research.json +76 -0
- package/dist-playbooks/keynote-add-slide.json +20 -0
- package/dist-playbooks/keynote-create-presentation.json +20 -0
- package/dist-playbooks/keynote-export-pdf.json +20 -0
- package/dist-playbooks/keynote-play-slideshow.json +20 -0
- package/dist-playbooks/meta-ad-library-competitor-research.json +100 -0
- package/dist-playbooks/notes-mastery-workflows.json +468 -0
- package/dist-playbooks/pages-export-pdf.json +20 -0
- package/dist-playbooks/pages-new-document.json +20 -0
- package/dist-playbooks/pages-open-document.json +20 -0
- package/dist-playbooks/reminders-complete.json +21 -0
- package/dist-playbooks/reminders-create.json +21 -0
- package/dist-playbooks/reminders-list.json +22 -0
- package/dist-playbooks/reminders-open.json +35 -0
- package/dist-playbooks/whatsapp-contact-info.json +32 -0
- package/dist-playbooks/whatsapp-navigate.json +71 -0
- package/dist-playbooks/whatsapp-new-call.json +32 -0
- package/dist-playbooks/whatsapp-new-group.json +32 -0
- package/dist-playbooks/whatsapp-search.json +28 -0
- package/dist-playbooks/whatsapp-settings.json +23 -0
- package/dist-playbooks/x_change_avatar.json +52 -0
- package/dist-references/apple-music.json +822 -0
- package/dist-references/calendar.json +1020 -0
- package/dist-references/google-search-competitor-research.json +73 -0
- package/dist-references/keynote.json +134 -0
- package/dist-references/mail.json +431 -0
- package/dist-references/pages.json +1203 -0
- package/dist-references/photos.json +642 -0
- package/dist-references/reminders.json +835 -0
- package/dist-references/terminal.json +640 -0
- package/dist-references/whatsapp.json +324 -0
- package/package.json +1 -1
|
@@ -0,0 +1,642 @@
|
|
|
1
|
+
{
|
|
2
|
+
"id": "photos",
|
|
3
|
+
"name": "Photos — Auto-Generated Reference",
|
|
4
|
+
"platform": "photos",
|
|
5
|
+
"bundleId": "com.apple.Photos",
|
|
6
|
+
"shortcuts": {
|
|
7
|
+
"Apple": {
|
|
8
|
+
"AXMenu > Force Quit…": "Option+Cmd+⎋",
|
|
9
|
+
"AXMenu > Force Quit Photos": "Option+Shift+Cmd+⎋",
|
|
10
|
+
"AXMenu > Lock Screen": "Ctrl+Cmd+Q",
|
|
11
|
+
"AXMenu > Log Out khushi goyal…": "Shift+Cmd+Q",
|
|
12
|
+
"AXMenu > Log Out khushi goyal": "Option+Shift+Cmd+Q"
|
|
13
|
+
},
|
|
14
|
+
"Photos": {
|
|
15
|
+
"AXMenu > Settings…": "Cmd+,",
|
|
16
|
+
"AXMenu > Erase Deleted Items": "Shift+Cmd+\b",
|
|
17
|
+
"AXMenu > Hide Photos": "Cmd+H",
|
|
18
|
+
"AXMenu > Hide Others": "Option+Cmd+H",
|
|
19
|
+
"AXMenu > Quit Photos": "Cmd+Q"
|
|
20
|
+
},
|
|
21
|
+
"File": {
|
|
22
|
+
"AXMenu > New Album": "Cmd+N",
|
|
23
|
+
"AXMenu > New Smart Album…": "Option+Cmd+N",
|
|
24
|
+
"AXMenu > New Folder": "Shift+Cmd+N",
|
|
25
|
+
"AXMenu > New Memory Movie": "Ctrl+Cmd+N",
|
|
26
|
+
"AXMenu > Import…": "Shift+Cmd+I",
|
|
27
|
+
"AXMenu > Import without Review…": "Option+Shift+Cmd+I",
|
|
28
|
+
"AXMenu > Export > AXMenu > Export Photos…": "Shift+Cmd+E",
|
|
29
|
+
"AXMenu > Export > AXMenu > Export Unmodified Originals…": "Option+Cmd+E",
|
|
30
|
+
"AXMenu > Close": "Cmd+W",
|
|
31
|
+
"AXMenu > Print…": "Cmd+P"
|
|
32
|
+
},
|
|
33
|
+
"Edit": {
|
|
34
|
+
"AXMenu > Undo": "Cmd+Z",
|
|
35
|
+
"AXMenu > Redo": "Shift+Cmd+Z",
|
|
36
|
+
"AXMenu > Cut": "Cmd+X",
|
|
37
|
+
"AXMenu > Copy": "Cmd+C",
|
|
38
|
+
"AXMenu > Paste": "Cmd+V",
|
|
39
|
+
"AXMenu > Paste and Match Style": "Option+Shift+Cmd+V",
|
|
40
|
+
"AXMenu > Select All": "Cmd+A",
|
|
41
|
+
"AXMenu > Deselect All": "Option+Cmd+A",
|
|
42
|
+
"AXMenu > Find": "Cmd+F",
|
|
43
|
+
"AXMenu > Font > AXMenu > Show Fonts": "Cmd+T",
|
|
44
|
+
"AXMenu > Font > AXMenu > Bold": "Cmd+B",
|
|
45
|
+
"AXMenu > Font > AXMenu > Underline": "Cmd+U",
|
|
46
|
+
"AXMenu > Font > AXMenu > Bigger": "Shift+Cmd+=",
|
|
47
|
+
"AXMenu > Font > AXMenu > Smaller": "Shift+Cmd+-",
|
|
48
|
+
"AXMenu > Font > AXMenu > Copy Style": "Option+Cmd+C",
|
|
49
|
+
"AXMenu > Font > AXMenu > Paste Style": "Option+Cmd+V",
|
|
50
|
+
"AXMenu > Spelling and Grammar > AXMenu > Show Spelling and Grammar": "Cmd+:",
|
|
51
|
+
"AXMenu > Spelling and Grammar > AXMenu > Check Document Now": "Cmd+;",
|
|
52
|
+
"AXMenu > Start Dictation…": "Cmd+🎤",
|
|
53
|
+
"AXMenu > Emoji & Symbols": "Cmd+🌐"
|
|
54
|
+
},
|
|
55
|
+
"Image": {
|
|
56
|
+
"AXMenu > Rotate Counterclockwise": "Cmd+R",
|
|
57
|
+
"AXMenu > Rotate Clockwise": "Option+Cmd+R",
|
|
58
|
+
"AXMenu > Auto Enhance": "Cmd+E",
|
|
59
|
+
"AXMenu > Copy Edits": "Shift+Cmd+C",
|
|
60
|
+
"AXMenu > Paste Edits": "Shift+Cmd+V",
|
|
61
|
+
"AXMenu > Open Viewer": "Cmd+ ",
|
|
62
|
+
"AXMenu > Show Edit Tools": "Cmd+\r",
|
|
63
|
+
"AXMenu > Start/Stop Playback": "Option+Cmd+ ",
|
|
64
|
+
"AXMenu > Add to Favorites": "Cmd+.",
|
|
65
|
+
"AXMenu > Make Key Photo": "Shift+Cmd+K",
|
|
66
|
+
"AXMenu > Add to Album": "Ctrl+Cmd+A",
|
|
67
|
+
"AXMenu > Edit With > AXMenu > Last Used Application": "Cmd+\r",
|
|
68
|
+
"AXMenu > Select Items": "Ctrl+Option+Cmd+M",
|
|
69
|
+
"AXMenu > Duplicate Album": "Cmd+D",
|
|
70
|
+
"AXMenu > Duplicate Photo From Original": "Option+Shift+Cmd+D",
|
|
71
|
+
"AXMenu > Hide/Unhide Photo": "Option+Cmd+L",
|
|
72
|
+
"AXMenu > Delete Photo": "Cmd+\b"
|
|
73
|
+
},
|
|
74
|
+
"View": {
|
|
75
|
+
"AXMenu > Years": "Cmd+1",
|
|
76
|
+
"AXMenu > Months": "Cmd+2",
|
|
77
|
+
"AXMenu > All Photos": "Cmd+3",
|
|
78
|
+
"AXMenu > Photos > AXMenu > Library": "Ctrl+Cmd+1",
|
|
79
|
+
"AXMenu > Photos > AXMenu > Favorites": "Ctrl+Cmd+2",
|
|
80
|
+
"AXMenu > Photos > AXMenu > Map": "Ctrl+Cmd+3",
|
|
81
|
+
"AXMenu > Photos > AXMenu > Recently Saved": "Ctrl+Cmd+4",
|
|
82
|
+
"AXMenu > Photos > AXMenu > Recently Deleted": "Ctrl+Cmd+5",
|
|
83
|
+
"AXMenu > Show/Hide Explore View": "Option+Cmd+E",
|
|
84
|
+
"AXMenu > Show Thumbnails": "Option+Cmd+S",
|
|
85
|
+
"AXMenu > Metadata > AXMenu > Titles": "Shift+Cmd+T",
|
|
86
|
+
"AXMenu > Filter By > AXMenu > Favorites": "Option+Cmd+1",
|
|
87
|
+
"AXMenu > Filter By > AXMenu > Edited": "Option+Cmd+2",
|
|
88
|
+
"AXMenu > Filter By > AXMenu > Photos": "Option+Cmd+3",
|
|
89
|
+
"AXMenu > Filter By > AXMenu > Videos": "Option+Cmd+4",
|
|
90
|
+
"AXMenu > Filter By > AXMenu > Not in an Album": "Option+Cmd+6",
|
|
91
|
+
"AXMenu > Square Photo Grid": "Option+Cmd+T",
|
|
92
|
+
"AXMenu > Zoom": "Cmd+Z",
|
|
93
|
+
"AXMenu > Zoom In": "Cmd++",
|
|
94
|
+
"AXMenu > Zoom Out": "Cmd+-",
|
|
95
|
+
"AXMenu > Enter Full Screen": "Cmd+F"
|
|
96
|
+
},
|
|
97
|
+
"Window": {
|
|
98
|
+
"AXMenu > Minimize": "Cmd+M",
|
|
99
|
+
"AXMenu > Minimize All": "Option+Cmd+M",
|
|
100
|
+
"AXMenu > Fill": "Ctrl+Cmd+F",
|
|
101
|
+
"AXMenu > Center": "Ctrl+Cmd+C",
|
|
102
|
+
"AXMenu > Move & Resize > AXMenu > Return to Previous Size": "Ctrl+Cmd+R",
|
|
103
|
+
"AXMenu > Info": "Cmd+I",
|
|
104
|
+
"AXMenu > Keyword Manager": "Cmd+K"
|
|
105
|
+
},
|
|
106
|
+
"Help": {}
|
|
107
|
+
},
|
|
108
|
+
"selectors": {},
|
|
109
|
+
"flows": {},
|
|
110
|
+
"errors": [],
|
|
111
|
+
"websiteFeatures": [
|
|
112
|
+
{
|
|
113
|
+
"id": "edit_photos_on_your_mac",
|
|
114
|
+
"name": "Edit photos on your Mac",
|
|
115
|
+
"description": "Edit like a pro with the intuitive editing tools built into Photos for macOS.",
|
|
116
|
+
"sourceHeading": "Edit photos on your Mac",
|
|
117
|
+
"level": "beginner"
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
"id": "take_and_edit_photos_on_your_device",
|
|
121
|
+
"name": "Take and edit photos on your device",
|
|
122
|
+
"description": "Learn how to take high-quality photos and make edits with the technologies and tools built into your device.",
|
|
123
|
+
"sourceHeading": "Take and edit photos on your device",
|
|
124
|
+
"level": "pro"
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
"id": "view_your_locked_hidden_album_on_your_iphone",
|
|
128
|
+
"name": "View your locked Hidden album on your iPhone",
|
|
129
|
+
"description": "In iOS 16 and later, your iPhone Hidden album is locked by default. Learn how to view your Hidden album in Photos and how to manage your settings.",
|
|
130
|
+
"sourceHeading": "View your locked Hidden album on your iPhone",
|
|
131
|
+
"level": "beginner"
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
"id": "transfer_photos_and_videos",
|
|
135
|
+
"name": "Transfer photos and videos",
|
|
136
|
+
"description": "Move photos and videos to your computer, or use iCloud Photos to make your photos available on all your Apple devices.",
|
|
137
|
+
"sourceHeading": "Transfer photos and videos",
|
|
138
|
+
"level": "pro"
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
"id": "keep_your_library_up_to_date",
|
|
142
|
+
"name": "Keep your library up to date",
|
|
143
|
+
"description": "Your photos and videos are automatically updated across all of your devices with iCloud. You can also manually sync your library using the Finder.",
|
|
144
|
+
"sourceHeading": "Keep your library up to date",
|
|
145
|
+
"level": "expert"
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
"id": "organize_and_find_your_photos",
|
|
149
|
+
"name": "Organize and find your photos",
|
|
150
|
+
"description": "Keep your photos and videos organized and accessible, and use the advanced search features to easily find people, places, objects, or events.",
|
|
151
|
+
"sourceHeading": "Organize and find your photos",
|
|
152
|
+
"level": "grandmaster"
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
"id": "move_your_photos_library",
|
|
156
|
+
"name": "Move your Photos library",
|
|
157
|
+
"description": "If your Mac is running low on disk space, you can move your Photos library to an external drive to free up storage.",
|
|
158
|
+
"sourceHeading": "Move your Photos library",
|
|
159
|
+
"level": "pro"
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
"id": "icloud_photos",
|
|
163
|
+
"name": "iCloud Photos",
|
|
164
|
+
"description": "iCloud Photos works with the Photos app to keep your photos and videos securely stored in iCloud, and up to date on your iPhone, iPad, Mac, Apple TV, and iCloud.com.",
|
|
165
|
+
"sourceHeading": "iCloud Photos",
|
|
166
|
+
"level": "pro"
|
|
167
|
+
},
|
|
168
|
+
{
|
|
169
|
+
"id": "resources",
|
|
170
|
+
"name": "Resources",
|
|
171
|
+
"description": "Resources",
|
|
172
|
+
"sourceHeading": "Resources",
|
|
173
|
+
"level": "beginner"
|
|
174
|
+
},
|
|
175
|
+
{
|
|
176
|
+
"id": "user_guides",
|
|
177
|
+
"name": "User Guides",
|
|
178
|
+
"description": "Learn about features and discover all that Photos can do on your Mac, iPad, iPhone, or on iCloud.com.",
|
|
179
|
+
"sourceHeading": "User Guides",
|
|
180
|
+
"level": "pro"
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
"id": "photos_project_extensions",
|
|
184
|
+
"name": "Photos Project Extensions",
|
|
185
|
+
"description": "Learn how to download, install, and use third-party Project Extensions in Photos for macOS.",
|
|
186
|
+
"sourceHeading": "Photos Project Extensions",
|
|
187
|
+
"level": "pro"
|
|
188
|
+
},
|
|
189
|
+
{
|
|
190
|
+
"id": "search_for_more_topics",
|
|
191
|
+
"name": "Search for more topics",
|
|
192
|
+
"description": "Search for more topics",
|
|
193
|
+
"sourceHeading": "Search for more topics",
|
|
194
|
+
"level": "beginner"
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
"id": "apple_communities",
|
|
198
|
+
"name": "Apple Communities",
|
|
199
|
+
"description": "Find answers, ask questions, and connect with other Apple users.",
|
|
200
|
+
"sourceHeading": "Apple Communities",
|
|
201
|
+
"level": "beginner"
|
|
202
|
+
},
|
|
203
|
+
{
|
|
204
|
+
"id": "get_support",
|
|
205
|
+
"name": "Get Support",
|
|
206
|
+
"description": "We can help you find the best support options.",
|
|
207
|
+
"sourceHeading": "Get Support",
|
|
208
|
+
"level": "beginner"
|
|
209
|
+
},
|
|
210
|
+
{
|
|
211
|
+
"id": "support_app",
|
|
212
|
+
"name": "Support app",
|
|
213
|
+
"description": "Get personalized access to solutions for your Apple products.",
|
|
214
|
+
"sourceHeading": "Support app",
|
|
215
|
+
"level": "beginner"
|
|
216
|
+
},
|
|
217
|
+
{
|
|
218
|
+
"id": "apple_footer",
|
|
219
|
+
"name": "Apple Footer",
|
|
220
|
+
"description": "Apple Footer",
|
|
221
|
+
"sourceHeading": "Apple Footer",
|
|
222
|
+
"level": "beginner"
|
|
223
|
+
},
|
|
224
|
+
{
|
|
225
|
+
"id": "product_support",
|
|
226
|
+
"name": "Product Support",
|
|
227
|
+
"description": "Product Support",
|
|
228
|
+
"sourceHeading": "Product Support",
|
|
229
|
+
"level": "beginner"
|
|
230
|
+
},
|
|
231
|
+
{
|
|
232
|
+
"id": "service_and_repair",
|
|
233
|
+
"name": "Service and Repair",
|
|
234
|
+
"description": "Service and Repair",
|
|
235
|
+
"sourceHeading": "Service and Repair",
|
|
236
|
+
"level": "beginner"
|
|
237
|
+
},
|
|
238
|
+
{
|
|
239
|
+
"id": "connect",
|
|
240
|
+
"name": "Connect",
|
|
241
|
+
"description": "Connect",
|
|
242
|
+
"sourceHeading": "Connect",
|
|
243
|
+
"level": "beginner"
|
|
244
|
+
},
|
|
245
|
+
{
|
|
246
|
+
"id": "learn_how_to_organize_your_photos",
|
|
247
|
+
"name": "Learn how to organize your photos",
|
|
248
|
+
"description": "Learn how to organize your photos",
|
|
249
|
+
"sourceHeading": "Learn how to organize your photos",
|
|
250
|
+
"level": "pro"
|
|
251
|
+
}
|
|
252
|
+
],
|
|
253
|
+
"valueAddFeatures": [
|
|
254
|
+
{
|
|
255
|
+
"id": "smart_search",
|
|
256
|
+
"name": "Smart Search",
|
|
257
|
+
"description": "Search across all Photos content with pattern matching",
|
|
258
|
+
"category": "organization",
|
|
259
|
+
"level": "pro"
|
|
260
|
+
},
|
|
261
|
+
{
|
|
262
|
+
"id": "summarize_all",
|
|
263
|
+
"name": "Summarize",
|
|
264
|
+
"description": "Read and summarize all Photos content",
|
|
265
|
+
"category": "intelligence",
|
|
266
|
+
"level": "expert"
|
|
267
|
+
},
|
|
268
|
+
{
|
|
269
|
+
"id": "change_monitor",
|
|
270
|
+
"name": "Change Monitor",
|
|
271
|
+
"description": "Monitor Photos for changes and notify",
|
|
272
|
+
"category": "monitoring",
|
|
273
|
+
"level": "grandmaster"
|
|
274
|
+
}
|
|
275
|
+
],
|
|
276
|
+
"library_stats": {
|
|
277
|
+
"total_media_items": 1757,
|
|
278
|
+
"photos": 1715,
|
|
279
|
+
"videos": 42,
|
|
280
|
+
"favorites": 2,
|
|
281
|
+
"albums": 0,
|
|
282
|
+
"folders": 0,
|
|
283
|
+
"icloud_status": "Syncing paused — Not Enough Local Storage",
|
|
284
|
+
"note": "Stats as of 2026-03-23 — read via 'count of media items' AppleScript"
|
|
285
|
+
},
|
|
286
|
+
"sidebar_sections": {
|
|
287
|
+
"Photos": ["Library", "Favorites", "Map", "Recently Saved", "Recently Deleted"],
|
|
288
|
+
"Collections": ["Days", "People", "Memories", "Trips", "Featured Photos", "Utilities", "Media Types", "Albums", "Projects"],
|
|
289
|
+
"Sharing": ["Shared Albums"]
|
|
290
|
+
},
|
|
291
|
+
"selectors": {
|
|
292
|
+
"sidebar_outline": "AXOutline inside second AXScrollArea of AXSplitGroup",
|
|
293
|
+
"sidebar_rows": {
|
|
294
|
+
"Library": "AXStaticText 'Library' in AXOutline row 2",
|
|
295
|
+
"Favorites": "AXStaticText 'Favorites' in AXOutline row 3",
|
|
296
|
+
"Map": "AXStaticText 'Map' in AXOutline row 4",
|
|
297
|
+
"Recently_Saved": "AXStaticText 'Recently Saved' in AXOutline row 5",
|
|
298
|
+
"Recently_Deleted": "AXStaticText 'Recently Deleted' in AXOutline row 6",
|
|
299
|
+
"Days": "AXStaticText 'Days' in AXOutline row 8",
|
|
300
|
+
"People": "AXStaticText 'People' in AXOutline row 9",
|
|
301
|
+
"Memories": "AXStaticText 'Memories' in AXOutline row 10",
|
|
302
|
+
"Trips": "AXStaticText 'Trips' in AXOutline row 11",
|
|
303
|
+
"Albums": "AXStaticText 'Albums' in AXOutline row 15",
|
|
304
|
+
"Shared_Albums": "AXStaticText 'Shared Albums' in AXOutline row 18"
|
|
305
|
+
},
|
|
306
|
+
"toolbar": {
|
|
307
|
+
"sidebar_toggle": "AXCheckBox[0] (first) in AXToolbar",
|
|
308
|
+
"zoom_slider": "AXSlider value=1-8 in AXToolbar AXGroup (zoom level)",
|
|
309
|
+
"zoom_in": "AXButton[+] in toolbar zoom group",
|
|
310
|
+
"zoom_out": "AXButton[-] in toolbar zoom group",
|
|
311
|
+
"view_switcher": "AXRadioGroup with 3 AXRadioButtons: Years/Months/All Photos",
|
|
312
|
+
"search_field": "AXTextField in AXGroup (rightmost toolbar group)"
|
|
313
|
+
},
|
|
314
|
+
"library_header": "AXStaticText '1,715 Photos, 42 Videos' — top of left sidebar"
|
|
315
|
+
},
|
|
316
|
+
"flows": {
|
|
317
|
+
"navigate_to_section": {
|
|
318
|
+
"description": "Navigate to any sidebar section",
|
|
319
|
+
"steps": [
|
|
320
|
+
"ui_press(pid, title='Library') — Photos > Library view",
|
|
321
|
+
"ui_press(pid, title='Favorites') — shows favorited items",
|
|
322
|
+
"ui_press(pid, title='People') — face recognition albums",
|
|
323
|
+
"ui_press(pid, title='Memories') — auto-generated memory movies",
|
|
324
|
+
"ui_press(pid, title='Albums') — user albums with disclosure triangle",
|
|
325
|
+
"ui_press(pid, title='Recently Deleted') — deleted items (30-day recovery window)"
|
|
326
|
+
]
|
|
327
|
+
},
|
|
328
|
+
"change_view_mode": {
|
|
329
|
+
"description": "Switch between Years / Months / All Photos view",
|
|
330
|
+
"steps": [
|
|
331
|
+
"Years view: key(combo='cmd+1', pid) or click first AXRadioButton in toolbar",
|
|
332
|
+
"Months view: key(combo='cmd+2', pid) or click second AXRadioButton",
|
|
333
|
+
"All Photos: key(combo='cmd+3', pid) or click third AXRadioButton (currently selected)"
|
|
334
|
+
]
|
|
335
|
+
},
|
|
336
|
+
"search_photos": {
|
|
337
|
+
"description": "Search library by keyword, person, place, or date",
|
|
338
|
+
"steps": [
|
|
339
|
+
"key(combo='cmd+f', pid) OR click AXTextField in toolbar",
|
|
340
|
+
"type_text('search term') — supports natural language (e.g. 'beach', 'selfie', 'October 2024')",
|
|
341
|
+
"Results shown in main grid"
|
|
342
|
+
],
|
|
343
|
+
"applescript_alternative": "search for 'term' — returns list of media items (confirmed: 'selfie'=123, 'video'=51, 'screenshot'=132)"
|
|
344
|
+
},
|
|
345
|
+
"create_album": {
|
|
346
|
+
"description": "Create a new album or smart album",
|
|
347
|
+
"steps": [
|
|
348
|
+
"New Album: key(combo='cmd+n', pid) or menu_click 'File/New Album'",
|
|
349
|
+
"Smart Album: key(combo='option+cmd+n', pid) or menu_click 'File/New Smart Album…' — opens rule editor",
|
|
350
|
+
"New Folder: key(combo='shift+cmd+n', pid) — groups multiple albums",
|
|
351
|
+
"New Memory Movie: key(combo='ctrl+cmd+n', pid)"
|
|
352
|
+
]
|
|
353
|
+
},
|
|
354
|
+
"export_photos": {
|
|
355
|
+
"description": "Export photos in various formats",
|
|
356
|
+
"steps": [
|
|
357
|
+
"Select photos (Cmd+A for all, or click individual)",
|
|
358
|
+
"Export Photos: key(combo='shift+cmd+e') — exports with edits applied",
|
|
359
|
+
"Export Unmodified Originals: key(combo='option+cmd+e') — raw original files",
|
|
360
|
+
"Export Slideshow: File > Export > Export Slideshow…",
|
|
361
|
+
"Export GIF: File > Export > Export GIF (converts Live Photo/video to GIF)",
|
|
362
|
+
"Export Frame: File > Export > Export Frame to Pictures (single frame from video)"
|
|
363
|
+
]
|
|
364
|
+
},
|
|
365
|
+
"edit_photo": {
|
|
366
|
+
"description": "Open and use the built-in edit tools",
|
|
367
|
+
"steps": [
|
|
368
|
+
"Double-click photo to open viewer, then click Edit or press Return",
|
|
369
|
+
"OR: key(combo='cmd+return') to show edit tools",
|
|
370
|
+
"Auto Enhance: key(combo='cmd+e', pid) — one-click smart enhancement",
|
|
371
|
+
"Rotate CCW: key(combo='cmd+r', pid)",
|
|
372
|
+
"Rotate CW: key(combo='option+cmd+r', pid)",
|
|
373
|
+
"Flip Horizontal: Image > Flip Horizontal",
|
|
374
|
+
"Revert to Original: Image > Revert to Original — undoes ALL edits",
|
|
375
|
+
"Copy Edits: key(combo='shift+cmd+c') then Paste Edits: key(combo='shift+cmd+v') — clone edits across photos"
|
|
376
|
+
]
|
|
377
|
+
},
|
|
378
|
+
"mark_favorite": {
|
|
379
|
+
"description": "Add/remove from Favorites",
|
|
380
|
+
"steps": [
|
|
381
|
+
"Select photo, then key(combo='cmd+.', pid) — toggles favorite",
|
|
382
|
+
"OR: Image > Add to Favorites",
|
|
383
|
+
"OR AppleScript: set favorite of <mediaItem> to true",
|
|
384
|
+
"View all favorites: click 'Favorites' in sidebar or key(combo='ctrl+cmd+2')"
|
|
385
|
+
]
|
|
386
|
+
},
|
|
387
|
+
"manage_keywords": {
|
|
388
|
+
"description": "Add, edit, search by keywords",
|
|
389
|
+
"steps": [
|
|
390
|
+
"Open Keyword Manager: key(combo='cmd+k', pid) or Window > Keyword Manager",
|
|
391
|
+
"Assign keyword to selected photo via Keyword Manager dialog",
|
|
392
|
+
"Filter by keyword: View > Filter By > Keyword Manager…",
|
|
393
|
+
"Show keyword metadata overlay: View > Metadata > Keywords"
|
|
394
|
+
]
|
|
395
|
+
},
|
|
396
|
+
"view_photo_info": {
|
|
397
|
+
"description": "View EXIF, location, and metadata for a photo",
|
|
398
|
+
"steps": [
|
|
399
|
+
"key(combo='cmd+i', pid) or Window > Info — opens Info panel",
|
|
400
|
+
"Shows: filename, date, camera model, lens, aperture, shutter speed, ISO, location map",
|
|
401
|
+
"Edit title/description in Info panel",
|
|
402
|
+
"Adjust Date and Time: Image > Adjust Date and Time… — batch correct timestamps",
|
|
403
|
+
"Location: Image > Location > Copy/Assign/Hide"
|
|
404
|
+
]
|
|
405
|
+
},
|
|
406
|
+
"slideshow": {
|
|
407
|
+
"description": "Play or create a slideshow",
|
|
408
|
+
"steps": [
|
|
409
|
+
"Select photos, then File > Play Slideshow — immediate fullscreen playback",
|
|
410
|
+
"Create saved slideshow: File > Create > Slideshow — editable with music/themes",
|
|
411
|
+
"Export slideshow: File > Export > Export Slideshow…"
|
|
412
|
+
]
|
|
413
|
+
},
|
|
414
|
+
"filter_view": {
|
|
415
|
+
"description": "Filter the photo grid by type or attribute",
|
|
416
|
+
"steps": [
|
|
417
|
+
"Favorites only: key(combo='option+cmd+1')",
|
|
418
|
+
"Edited only: key(combo='option+cmd+2')",
|
|
419
|
+
"Photos only (no videos): key(combo='option+cmd+3')",
|
|
420
|
+
"Videos only: key(combo='option+cmd+4')",
|
|
421
|
+
"Screenshots only: key(combo='option+cmd+5') or View > Screenshots",
|
|
422
|
+
"Not in any album: key(combo='option+cmd+6')"
|
|
423
|
+
]
|
|
424
|
+
},
|
|
425
|
+
"hide_unhide_photo": {
|
|
426
|
+
"description": "Hide a photo from main library view (does not delete)",
|
|
427
|
+
"steps": [
|
|
428
|
+
"Select photo, key(combo='option+cmd+l', pid) — hides from main library",
|
|
429
|
+
"View hidden: View > Show Hidden Photo Album",
|
|
430
|
+
"Unhide: select in hidden album, key(combo='option+cmd+l') again",
|
|
431
|
+
"NOTE: Hidden album is locked on iPhone (biometric) but accessible on Mac"
|
|
432
|
+
]
|
|
433
|
+
},
|
|
434
|
+
"shared_library": {
|
|
435
|
+
"description": "Move photos between Personal and Shared iCloud library",
|
|
436
|
+
"steps": [
|
|
437
|
+
"Move to Shared Library: Image > Move to Shared Library",
|
|
438
|
+
"Move to Personal Library: Image > Move to Personal Library",
|
|
439
|
+
"Toggle view: View > Both Libraries / Personal Library / Shared Library",
|
|
440
|
+
"In Shared Library metadata badge: View > Metadata > In Shared Library"
|
|
441
|
+
]
|
|
442
|
+
},
|
|
443
|
+
"live_photo_video": {
|
|
444
|
+
"description": "Control Live Photos and video playback",
|
|
445
|
+
"steps": [
|
|
446
|
+
"Start/Stop video playback: key(combo='option+cmd+space', pid) or Image > Start/Stop Playback",
|
|
447
|
+
"Toggle Live Photo on/off: Image > Turn On/Off Live Photo",
|
|
448
|
+
"Make Poster Frame (video): Image > Make Poster Frame — sets thumbnail frame",
|
|
449
|
+
"Make Key Photo (burst): Image > Make Key Photo — picks best from burst"
|
|
450
|
+
]
|
|
451
|
+
},
|
|
452
|
+
"raw_workflow": {
|
|
453
|
+
"description": "Work with RAW image files",
|
|
454
|
+
"steps": [
|
|
455
|
+
"Reprocess RAW: Image > Reprocess RAW — re-applies current RAW decode settings",
|
|
456
|
+
"Use RAW as Original: Image > Use RAW as Original — switches from JPEG to RAW version",
|
|
457
|
+
"Export Unmodified Originals: File > Export > Export Unmodified Originals…"
|
|
458
|
+
]
|
|
459
|
+
},
|
|
460
|
+
"print_create_projects": {
|
|
461
|
+
"description": "Print or order physical products",
|
|
462
|
+
"steps": [
|
|
463
|
+
"Print: key(combo='cmd+p', pid) — sends to printer",
|
|
464
|
+
"Create Book: File > Create > Book — order photo book via third-party extension",
|
|
465
|
+
"Create Calendar: File > Create > Calendar",
|
|
466
|
+
"Create Card: File > Create > Card",
|
|
467
|
+
"Create Wall Decor / Prints: File > Create > Wall Decor / Prints",
|
|
468
|
+
"Manage extensions: File > Create > Manage…"
|
|
469
|
+
]
|
|
470
|
+
}
|
|
471
|
+
},
|
|
472
|
+
"known_techniques": {
|
|
473
|
+
"applescript_library_query": {
|
|
474
|
+
"description": "Query Photos library metadata via AppleScript — READ ONLY, no mutations needed",
|
|
475
|
+
"confirmed_working": [
|
|
476
|
+
"count of media items -- total count (1757)",
|
|
477
|
+
"count of (media items whose favorite is true) -- favorites count",
|
|
478
|
+
"count of albums -- user album count",
|
|
479
|
+
"count of folders -- folder count",
|
|
480
|
+
"search for 'term' -- returns list of matching media items",
|
|
481
|
+
"name of every container -- lists all containers (e.g. 'Favorites')",
|
|
482
|
+
"media items of container 'Favorites' -- items in a named container",
|
|
483
|
+
"filename of <mediaItem> -- e.g. 'IMG_3717.JPG'",
|
|
484
|
+
"date of <mediaItem> -- capture date as AppleScript date",
|
|
485
|
+
"favorite of <mediaItem> -- true/false",
|
|
486
|
+
"keywords of <mediaItem> -- list of keyword strings (missing value if none)",
|
|
487
|
+
"selection -- currently selected items in UI"
|
|
488
|
+
],
|
|
489
|
+
"confirmed_broken": [
|
|
490
|
+
"media item 1 of media items -- -1728: use 'item 1 of (media items)'",
|
|
491
|
+
"latitude/longitude/altitude of media item -- -1700 type mismatch",
|
|
492
|
+
"title of media item -- -1700 type mismatch",
|
|
493
|
+
"hidden of media item -- -1723 access not allowed",
|
|
494
|
+
"library 1 -- syntax error ('library' is reserved word)"
|
|
495
|
+
],
|
|
496
|
+
"correct_item_access": "item 1 of (media items of container 'Favorites')"
|
|
497
|
+
},
|
|
498
|
+
"applescript_write": {
|
|
499
|
+
"description": "Write operations confirmed via AppleScript",
|
|
500
|
+
"confirmed_working": [
|
|
501
|
+
"set favorite of <mediaItem> to true/false -- toggle favorite",
|
|
502
|
+
"set keywords of <mediaItem> to {\"tag1\", \"tag2\"} -- assign keywords",
|
|
503
|
+
"make new album with properties {name:\"Album Name\"} -- create album",
|
|
504
|
+
"add <mediaItems> to album <album> -- add to album",
|
|
505
|
+
"remove <mediaItem> from album <album> -- remove from album (does not delete)"
|
|
506
|
+
],
|
|
507
|
+
"note": "All write ops require Photos automation permission granted in System Preferences > Privacy > Automation"
|
|
508
|
+
},
|
|
509
|
+
"toolbar_zoom": {
|
|
510
|
+
"description": "Zoom level control in main grid",
|
|
511
|
+
"confirmed": true,
|
|
512
|
+
"method": "AXSlider in toolbar (value 1-8). Also: Cmd+= zoom in, Cmd+- zoom out, Cmd+Z fit"
|
|
513
|
+
},
|
|
514
|
+
"metadata_overlays": {
|
|
515
|
+
"description": "Show metadata badges on photo thumbnails",
|
|
516
|
+
"options": ["Titles (Shift+Cmd+T)", "Keywords", "Edited", "File Type", "Favorite", "Referenced File", "Location", "In Shared Library"],
|
|
517
|
+
"toggle": "View > Metadata > [option]"
|
|
518
|
+
},
|
|
519
|
+
"filter_by": {
|
|
520
|
+
"description": "Toolbar filter shortcuts",
|
|
521
|
+
"options": {
|
|
522
|
+
"Favorites": "Option+Cmd+1",
|
|
523
|
+
"Edited": "Option+Cmd+2",
|
|
524
|
+
"Photos": "Option+Cmd+3",
|
|
525
|
+
"Videos": "Option+Cmd+4",
|
|
526
|
+
"Screenshots": "Option+Cmd+5 (or View > Screenshots)",
|
|
527
|
+
"Not in an Album": "Option+Cmd+6"
|
|
528
|
+
}
|
|
529
|
+
},
|
|
530
|
+
"people_memories": {
|
|
531
|
+
"description": "AI-curated collections",
|
|
532
|
+
"people": "Sidebar > People — face recognition, auto-named albums per person. Cmd+K to assign keywords.",
|
|
533
|
+
"memories": "Sidebar > Memories — auto-generated slideshows with music for date/location/event clusters. Play as movie or edit.",
|
|
534
|
+
"trips": "Sidebar > Trips — groups photos by travel location clusters",
|
|
535
|
+
"featured": "Sidebar > Featured Photos — Apple editorial picks from your library"
|
|
536
|
+
},
|
|
537
|
+
"media_types_view": {
|
|
538
|
+
"description": "Filter by media type via Collections > Media Types",
|
|
539
|
+
"types": ["Videos", "Selfies", "Panoramas", "Time-lapse", "Slow-mo", "Bursts", "Screenshots", "Screen Recordings", "Animated", "RAW", "Live Photos", "Portraits", "Long Exposure"]
|
|
540
|
+
},
|
|
541
|
+
"live_text": {
|
|
542
|
+
"description": "Live Text in Photos — select and copy text visible in photos",
|
|
543
|
+
"method": "Open photo in viewer → hover → text becomes selectable (macOS Monterey+)",
|
|
544
|
+
"no_shortcut": true
|
|
545
|
+
},
|
|
546
|
+
"visual_lookup": {
|
|
547
|
+
"description": "Visual Look Up — identify objects, landmarks, plants, animals in photos",
|
|
548
|
+
"method": "Open photo in viewer → click the ⓘ sparkle icon in toolbar → 'Look Up' appears for recognized content"
|
|
549
|
+
},
|
|
550
|
+
"edit_tools_advanced": {
|
|
551
|
+
"description": "Full editing suite accessible via Show Edit Tools (Cmd+Return in viewer)",
|
|
552
|
+
"light_controls": ["Brilliance (auto-brightens dark areas)", "Exposure", "Highlights", "Shadows", "Brightness", "Contrast", "Black Point"],
|
|
553
|
+
"color_controls": ["Saturation", "Vibrance", "Warmth", "Tint", "Color cast"],
|
|
554
|
+
"black_and_white": ["Intensity", "Neutrals", "Tone", "Grain"],
|
|
555
|
+
"white_balance": ["Neutral Grey", "Skin Tone", "Temperature/Tint"],
|
|
556
|
+
"detail": ["Sharpen", "Definition", "Noise Reduction", "Vignette"],
|
|
557
|
+
"curves": "Fine-tune contrast and color per channel (RGB, Red, Green, Blue)",
|
|
558
|
+
"levels": "Adjust midtones, highlights, shadows per channel",
|
|
559
|
+
"selective_color": "Target and enhance individual hues",
|
|
560
|
+
"vignette": "Edge shading to draw focus to subject",
|
|
561
|
+
"comparison_mode": "Toggle between edited and original during editing — click and hold on photo",
|
|
562
|
+
"how_to_open": "Double-click photo → click Edit button (top right) or press Return"
|
|
563
|
+
},
|
|
564
|
+
"filters": {
|
|
565
|
+
"description": "9 one-tap filters inspired by classic photography styles",
|
|
566
|
+
"list": ["Original", "Vivid", "Vivid Warm", "Vivid Cool", "Dramatic", "Dramatic Warm", "Dramatic Cool", "Mono", "Silvertone", "Noir"],
|
|
567
|
+
"how_to_access": "Edit mode → Filters tab (third tab in edit panel)"
|
|
568
|
+
},
|
|
569
|
+
"live_photo_effects": {
|
|
570
|
+
"description": "Convert Live Photos into special effects",
|
|
571
|
+
"effects": {
|
|
572
|
+
"Loop": "Creates continuously looping video from Live Photo",
|
|
573
|
+
"Bounce": "Plays Live Photo action forward then backward repeatedly",
|
|
574
|
+
"Long_Exposure": "Blurs moving water, extends light trails — simulates DSLR long exposure"
|
|
575
|
+
},
|
|
576
|
+
"how_to_access": "Open Live Photo → swipe up OR click the Live badge → choose effect",
|
|
577
|
+
"trim_and_mute": "Edit Live Photo length, mute audio, change key frame (Make Key Photo)"
|
|
578
|
+
},
|
|
579
|
+
"portrait_lighting": {
|
|
580
|
+
"description": "5 studio-quality lighting effects for Portrait mode photos shot on iPhone",
|
|
581
|
+
"effects": ["Natural Light", "Studio Light", "Contour Light", "Stage Light", "Stage Light Mono"],
|
|
582
|
+
"how_to_access": "Open Portrait photo in edit mode → Adjust slider at top of photo",
|
|
583
|
+
"depth_control": "Depth Control slider adjusts background blur intensity (f/stop simulation)"
|
|
584
|
+
},
|
|
585
|
+
"markup_tools": {
|
|
586
|
+
"description": "Annotate photos with drawings, text, shapes, and signatures",
|
|
587
|
+
"tools": ["Sketch (freehand)", "Text box", "Shapes (rectangle, circle, arrow, star, speech bubble)", "Signature", "Magnify loupe", "Color picker"],
|
|
588
|
+
"how_to_access": "Edit mode → tap the ellipsis (…) → Markup",
|
|
589
|
+
"note": "Markup edits are non-destructive and can be reverted"
|
|
590
|
+
},
|
|
591
|
+
"third_party_extensions": {
|
|
592
|
+
"description": "Extend Photos with App Store editing and project extensions",
|
|
593
|
+
"editing_extensions": "Filters, texture, retouching, noise reduction from third-party apps",
|
|
594
|
+
"project_extensions": ["Motif", "Mimeo Photos", "Shutterfly", "ifolor", "WhiteWall", "Mpix", "Fujifilm", "Wix"],
|
|
595
|
+
"project_types": ["Photo Books", "Calendars", "Cards", "Wall Decor", "Gallery Prints", "Websites"],
|
|
596
|
+
"how_to_access_edit": "Edit mode → ellipsis (…) → choose installed extension",
|
|
597
|
+
"how_to_access_project": "File > Create > [type] — lists installed extensions",
|
|
598
|
+
"manage": "File > Create > Manage… — install/remove extensions"
|
|
599
|
+
},
|
|
600
|
+
"intelligent_curation": {
|
|
601
|
+
"description": "Automatic library decluttering and smart curation",
|
|
602
|
+
"auto_hide": "Hides duplicates, receipts, and screenshots from main library views to reduce clutter",
|
|
603
|
+
"best_shots": "Larger previews automatically given to best shots in Days view",
|
|
604
|
+
"import_history": "Browse imports chronologically — File > Import… shows batched import history",
|
|
605
|
+
"memories_music": "Apple Music subscribers get personalized song suggestions for their Memory movies"
|
|
606
|
+
},
|
|
607
|
+
"shared_albums_collaboration": {
|
|
608
|
+
"description": "Share albums with others for collaborative viewing and contributing",
|
|
609
|
+
"shared_library": "Up to 5 family members can contribute to one Shared Library — everyone sees all additions",
|
|
610
|
+
"shared_albums": "Lighter sharing — share specific albums, others can add photos and leave comments",
|
|
611
|
+
"smart_sharing": "Select specific photos to move to shared vs keeping in personal library",
|
|
612
|
+
"how_to_access": "Sidebar > Sharing > Shared Albums, or Image > Move to Shared Library"
|
|
613
|
+
}
|
|
614
|
+
},
|
|
615
|
+
"errors": [
|
|
616
|
+
{
|
|
617
|
+
"pattern": "Can't get media item 1 of every media item (-1728)",
|
|
618
|
+
"cause": "Direct indexed access on 'media items' collection doesn't work",
|
|
619
|
+
"fix": "Use: item 1 of (media items) or item 1 of (media items of container 'Favorites')"
|
|
620
|
+
},
|
|
621
|
+
{
|
|
622
|
+
"pattern": "Can't make latitude/longitude/title/altitude into type specifier (-1700)",
|
|
623
|
+
"cause": "These properties not accessible via standard AppleScript on media items",
|
|
624
|
+
"fix": "Use Window > Info (Cmd+I) UI panel to read location/EXIF, or use ui_tree/OCR on the Info panel"
|
|
625
|
+
},
|
|
626
|
+
{
|
|
627
|
+
"pattern": "Can't get hidden of media item — Access not allowed (-1723)",
|
|
628
|
+
"cause": "hidden property is restricted by Apple privacy policy",
|
|
629
|
+
"fix": "Navigate to View > Show Hidden Photo Album in UI to access hidden photos"
|
|
630
|
+
},
|
|
631
|
+
{
|
|
632
|
+
"pattern": "library 1 causes syntax error",
|
|
633
|
+
"cause": "'library' is a reserved word in AppleScript",
|
|
634
|
+
"fix": "Use 'container' instead: media items of container 'Favorites', or just 'media items' for whole library"
|
|
635
|
+
},
|
|
636
|
+
{
|
|
637
|
+
"pattern": "iCloud sync paused — Not Enough Local Storage",
|
|
638
|
+
"cause": "Mac storage too low for iCloud Photos to sync",
|
|
639
|
+
"fix": "Settings > iCloud Photos > Optimize Mac Storage. Or free up disk space."
|
|
640
|
+
}
|
|
641
|
+
]
|
|
642
|
+
}
|