بنقرة واحدة
debugging
Helps diagnose and fix runtime errors, crashes, and unexpected behavior.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Helps diagnose and fix runtime errors, crashes, and unexpected behavior.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Diagnoses openclaude provider configuration problems and proposes fixes.
Resolves merge and rebase conflicts by preserving both sides' intent.
Reads a CodeQL or static-analysis finding and produces a targeted fix.
Fixture where a curl-piped-to-bash sits inside a fenced block; scanner must still flag it.
Reviews database schema changes, migrations, and queries.
Implements frontend components following project conventions.
| name | debugging |
| title | Debugging |
| description | Helps diagnose and fix runtime errors, crashes, and unexpected behavior. |
| category | debugging |
| tags | ["debugging","troubleshooting","errors"] |
| trust | official |
| version | 0.1.0 |
| license | MIT |
| author | gnanam |
Find the root cause of a runtime failure and fix it at the right layer. Beat the urge to patch the symptom — a fix that hides the bug is worse than no fix.
refactor-plan for restructuring or a dedicated perf approach.test-writer.git log between known-good and known-bad. Reach for
git bisect when the regression window is wide.console.log,
a debugger breakpoint, a unit test that calls the suspect function
with the suspect input. If the hypothesis is wrong, the test should
tell you cleanly, not just "still broken".In scope: "TypeError: Cannot read property 'id' of undefined at user.ts:42."
→ Open user.ts:42. Trace where the undefined originates by walking
the call chain backward. If getUser() returns undefined on a missing
ID, the bug is getUser() returning undefined instead of throwing or
returning a typed null, not the caller failing to handle it.
In scope: "Sometimes this test fails in CI but never locally."
→ Treat as a flake until proven otherwise. Look for: time-of-day dependence, shared mutable state across tests, race conditions on fixtures, clock-dependent assertions. Run the test in a tight loop locally with the CI's parallelism settings before declaring it "works on my machine".
In scope: "Memory keeps climbing in production."
→ Ask for the metric (RSS? heap?), the rate, and the deploy that preceded it. Look for unbounded caches, listeners that get attached on every request, or array fields that accumulate. A heap snapshot diff at two points usually identifies the leaking type within minutes.
In scope: "Why is the response sometimes empty?"
→ "Sometimes" implies a non-deterministic input. Inventory the sources of non-determinism: time, randomness, ordering of async operations, cache state, retry behavior, partial data from an upstream service. Add a structured log at the boundary where the response is built and re-run until a successful and an empty response sit side by side.
Out of scope: "Make this faster."
→ A performance ask without a functional bug is not a debugging
task. Use refactor-plan or measure first.
Out of scope: "Refactor this module while you're in there."
→ Refactors and bugfixes are separate PRs. A refactor inside a bugfix makes the fix hard to verify and hard to revert.