I Let Claude Code Fix My Firebase Crashes#

Published on March 3, 2026

You're deep in a Claude Code session, shipping a fix, and your PM pings: "we're seeing a spike in crashes." Now you're alt-tabbing to the Firebase Console, clicking through filters, squinting at stack traces, and copy-pasting them back into your editor. What if your agent could just pull the crash data itself?

That's why I built crashpull — a zero-dependency CLI that pipes Firebase Crashlytics data straight into your terminal and AI coding agents.

What is crashpull#

crashpull is a single npx-runnable command. No install, no dependencies, no config files beyond firebase login:

npx -y crashpull@latest

Six commands, all with --format json for agents:

  • doctor — preflight checks (auth, API access, config)
  • init — link a Firebase project + app to your working directory
  • list — top crash issues with filters (type, signal, time window)
  • show — full issue detail with stack trace and blamed frame
  • resolve — close an issue via API, no browser needed
  • llm — print a compact system prompt for agent consumption

It reuses the Firebase CLI's stored refresh token — the same firebase login you already have. MIT licensed, open source.

Demo: 3-minute crash triage#

Here's the full loop from zero to resolved issue, all in your terminal:

Step 1: Link your project

npx -y crashpull@latest init

This prompts you to pick a Firebase project and app. Writes a .crashpull.json to your working directory — done once.

Step 2: See what's crashing

npx -y crashpull@latest list --type fatal --since 7d

You get a table of top crash issues — subtitle, event count, user count, signal, and issue ID:

 #  Subtitle                                  Events  Users  Signal  Type   ID
 1  NullPointerException at MainActivity.kt…     842    312  fresh   fatal  a1b2c3d4
 2  IllegalStateException at PaymentFlow.kt…     156     89  regr.   fatal  e5f6g7h8
 3  ArrayIndexOutOfBoundsException at…             43     28  repet.  fatal  i9j0k1l2

Step 3: Read the stack trace

npx -y crashpull@latest show a1b2c3d4

Full stack trace, blamed frame highlighted, event metadata included.

Step 4: Resolve it

npx -y crashpull@latest resolve a1b2c3d4

Issue marked as closed. No browser opened.

The agent workflow#

This is where it gets interesting for anyone using AI coding tools. The real power of crashpull is --format json.

Any agent that can run shell commands can triage your crashes. Claude Code, Cursor, Aider, Gemini CLI — it doesn't matter. There's no MCP server to configure, no plugin to install.

Here's what a real agent-assisted crash fix looks like:

1. Agent lists crashes:

npx -y crashpull@latest list --type fatal --since 7d --format json

Returns structured JSON with issue IDs, event counts, subtitles, and signals.

2. Agent reads the stack trace:

npx -y crashpull@latest show a1b2c3d4 --format json

The JSON includes the full callstack, blamed file/line, and exception details. The agent maps this to your local source code.

3. Agent proposes a fix, you approve, agent resolves:

npx -y crashpull@latest resolve a1b2c3d4

The whole loop — from "what's crashing?" to "fixed and closed" — without leaving your editor.

The llm command#

crashpull ships with a built-in llm command that prints a compact guide designed for agent system prompts:

npx -y crashpull@latest llm

Paste the output into your CLAUDE.md or system prompt, and the agent knows the exact commands, flags, and jq patterns to use. It's under 270 tokens — small enough to fit in any context window.

Adding crashpull to your CLAUDE.md#

Here's what I add to my project's CLAUDE.md:

## Crash Triage

Run `npx -y crashpull@latest llm` to get the full command reference.
Quick: `npx -y crashpull@latest list --type fatal --since 7d --format json`
Then: `npx -y crashpull@latest show <issueId> --format json` for stack traces.

Claude Code picks this up automatically and can triage crashes on its own when asked.

crashpull vs Firebase MCP#

Firebase recently shipped their own Crashlytics MCP tools. Here's an honest comparison:

Firebase MCP:

  • Richer data (sessions, breadcrumbs, velocity alerts)
  • Deep Gemini integration
  • Requires an MCP-capable client
  • More setup (MCP server configuration)

crashpull:

  • Works in any terminal or agent — Claude Code, Cursor, Aider, bash scripts
  • Zero dependencies, npx-runnable
  • Agent-agnostic: anything that runs shell commands works
  • Simple: 6 commands, one config file
  • Open source, MIT licensed

They're complementary. If you're all-in on Gemini CLI and want the richest Crashlytics integration, use Firebase MCP. If you want something that works everywhere with zero setup, use crashpull.

Quick start#

# 1. Make sure you're logged into Firebase
firebase login

# 2. Init crashpull in your project directory
npx -y crashpull@latest init

# 3. List fatal crashes from the last week
npx -y crashpull@latest list --type fatal --since 7d

# 4. Dive into a specific crash
npx -y crashpull@latest show <issueId>

# 5. Fix it and resolve
npx -y crashpull@latest resolve <issueId>

That's it. No npm install, no config beyond firebase login.

Frequently Asked Questions#

What is crashpull?

A zero-dependency open-source CLI that pulls Firebase Crashlytics crash data into your terminal. Install nothing — just run npx crashpull.

Does crashpull work with Claude Code and Cursor?

Yes. Every command supports --format json output, and the crashpull llm command prints a compact agent guide you can add to your system prompt or CLAUDE.md.

How is crashpull different from Firebase Crashlytics MCP tools?

Firebase MCP requires an MCP-capable AI client (like Gemini CLI). crashpull works in any terminal or agent that can run shell commands — Claude Code, Cursor, Aider, or plain bash scripts.

Does crashpull require any dependencies?

No. It uses only Node.js built-ins and reuses the Firebase CLI's stored auth token. Just firebase login and go.

Can crashpull resolve/close Crashlytics issues?

Yes. crashpull resolve <issueId> marks an issue as closed via the API, no browser needed.

What platforms does crashpull support?

It pulls data for Android and iOS apps tracked in Firebase Crashlytics. The CLI runs on any platform with Node.js 18+.

Is crashpull free?

Yes, MIT licensed. Open source at github.com/DreamTeamMobile/crashpull.