E2E
gronxb/hot-updater
Run end-to-end OTA verification for examples/v0.85.0 with agent-device.
A discipline for hard bugs, flaky tests, CI hangs, native crashes, and performance regressions in this SDK.
$ npx skills add getsentry/sentry-react-native --skill diagnosing-bugs -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install getsentry/sentry-react-native diagnosing-bugs --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/getsentry/sentry-react-native.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/diagnosing-bugs .claude/skills/diagnosing-bugs && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "diagnosing-bugs" agent skill from https://github.com/getsentry/sentry-react-native/tree/main/.agents/skills/diagnosing-bugs into .claude/skills/diagnosing-bugs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "diagnosing-bugs", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/getsentry/sentry-react-native/tree/main/.agents/skills/diagnosing-bugsType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add getsentry/sentry-react-native --skill diagnosing-bugs -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install getsentry/sentry-react-native diagnosing-bugs --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/getsentry/sentry-react-native.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/diagnosing-bugs .agents/skills/diagnosing-bugs && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "diagnosing-bugs" agent skill from https://github.com/getsentry/sentry-react-native/tree/main/.agents/skills/diagnosing-bugs into .agents/skills/diagnosing-bugs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "diagnosing-bugs", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add getsentry/sentry-react-native --skill diagnosing-bugs -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install getsentry/sentry-react-native diagnosing-bugs --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/getsentry/sentry-react-native.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/diagnosing-bugs .cursor/skills/diagnosing-bugs && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "diagnosing-bugs" agent skill from https://github.com/getsentry/sentry-react-native/tree/main/.agents/skills/diagnosing-bugs into .cursor/skills/diagnosing-bugs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "diagnosing-bugs", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/getsentry/sentry-react-native.git --path .agents/skills/diagnosing-bugs--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add getsentry/sentry-react-native --skill diagnosing-bugs -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install getsentry/sentry-react-native diagnosing-bugs --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/getsentry/sentry-react-native.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/diagnosing-bugs .gemini/skills/diagnosing-bugs && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "diagnosing-bugs" agent skill from https://github.com/getsentry/sentry-react-native/tree/main/.agents/skills/diagnosing-bugs into .gemini/skills/diagnosing-bugs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "diagnosing-bugs", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install getsentry/sentry-react-native diagnosing-bugsInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add getsentry/sentry-react-native --skill diagnosing-bugs -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/getsentry/sentry-react-native.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/diagnosing-bugs .github/skills/diagnosing-bugs && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "diagnosing-bugs" agent skill from https://github.com/getsentry/sentry-react-native/tree/main/.agents/skills/diagnosing-bugs into .github/skills/diagnosing-bugs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "diagnosing-bugs", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add getsentry/sentry-react-native --skill diagnosing-bugs -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install getsentry/sentry-react-native diagnosing-bugs --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/getsentry/sentry-react-native.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/diagnosing-bugs .opencode/skills/diagnosing-bugs && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "diagnosing-bugs" agent skill from https://github.com/getsentry/sentry-react-native/tree/main/.agents/skills/diagnosing-bugs into .opencode/skills/diagnosing-bugs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "diagnosing-bugs", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
diagnosing-bugsA discipline for hard bugs, flaky tests, CI hangs, native crashes, and performance regressions in this SDK.
Diagnosing Bugs is an agent skill from getsentry/sentry-react-native, published by the product's own GitHub organization. A discipline for hard bugs, flaky tests, CI hangs, native crashes, and performance regressions in this SDK. Use when the user says "diagnose" or "debug this", reports something broken/throwing/failing/hanging/slow/crashing, or a test is flaky. Builds a tight, red-capable feedback loop before hypothesizing.
Its SKILL.md is about 1.4k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Testing & QA, covering Failing and flaky tests and Cross-platform mobile apps. It works with Sentry, Android, React Native and iOS. The repository describes itself as: Official Sentry SDK for React Native. The licence is MIT.
4 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 8cae3b5. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
yarnadbFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use yarn, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Diagnosing Bugs loads about 1.4k tokens when it runs. Until then it costs about 81 tokens; SKILL.md has 772 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from getsentry/sentry-react-native at commit 8cae3b5, republished under its MIT licence (© getsentry). 772 words, ~1,355 tokens.
.claude/skills/diagnosing-bugs/SKILL.md (or your agent's skills folder).A discipline for hard bugs. Skip a phase only when you can say why.
The whole skill is Phase 1: get a loop that goes red on this bug. Everything after is mechanical once you have it. If you catch yourself reading code to form a theory before that loop exists, stop — jumping to a hypothesis without a red-capable loop is the exact failure this prevents.
For trivial bugs with an obvious fix and an obvious test, skip this and just write the failing test — this skill is for the bugs that resist.
A tight loop is fast, deterministic, and goes red on this bug. Build one and the bug is 90% solved. Be aggressive and creative here — spend disproportionate effort.
yarn test path/to/file.test.ts -t 'name', at whatever seam reaches the bug. Tightest loop there is. Mock the bridge via test/mockWrapper.ts.jest.useFakeTimers() and advance the clock deterministically instead of waiting.Platform.OS, isTurboModuleEnabled(), isFabricEnabled(). "Only on New Arch" or "only on Android" is a clue and the loop's config.samples/react-native (or samples/expo); see their AGENTS.md. Slower loop; use only when a unit seam can't reach it.RNSentryCocoaTester, Android instrumentation) or with the sample app + native debugger. The bridge can't be faked here.Once you have a loop, treat it as a product: faster (narrow scope, skip unrelated init), sharper (assert the exact symptom the user described, not "didn't crash"), more deterministic (fake timers, seed randomness, no real network/bridge). A 2-second deterministic loop beats a 30-second flaky one. For non-deterministic bugs the goal is a high enough reproduction rate to debug against — 50% is debuggable, 1% is not.
Phase 1 is done when you can name one command — a test invocation or script — that you have already run at least once (paste the invocation and its output), and that is:
No red-capable command, no Phase 2.
Say so explicitly, list what you tried, and ask the user for: an environment that reproduces it, a captured artifact (envelope dump, native crash log / symbolicated stack, CI run, screen recording with timestamps, adb logcat / Xcode console output), or permission for temporary instrumentation. Do not hypothesise without a loop.
Run the loop, watch it go red. Confirm it produces the failure mode the user described — not a nearby one (wrong bug = wrong fix). Then shrink the repro to the smallest scenario that still goes red: cut inputs, callers, config, and steps one at a time, re-running after each cut. Done when every remaining element is load-bearing. The minimal repro becomes the regression test.
Generate 3–5 ranked, falsifiable hypotheses before testing any — a single hypothesis anchors you on the first plausible idea. Each states its prediction: "If X is the cause, then changing Y makes the bug vanish." If you can't state the prediction, it's a vibe — sharpen or discard it. Show the ranked list to the user; they often re-rank it instantly ("we just changed #3"). Common suspects in this SDK: arch/platform branch, bridge serialization, timer/async ordering, scope-sync recursion, native memory/lifecycle, RN or native-SDK version skew.
Confirm the hypothesis with the cheapest observation that would falsify it (a log via debug, a native breakpoint, a diffed payload) before changing code. Then make the minimal fix, watch the loop go green, and keep the minimal repro as the regression test. Re-run the broader suite (yarn test) and, for native/bridge fixes, the affected native tests and both architectures.
© getsentry, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .agents/skills/diagnosing-bugs of getsentry/sentry-react-native.
Open the folder on GitHubat commit 8cae3b5
Diagnosing Bugs next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Diagnosing Bugs this skillgetsentry/sentry-react-native | 1.8k | — | ~1.4k | Automated safety check: Pass | MIT | |
| E2Egronxb/hot-updater | 1.8k | — | ~1.6k | Automated safety check: Pass | Custom licence | |
| E2E Current PRgronxb/hot-updater | 1.8k | — | ~1k | Automated safety check: Pass | Custom licence | |
| E2E Defaultgronxb/hot-updater | 1.8k | — | ~3.1k | Automated safety check: Pass | Custom licence | |
| Nitro Sound Workflowshyochan/react-native-nitro-sound | 961 | — | ~1.2k | Automated safety check: Pass | MIT | |
| Iapkit E2E Petguhyodotdev/openiap | 154 | — | ~1.1k | Automated safety check: Pass | MIT |
gronxb/hot-updater
Run end-to-end OTA verification for examples/v0.85.0 with agent-device.
gronxb/hot-updater
Generate and execute PR-aware OTA E2E scenarios for examples/v0.85.0 by diffing the checked-out branch against its PR base branch or default branch, inferring the affected runtime, rollout, and…
gronxb/hot-updater
Run a fixed OTA regression flow for examples/v0.85.0 with agent-device.
hyochan/react-native-nitro-sound
A skill your agent uses for react-native-nitro-sound repository work that should follow the project workflows for PR review, code audit, knowledge compilation, full verification, iOS or Android…
hyodotdev/openiap
A skill your agent uses for IAPKit product sync E2E testing in packages/kit with the Petgu React Native app, localhost dashboard, App Store Connect, and Google Play Console.
hyochan/react-native-nitro-sound
A skill your agent uses for react-native-nitro-sound repository work that should follow the project slash-command workflows for PR review, code audit, knowledge compilation, full verification, iOS…
getsentry/sentry-react-native
Enforce Sentry React Native SDK code guidelines for implementation, refactoring, and review.
getsentry/sentry-react-native
Enforce Sentry React Native SDK test conventions for naming, structure, mocking, and fixtures with Jest.
getsentry/sentry-react-native
Three-axis review of the branch diff — Standards (this repo's documented standards + public API/bridge surface), Spec (the originating Linear/GitHub issue or PR), and Correctness (runtime bugs + the…
getsentry/sentry-react-native
Shape non-trivial work before writing it — decide the modules, the seams, and the public API surface up front.
getsentry/sentry-react-native
Produce a verified spec — problem, desired outcome, and acceptance criteria — before building.
Works with
Categories
A discipline for hard bugs, flaky tests, CI hangs, native crashes, and performance regressions in this SDK. Diagnosing Bugs is an agent skill from getsentry/sentry-react-native, published by the product's own GitHub organization. A discipline for hard bugs, flaky tests, CI hangs, native crashes, and performance regressions in this SDK.
Diagnosing Bugs fits situations like: the user says diagnose; reports something broken/throwing/failing/hanging/slow/crashing; A test is flaky.
Run `npx skills add getsentry/sentry-react-native --skill diagnosing-bugs -a claude-code`. Or copy the skill folder (.agents/skills/diagnosing-bugs in getsentry/sentry-react-native) into .claude/skills/diagnosing-bugs in your project. Claude Code loads it when a task matches its description.
Run `npx skills add getsentry/sentry-react-native --skill diagnosing-bugs -a codex`. Or copy the skill folder (.agents/skills/diagnosing-bugs in getsentry/sentry-react-native) into .agents/skills/diagnosing-bugs in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add getsentry/sentry-react-native --skill diagnosing-bugs -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/diagnosing-bugs, .gemini/skills/diagnosing-bugs, .github/skills/diagnosing-bugs and .opencode/skills/diagnosing-bugs in your project.
Going by SKILL.md and its folder, Diagnosing Bugs needs the command-line tools its instructions call (yarn and adb).
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Diagnosing Bugs is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.4k tokens (SKILL.md is roughly 5.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Diagnosing Bugs: E2E (gronxb/hot-updater, 1.8k stars), E2E Current PR (gronxb/hot-updater, 1.8k stars), E2E Default (gronxb/hot-updater, 1.8k stars) and Nitro Sound Workflows (hyochan/react-native-nitro-sound, 961 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
getsentry (a GitHub organization, an official publisher) maintains it in getsentry/sentry-react-native, which has 1,824 GitHub stars. The repository holds 6 skills in this directory. The repository was last updated on October 8, 2026.
Source: getsentry/sentry-react-native on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.