Skip to content

Commit 307e7b9

Browse files
committed
doc: update crashlytics skill description for consistency
1 parent 1904437 commit 307e7b9

File tree

5 files changed

+27
-31
lines changed

5 files changed

+27
-31
lines changed

skills/firebase-crashlytics-basics/SKILL.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
name: firebase-crashlytics-basics
3-
description: Instrument mobile applications with Firebase Crashlytics, access crash reports and debug issues. Trigger when the user requests to instrument their mobile application or access crash reports.
3+
description: Comprehensive guide for Firebase Crashlytics, including SDK setup, instrumentation, and accessing crash reports. Use this skill when the user needs to instrument their mobile application, configure advanced reporting, or debug issues using crash data.
44
compatibility: This skill is best used with the Firebase CLI, but does not require it. Install it by running `npm install -g firebase-tools`.
55
---
66

@@ -28,4 +28,4 @@ Access crash reports and manage issues directly through the MCP server:
2828

2929
* **Reports**: [reports.md](references/reports.md)
3030
* **Issues**: [issues.md](references/issues.md)
31-
* **Investigations**: [investigations.md](references/investigations.md)
31+
* **Investigations**: [investigations.md](references/investigations.md)

skills/firebase-crashlytics-basics/references/android_sdk.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,6 @@ firebaseCrashlytics {
113113
// Enable processing and uploading of native symbols to Crashlytics.
114114
// This flag is disabled by default because it requires you to have the Android NDK installed.
115115
nativeSymbolUploadEnabled true
116-
117116
// Enable uploading of ProGuard/R8 mapping files
118117
// This is required for de-obfuscating stack traces if your app is minified.
119118
mappingFileUploadEnabled true
@@ -133,7 +132,6 @@ If you are using NDK and dont see symbolicated stack traces:
133132
Crashlytics automatically captures ANR (Application Not Responding) events on Android 11+ devices.
134133
* **Requirement:** The app must be installed from the Google Play Store (or recognized by Play Services) for ANRs to be reported in many cases, though strictly local debugging often catches them too.
135134
* **No Extra Code:** You generally do not need extra code to enable ANR reporting with the latest SDKs.
136-
```
137135

138136
> **Note:** For the BoM and plugin versions, please refer to the official Firebase documentation for the latest versions.
139137

skills/firebase-crashlytics-basics/references/instrument_analytics.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -168,4 +168,4 @@ private void performSearch(final String query) {
168168

169169
---
170170

171-
By following these steps, effectively instrument Firebase Analytics events to gain deeper insights into user behavior within the application. Remember to always consider privacy and avoid logging sensitive user data.
171+
By following these steps, you can effectively instrument Firebase Analytics events to gain deeper insights into user behavior within the application. Remember to always consider privacy and avoid logging sensitive user data.

skills/firebase-crashlytics-basics/references/investigations.md

Lines changed: 23 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -6,53 +6,51 @@ Follow these steps to diagnose bugs and and propose fixes for issues.
66
2. Use the `crashlytics_get_issue` tool to get more context on the issue.
77
3. Use the `crashlytics_batch_get_events` tool to get an example crash for this issue. Use the event names in the sampleEvent fields.
88
3a. If you need to read more events, use the `crashlytics_list_events` tool.
9-
3b. Apply the same filtering criteria that you used to find the issue, so that you find a appropriate events.
9+
3b. Apply the same filtering criteria that you used to find the issue, so that you find appropriate events.
1010
4. Read the files that exist in the stack trace of the issue to understand the crash deeply.
1111
5. Determine possible root causes for the crash - no more than 5 potential root causes.
1212
6. Critique your own determination, analyzing how plausible each scenario is given the crash details.
1313
7. Choose the most likely root cause given your analysis.
1414
8. Create a plan for the most likely root cause using the following format for the plan:
1515

16-
```
17-
## Cause
16+
```
17+
## Cause
1818
19-
<A description of the root cause leading to the issue>
20-
- **Fault**: <a determination of whether this code base is at fault or a dependent library is at fault>
21-
- **Complexity**: <one of "simple", "moderately simple", "moderately hard", "hard", "oof, I don't know where to start">
19+
<A description of the root cause leading to the issue>
20+
- **Fault**: <a determination of whether this code base is at fault or a dependent library is at fault>
21+
- **Complexity**: <one of "simple", "moderately simple", "moderately hard", "hard", "oof, I don't know where to start">
2222
23-
## Fix
23+
## Fix
2424
25-
<A description of the fix for this issue and a break down of the changes.>
26-
1. <Step 1>
27-
2. <Step 2>
25+
<A description of the fix for this issue and a break down of the changes.>
26+
1. <Step 1>
27+
2. <Step 2>
2828
29-
## Test
29+
## Test
3030
31-
<A plan for how to test that the issue has been fixed and protect against regressions>
32-
1. <Test case 1>
33-
2. <Test case 2>
31+
<A plan for how to test that the issue has been fixed and protect against regressions>
32+
1. <Test case 1>
33+
2. <Test case 2>
3434
35-
## Other potential causes
35+
## Other potential causes
3636
37-
1. <Another possible root cause>
38-
2. <Another possible root cause>
39-
```
37+
1. <Another possible root cause>
38+
2. <Another possible root cause>
39+
```
4040
41-
### 9. Special Investigations
41+
9. If there is not enough information in the crash report to find a root cause, describe why you cannot fix the issue instead of making a guess.
4242
43-
#### 9.1 Analyzing NDK (Native) Crashes
43+
### Special Investigations
44+
45+
#### Analyzing NDK (Native) Crashes
4446
Native crashes often look intimidating but follow predictable patterns.
4547
* **Signal 11 (SIGSEGV):** Segmentation violation. Usually a null pointer dereference (`*ptr = 0`) or accessing freed memory (Use-after-free).
4648
* **Signal 6 (SIGABRT):** Abort. The app deliberately killed itself, often because of an unhandled C++ exception or a failed assertion (`assert(condition)`).
4749
* **Missing Symbols:** If the stack trace shows `(missing)` or hex addresses (e.g., `0x000532`), you cannot debug it. Check if `nativeSymbolUploadEnabled` is on and if the correct mappings were uploaded.
4850
49-
#### 9.2 Analyzing ANRs (Application Not Responding)
51+
#### Analyzing ANRs (Application Not Responding)
5052
* **The "Main" Culprit:** Look immediately at the thread named `main`. This is the UI thread.
5153
* **Blocked vs. Busy:**
5254
* *Blocked:* The main thread is waiting on a lock (monitor contention) held by another thread. Look for "Waiting to lock..." in the stack trace, then find the thread holding that lock.
5355
* *Busy:* The main thread is doing too much work (e.g., heavy JSON parsing, sorting a huge list, image processing) directly on the UI thread.
5456
* **Deadlocks:** If Thread A holds Lock 1 and wants Lock 2, while Thread B holds Lock 2 and wants Lock 1, nobody moves.
55-
56-
### 10. Finalize the Plan
57-
58-
10. If there is not enough information in the crash report to find a root cause, describe why you cannot fix the issue instead of making a guess.

skills/firebase-crashlytics-basics/references/reports.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,5 +75,5 @@ When displaying a list of issues, use the following format:
7575
1. Issue <full issue id>
7676
* <the issue title>
7777
* <the issue subtitle>
78-
* **Description:** <a discription of the issue based on information from the tool response>
78+
* **Description:** <a description of the issue based on information from the tool response>
7979
```

0 commit comments

Comments
 (0)