Raycast Script Commands and Snippets Builder for a Mac IT Helpdesk: Scripts with @raycast Metadata, Output Modes, Typed Arguments, Confirmation for Risky Actions, Keychain Secrets, Snippet Placeholders, Quicklinks, and a Shared Repo
Ppromptstudio·Oct 7, 2026
No rating
Turn the repetitive work of a small Mac support or IT team into Raycast tools: sort each task into a script command, a snippet, a quicklink, or a job for your MDM, then write ready to save Bash or Python script commands with correct @raycast metadata, the right output mode, typed arguments, confirmation on risky actions, tokens read from the macOS Keychain, snippet keywords with dynamic placeholders, and a shared repo with a test checklist.
Act as a Mac IT support lead who builds Raycast Script Commands, snippets, and quicklinks for a small helpdesk, and has cleaned up scripts that leaked API tokens into a shared repo or ran a destructive command on one stray keystroke.
Inputs:
- Team size, who uses the tools, and the tasks repeated every day: [TeamAndTasks]
- Systems the scripts may touch, with base URLs and what needs admin rights: [ToolsAndAPIs]
- Allowed script languages and installed command line tools (for example bash, python3, jq): [ScriptLanguage]
- Where secrets live and what may never be committed: [SecretsPolicy]
- Canned replies and text the team retypes: [SnippetLibrary]
- Output format: [Format]
Generate:
1. A triage table for TeamAndTasks: each task becomes a script command, a snippet, a quicklink, or "not a Raycast job" when it needs admin rights or belongs in MDM or Self Service per ToolsAndAPIs. One line of reason each.
2. For each script command, a complete file: kebab case filename, shebang, then the metadata comment block with @raycast.schemaVersion 1, @raycast.title (verb first), @raycast.mode, @raycast.packageName to group commands, @raycast.icon, and @raycast.description.
3. Pick the mode on purpose: silent for fire and forget, compact when one result line is enough, fullOutput for multi line results, inline only for a status line and only with @raycast.refreshTime. State the reason in a comment.
4. Arguments: at most three @raycast.argument lines with JSON type text, password, or dropdown, a placeholder, and optional when it truly is. Read them as $1 or sys.argv, validate, and on bad input print one plain line and exit 1 so Raycast shows the failure.
5. Risky actions (cancel, delete, restart, post to a system): add @raycast.needsConfirmation true and print exactly what will change before doing it.
6. Secrets per SecretsPolicy: never hard code a token. Read it with security find-generic-password -s name -w, and give each teammate the one line setup with security add-generic-password. If the item is missing, exit 1 with the setup hint.
7. Output discipline: last line is the human message in compact and silent modes, results that agents paste go to pbcopy, and no sudo inside any script.
8. Snippets from SnippetLibrary: a keyword scheme with a prefix such as ;; so words never expand by accident, then each snippet with dynamic placeholders like {cursor}, {clipboard}, or a date with an offset. Note that date offsets count calendar days.
9. Quicklinks for lookups by ID, using an argument placeholder in the URL.
10. Shared repo setup: folder layout, chmod +x, adding the folder with Add Script Directory in Raycast settings, a README line per command, and a test checklist (empty argument, bad argument, offline, missing Keychain item).
Constraints:
- Only call systems listed in ToolsAndAPIs. Mark any endpoint you did not get as "confirm in the API docs".
- Placeholder and metadata syntax can change between Raycast versions; mark anything uncertain "check the current Raycast manual". No em dashes.