sentry-snapshots-cocoa
Skill4 starsChanged 42 days agoMITView on GitHub
Full Sentry Snapshots setup for Apple/Cocoa projects. Use when asked to "setup SnapshotPreviews", "setup Apple snapshot testing", "upload Apple snapshots to Sentry", "setup Apple snapshot GitHub Actions", or "setup Apple selective snapshot testing".
8 other projects use a version of this, 1 of them edited.
Adopted by
Most recently taken up by
- getsentry/plugin-copilotword for word, first seen Oct 25, 2026
- getsentry/plugin-antigravityword for word, first seen Oct 25, 2026
- getsentry/plugin-codexword for word, first seen Oct 13, 2026
- getsentry/sentry-for-aiword for word, first seen Oct 13, 2026
- gerald-donkor/poli-inteledited, first seen Oct 11, 2026
- getsentry/agent-pluginword for word, first seen Oct 2, 2026
Other versions8 projects use a version of this.
Word for word · 7
- getsentry/sentry-for-ai★ 276100% same
- getsentry/agent-plugin★ 5100% same
- getsentry/plugin-codex★ 5100% same
- getsentry/plugin-cursor★ 3100% same
- getsentry/plugin-grok★ 3100% same
- getsentry/plugin-antigravity★ 1100% same
- getsentry/plugin-copilot★ 1100% same
Edited · 1
- gerald-donkor/poli-intel★ 195% same
Wrote their own version · 0
None found.
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository7 other files it gives its agents.
The file
We split this skill into the rules it gives an agent
4 rules. About 0 are common, 3 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈3
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 13
Use the Sentry Wizard appleSnapshots flow only when setting up Sentry’s first-party SnapshotPreviews solution.
- Distinctive: line 15
Use manual setup only if the wizard is unavailable, cannot resolve targets non-interactively after disambiguation, or fails after explicit …
- Distinctive: line 27
Do only enough detection to route before calling the wizard:
- Distinctive: line 64
no existing generator -> set up SnapshotPreviews by default for Sentry Snapshots or Apple snapshot testing.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Sentry Snapshots for Apple/Cocoa
Scope
- Goal: generate Apple snapshot images and upload them to Sentry Snapshots.
- Detect existing snapshot generation first, including Point-Free
swift-snapshot-testing; preserve it when it already emits or can emit PNGs or JPEGs. - Use the Sentry Wizard
appleSnapshotsflow only when setting up Sentry’s first-party SnapshotPreviews solution. - Use manual setup only if the wizard is unavailable, cannot resolve targets non-interactively after disambiguation, or fails after explicit disambiguation.
- Package-only SwiftPM: stop and ask for the host app/test target; standalone
swift testrendering is not supported.
Snapshot uploads send generated images and metadata to Sentry. Confirm the target organization/project and export directory, and check whether the images contain customer data or other sensitive content before uploading. Upload only the selected snapshot output within the user’s requested scope.
Detect
Do only enough detection to route before calling the wizard:
# SnapshotPreviews (Sentry first-party) -> prefer wizard / SnapshotPreviews routing
find . \( -name Package.swift -o -name Package.resolved -o -path '*/project.pbxproj' \) -print0 2>/dev/null | xargs -0 grep -lE "SnapshotPreviews" 2>/dev/null
# Point-Free swift-snapshot-testing -> preserve generator, swift-snapshot-testing CI path
find . \( -name Package.swift -o -name Package.resolved -o -path '*/project.pbxproj' \) -print0 2>/dev/null | xargs -0 grep -lE "swift-snapshot-testing|SnapshotTesting|assertSnapshot|__Snapshots__|TEST_RUNNER_SNAPSHOT_TESTING_RECORD" 2>/dev/null
# Required wizard input
find . -name '*.xcodeproj' -print 2>/dev/null | head -20
# Workflow shape
ls fastlane/Fastfile Gemfile 2>/dev/null
# Sentry auth presence only -> never print secret values
[ -n "$SENTRY_AUTH_TOKEN" ] && echo "SENTRY_AUTH_TOKEN=set" || echo "SENTRY_AUTH_TOKEN=unset"
[ -n "$SENTRY_ORG" ] && echo "SENTRY_ORG=set" || echo "SENTRY_ORG=unset"
[ -n "$SENTRY_PROJECT" ] && echo "SENTRY_PROJECT=set" || echo "SENTRY_PROJECT=unset"Record: existing SnapshotPreviews setup, existing snapshot generator/library, output
directory if known, Xcode project directory, CI provider, Fastlane, and Sentry auth.
For each .xcodeproj match, record the containing directory for --xcode-project-dir;
if find prints ./MyApp/MyApp.xcodeproj, pass ./MyApp, not the bundle path.
Let the wizard detect app targets, hosted XCTest targets, and Swift previews only when
no existing generator is present.
Route
Resolve routing in this order; setup is the primary path and CI is optional follow-up.
- Select or create the image generator:
- named generator wins;
- multiple existing generators with no user choice -> ask;
- existing non-SnapshotPreviews generator -> preserve it;
- existing SnapshotPreviews -> use it;
- no existing generator -> set up SnapshotPreviews by default for Sentry Snapshots or Apple snapshot testing.
- For SnapshotPreviews, stop before setup/verification/CI if there is no
.xcodeprojhost app or no hosted XCTest target. These stops do not apply when preserving another generator. - For setup or verification:
- existing non-SnapshotPreviews generator -> read
references/snapshots.md; - existing SnapshotPreviews -> read
references/snapshot-previews.mdandreferences/snapshots.md; - new SnapshotPreviews setup -> read
references/wizard-setup.md; - wizard reports no Swift previews -> ask before adding previews or choosing another generator.
- existing non-SnapshotPreviews generator -> read
- For GitHub Actions/CI only after an image generator exists:
- Point-Free
swift-snapshot-testing-> readreferences/github-actions-swift-snapshot-testing.mdandreferences/snapshots.md; - other non-SnapshotPreviews generator -> read
references/snapshots.mdand adapt existing CI/upload; - SnapshotPreviews, one simulator only, no matrix/fanout/selective CI -> read
references/github-actions-simple.md; - SnapshotPreviews with multiple simulators, device families, matrix, or any
selective CI -> read
references/github-actions-fanout.mdandreferences/snapshot-previews.md.
- Point-Free
Optional References
| Need | Read |
| First-party SnapshotPreviews setup, disambiguation, or manual fallback | references/wizard-setup.md |
| SnapshotPreviews metadata, rendering preferences, selective rendering, or SnapshotPreviews-specific troubleshooting | references/snapshot-previews.md |
Upload any generated snapshot images to Sentry with Fastlane, sentry-cli, manifests, CI notes, or upload troubleshooting | references/snapshots.md |
| One-destination GitHub Actions workflow | references/github-actions-simple.md |
| Multi-destination/fan-out GitHub Actions workflow | references/github-actions-fanout.md |
Point-Free swift-snapshot-testing GitHub Actions workflow | references/github-actions-swift-snapshot-testing.md |
Completion Checks
- The selected snapshot image generator is documented and preserved or configured according to the route above.
- Snapshot generation appears in the relevant local or CI test logs.
- Export directory contains
.pngfiles and any generated.jsonsidecars. - Upload succeeds and prints a Sentry URL or snapshot id.
- Base branch upload is full; selective PR upload includes the full image-name manifest.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

