Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 8 additions & 7 deletions .github/workflows/crashlytics-autotriage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -75,22 +75,23 @@ jobs:
uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
# Temporary: surfaces the MCP server startup logs so we can diagnose connection
# issues. Remove once the Firebase MCP server connects reliably.
show_full_output: "true"
prompt: |
You are triaging an automated Crashlytics crash report filed as GitHub issue
#${{ github.event.issue.number || github.event.inputs.issue_number }} in stozo04/OpenLoop.

Follow this repo's CLAUDE.md and docs/DEFINITION_OF_DONE.md.

The Firebase Android app ID is `1:95815153197:android:c30254bb713d1e6ae96aa4`. Pass it
directly to the Crashlytics tools; do NOT search the repo for it (google-services.json is
gitignored and absent in CI).

Steps:
1. Read the issue: `gh issue view ${{ github.event.issue.number || github.event.inputs.issue_number }}`.
Extract the `Crashlytics-Issue-ID:` value from the body.
2. Use the Firebase MCP Crashlytics tools (crashlytics_get_issue, crashlytics_list_events,
crashlytics_batch_get_events) to fetch the stacktrace and a few sample events for that
issue ID. If an MCP call fails (the tools are Experimental), proceed with whatever
metadata is in the issue body and say so.
crashlytics_batch_get_events) with that app ID to fetch the stacktrace and a few sample
events for the issue ID. If an MCP call fails (the tools are Experimental), proceed with
whatever metadata is in the issue body and say so.
3. Read the relevant source and docs/lessons_learned/ (several past lessons are
Crashlytics-sourced) to locate the likely cause.
4. ALWAYS post a root-cause comment on the issue with: the failing stack frame, the most
Expand All @@ -107,5 +108,5 @@ jobs:
claude_args: |
--mcp-config .github/firebase-mcp.json
--allowedTools "mcp__firebase__crashlytics_get_issue,mcp__firebase__crashlytics_list_events,mcp__firebase__crashlytics_batch_get_events,mcp__firebase__crashlytics_get_report,mcp__firebase__crashlytics_list_notes,Bash,Read,Edit,Write,Glob,Grep"
--max-turns 25
--max-turns 40
--model claude-sonnet-4-6