Capability Check

VerifiedSafe

Check whether a given action is feasible and identify what blocks it. Useful when verifying permissions, diagnosing why a command fails, or determining if a tool like iMessage or calendar access is available. Provides commands to test each capability and a troubleshooting flow.

Sby Skills Guide Bot
DevelopmentBeginner
1306/2/2026
Claude Code
#capability-check#troubleshooting#permissions#automation#macos

Recommended for

Our review

Checks if a specific action is possible and diagnoses any blockers.

Strengths

  • Provides a comprehensive matrix of available capabilities with their prerequisites.
  • Includes minimal test commands for each capability.
  • Offers a structured 5-step troubleshooting flow.

Limitations

  • Requires scripts and configurations to be pre-installed.
  • Relies on AppleScript, limiting portability to macOS.
  • Only covers capabilities listed in the inventory, not all imaginable actions.
When to use it

Use this skill when you need to verify if an action is feasible or why it is failing.

When not to use it

Do not use it if you already have a clear diagnosis or if the action is trivial and well-documented.

Security analysis

Safe
Quality score90/100

The skill provides diagnostic commands using standard tools (Bash, osascript) to check system capabilities and permissions. It does not perform destructive actions, exfiltrate data, or bypass security. Commands are read-only and used for information gathering within the agent's trusted environment.

No concerns found

Examples

Check iMessage capability
Can I send an iMessage? Check if Samara is running and if I have the necessary permissions.
Check calendar read access
Check if I can read my calendar events and what permissions are needed.
Troubleshoot a failed action
I tried to take a screenshot but it failed. Check what's blocking me.

name: capability description: Check if a specific action is possible and what might be blocking it. Use when asking if you can do something, checking permissions, verifying a capability exists, or troubleshooting why something isn't working. Trigger words: can I, capability, able to, permission, possible, how do I. context: fork allowed-tools:

  • Bash
  • Read
  • Grep
  • Glob

Capability Check

Verify if a specific action is possible and diagnose any blockers.

Capability Inventory

Full capabilities documentation: ~/.claude-mind/capabilities/inventory.md

Access Patterns

# Read full inventory (comprehensive reference)
cat ~/.claude-mind/capabilities/inventory.md

# Search for specific capability
grep -ni "search term" ~/.claude-mind/capabilities/inventory.md

# List all sections
grep "^## " ~/.claude-mind/capabilities/inventory.md

Quick Capability Matrix

| Capability | Method | Requires | |------------|--------|----------| | Send iMessage | AppleScript via Samara | Samara running, Automation permission | | Send image | send-image script | Pictures folder workaround | | Read calendar | AppleScript | Calendar permission | | Write calendar | AppleScript | Calendar permission | | Read contacts | AppleScript | Contacts permission | | Read/write notes | AppleScript | Notes permission | | Send email | AppleScript | Mail permission | | Post to Bluesky | bluesky-post script | Credentials in config | | Browse web | Playwright MCP | MCP server running | | Take screenshot | screenshot script | Screen recording permission | | Read Messages DB | Direct file access | Full Disk Access | | Run shell commands | Bash | Always available | | Read/write files | Direct | Always available |

Checking Specific Capabilities

Messaging

pgrep -q Samara && echo "Samara: OK" || echo "Samara: Not running"
~/.claude-mind/bin/message "test" --dry-run 2>/dev/null

Calendar

osascript -e 'tell application "Calendar" to get name of calendars' 2>&1

Contacts

osascript -e 'tell application "Contacts" to get name of first person' 2>&1

Notes

osascript -e 'tell application "Notes" to get name of first note' 2>&1

Mail

osascript -e 'tell application "Mail" to get name of first account' 2>&1

Bluesky

grep -q "bluesky" ~/.claude-mind/config.json && echo "Bluesky: Configured" || echo "Bluesky: Not configured"

Full Disk Access

ls ~/Library/Messages/chat.db 2>/dev/null && echo "FDA: OK" || echo "FDA: Missing"

Troubleshooting Flow

  1. Identify the capability: What action is being attempted?

  2. Check prerequisites:

    • Is the required app/service running?
    • Are permissions granted?
    • Is configuration present?
  3. Test minimally: Run simplest possible version of the action

  4. Check logs: Look for error messages

log show --predicate 'process == "osascript"' --last 2m
  1. Report findings: What works, what doesn't, what to fix

Common Blockers

  • "Not authorized to send Apple events": Missing Automation permission
  • "Operation not permitted": Missing FDA or specific permission
  • "Application isn't running": Need to launch the app first
  • "No such file": Script or config missing
Related skills