[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6MW3AHNTSA8H2XZ3F1PR79B":3,"skill-same:01M6MW3AHNTSA8H2XZ3F1PR79B":104},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":17,"publishedAt":38,"linkOnly":39,"markdownContent":40,"markdownBody":41,"frontMatter":42,"refName":44,"commitSha":45,"skillDirectory":46,"forksCount":47,"repositoryHtmlUrl":48,"repositoryHomepageUrl":6,"ownerHtmlUrl":49,"ownerBlogUrl":6,"ownerDescription":50,"updatedAt":51,"install":52,"resources":65},"01M6MW3AHNTSA8H2XZ3F1PR79B","shortcuts-generator",null,"Generate macOS\u002FiOS Shortcuts by creating plist files. Use when asked to create shortcuts, automate workflows, build .shortcut files, or generate Shortcuts plists. Covers 1,155 actions (427 WF*Actions + 728 AppIntents), variable references, and control flow.","Kernel8901\u002Fai-agent-skills-classification","Kernel8901","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F72647553?v=4","01M6KV388J2H5PNC8D8P940BJD","01M6KV38CS5B3AY63RKZB410YM",7,"MIT","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002FiOS和macOS开发\u002Fshortcuts-skill\u002FSKILL.md",[],[18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37],"generator","shortcuts","shortcuts generator","files","shortcut","control","wf","plist","build","references","workflows","use","write","automate","Bash","flow","ios","actions","generate","create","2026-11-10 10:12:30",false,"---\nname: shortcuts-generator\ndescription: Generate macOS\u002FiOS Shortcuts by creating plist files. Use when asked to create shortcuts, automate workflows, build .shortcut files, or generate Shortcuts plists. Covers 1,155 actions (427 WF*Actions + 728 AppIntents), variable references, and control flow.\nallowed-tools: Write, Bash\n---\n\n# macOS Shortcuts Generator\n\nGenerate valid `.shortcut` files that can be signed and imported into Apple's Shortcuts app.\n\n## Quick Start\n\nA shortcut is a binary plist with this structure:\n\n```xml\n\u003C?xml version=\"1.0\" encoding=\"UTF-8\"?>\n\u003C!DOCTYPE plist PUBLIC \"-\u002F\u002FApple\u002F\u002FDTD PLIST 1.0\u002F\u002FEN\" \"http:\u002F\u002Fwww.apple.com\u002FDTDs\u002FPropertyList-1.0.dtd\">\n\u003Cplist version=\"1.0\">\n\u003Cdict>\n    \u003Ckey>WFWorkflowActions\u003C\u002Fkey>\n    \u003Carray>\n        \u003C!-- Actions go here -->\n    \u003C\u002Farray>\n    \u003Ckey>WFWorkflowClientVersion\u003C\u002Fkey>\n    \u003Cstring>2700.0.4\u003C\u002Fstring>\n    \u003Ckey>WFWorkflowHasOutputFallback\u003C\u002Fkey>\n    \u003Cfalse\u002F>\n    \u003Ckey>WFWorkflowIcon\u003C\u002Fkey>\n    \u003Cdict>\n        \u003Ckey>WFWorkflowIconGlyphNumber\u003C\u002Fkey>\n        \u003Cinteger>59511\u003C\u002Finteger>\n        \u003Ckey>WFWorkflowIconStartColor\u003C\u002Fkey>\n        \u003Cinteger>4282601983\u003C\u002Finteger>\n    \u003C\u002Fdict>\n    \u003Ckey>WFWorkflowImportQuestions\u003C\u002Fkey>\n    \u003Carray\u002F>\n    \u003Ckey>WFWorkflowMinimumClientVersion\u003C\u002Fkey>\n    \u003Cinteger>900\u003C\u002Finteger>\n    \u003Ckey>WFWorkflowMinimumClientVersionString\u003C\u002Fkey>\n    \u003Cstring>900\u003C\u002Fstring>\n    \u003Ckey>WFWorkflowName\u003C\u002Fkey>\n    \u003Cstring>My Shortcut\u003C\u002Fstring>\n    \u003Ckey>WFWorkflowOutputContentItemClasses\u003C\u002Fkey>\n    \u003Carray\u002F>\n    \u003Ckey>WFWorkflowTypes\u003C\u002Fkey>\n    \u003Carray\u002F>\n\u003C\u002Fdict>\n\u003C\u002Fplist>\n```\n\n### Minimal Hello World\n\n```xml\n\u003Cdict>\n    \u003Ckey>WFWorkflowActionIdentifier\u003C\u002Fkey>\n    \u003Cstring>is.workflow.actions.gettext\u003C\u002Fstring>\n    \u003Ckey>WFWorkflowActionParameters\u003C\u002Fkey>\n    \u003Cdict>\n        \u003Ckey>UUID\u003C\u002Fkey>\n        \u003Cstring>A1B2C3D4-E5F6-7890-ABCD-EF1234567890\u003C\u002Fstring>\n        \u003Ckey>WFTextActionText\u003C\u002Fkey>\n        \u003Cstring>Hello World!\u003C\u002Fstring>\n    \u003C\u002Fdict>\n\u003C\u002Fdict>\n\u003Cdict>\n    \u003Ckey>WFWorkflowActionIdentifier\u003C\u002Fkey>\n    \u003Cstring>is.workflow.actions.showresult\u003C\u002Fstring>\n    \u003Ckey>WFWorkflowActionParameters\u003C\u002Fkey>\n    \u003Cdict>\n        \u003Ckey>Text\u003C\u002Fkey>\n        \u003Cdict>\n            \u003Ckey>Value\u003C\u002Fkey>\n            \u003Cdict>\n                \u003Ckey>attachmentsByRange\u003C\u002Fkey>\n                \u003Cdict>\n                    \u003Ckey>{0, 1}\u003C\u002Fkey>\n                    \u003Cdict>\n                        \u003Ckey>OutputName\u003C\u002Fkey>\n                        \u003Cstring>Text\u003C\u002Fstring>\n                        \u003Ckey>OutputUUID\u003C\u002Fkey>\n                        \u003Cstring>A1B2C3D4-E5F6-7890-ABCD-EF1234567890\u003C\u002Fstring>\n                        \u003Ckey>Type\u003C\u002Fkey>\n                        \u003Cstring>ActionOutput\u003C\u002Fstring>\n                    \u003C\u002Fdict>\n                \u003C\u002Fdict>\n                \u003Ckey>string\u003C\u002Fkey>\n                \u003Cstring>￼\u003C\u002Fstring>\n            \u003C\u002Fdict>\n            \u003Ckey>WFSerializationType\u003C\u002Fkey>\n            \u003Cstring>WFTextTokenString\u003C\u002Fstring>\n        \u003C\u002Fdict>\n    \u003C\u002Fdict>\n\u003C\u002Fdict>\n```\n\n## Core Concepts\n\n### 1. Actions\nEvery action has:\n- **Identifier**: `is.workflow.actions.\u003Cname>` (e.g., `is.workflow.actions.showresult`)\n- **Parameters**: Action-specific configuration in `WFWorkflowActionParameters`\n- **UUID**: Unique identifier for referencing this action's output\n\n### 2. Variable References\nTo use output from a previous action:\n1. The source action needs a `UUID` parameter\n2. Reference it using `OutputUUID` in an `attachmentsByRange` dictionary\n3. Use `￼` (U+FFFC) as placeholder in the string where the variable goes\n4. Set `WFSerializationType` to `WFTextTokenString`\n\n### 3. Control Flow\nControl flow actions (repeat, conditional, menu) use:\n- `GroupingIdentifier`: UUID linking start\u002Fmiddle\u002Fend actions\n- `WFControlFlowMode`: 0=start, 1=middle (else\u002Fcase), 2=end\n\n## Common Actions Quick Reference\n\n| Action | Identifier | Key Parameters |\n|--------|------------|----------------|\n| Text | `is.workflow.actions.gettext` | `WFTextActionText` |\n| Show Result | `is.workflow.actions.showresult` | `Text` |\n| Ask for Input | `is.workflow.actions.ask` | `WFAskActionPrompt`, `WFInputType` |\n| Use AI Model | `is.workflow.actions.askllm` | `WFLLMPrompt`, `WFLLMModel`, `WFGenerativeResultType` |\n| Comment | `is.workflow.actions.comment` | `WFCommentActionText` |\n| URL | `is.workflow.actions.url` | `WFURLActionURL` |\n| Get Contents of URL | `is.workflow.actions.downloadurl` | `WFURL`, `WFHTTPMethod` |\n| Get Weather | `is.workflow.actions.weather.currentconditions` | (none required) |\n| Open App | `is.workflow.actions.openapp` | `WFAppIdentifier` |\n| Open URL | `is.workflow.actions.openurl` | `WFInput` |\n| Alert | `is.workflow.actions.alert` | `WFAlertActionTitle`, `WFAlertActionMessage` |\n| Notification | `is.workflow.actions.notification` | `WFNotificationActionTitle`, `WFNotificationActionBody` |\n| Set Variable | `is.workflow.actions.setvariable` | `WFVariableName`, `WFInput` |\n| Get Variable | `is.workflow.actions.getvariable` | `WFVariable` |\n| Number | `is.workflow.actions.number` | `WFNumberActionNumber` |\n| List | `is.workflow.actions.list` | `WFItems` |\n| Dictionary | `is.workflow.actions.dictionary` | `WFItems` |\n| Repeat (count) | `is.workflow.actions.repeat.count` | `WFRepeatCount`, `GroupingIdentifier`, `WFControlFlowMode` |\n| Repeat (each) | `is.workflow.actions.repeat.each` | `WFInput`, `GroupingIdentifier`, `WFControlFlowMode` |\n| If\u002FOtherwise | `is.workflow.actions.conditional` | `WFInput`, `WFCondition`, `GroupingIdentifier`, `WFControlFlowMode` |\n| Choose from Menu | `is.workflow.actions.choosefrommenu` | `WFMenuPrompt`, `WFMenuItems`, `GroupingIdentifier`, `WFControlFlowMode` |\n| Find Photos | `is.workflow.actions.filter.photos` | `WFContentItemFilter` (see FILTERS.md) |\n| Delete Photos | `is.workflow.actions.deletephotos` | `photos` (**NOT** `WFInput`!) |\n\n## Detailed Reference Files\n\nFor complete documentation, see:\n- [PLIST_FORMAT.md](PLIST_FORMAT.md) - Complete plist structure\n- [ACTIONS.md](ACTIONS.md) - All 427 WF*Action identifiers and parameters\n- [APPINTENTS.md](APPINTENTS.md) - All 728 AppIntent actions\n- [PARAMETER_TYPES.md](PARAMETER_TYPES.md) - All parameter value types and serialization formats\n- [VARIABLES.md](VARIABLES.md) - Variable reference system\n- [CONTROL_FLOW.md](CONTROL_FLOW.md) - Repeat, Conditional, Menu patterns\n- [FILTERS.md](FILTERS.md) - Content filters for Find\u002FFilter actions (photos, files, etc.)\n- [EXAMPLES.md](EXAMPLES.md) - Complete working examples\n\n## Signing Shortcuts\n\nShortcuts MUST be signed before they can be imported. Use the macOS `shortcuts` CLI:\n\n```bash\n# Sign for anyone to use\nshortcuts sign --mode anyone --input MyShortcut.shortcut --output MyShortcut_signed.shortcut\n\n# Sign for people who know you\nshortcuts sign --mode people-who-know-me --input MyShortcut.shortcut --output MyShortcut_signed.shortcut\n```\n\nThe signing process:\n1. Write your plist as XML to a `.shortcut` file\n2. Run `shortcuts sign` to add cryptographic signature (~19KB added)\n3. The signed file can be opened\u002Fimported into Shortcuts.app\n\n## Workflow for Creating Shortcuts\n\n1. **Define actions** - List what the shortcut should do\n2. **Generate UUIDs** - Each action that produces output needs a unique UUID\n3. **Build action array** - Create each action dictionary with identifier and parameters\n4. **Wire variable references** - Connect outputs to inputs using `OutputUUID`\n5. **Wrap in plist** - Add the root structure with icon, name, version\n6. **Write to file** - Save as `.shortcut` (XML plist format is fine)\n7. **Sign** - Run `shortcuts sign` to make it importable\n\n## Key Rules\n\n1. **UUIDs must be uppercase**: `A1B2C3D4-E5F6-7890-ABCD-EF1234567890`\n2. **WFControlFlowMode is an integer**: Use `\u003Cinteger>0\u003C\u002Finteger>` not `\u003Cstring>0\u003C\u002Fstring>`\n3. **Range keys use format**: `{position, length}` - e.g., `{0, 1}` for first character\n4. **The placeholder character**: `￼` (U+FFFC) marks where variables are inserted\n5. **Control flow needs matching ends**: Every repeat\u002Fif\u002Fmenu start needs an end action with same `GroupingIdentifier`\n","# macOS Shortcuts Generator\n\nGenerate valid `.shortcut` files that can be signed and imported into Apple's Shortcuts app.\n\n## Quick Start\n\nA shortcut is a binary plist with this structure:\n\n```xml\n\u003C?xml version=\"1.0\" encoding=\"UTF-8\"?>\n\u003C!DOCTYPE plist PUBLIC \"-\u002F\u002FApple\u002F\u002FDTD PLIST 1.0\u002F\u002FEN\" \"http:\u002F\u002Fwww.apple.com\u002FDTDs\u002FPropertyList-1.0.dtd\">\n\u003Cplist version=\"1.0\">\n\u003Cdict>\n    \u003Ckey>WFWorkflowActions\u003C\u002Fkey>\n    \u003Carray>\n        \u003C!-- Actions go here -->\n    \u003C\u002Farray>\n    \u003Ckey>WFWorkflowClientVersion\u003C\u002Fkey>\n    \u003Cstring>2700.0.4\u003C\u002Fstring>\n    \u003Ckey>WFWorkflowHasOutputFallback\u003C\u002Fkey>\n    \u003Cfalse\u002F>\n    \u003Ckey>WFWorkflowIcon\u003C\u002Fkey>\n    \u003Cdict>\n        \u003Ckey>WFWorkflowIconGlyphNumber\u003C\u002Fkey>\n        \u003Cinteger>59511\u003C\u002Finteger>\n        \u003Ckey>WFWorkflowIconStartColor\u003C\u002Fkey>\n        \u003Cinteger>4282601983\u003C\u002Finteger>\n    \u003C\u002Fdict>\n    \u003Ckey>WFWorkflowImportQuestions\u003C\u002Fkey>\n    \u003Carray\u002F>\n    \u003Ckey>WFWorkflowMinimumClientVersion\u003C\u002Fkey>\n    \u003Cinteger>900\u003C\u002Finteger>\n    \u003Ckey>WFWorkflowMinimumClientVersionString\u003C\u002Fkey>\n    \u003Cstring>900\u003C\u002Fstring>\n    \u003Ckey>WFWorkflowName\u003C\u002Fkey>\n    \u003Cstring>My Shortcut\u003C\u002Fstring>\n    \u003Ckey>WFWorkflowOutputContentItemClasses\u003C\u002Fkey>\n    \u003Carray\u002F>\n    \u003Ckey>WFWorkflowTypes\u003C\u002Fkey>\n    \u003Carray\u002F>\n\u003C\u002Fdict>\n\u003C\u002Fplist>\n```\n\n### Minimal Hello World\n\n```xml\n\u003Cdict>\n    \u003Ckey>WFWorkflowActionIdentifier\u003C\u002Fkey>\n    \u003Cstring>is.workflow.actions.gettext\u003C\u002Fstring>\n    \u003Ckey>WFWorkflowActionParameters\u003C\u002Fkey>\n    \u003Cdict>\n        \u003Ckey>UUID\u003C\u002Fkey>\n        \u003Cstring>A1B2C3D4-E5F6-7890-ABCD-EF1234567890\u003C\u002Fstring>\n        \u003Ckey>WFTextActionText\u003C\u002Fkey>\n        \u003Cstring>Hello World!\u003C\u002Fstring>\n    \u003C\u002Fdict>\n\u003C\u002Fdict>\n\u003Cdict>\n    \u003Ckey>WFWorkflowActionIdentifier\u003C\u002Fkey>\n    \u003Cstring>is.workflow.actions.showresult\u003C\u002Fstring>\n    \u003Ckey>WFWorkflowActionParameters\u003C\u002Fkey>\n    \u003Cdict>\n        \u003Ckey>Text\u003C\u002Fkey>\n        \u003Cdict>\n            \u003Ckey>Value\u003C\u002Fkey>\n            \u003Cdict>\n                \u003Ckey>attachmentsByRange\u003C\u002Fkey>\n                \u003Cdict>\n                    \u003Ckey>{0, 1}\u003C\u002Fkey>\n                    \u003Cdict>\n                        \u003Ckey>OutputName\u003C\u002Fkey>\n                        \u003Cstring>Text\u003C\u002Fstring>\n                        \u003Ckey>OutputUUID\u003C\u002Fkey>\n                        \u003Cstring>A1B2C3D4-E5F6-7890-ABCD-EF1234567890\u003C\u002Fstring>\n                        \u003Ckey>Type\u003C\u002Fkey>\n                        \u003Cstring>ActionOutput\u003C\u002Fstring>\n                    \u003C\u002Fdict>\n                \u003C\u002Fdict>\n                \u003Ckey>string\u003C\u002Fkey>\n                \u003Cstring>￼\u003C\u002Fstring>\n            \u003C\u002Fdict>\n            \u003Ckey>WFSerializationType\u003C\u002Fkey>\n            \u003Cstring>WFTextTokenString\u003C\u002Fstring>\n        \u003C\u002Fdict>\n    \u003C\u002Fdict>\n\u003C\u002Fdict>\n```\n\n## Core Concepts\n\n### 1. Actions\nEvery action has:\n- **Identifier**: `is.workflow.actions.\u003Cname>` (e.g., `is.workflow.actions.showresult`)\n- **Parameters**: Action-specific configuration in `WFWorkflowActionParameters`\n- **UUID**: Unique identifier for referencing this action's output\n\n### 2. Variable References\nTo use output from a previous action:\n1. The source action needs a `UUID` parameter\n2. Reference it using `OutputUUID` in an `attachmentsByRange` dictionary\n3. Use `￼` (U+FFFC) as placeholder in the string where the variable goes\n4. Set `WFSerializationType` to `WFTextTokenString`\n\n### 3. Control Flow\nControl flow actions (repeat, conditional, menu) use:\n- `GroupingIdentifier`: UUID linking start\u002Fmiddle\u002Fend actions\n- `WFControlFlowMode`: 0=start, 1=middle (else\u002Fcase), 2=end\n\n## Common Actions Quick Reference\n\n| Action | Identifier | Key Parameters |\n|--------|------------|----------------|\n| Text | `is.workflow.actions.gettext` | `WFTextActionText` |\n| Show Result | `is.workflow.actions.showresult` | `Text` |\n| Ask for Input | `is.workflow.actions.ask` | `WFAskActionPrompt`, `WFInputType` |\n| Use AI Model | `is.workflow.actions.askllm` | `WFLLMPrompt`, `WFLLMModel`, `WFGenerativeResultType` |\n| Comment | `is.workflow.actions.comment` | `WFCommentActionText` |\n| URL | `is.workflow.actions.url` | `WFURLActionURL` |\n| Get Contents of URL | `is.workflow.actions.downloadurl` | `WFURL`, `WFHTTPMethod` |\n| Get Weather | `is.workflow.actions.weather.currentconditions` | (none required) |\n| Open App | `is.workflow.actions.openapp` | `WFAppIdentifier` |\n| Open URL | `is.workflow.actions.openurl` | `WFInput` |\n| Alert | `is.workflow.actions.alert` | `WFAlertActionTitle`, `WFAlertActionMessage` |\n| Notification | `is.workflow.actions.notification` | `WFNotificationActionTitle`, `WFNotificationActionBody` |\n| Set Variable | `is.workflow.actions.setvariable` | `WFVariableName`, `WFInput` |\n| Get Variable | `is.workflow.actions.getvariable` | `WFVariable` |\n| Number | `is.workflow.actions.number` | `WFNumberActionNumber` |\n| List | `is.workflow.actions.list` | `WFItems` |\n| Dictionary | `is.workflow.actions.dictionary` | `WFItems` |\n| Repeat (count) | `is.workflow.actions.repeat.count` | `WFRepeatCount`, `GroupingIdentifier`, `WFControlFlowMode` |\n| Repeat (each) | `is.workflow.actions.repeat.each` | `WFInput`, `GroupingIdentifier`, `WFControlFlowMode` |\n| If\u002FOtherwise | `is.workflow.actions.conditional` | `WFInput`, `WFCondition`, `GroupingIdentifier`, `WFControlFlowMode` |\n| Choose from Menu | `is.workflow.actions.choosefrommenu` | `WFMenuPrompt`, `WFMenuItems`, `GroupingIdentifier`, `WFControlFlowMode` |\n| Find Photos | `is.workflow.actions.filter.photos` | `WFContentItemFilter` (see FILTERS.md) |\n| Delete Photos | `is.workflow.actions.deletephotos` | `photos` (**NOT** `WFInput`!) |\n\n## Detailed Reference Files\n\nFor complete documentation, see:\n- [PLIST_FORMAT.md](PLIST_FORMAT.md) - Complete plist structure\n- [ACTIONS.md](ACTIONS.md) - All 427 WF*Action identifiers and parameters\n- [APPINTENTS.md](APPINTENTS.md) - All 728 AppIntent actions\n- [PARAMETER_TYPES.md](PARAMETER_TYPES.md) - All parameter value types and serialization formats\n- [VARIABLES.md](VARIABLES.md) - Variable reference system\n- [CONTROL_FLOW.md](CONTROL_FLOW.md) - Repeat, Conditional, Menu patterns\n- [FILTERS.md](FILTERS.md) - Content filters for Find\u002FFilter actions (photos, files, etc.)\n- [EXAMPLES.md](EXAMPLES.md) - Complete working examples\n\n## Signing Shortcuts\n\nShortcuts MUST be signed before they can be imported. Use the macOS `shortcuts` CLI:\n\n```bash\n# Sign for anyone to use\nshortcuts sign --mode anyone --input MyShortcut.shortcut --output MyShortcut_signed.shortcut\n\n# Sign for people who know you\nshortcuts sign --mode people-who-know-me --input MyShortcut.shortcut --output MyShortcut_signed.shortcut\n```\n\nThe signing process:\n1. Write your plist as XML to a `.shortcut` file\n2. Run `shortcuts sign` to add cryptographic signature (~19KB added)\n3. The signed file can be opened\u002Fimported into Shortcuts.app\n\n## Workflow for Creating Shortcuts\n\n1. **Define actions** - List what the shortcut should do\n2. **Generate UUIDs** - Each action that produces output needs a unique UUID\n3. **Build action array** - Create each action dictionary with identifier and parameters\n4. **Wire variable references** - Connect outputs to inputs using `OutputUUID`\n5. **Wrap in plist** - Add the root structure with icon, name, version\n6. **Write to file** - Save as `.shortcut` (XML plist format is fine)\n7. **Sign** - Run `shortcuts sign` to make it importable\n\n## Key Rules\n\n1. **UUIDs must be uppercase**: `A1B2C3D4-E5F6-7890-ABCD-EF1234567890`\n2. **WFControlFlowMode is an integer**: Use `\u003Cinteger>0\u003C\u002Finteger>` not `\u003Cstring>0\u003C\u002Fstring>`\n3. **Range keys use format**: `{position, length}` - e.g., `{0, 1}` for first character\n4. **The placeholder character**: `￼` (U+FFFC) marks where variables are inserted\n5. **Control flow needs matching ends**: Every repeat\u002Fif\u002Fmenu start needs an end action with same `GroupingIdentifier`\n",{"name":5,"description":7,"allowed-tools":43},"Write, Bash","main","f4cb2d49f7667e79ef7804f50396d5aaffdf1f56","iOS和macOS开发\u002Fshortcuts-skill",1,"https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification","https:\u002F\u002Fgithub.com\u002FKernel8901","a little little little dobe in life but science geek","2026-04-05 16:43:56",{"source":8,"skillName":5,"commands":53,"prompt":63,"zipAvailable":64},[54,57,60],{"tool":55,"command":56},"npx","npx skills add Kernel8901\u002Fai-agent-skills-classification --skill shortcuts-generator",{"tool":58,"command":59},"bunx","bunx skills add Kernel8901\u002Fai-agent-skills-classification --skill shortcuts-generator",{"tool":61,"command":62},"pnpm","pnpm dlx skills add Kernel8901\u002Fai-agent-skills-classification --skill shortcuts-generator","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002FiOS和macOS开发\u002Fshortcuts-skill\u002FSKILL.md",true,[66,72,76,80,84,88,92,96,100],{"path":67,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":70,"sourceHtmlUrl":71},"_meta.json","REFERENCE","参考文档",290,"https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002FiOS和macOS开发\u002Fshortcuts-skill\u002F_meta.json",{"path":73,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":74,"sourceHtmlUrl":75},"ACTIONS.md",26157,"https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002FiOS和macOS开发\u002Fshortcuts-skill\u002FACTIONS.md",{"path":77,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":78,"sourceHtmlUrl":79},"APPINTENTS.md",11892,"https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002FiOS和macOS开发\u002Fshortcuts-skill\u002FAPPINTENTS.md",{"path":81,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":82,"sourceHtmlUrl":83},"CONTROL_FLOW.md",12148,"https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002FiOS和macOS开发\u002Fshortcuts-skill\u002FCONTROL_FLOW.md",{"path":85,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":86,"sourceHtmlUrl":87},"EXAMPLES.md",20703,"https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002FiOS和macOS开发\u002Fshortcuts-skill\u002FEXAMPLES.md",{"path":89,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":90,"sourceHtmlUrl":91},"FILTERS.md",8878,"https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002FiOS和macOS开发\u002Fshortcuts-skill\u002FFILTERS.md",{"path":93,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":94,"sourceHtmlUrl":95},"PARAMETER_TYPES.md",10317,"https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002FiOS和macOS开发\u002Fshortcuts-skill\u002FPARAMETER_TYPES.md",{"path":97,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":98,"sourceHtmlUrl":99},"PLIST_FORMAT.md",8788,"https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002FiOS和macOS开发\u002Fshortcuts-skill\u002FPLIST_FORMAT.md",{"path":101,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":102,"sourceHtmlUrl":103},"VARIABLES.md",9305,"https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002FiOS和macOS开发\u002Fshortcuts-skill\u002FVARIABLES.md",[105,128,164,175,185,215],{"skillNo":106,"name":107,"nameZh":6,"description":108,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":109,"categories":110,"keywords":111,"publishedAt":38},"01M6Q5R6WZ06RRB9RQTW54B34B","zyfai","Earn yield on any Ethereum wallet on Base, Arbitrum, and Plasma. Use when a user wants passive DeFi yield on their funds. Deploys a non-custodial subaccount (Safe) linked to their EOA, enables automated yield optimization, and lets them deposit\u002Fwithdraw anytime.","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F金融\u002Fzyfai-sdk\u002FSKILL.md",[],[107,112,113,114,115,116,29,117,118,119,120,121,122,123,124,125,126,127],"safe","ethereum","defi","Optimization","user","Wallet","base","deposit","withdraw","yield","arbitrum","non-custodial","passive","defi yield","earn","yield optimization",{"skillNo":129,"name":130,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":131,"categories":132,"keywords":146,"publishedAt":38},"01M6Q5R337B5JSNER4P4YS03TN","zerion-api","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F金融\u002Fzerion-api\u002FSKILL.md",[133,138,141],{"categoryNo":134,"categoryName":135,"taxonomyType":136,"taxonomyTypeDesc":137},"01JBSEEDCAT000000000000010","后端与接口","SCENARIO","使用场景",{"categoryNo":139,"categoryName":140,"taxonomyType":136,"taxonomyTypeDesc":137},"01JBSEEDCAT000000000000023","Skill与智能体开发",{"categoryNo":142,"categoryName":143,"taxonomyType":144,"taxonomyTypeDesc":145},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[147,148,149,150,151,152,153,114,154,117,155,156,157,158,159,160,161,162,163],"api","zerion api","zerion","MCP","mcp server","server","blockchain","transactions","crypto wallet","crypto","evm","solana","query","across","positions","token","prices",{"skillNo":165,"name":166,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":167,"categories":168,"keywords":172,"publishedAt":38},"01M6Q5QZFYTDAZMZ27BN5VZXAR","zerion-api-skill","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F金融\u002Fzerion-api-skill\u002FSKILL.md",[169,170,171],{"categoryNo":134,"categoryName":135,"taxonomyType":136,"taxonomyTypeDesc":137},{"categoryNo":139,"categoryName":140,"taxonomyType":136,"taxonomyTypeDesc":137},{"categoryNo":142,"categoryName":143,"taxonomyType":144,"taxonomyTypeDesc":145},[147,173,174,148,149,150,151,152,153,114,154,117,156,157,158,159,160,161,162,163],"api skill","zerion api skill",{"skillNo":176,"name":177,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":178,"categories":179,"keywords":183,"publishedAt":38},"01M6Q5QW17QW98RA3FE45E4RD8","zerion-api-mcp","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F金融\u002Fzerion-api-mcp\u002FSKILL.md",[180,181,182],{"categoryNo":134,"categoryName":135,"taxonomyType":136,"taxonomyTypeDesc":137},{"categoryNo":139,"categoryName":140,"taxonomyType":136,"taxonomyTypeDesc":137},{"categoryNo":142,"categoryName":143,"taxonomyType":144,"taxonomyTypeDesc":145},[150,147,184,148,149,151,152,114,154,117,155,156,157,158,159,160,161,162,163],"zerion api mcp",{"skillNo":186,"name":187,"nameZh":6,"description":188,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":189,"categories":190,"keywords":194,"publishedAt":38},"01M6Q5QQYZB7A501BDEQWKGSJT","yahoo-finance-forex","Fetches real-time FOREX news and market data from Yahoo Finance for major currency pairs (EUR\u002FUSD, GBP\u002FUSD, USD\u002FJPY, etc.). Analyzes sentiment and provides trading context.","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F金融\u002Fyahoo-finance-forex\u002FSKILL.md",[191],{"categoryNo":192,"categoryName":193,"taxonomyType":144,"taxonomyTypeDesc":145},"01JBSEEDCAT000000000000040","财务",[195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214],"finance","yahoo finance","forex","yahoo","yahoo finance forex","github","https","sentiment","real-time","python3","install","Market","usd","news","time","currency","gbp","pip","market data","for",{"skillNo":216,"name":217,"nameZh":6,"description":218,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":219,"categories":220,"keywords":222,"publishedAt":38},"01M6Q5QM6VS84WZVM7BKXXPF32","yahoo-finance","This skill should be used when the user asks to \"get stock prices\", \"check stock quotes\", \"look up earnings\", \"get financial data\", \"find trending stocks\", or needs stock market data from Yahoo Finance.","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F金融\u002Fyahoo-finance-cli\u002FSKILL.md",[221],{"categoryNo":192,"categoryName":193,"taxonomyType":144,"taxonomyTypeDesc":145},[195,196,198,223,224,225,226,227,228,206,229,230,231,232,233,234,235,236,163,213],"cli","homebrew","find","check","brew","up","local","get","stock","link","trending","sf","quotes","ln"]