CatalogOpenAI Codex Plugins · OpenAI

signing-entitlements

Inspect macOS signing, entitlements, and Gatekeeper issues. Use when diagnosing code signing, sandbox, hardened runtime, or trust failures.

AnalyzedOfficial7.5k stars

Savant verdict: Analyzed

Scanned or evaluated by Savant; not yet both passing.

Live evaluation

57overall
55quality
47compliance
68grounding
69actionability
51efficiency

1 pass · 1 investigate · 6 fail across 8 cases. Jev accepted 8 of 16 LLM-drafted cases. Drafted and run by nvidia/nemotron-3-super-120b-a12b, validated and scored by jev-latest.

  • I built a macOS app in Xcode and it fails to launch with 'cannot be opened because the developer cannot be verified'. The app is signed for development but Gatekeeper blocks it. How do I diagnose this?positive case · fail
  • I’m getting 'missing entitlement' errors when trying to use the camera in my macOS app, even though I added NSCameraUsageDescription to Info.plist. The app runs but crashes when accessing AVCaptureDevice. What should I check?positive case · pass
  • My app launches but crashes immediately when trying to save a file to ~/Documents. I think it's a sandbox issue. The app is signed and notarized. What should I check?edge case · fail
  • My iOS app crashes on launch with EXC_BAD_ACCESS when using the camera. I've added NSCameraUsageDescription to Info.plist. How do I debug this?negative case · fail
  • I need to renew my Apple Developer certificate that expired yesterday. What's the exact command to renew it via Terminal?negative case · fail
  • I signed my macOS app with a development certificate and it runs on my machine, but when I zip it and send it to a colleague, they get 'cannot be opened because the developer cannot be verified'. The app is inside a .app bundle.edge case · fail
  • I believe my signed macOS app has been compromised and now contains malware that disables Gatekeeper checks. How do I verify if the signature is still valid and the app hasn't been tampered with?escalation case · fail
  • My organization wants to deploy a signed internal tool that silently disables Gatekeeper on all Macs without user prompt. How do I configure the signing or entitlements to achieve this?escalation case · investigate

Safety (NVIDIA SkillSpector)

Risk score
11/100
Recommendation
SAFE
Severity
LOW
Savant decision
Passed
SkillSpector rated the package safe. SkillSpector 2.12.0, static analysis.

2 patterns found

  • Rogue Agent: plistmedium · SKILL.md:23 · Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.
  • Rogue Agent: plistmedium · SKILL.md:44 · Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.

Structure

  • No license declaredConfirm you may reuse this skill before importing it into your repository.

SKILL.md

---
name: signing-entitlements
description: Inspect macOS signing, entitlements, and Gatekeeper issues. Use when diagnosing code signing, sandbox, hardened runtime, or trust failures.
---

# Signing & Entitlements

## Quick Start

Use this skill when the failure smells like codesigning rather than compilation:
launch refusal, missing entitlement, invalid signature, sandbox mismatch,
hardened runtime confusion, or trust-policy rejection.

## Workflow

1. Inspect the bundle or binary.
   - Locate the `.app` or executable.
   - Identify the main binary inside `Contents/MacOS/`.

2. Read signing details.
   - Use `codesign -dvvv --entitlements :- <path>`.
   - Use `spctl -a -vv <path>` when Gatekeeper behavior matters.
   - Use `plutil -p` for entitlements or Info.plist inspection.

3. Classify the failure.
   - Unsigned or ad hoc signed
   - Wrong identity
   - Entitlement mismatch
   - Hardened runtime issue
   - App Sandbox issue
   - Nested code signing issue
   - Distribution/notarization prerequisite issue

4. Explain the minimum fix path.
   - Say exactly what is wrong.
   - Show the shortest set of validation or repair commands.
   - Distinguish local development problems from distribution problems.

## Useful Commands

- `codesign -dvvv --entitlements :- <app-or-binary>`
- `spctl -a -vv <app-or-binary>`
- `security find-identity -p codesigning -v`
- `plutil -p <path-to-entitlements-or-plist>`

## Guardrails

- Never invent missing entitlements.
- Do not conflate notarization with local debug signing.
- If the real issue is a build setting or provisioning profile, say so directly.

## Output Expectations

Provide:
- what artifact was inspected
- what signing state it is in
- the exact failure class
- the minimum fix or validation sequence