FireCrasher AGENTS.md

FireCrasher AGENTS.md is an instructions file for Codex, OpenCode from osama-raddad/FireCrasher. It costs 1,780 tokens per session, scanned A, original, Apache-2.0.

A repository guide for FireCrasher, an Android library that catches uncaught exceptions and attempts staged recovery so an app can continue running. Its recovery steps restart the current screen, go back, or relaunch the app.

In plain words
What is it for?
Use it when developing, testing, or publishing FireCrasher, or when changing its Android recovery and message-loop code.
Why use it?
It explains the recovery sequence and module layout, making changes to crash handling less likely to break Android app behavior.

Instructions file for CodexOpenCode

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add instructions/osama-raddad/firecrasher/agents-md
Clone the repo
git clone --depth 1 https://github.com/osama-raddad/FireCrasher

Made for: Codex, OpenCode.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for FireCrasher AGENTS.md

README.md
[![agentmods](https://agentmods.dev/badge/instructions/osama-raddad/firecrasher/agents-md.svg)](https://agentmods.dev/instructions/osama-raddad/firecrasher/agents-md)
Your own site
<a href="https://agentmods.dev/instructions/osama-raddad/firecrasher/agents-md"><img src="https://agentmods.dev/badge/instructions/osama-raddad/firecrasher/agents-md.svg" alt="Measured on agentmods" height="20"></a>
Per session 1,780 This file is loaded in full into every session.
When invoked 1,780 The same file — it is already loaded in full.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.01780 $0.01780
Opus 5 $0.00890 $0.00890
Sonnet 5 $0.00356 $0.00356
Haiku 4.5 $0.00178 $0.00178

Measured 6d ago against content hash 0a77f775ebab, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-05, from the pricing page.

Security

Grade A, and why

FireCrasher AGENTS.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

AGENTS.md · 135 lines

How it starts

The opening of the file, as written. The whole thing — 135 lines — stays where its author put it; the contents beside it link to each section on GitHub.

AGENTS.md

Guidance for AI coding agents working in this repository. This is the canonical instructions file; CLAUDE.md points here. Module-specific notes live in firecrasher/AGENTS.md and app/AGENTS.md.

What this is

FireCrasher is an Android library that catches uncaught exceptions and runs a staged recovery sequence to keep the app alive instead of letting it die. It is published to JitPack as com.github.osama-raddad:FireCrasher. Current version is 3.0.0.

The recovery escalation ladder has three levels (RecoveryLevel):

  • RESTART_ACTIVITY — restart the crashed activity (recreate() on the first attempt, then relaunch-and-finish). Used while retryCount <= 1.
  • GO_BACK — the activity keeps crashing, so pop the back stack (go back) if there is another activity behind it.
  • RELAUNCH_APP — nothing to go back to, so relaunch the whole app from its launcher activity.

The core trick (FireLooper) is to replace the main-thread message loop with a reflection-driven loop wrapped in a try/catch, so an uncaught exception on the main thread does not tear down the process — the loop reposts itself and recovery runs.

Module layout

This is a two-module Gradle project (settings.gradle):

  • firecrasher/ — the published library. This is where real work happens.
  • app/ — a demo application (com.osama.firecrasherdemo) that installs FireCrasher and deliberately crashes to exercise recovery. Not published.

Library source (firecrasher/src/main/java/com/osama/firecrasher/)

File Role
FireCrasher.kt Public API entry point: the FireCrasher object (install), the Application.installFireCrasher extension, and the internal recovery policy (evaluate, recover, dispatchCrash, retryCount, recovery-state persistence).
FireCrasherConfig.kt The @FireCrasherDsl marker and the install DSL builder: onCrash { } (CrashScope receiver, default { recover() }) and onPreviousProcessExit { }.
CrashScope.kt Receiver of the onCrash handler: throwable, activity, level, retryCount, and recover(level = evaluated) { }.
RecoveryLevel.kt The three-level recovery enum (RESTART_ACTIVITY, GO_BACK, RELAUNCH_APP). Declaration order is persisted by the codec — append only.
ExitInfo.kt Public Context extensions historicalExitReasons(maxCount) / lastAbnormalExit() (API 30+, degrade to empty/null below).
CrashHandler.kt Internal Thread.UncaughtExceptionHandler + ActivityLifecycleCallbacks. Tracks the current activity and the live activity count (backStackCount). Delivers crashes to dispatchCrash on the main thread.
FireLooper.kt Reflection-based replacement main loop that survives exceptions. isSafe guards against double-install.
RecoveryState.kt RecoveryState data class + RecoveryStateCodec — encodes recovery progress into a ≤128-byte blob stored via ActivityManager.setProcessStateSummary so recovery escalation survives process death (API 30+).

Read the full file on GitHub · 135 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 6d ago First seen · 135 lines · 1,780 tokens per session scan A 0a77f775ebab

Subscribe to this mod's changes

FireCrasher AGENTS.md is an instructions file published in the GitHub repository osama-raddad/FireCrasher (148 stars, last pushed 2mo ago), licensed Apache-2.0. It adds 1,780 tokens to every session, about $0.0089 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.