Skip to main content
skill CX Codex

mobile-app-debugging · secondsky — Claude Code skill: debug iOS, Android, RN apps

A skill for debugging iOS, Android and cross-platform apps: crashes, memory leaks, dropped frames, network problems.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add secondsky/claude-skills --skill mobile-app-debugging -a claude-code
Open on GitHub

What mobile-app-debugging does

The skill hands your agent a set of mobile debugging moves. On iOS that means conditional breakpoints in Xcode and LLDB commands (po, p, bt), the Memory Graph Debugger for retain cycles, Zombie Objects for use-after-free bugs, and profiling through Instruments > Leaks. On Android it covers Logcat filtering by tag and level, ANR tracing back to main thread blocking, OOM work in the Memory Profiler, and layout problems in the Layout Inspector.

For React Native the skill leans on remote debugging and the Performance Monitor, with a 60 FPS target and under 16ms per frame. Network requests get intercepted by wrapping XMLHttpRequest.prototype.send so the URL is logged before the call goes out. A checklist rounds it off: physical devices, older models, simulated slow 3G, offline mode, memory under load, rotation and safe areas.

Performance targets sit in a table: 60 FPS, memory under 100MB, app launch under 2 seconds. Worth installing when a bug refuses to show up in the simulator, since the checklist sends you straight to real hardware and older models.

What it helps with

  • track down a retain cycle in an iOS app
  • trace an ANR back to main thread blocking
  • catch a memory leak under load
  • intercept network requests in React Native
  • test the app on slow networks and offline

Example prompts for the agent

  • Help me debug an iOS crash that happens a minute after launch
  • I keep hitting ANRs on Android, how do I find the main thread block
  • React Native is dropping frames, run the checklist and Performance Monitor

How to install mobile-app-debugging

1Skills CLI (Vercel)

npx skills add secondsky/claude-skills --skill mobile-app-debugging -a claude-code

2Manually: put the files in place

~/.claude/skills/mobile-app-debugging/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/mobile-app-debugging/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about mobile-app-debugging

How do I install mobile-app-debugging in Claude?

Run npx skills add secondsky/claude-skills --skill mobile-app-debugging -a claude-code. The skill lands at ~/.claude/skills/mobile-app-debugging/SKILL.md.

What does mobile-app-debugging do?

It collects mobile debugging techniques: breakpoints and LLDB for iOS, Logcat and profilers for Android, remote debugging and the Performance Monitor for React Native.

Which platforms support the skill?

Claude, Codex, Cursor, GitHub Copilot, Gemini CLI and OpenCode, each with its own install command.

Source text

SKILL.md · MIT
---
name: mobile-app-debugging
description: Mobile app debugging for iOS, Android, cross-platform frameworks. Use for crashes, memory leaks, performance issues, network problems, or encountering Xcode instruments, Android Profiler, React Native debugger, native bridge errors.
license: MIT
---

# Mobile App Debugging

Debug mobile applications across iOS, Android, and cross-platform frameworks.

## iOS Debugging (Xcode)

```swift
// Breakpoint with condition
// Right-click breakpoint > Edit > Condition: userId == "123"

// LLDB commands
po variable          // Print object
p expression         // Evaluate expression
bt                   // Backtrace
```

### Memory Debugging
- Use Memory Graph Debugger to find retain cycles
- Enable Zombie Objects for use-after-free bugs
- Profile with Instruments > Leaks

## Android Debugging (Android Studio)

```kotlin
// Logcat filtering
Log.d("TAG", "Debug message")
Log.e("TAG", "Error", exception)

// Filter: tag:MyApp level:error
```

### Common Issues
- ANR: Check main thread blocking
- OOM: Profile with Memory Profiler
- Layout issues: Use Layout Inspector

## React Native

```javascript
// Remote debugging
// Shake device > Debug JS Remotely

// Console logging
console.log('Debug:', variable);
console.warn('Warning');
console.error('Error');

// Performance Monitor
// Shake > Show Perf Monitor
// Target: 60 FPS, <16ms per frame
```

## Network Debugging

```javascript
// Intercept requests
XMLHttpRequest.prototype._send = XMLHttpRequest.prototype.send;
XMLHttpRequest.prototype.send = function() {
  console.log('Request:', this._url);
  this._send.apply(this, arguments);
};
```

## Debug Checklist

- [ ] Test on physical devices (not just simulators)
- [ ] Test on older device models
- [ ] Simulate slow 3G network
- [ ] Test offline mode
- [ ] Check memory under load
- [ ] Test rotation and safe areas
- [ ] Verify 60 FPS target

## Performance Targets

| Metric | Target |
|--------|--------|
| Frame rate | 60 FPS (16ms/frame) |
| Memory | <100MB |
| App launch | <2 seconds |

© secondsky · MIT · secondsky/claude-skills

Similar skills

Everything for Mobile →

mobile-app-debugging by other authors comes first.

From the same set94

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor