navigation-patterns
<!-- Loaded by react-native-engineer when task involves navigation, stacks, tabs, expo-router, react-navigation, screen transitions -->
$ npx -y skills add notque/vexjoy-agent --agent claude-codeHow it fires
How this agent gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
Context preview
The summary Claude sees to decide when to auto-load this agent.
<!-- Loaded by react-native-engineer when task involves navigation, stacks, tabs, expo-router, react-navigation, screen transitions -->
Agent definition
navigation-patterns.mdNavigation Patterns Reference
<!-- Loaded by react-native-engineer when task involves navigation, stacks, tabs, expo-router, react-navigation, screen transitions -->
Use Native Navigators for Stacks and Tabs
**Impact:** HIGH — native transitions, platform UI, system integration
Native navigators use platform APIs (UINavigationController / Fragment). JS-based navigators reimplement in JavaScript — slower, missing platform nuances.
Stack
**Instead of:**
import { createStackNavigator } from '@react-navigation/stack'**Use:**
import { createNativeStackNavigator } from '@react-navigation/native-stack'
const Stack = createNativeStackNavigator()With expo-router, `<Stack />` already uses native-stack.
Tabs
**Instead of:**
import { createBottomTabNavigator } from '@react-navigation/bottom-tabs'**Use:**
import { createNativeBottomTabNavigator } from '@bottom-tabs/react-navigation'
const Tab = createNativeBottomTabNavigator()With expo-router:
import { NativeTabs } from 'expo-router/unstable-native-tabs'---
Prefer Native Header Options Over Custom Components
**Impact:** MEDIUM — automatic large titles, search bars, blur effects, safe areas
**Instead of:**
<Stack.Screen name="Profile" options={{ header: () => <CustomHeader title="Profile" /> }} />**Use:**
<Stack.Screen
name="Profile"
options={{
title: 'Profile',
headerLargeTitleEnabled: true,
headerSearchBarOptions: { placeholder: 'Search' },
}}
/>Native headers handle safe areas, blur effects, and scroll behavior automatically. iOS native tabs also enable `contentInsetAdjustmentBehavior` on the first ScrollView.
---
Benefits of Native Navigators
- **Performance**: Transitions and gestures on UI thread
- **Platform behavior**: iOS large titles, Android material design, system back gesture
- **System integration**: Scroll-to-top on tab tap, correct safe areas
- **Accessibility**: Platform features work automatically
Read more
Navigation Patterns Reference
<!-- Loaded by react-native-engineer when task involves navigation, stacks, tabs, expo-router, react-navigation, screen transitions -->
Use Native Navigators for Stacks and Tabs
**Impact:** HIGH — native transitions, platform UI, system integration
Native navigators use platform APIs (UINavigationController / Fragment). JS-based navigators reimplement in JavaScript — slower, missing platform nuances.
Stack
**Instead of:**
import { createStackNavigator } from '@react-navigation/stack'**Use:**
import { createNativeStackNavigator } from '@react-navigation/native-stack'
const Stack = createNativeStackNavigator()With expo-router, `<Stack />` already uses native-stack.
Tabs
**Instead of:**
import { createBottomTabNavigator } from '@react-navigation/bottom-tabs'**Use:**
import { createNativeBottomTabNavigator } from '@bottom-tabs/react-navigation'
const Tab = createNativeBottomTabNavigator()With expo-router:
import { NativeTabs } from 'expo-router/unstable-native-tabs'---
Prefer Native Header Options Over Custom Components
**Impact:** MEDIUM — automatic large titles, search bars, blur effects, safe areas
**Instead of:**
<Stack.Screen name="Profile" options={{ header: () => <CustomHeader title="Profile" /> }} />**Use:**
<Stack.Screen
name="Profile"
options={{
title: 'Profile',
headerLargeTitleEnabled: true,
headerSearchBarOptions: { placeholder: 'Search' },
}}
/>Native headers handle safe areas, blur effects, and scroll behavior automatically. iOS native tabs also enable `contentInsetAdjustmentBehavior` on the first ScrollView.
---
Benefits of Native Navigators
- **Performance**: Transitions and gestures on UI thread
- **Platform behavior**: iOS large titles, Android material design, system back gesture
- **System integration**: Scroll-to-top on tab tap, correct safe areas
- **Accessibility**: Platform features work automatically
Essays and writing behind this toolkit live at vexjoy.com. AI agents skip steps. "Looks correct" replaces running tests. "Trivial change" replaces verification.
Repo: notque/vexjoy-agent
Other agents on vexjoy-agent.
- ansible-automation-engineer
Ansible automation: playbooks, roles, collections, Molecule testing, Vault security.
Open agent - modules
**Scope**: Module selection patterns, builtin vs command/shell decisions, collection modules, and version-specific module changes **Version range**: ansible-core 2.14+ / Ansible Collections (community.general 7.0+) **Generated**: 2026-04-04 — verify against current Ansible
Open agent - testing
**Scope**: Molecule test scenarios, ansible-lint rules, idempotency validation, and check-mode patterns **Version range**: Molecule 6.0+ / ansible-lint 6.0+ / ansible-core 2.14+ **Generated**: 2026-04-04 — verify against current Molecule and ansible-lint documentation
Open agent - base-instructions
Universal operational rules injected by /do at agent dispatch. Domain-specific rules live in each agent's .md file.
Open agent - communication-patterns
**Scope**: Failure modes in agent output style — over-reporting, self-congratulation, verbose narration, and hedging. Covers what to detect and how to fix each. **Version range**: all versions **Generated**: 2026-05-11
Open agent - combat-effects-upgrade
Zero-dependency combat visual upgrades: CSS particle replacement, Framer Motion combat juice, CSS 3D card transforms.
Open agent

