shankulkarni/Crash Pilot
AI autopilot for Firebase Crashlytics — fetches crashes from BigQuery and opens fix PRs using Claude Code
View on GitHubTrust Signals
- Scorecard Score
- not yet scored
- Maintenance Recency
- Stale
- License
- None
Inputs
| name | description | required | default |
|---|---|---|---|
| bigquery_table | BigQuery table name for the Crashlytics export. Derived from your app bundle/package ID with dots replaced by underscores. Examples: com_myapp_ios, com_mycompany_myapp_android | yes | — |
| gcp_credentials_json | Google Cloud service account credentials JSON. The service account needs roles: bigquery.dataViewer and bigquery.jobUser. | yes | — |
| claude_token | Anthropic Claude Code OAuth token (CLAUDE_CODE_OAUTH_TOKEN) | yes | — |
| github_token | GitHub token with contents:write and pull-requests:write permissions. Use secrets.GITHUB_TOKEN or a PAT. | yes | — |
| bigquery_dataset | BigQuery dataset name (auto-created by Firebase) | no | firebase_crashlytics |
| lookback_hours | Hours to look back when fetching new and regressed crashes | no | 24 |
| max_issues | Maximum number of crash issues to process per run (keep low to control costs) | no | 5 |
| platform | App platform: ios | android | react-native | no | ios |
| bundle_id | App bundle ID or package name (e.g. com.mycompany.myapp). Used to generate Firebase Console deep links in PR descriptions. Optional — omit to skip the deep link. | no | "" |
| min_confidence | Minimum Claude confidence level required to open a PR. HIGH: only open PRs when Claude is very certain. MEDIUM: open PRs for HIGH and MEDIUM confidence fixes (recommended). LOW: open PRs for all fixes including uncertain ones. | no | MEDIUM |
| default_branch | Base branch that fix branches are created from and PRs target | no | main |
| pr_label | Label applied to all generated PRs (created automatically if missing) | no | crash-pilot |
| dry_run | If true, Claude analyses crashes and reports confidence but does not open PRs | no | false |
| allow_new_files | If true, Claude may create new source files (uses git add -A with denylist). If false (default), only pre-existing tracked files can be modified. | no | false |
| claude_timeout | Timeout in seconds for the Claude CLI call per crash issue | no | 300 |
Outputs
no outputs