deep-link-debugging

Debug iOS app navigation via URL handler wrapped in #if DEBUG.

Updated Aug 23, 2026
One-click install
npx skills add https://github.com/derKlinke/codex-config --skill deep-link-debugging-derklinke
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: deep-link-debugging
Source: https://github.com/derKlinke/codex-config/tree/main/skills/ios-deep-link-debugging
Command: npx skills add https://github.com/derKlinke/codex-config --skill deep-link-debugging-derklinke

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill helps developers debug iOS deep links by routing debug URLs to in-app navigation during development, enabling closed-loop testing without production deep links.

Core Features & Use Cases

  • Debug URL handling integrated with existing navigation to reach specific screens quickly.
  • Supports navigation to common screens (Settings, Profile, Recipe) via hosts like debug://settings or debug://profile?id=123.
  • Enables automated simulator testing workflows, state verification, and screenshot-ready states without changes to production code.

Quick Start

Use the debug URL handler guarded by #if DEBUG to route debug URLs to your navigator. Then boot the simulator and test with xcrun simctl openurl booted "debug://settings".

Frequently Asked Questions about deep-link-debugging

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I debug iOS deep links in the simulator?

Debug iOS deep links by routing debug URLs to your in-app navigator, allowing you to reach specific screens quickly using commands like xcrun simctl openurl booted during development.

How does a debug URL handler work for iOS navigation?

A debug URL handler intercepts custom URL schemes in development builds and routes them to existing navigation logic, enabling direct screen access for testing without production code changes.

Can I test deep linking without affecting my production code?

Yes, you can test deep linking safely by wrapping the debug URL handler in a #if DEBUG guard and stripping the debug URL scheme from release builds.

How do I automate navigation and verify state across iOS screens?

Automate navigation and verify state by using debug deep links to trigger specific views, enabling closed-loop simulator testing workflows and screenshot-ready states.

How do I validate parameters in iOS deep link URLs?

Validate parameters by passing them through the debug URL handler, which supports hosts like debug://profile?id=123 to verify navigation and parameter processing.

Why should I strip URL schemes from iOS release builds?

Strip URL schemes from iOS release builds to prevent unauthorized deep link access in production, ensuring debug navigation routes remain confined to development testing environments.