macOS 12であらたに搭載されたショートカット.appのショートカット・ワークフローのアイコンを読み取ってダイアログ表示するAppleScriptです。

Shortcuts.appおよびShortcuts Events.app経由で各ショートカット・ワークフローの情報を取得することができます。
tell application "Shortcuts Events"
  set aList to properties of shortcut 1
  –> name:"ASTEST", class:shortcut, accepts input:false, action count:1, subtitle:"1個のアクション", folder:missing value, color:{62105, 22734, 24226}, computer name:«data TIFF4D4D002A00040008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 …..»  id:"5CEF527E-F2E7-42A4-9513-209F098E50E9"}
  
end tell
★Click Here to Open This Script 
ここで、「computer name」と解釈されているのがショートカット・ワークフローのアイコンです。このあたりバグくさいところですね。実際には「icon」という属性ラベルなのですが、、、、
iconデータの内容は最初の文字を見れば丸わかりのTIFF画像です。
手っ取り早く変換したかったので、クリップボード経由でNSImageに変換して、ダイアログに表示してみました。
この手の「ちょっとしたビューをアラートダイアログに入れてデータ表示」を行うのは、すでにノウハウがたまっていて気楽に行えるのが2021年的なAppleScriptの利用状況です。
とりあえず、すべてのショートカット・ワークフローのアイコンを取得することはできるのですが、全部確認するのはかったるいので冒頭の10個だけ表示しています。
–> Watch Demo Movie
| AppleScript名:ショートカットのプロパティで返ってくるアイコンをダイアログ表示.scpt | 
| — –  Created by: Takaaki Naganoya
 –  Created on: 2021/10/27
 —
 –  Copyright © 2021 Piyomaru Software, All Rights Reserved
 —
 use AppleScript version "2.8"
 use scripting additions
 use framework "Foundation"
 use framework "AppKit"
property NSAlert : a reference to current application’s NSAlert
 property NSImage : a reference to current application’s NSImage
 property NSImageView : a reference to current application’s NSImageView
 property NSRunningApplication : a reference to current application’s NSRunningApplication
 property NSImageScaleProportionallyUpOrDown : a reference to current application’s NSImageScaleProportionallyUpOrDown
property returnCode : 0
tell application "Shortcuts Events"
 set aCount to count every shortcut
 if aCount > 10 then
 set aCount to 10 –Too dull to see every icons…. If you want whole icons, remove this if-then block
 end if
 end tell
repeat with i from 1 to aCount
 tell application "Shortcuts Events"
 set aProp to properties of shortcut i
 set aCon to icon of aProp
 set aName to name of aProp
 end tell
 
 –クリップボードの内容をNSImageに
 set the clipboard to aCon
 set aNSIMage to my getClipboardASImage()
 
 my dispNSImage(aNSIMage, aName)
 end repeat
on dispNSImage(aNSIMage, aTitle)
 set aMessage to "Your NSImage"
 set paramObj to {myMessage:aTitle, mySubMessage:"This is an image", myImage:aNSIMage}
 my performSelectorOnMainThread:"displayImageView:" withObject:(paramObj) waitUntilDone:true
 –my displayImageView:paramObj–for debugging with Script Editor
 end dispNSImage
on displayImageView:paramObj
 set aMainMes to myMessage of paramObj
 set aSubMes to mySubMessage of paramObj
 set anImage to (myImage of paramObj)
 
 set imgSize to (anImage’s |size|())
 set imgWidth to ((imgSize’s width) as real)
 set imgHeight to ((imgSize’s height) as real)
 
 set anImageView to NSImageView’s alloc()’s initWithFrame:{origin:{x:0.0, y:0.0}, |size|:{width:imgWidth, height:imgHeight}}
 anImageView’s setImageScaling:(NSImageScaleProportionallyUpOrDown)
 anImageView’s setEditable:false
 anImageView’s setImage:anImage
 anImageView’s display()
 
 — set up alert
 set theAlert to NSAlert’s alloc()’s init()
 tell theAlert
 its setMessageText:aMainMes
 its setIcon:anImage
 its setInformativeText:aSubMes
 its addButtonWithTitle:"OK"
 its addButtonWithTitle:"Cancel"
 its setAccessoryView:anImageView
 end tell
 
 — show alert in modal loop
 NSRunningApplication’s currentApplication()’s activateWithOptions:0
 my performSelectorOnMainThread:"doModal:" withObject:(theAlert) waitUntilDone:true
 if (my returnCode as number) = 1001 then error number -128
 end displayImageView:
on doModal:aParam
 set (my returnCode) to aParam’s runModal()
 end doModal:
— クリップボードの内容をNSImageとして取り出して返す
 on getClipboardASImage()
 set theNSPasteboard to current application’s NSPasteboard’s generalPasteboard()
 set theAttributedStringNSArray to theNSPasteboard’s readObjectsForClasses:({current application’s NSImage}) options:(missing value)
 set theNSAttributedString to theAttributedStringNSArray’s objectAtIndex:0
 return theNSAttributedString
 end getClipboardASImage
 | 
| ★Click Here to Open This Script  |