# carplay

A skill for building CarPlay-enabled apps: templates, scene setup, entitlements and testing in the CarPlay Simulator.

- skill · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 3100 installs · ★ 1237
- Author: dpearson2699
- License: LicenseRef-Unknown · policy=link-only · description only; the file stays with the author
- Source: https://github.com/dpearson2699/swift-ios-skills/tree/HEAD/skills/carplay/SKILL.md
- Updated: 2026-07-31
- HTML: https://affpapa.org/en/nevibecode/skills/carplay

## What it does

This skill walks an agent through building an app that renders on the car display. It covers category entitlements, the scene entry in `Info.plist`, the `CPTemplateApplicationSceneDelegate` lifecycle and `CPInterfaceController`, which sets the root template and manages the template stack.

Separate sections handle navigation, audio, communication and point-of-interest apps. Template tables list `CPListTemplate`, `CPGridTemplate`, `CPMapTemplate`, `CPNowPlayingTemplate` and the rest. For navigation it shows how the scene hands you a `CPWindow` and how to put your own map view controller inside it.

The scope boundary is stated plainly: WidgetKit widgets and Live Activities on CarPlay belong to other domains. One thing to line up first — request the category entitlement through Apple's form, accept the addendum, then regenerate the provisioning profile. Without an approved key, nothing reaches the car screen. The skill targets Swift 6.3 and iOS 26+.

## Install

### Claude Code (native platform)

1. **Skills CLI (Vercel)**
```bash
npx skills add dpearson2699/swift-ios-skills --skill carplay -a claude-code
```

2. **Manually: put the files in place**
- File: `~/.claude/skills/carplay/SKILL.md` — Copy the whole skill folder; for one project use .claude/skills/carplay/

### Codex

1. **Skills CLI (Vercel)**
```bash
npx skills add dpearson2699/swift-ios-skills --skill carplay -a codex
```

2. **Manually: put the files in place**
- File: `.agents/skills/carplay/SKILL.md` — For all projects use ~/.agents/skills/

### Cursor

1. **Skills CLI (Vercel)**
```bash
npx skills add dpearson2699/swift-ios-skills --skill carplay -a cursor
```

2. **Manually: put the files in place**
- File: `.cursor/skills/carplay/SKILL.md` — Cursor also reads .agents/skills/ and .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install dpearson2699/swift-ios-skills carplay
```

2. **Manually: put the files in place**
- File: `.github/skills/carplay/SKILL.md`

### Gemini CLI

1. **Skills CLI (Vercel)**
```bash
npx skills add dpearson2699/swift-ios-skills --skill carplay -a gemini-cli
```

2. **Platform CLI**
```bash
gemini skills install https://github.com/dpearson2699/swift-ios-skills --path skills/carplay
```

### Windsurf (Devin Desktop)

**Manually: put the files in place**
- File: `.devin/skills/carplay/SKILL.md` — The legacy .windsurf/skills/ path still works

### OpenCode

**Skills CLI (Vercel)**
```bash
npx skills add dpearson2699/swift-ios-skills --skill carplay -a opencode
```

### Claude.ai

**Claude.ai**
- Zip the folder and upload it in Settings → Capabilities → Skills

Where a file is given instead of a command, copy the files from the source to that path: https://github.com/dpearson2699/swift-ios-skills/tree/HEAD/skills/carplay/SKILL.md

## When to use it
- wire a CarPlay scene into an existing iOS app
- pick the right template for navigation, audio or food ordering
- set up entitlements and a provisioning profile for a category
- build a template stack with `CPInterfaceController`
- test the app in the CarPlay Simulator

## Example prompts
- add a CarPlay scene to the project and set a `CPListTemplate` as the root
- build a navigation screen with `CPMapTemplate` and a map in `CPWindow`
- check which entitlement an EV charging app needs

## Similar
- [axiom-media](https://affpapa.org/en/nevibecode/skills/axiom-media.md) — skill · 1300 installs
- [spm-build-analysis](https://affpapa.org/en/nevibecode/skills/spm-build-analysis.md) — skill · 3400 installs
- [xcode-compilation-analyzer](https://affpapa.org/en/nevibecode/skills/xcode-compilation-analyzer.md) — skill · 3400 installs
- [ios-developer](https://affpapa.org/en/nevibecode/agents/ios-developer.md) — subagent · 2684 installs
- [xcode-project-setup](https://affpapa.org/en/nevibecode/skills/xcode-project-setup.md) — skill · 130700 installs
- [ios-simulator-skill](https://affpapa.org/en/nevibecode/skills/ios-simulator-skill.md) — skill · 2400 installs

From the same set: [dpearson2699/swift-ios-skills](https://affpapa.org/en/nevibecode/by/dpearson2699/swift-ios-skills.md) — 86 cards

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
