Agent Deep Links
Overview
Use this skill when a user asks for clickable links that should open directly in an app (usually from Slack). This includes verifying whether a target app supports deep links at all, selecting the right URL shape, and providing fallbacks when deep links are unsupported.
Workflow
- Identify target app + target object:
- Thread/conversation
- File/folder
- Settings/new window
- Read
references/deep-link-matrix.mdfor known-good link formats and support level. - If support is unknown, verify locally before sending:
- Check URL schemes in the app bundle:
/usr/libexec/PlistBuddy -c 'Print :CFBundleURLTypes' /Applications/<App>.app/Contents/Info.plist - Smoke test launch behavior:
open '<scheme>://...'
- Check URL schemes in the app bundle:
- Construct Slack-safe link syntax:
<url|label>
- If unsupported or uncertain, send a fallback:
- Plain path + command
- Documented CLI open command
- Statement that no official deep-link format is known
Output Rules
- Prefer absolute paths for file/folder links.
- Keep labels short and action-oriented (
Open in Cursor,Open in Codex). - Do not claim deep-link support unless it is in the matrix or just verified.
- For uncertain app routes, clearly mark as inferred/experimental.
Common Templates
- Codex thread:
<codex://threads/<thread-uuid>|Open in Codex>
- Cursor file:
<cursor://file/<absolute-path>:<line>:<column>|Open in Cursor>
- VS Code file:
<vscode://file/<absolute-path>:<line>:<column>|Open in VS Code>
- VS Code Insiders file:
<vscode-insiders://file/<absolute-path>:<line>:<column>|Open in VS Code Insiders>
Use references/deep-link-matrix.md for the full cross-app matrix and support notes.