osama-raddad/firecrasher/customize-recovery

Claude Code and agent skill by osama-raddad/firecrasher

Trust tier 2
  • community
LLM review pending
Source check pending

Checking that the SKILL.md file is still in the repository.

Inspect FireCrasher's recovery level and show custom recovery UX (loading dialog, toast, snackbar) or force a specific recovery level. Use when tailoring what the user sees during recovery, or reacting differently to occasional vs. repeated crashes.

Install

npx vskill@latest install osama-raddad/firecrasher/customize-recovery

SKILL.md

Customize the recovery experience

FireCrasher escalates recovery through three RecoveryLevels:

  • RESTART_ACTIVITY — restart the crashing activity (occasional crash).
  • GO_BACK — the activity keeps crashing, so go back to the previous screen.
  • RELAUNCH_APP — nothing to go back to, so restart the whole app.

You can read the level before recovering and show appropriate UX, or force a level.

React to the recovery level

Inside onCrash, the evaluated level and the current activity are already in scope. Call recover { … }; its lambda runs after recovery is kicked off.

kotlin
installFireCrasher {
onCrash {
report(throwable) // see report-crashes skill
val context = activity ?: return@onCrash
when (level) {
RecoveryLevel.RESTART_ACTIVITY ->
// Quiet restart of the current screen — show a brief spinner.
recover {
Toast.makeText(context, "Recovering…", Toast.LENGTH_SHORT).show()
}
RecoveryLevel.GO_BACK ->
recover {
Toast.makeText(context, "Returning to the previous screen", Toast.LENGTH_SHORT).show()
}
RecoveryLevel.RELAUNCH_APP ->
recover {
Toast.makeText(context, "Restarting the app", Toast.LENGTH_LONG).show()
}
}
}
}

retryCount is also in scope if you want to distinguish the first attempt from later ones (e.g. only show a dialog once):

kotlin
if (retryCount <= 1 && level == RecoveryLevel.RESTART_ACTIVITY) {
// show a loading dialog
}

Force a specific level

If you know how you want to recover, pass the level explicitly instead of using the evaluated one:

kotlin
onCrash {
recover(RecoveryLevel.RELAUNCH_APP) // always restart the app on any crash
}

Guidance

  • Keep recovery UX fast and non-blocking — the user just hit a crash; a long

modal makes it worse. A spinner or short toast is usually enough.

  • Do the crash reporting before showing UX (see report-crashes).
  • The recovery lambda runs on the main thread; don't do heavy work in it.

Security

  • Security scanPassed, 100 of 100Pattern checks on the skill's files.
  • Model reviewNot runA model review is scheduled for the next rescan.

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

7-day trend score
0

Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/osama-raddad/firecrasher/customize-recovery/badge)](https://verified-skill.com/skills/osama-raddad/firecrasher/customize-recovery)

Something wrong with this skill or its page? Tell us.