# Not in this pack — missing skills & not-yet-built cores

The graceful-degrade posture, in full. The entry keeps the one-line rule; this is the detail,
including exactly which skills ship per platform and how to word an honest decline.

**The rule: only hand off to a core/skill that SHIPS in this pack** — present under `skills/` and declared in `peers.yaml`. When a needed skill is NOT installed, never route to it and never pretend it's there; run beats 1–3 in full, produce the plan artifact, and in beat 4 be honest and offer the nearest shipped alternative. Two cases:
- **Shipped skills to route to (by platform — NEVER decline what IS shipped; `peers.yaml` is the authority):** **React** (`react-v7`): calling → `cometchat-react-v7-calls`; push → `cometchat-react-v7-push` (docs-first — honestly note live delivery needs a device check); migration → `cometchat-react-v7-migration`. **Angular** (`angular-v5`): the full set incl. `-calls`, `-push`, `-migration`. **iOS** (`ios`): `cometchat-ios-core` + `-calls`/`-push`/`-migration`. **React Native** (`react-native`): calling → `cometchat-react-native-calls`; push → `cometchat-react-native-push`; migration → `cometchat-react-native-migration`. **Android** (`android-v6`): `cometchat-android-v6-core` + the cohort-split `{kotlin,compose}-*` skills, `-calls` (prebuilt call UI), `-push` (FCM), `-migration`; **headless Chat SDK** → `cometchat-android-v5-sdk`; **headless calling from scratch (meet-style or 1:1 ringing, no UI Kit)** → `cometchat-android-v5-calls-sdk` (via `calling-first.md`). **Flutter** (`flutter-v6`): `cometchat-flutter-v6-core` + `-calls`/`-push`/`-migration`. Web headless calling from scratch → `cometchat-js-v5-sdk`. The headless **JS Chat SDK** is not a separate skill, but its methods ARE the per-feature fallback used INSIDE the UI-Kit build (`docs-map.md` → SDK docs). Only apply the "not in this pack" posture for a capability with genuinely NO shipped skill (see §Not in this pack) — push is now shipped on every family, so route to it.
- **Not-yet-built core (no matching `peers.yaml` peer — Vue today; a plain-JS chat UI is likewise SDK-only):** still deliver the plan; state that CometChat DOES support that platform but its implementation skill isn't built in this pack yet; offer the plan as the hand-off spec (or for a manual integration following CometChat's docs). Never silently pretend React. **Never put a shipped family on this list** — a literal agent will decline the user (this file once listed Android/RN/Flutter/Angular after they had shipped; `lint-skills.mjs` now checks the list against the shipped `-core` dirs).
