Gojiberry AI
AI agents that find and contact high-intent leads for you
Try Gojiberry free →
Hermes Agent
Run your Hermes agent, fully managed
Launch on Hostinger →
Hostinger VPS
Spin up a VPS in one click, 20% off
Launch on Hostinger →
Firecrawl
Crawl and scrape any site into clean data
Try Firecrawl free →
CodeRabbit
AI code reviews for every PR
Try CodeRabbit free →
Context.dev
One API to scrape, enrich, and extract the web
Start building free →
Jotform
Forms, workflows, and AI Agents for your team
Try Jotform free →
Gojiberry AI
AI agents that find and contact high-intent leads for you
Try Gojiberry free →
OpenClaw
Deploy a managed OpenClaw agent in 60 seconds
Launch on Hostinger →
Sponsor here
9/10 sponsor slots taken — 1 left
Claim it →
Claude Market
Menu
SkillsMCPPluginsMarketplacesNewsletterSubmit MCPSkillPluginMCPMCP, plugin, or skillAdvertise
Claude Market
SkillsMCPPluginsMarketplacesNewsletterSubmit MCPSkillPluginMCPMCP, plugin, or skillAdvertise
Skills/cap-go/capgo-skills/debugging-capacitor
debugging-capacitor logo

debugging-capacitor

cap-go/capgo-skills
614 installs58 stars
Run it on Hostinger, 20% off →Your friend gets 20% off too, using this linkFree API →|View on GitHub|Create your own skill →

Installation

npx skills add https://github.com/cap-go/capgo-skills --skill debugging-capacitor

Summary

Comprehensive debugging guide for Capacitor applications. Covers WebView debugging, native debugging, crash analysis, network inspection, and common issues. Use this skill when users report bugs, crashes, or need help diagnosing issues.

SKILL.md

Debugging Capacitor Applications

Complete guide to debugging Capacitor apps on iOS and Android.

When to Use This Skill

  • User reports app crashes
  • User needs to debug WebView/JavaScript
  • User needs to debug native code
  • User has network/API issues
  • User sees unexpected behavior
  • User asks how to debug

Quick Reference: Debugging Tools

PlatformWebView DebugNative DebugLogs
iOSSafari Web InspectorXcode DebuggerConsole.app
AndroidChrome DevToolsAndroid Studioadb logcat

WebView Debugging

iOS: Safari Web Inspector

  1. Enable on device:
  • Settings > Safari > Advanced > Web Inspector: ON
  • Settings > Safari > Advanced > JavaScript: ON
  1. Enable in Xcode (capacitor.config.ts):
const config: CapacitorConfig = {
  ios: {
    webContentsDebuggingEnabled: true, // Required for iOS 16.4+
  },
};
  1. Connect Safari:
  • Open Safari on Mac
  • Develop menu > [Device Name] > [App Name]
  • If no Develop menu: Safari > Settings > Advanced > Show Develop menu
  1. Debug:
  • Console: View JavaScript logs
  • Network: Inspect API calls
  • Elements: Inspect DOM
  • Sources: Set breakpoints

Android: Chrome DevTools

  1. Enable in config (capacitor.config.ts):
const config: CapacitorConfig = {
  android: {
    webContentsDebuggingEnabled: true,
  },
};
  1. Connect Chrome:
  • Open Chrome on computer
  • Navigate to chrome://inspect
  • Your device/emulator should appear
  • Click "inspect" under your app
  1. Debug features:
  • Console: JavaScript logs
  • Network: API requests
  • Performance: Profiling
  • Application: Storage, cookies

Remote Debugging with VS Code

Install "Debugger for Chrome" extension:

// .vscode/launch.json
{
  "version": "0.2.0",
  "configurations": [
    {
      "type": "chrome",
      "request": "attach",
      "name": "Attach to Android WebView",
      "port": 9222,
      "webRoot": "${workspaceFolder}/dist"
    }
  ]
}

Native Debugging

iOS: Xcode Debugger

  1. Open in Xcode:
npx cap open ios
  1. Set breakpoints:
  • Click line number in Swift/Obj-C files
  • Or use breakpoint set --name methodName in LLDB
  1. Run with debugger:
  • Product > Run (Cmd + R)
  • Or click Play button
  1. LLDB Console commands:
# Print variable
po myVariable

# Print object description
p myObject

# Continue execution
continue

# Step over
next

# Step into
step

# Print backtrace
bt
  1. View crash logs:
  • Window > Devices and Simulators
  • Select device > View Device Logs

Android: Android Studio Debugger

  1. Open in Android Studio:
npx cap open android
  1. Attach debugger:
  • Run > Attach Debugger to Android Process
  • Select your app
  1. Set breakpoints:
  • Click line number in Java/Kotlin files
  1. Debug console:
# Evaluate expression
myVariable

# Run method
myObject.toString()
  1. Logcat shortcuts:
  • View > Tool Windows > Logcat
  • Filter by package: package:com.yourapp

Console Logging

JavaScript Side

// Basic logging
console.log('Debug info:', data);
console.warn('Warning:', issue);
console.error('Error:', error);

// Grouped logs
console.group('API Call');
console.log('URL:', url);
console.log('Response:', response);
console.groupEnd();

// Table format
console.table(arrayOfObjects);

// Timing
console.time('operation');
// ... operation
console.timeEnd('operation');

Native Side (iOS)

import os.log

let logger = Logger(subsystem: "com.yourapp", category: "MyPlugin")

// Log levels
logger.debug("Debug message")
logger.info("Info message")
logger.warning("Warning message")
logger.error("Error message")

// With data
logger.info("User ID: \(userId)")

// Legacy NSLog (shows in Console.app)
NSLog("Legacy log: %@", message)

Native Side (Android)

import android.util.Log

// Log levels
Log.v("MyPlugin", "Verbose message")
Log.d("MyPlugin", "Debug message")
Log.i("MyPlugin", "Info message")
Log.w("MyPlugin", "Warning message")
Log.e("MyPlugin", "Error message")

// With exception
Log.e("MyPlugin", "Error occurred", exception)

Common Issues and Solutions

Issue: App Crashes on Startup

Diagnosis:

# iOS - Check crash logs
xcrun simctl spawn booted log stream --level debug | grep -i crash

# Android - Check logcat
adb logcat *:E | grep -i "fatal\|crash"

Common causes:

  1. Missing plugin registration
  2. Invalid capacitor.config
  3. Missing native dependencies

Solution checklist:

  • [ ] Run npx cap sync
  • [ ] iOS: cd ios/App && pod install
  • [ ] Check Info.plist permissions
  • [ ] Check AndroidManifest.xml permissions

Issue: Plugin Method Not Found

Error: Error: "MyPlugin" plugin is not implemented on ios/android

Diagnosis:

import { Capacitor } from '@capacitor/core';

// Check if plugin exists
console.log('Plugins:', Capacitor.Plugins);
console.log('MyPlugin available:', !!Capacitor.Plugins.MyPlugin);

Solutions:

  1. Ensure plugin is installed: npm install @capgo/plugin-name
  2. Run sync: npx cap sync
  3. Check plugin is registered (native code)

Issue: Network Requests Failing

Diagnosis:

// Add request interceptor
const originalFetch = window.fetch;
window.fetch = async (...args) => {
  console.log('Fetch:', args[0]);
  try {
    const response = await originalFetch(...args);
    console.log('Response status:', response.status);
    return response;
  } catch (error) {
    console.error('Fetch error:', error);
    throw error;
  }
};

Common causes:

  1. iOS ATS blocking HTTP: Add to Info.plist:
<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoads</key>
    <true/>
</dict>
  1. Android cleartext blocked: Add to capacitor.config.ts:
server: {
  cleartext: true, // Only for development!
}
  1. CORS issues: Use native HTTP:
import { CapacitorHttp } from '@capacitor/core';

const response = await CapacitorHttp.request({
  method: 'GET',
  url: 'https://api.example.com/data',
});

Issue: Permission Denied

Diagnosis:

import { Permissions } from '@capacitor/core';

// Check permission status
const status = await Permissions.query({ name: 'camera' });
console.log('Camera permission:', status.state);

iOS: Check Info.plist has usage descriptions:

<key>NSCameraUsageDescription</key>
<string>We need camera access to scan documents</string>

Android: Check AndroidManifest.xml:

<uses-permission android:name="android.permission.CAMERA" />

Issue: White Screen on Launch

Diagnosis:

  1. Check WebView console for errors (Safari/Chrome)
  2. Check if dist/ folder exists
  3. Verify webDir in capacitor.config.ts

Solutions:

# Rebuild web assets
npm run build

# Sync to native
npx cap sync

# Check config
cat capacitor.config.ts

Issue: Deep Links Not Working

Diagnosis:

import { App } from '@capacitor/app';

App.addListener('appUrlOpen', (event) => {
  console.log('Deep link:', event.url);
});

iOS: Check Associated Domains entitlement and apple-app-site-association file.

Android: Check intent filters in AndroidManifest.xml.

Performance Debugging

JavaScript Performance

// Mark performance
performance.mark('start');
// ... operation
performance.mark('end');
performance.measure('operation', 'start', 'end');

const measures = performance.getEntriesByName('operation');
console.log('Duration:', measures[0].duration);

iOS Performance (Instruments)

  1. Product > Profile (Cmd + I)
  2. Choose template:
  • Time Profiler: CPU usage
  • Allocations: Memory usage
  • Network: Network activity

Android Performance (Profiler)

  1. View > Tool Windows > Profiler
  2. Select:
  • CPU: Method tracing
  • Memory: Heap analysis
  • Network: Request timeline

Memory Debugging

JavaScript Memory Leaks

Use Chrome DevTools Memory tab:

  1. Take heap snapshot
  2. Perform action
  3. Take another snapshot
  4. Compare snapshots

iOS Memory (Instruments)

# Run with Leaks instrument
xcrun instruments -t Leaks -D output.trace YourApp.app

Android Memory (LeakCanary)

Add to build.gradle:

debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.12'

Debugging Checklist

When debugging issues:

  • [ ] Check WebView console (Safari/Chrome DevTools)
  • [ ] Check native logs (Xcode Console/Logcat)
  • [ ] Verify plugin is installed and synced
  • [ ] Check permissions (Info.plist/AndroidManifest)
  • [ ] Test on real device (not just simulator)
  • [ ] Try clean build (rm -rf node_modules && npm install)
  • [ ] Verify capacitor.config.ts settings
  • [ ] Check for version mismatches (capacitor packages)

Resources

  • Capacitor Debugging Guide: https://capacitorjs.com/docs/guides/debugging
  • Safari Web Inspector: https://webkit.org/web-inspector
  • Chrome DevTools: https://developer.chrome.com/docs/devtools
  • Xcode Debugging: https://developer.apple.com/documentation/xcode/debugging
  • Android Studio Debugging: https://developer.android.com/studio/debug

Score

0–100
63/ 100

Grade

C

Popularity15/30

614 installs — growing adoption.

Completeness27/30

Documented: full SKILL.md body, description, one-line install. Missing: category/license metadata.

Trust15/25

Community skill with a public GitHub source repository you can review.

Freshness6/15

No update timestamp is tracked for this skill in our catalog.

Scored automatically from popularity, completeness, trust, and freshness — computed only from data in our catalog, never fabricated.

Proud of your score? Add this badge to your README.

Paste a snippet into your GitHub README. The badge updates automatically and links back to this page.

Debugging Capacitor skill score badge previewScore badge

Markdown

[![Debugging Capacitor skill](https://www.claudemarket.ai/skills/cap-go/capgo-skills/debugging-capacitor/badges/score.svg)](https://www.claudemarket.ai/skills/cap-go/capgo-skills/debugging-capacitor)

HTML

<a href="https://www.claudemarket.ai/skills/cap-go/capgo-skills/debugging-capacitor"><img src="https://www.claudemarket.ai/skills/cap-go/capgo-skills/debugging-capacitor/badges/score.svg" alt="Debugging Capacitor skill"/></a>

Debugging Capacitor FAQ

How do I install the Debugging Capacitor skill?

Run “npx skills add https://github.com/cap-go/capgo-skills --skill debugging-capacitor” in your terminal. The skill is added to your agent's skills directory and picked up automatically on the next run — no restart or extra configuration needed.

What does the Debugging Capacitor skill do?

Comprehensive debugging guide for Capacitor applications. Covers WebView debugging, native debugging, crash analysis, network inspection, and common issues. Use this skill when users report bugs, crashes, or need help diagnosing issues. The full SKILL.md on this page shows the exact instructions the skill gives your agent.

Is the Debugging Capacitor skill free?

Yes. Debugging Capacitor is a free, open-source skill published from cap-go/capgo-skills. As with any third-party skill, review the source repository before installing it into an agent with sensitive access.

Does Debugging Capacitor work with Claude Code and OpenClaw?

Yes. Skills use the portable SKILL.md format, so Debugging Capacitor works with Claude Code, OpenClaw, Codex, Hermes, and any other agent that reads SKILL.md skills.

Recommended skills

Browse all →
systematic-debugging logo

systematic-debugging

obra/superpowers

221K installsInstall
find-skills logo

find-skills

vercel-labs/skills

2.9M installsInstall
grill-me logo

grill-me

mattpocock/skills

828K installsInstall
frontend-design logo

frontend-design

anthropics/skills

766K installsInstall
grill-with-docs logo

grill-with-docs

mattpocock/skills

704K installsInstall
improve-codebase-architecture logo

improve-codebase-architecture

mattpocock/skills

679K installsInstall

Related guides

Hand-picked reading to help you choose, install, and use agent skills.

Guide10 Openclaw Skills Every Nextjs Developer NeedsGuideHow To Debug Openclaw Skills Not WorkingGuideBest Openclaw Skills 2026

Skills by category

FrontendBackend & APIsTesting & QASecurityDevOps & CI/CDMCP & ToolingAutomationData & Analysis+27 more

MCP servers by category

MCP & ToolingBackend & APIsData & AnalysisDevOps & CI/CDAutomationSecurityDocsTesting & QA+24 more

Plugins by category

AutomationDevOps & CI/CDData & AnalysisDesign & CreativeSecurityBackend & APIsFrontendTesting & QA+16 more

Marketplaces by category

AutomationData & AnalysisDevOps & CI/CDDesign & CreativeFrontendBackend & APIsTesting & QASecurity+21 more

The Agent Stack

Weekly Claude Code, Agent SDK, and MCP moves worth your time — free.

Claude Market

AI agent skills directory, marketplace, and workflow hub for OpenClaw, Hermes Agent, Claude Code, Codex, and MCP-powered operator stacks.

Independent project, not affiliated with Anthropic.

Resources

  • Browse Skills
  • Browse MCP Servers
  • Browse Plugins
  • Browse Marketplaces
  • Newsletter

More

  • Submit a Tool
  • Create a Skill
  • Advertise
  • Free Tools
  • API
  • Shipping
  • Contact
  • Terms
  • Privacy
© 2026 Claude Market · Not affiliated with Anthropic
Fazier badgeFeatured on Twelve ToolsFeatured on Wired BusinessRemote OpenClaw - Featured on AI Agents DirectoryListed on Turbo0Featured on Uneed