[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6JHZ182ZM4DXCBSQRZHS57T":3,"skill-same:01M6JHZ182ZM4DXCBSQRZHS57T":136},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":31,"publishedAt":52,"linkOnly":53,"markdownContent":54,"markdownBody":55,"frontMatter":56,"refName":58,"commitSha":59,"skillDirectory":60,"forksCount":61,"repositoryHtmlUrl":62,"repositoryHomepageUrl":6,"ownerHtmlUrl":63,"ownerBlogUrl":6,"ownerDescription":64,"updatedAt":65,"install":66,"resources":79},"01M6JHZ182ZM4DXCBSQRZHS57T","mobile-design",null,"Mobile-first design thinking and decision-making for iOS and Android apps. Touch interaction, performance patterns, platform conventions. Teaches principles, not fixed values. Use when building React Native, Flutter, or native mobile apps.","transaurus\u002Fstaging-davila7-claude-code-templates","transaurus","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F210882017?v=4","01M6JH1R6ZCRXGJCTDP5ZKZBE6","Page Turner Agent","01M6JH1RBBR2P6Y0XWDGM4B0G7",0,"MIT","https:\u002F\u002Fgithub.com\u002Ftransaurus\u002Fstaging-davila7-claude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fcreative-design\u002Fmobile-design\u002FSKILL.md",[18,23,26],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000009","前端开发","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000015","视觉设计",{"categoryNo":27,"categoryName":28,"taxonomyType":29,"taxonomyTypeDesc":30},"01JBSEEDCAT000000000000032","设计师","PROFESSION","适用职业",[32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51],"mobile design","mobile","design","thinking","for","design thinking","native","touch","interaction","apps","platform","decision-making","patterns","use","react native","read","decision","Bash","react","performance","2026-11-10 10:12:30",false,"---\nname: mobile-design\ndescription: Mobile-first design thinking and decision-making for iOS and Android apps. Touch interaction, performance patterns, platform conventions. Teaches principles, not fixed values. Use when building React Native, Flutter, or native mobile apps.\nallowed-tools: Read, Glob, Grep, Bash\n---\n\n# Mobile Design System\n\n> **Philosophy:** Touch-first. Battery-conscious. Platform-respectful. Offline-capable.\n> **Core Principle:** Mobile is NOT a small desktop. THINK mobile constraints, ASK platform choice.\n\n---\n\n## ? Runtime Scripts\n\n**Execute these for validation (don't read, just run):**\n\n| Script | Purpose | Usage |\n|--------|---------|-------|\n| `scripts\u002Fmobile_audit.py` | Mobile UX & Touch Audit | `python scripts\u002Fmobile_audit.py \u003Cproject_path>` |\n\n---\n\n## ? MANDATORY: Read Reference Files Before Working!\n\n**⛔ DO NOT start development until you read the relevant files:**\n\n### Universal (Always Read)\n\n| File | Content | Status |\n|------|---------|--------|\n| **[mobile-design-thinking.md](mobile-design-thinking.md)** | **⚠️ ANTI-MEMORIZATION: Forces thinking, prevents AI defaults** | **⬜ CRITICAL FIRST** |\n| **[touch-psychology.md](touch-psychology.md)** | **Fitts' Law, gestures, haptics, thumb zone** | **⬜ CRITICAL** |\n| **[mobile-performance.md](mobile-performance.md)** | **RN\u002FFlutter performance, 60fps, memory** | **⬜ CRITICAL** |\n| **[mobile-backend.md](mobile-backend.md)** | **Push notifications, offline sync, mobile API** | **⬜ CRITICAL** |\n| **[mobile-testing.md](mobile-testing.md)** | **Testing pyramid, E2E, platform-specific** | **⬜ CRITICAL** |\n| **[mobile-debugging.md](mobile-debugging.md)** | **Native vs JS debugging, Flipper, Logcat** | **⬜ CRITICAL** |\n| [mobile-navigation.md](mobile-navigation.md) | Tab\u002FStack\u002FDrawer, deep linking | ⬜ Read |\n| [mobile-typography.md](mobile-typography.md) | System fonts, Dynamic Type, a11y | ⬜ Read |\n| [mobile-color-system.md](mobile-color-system.md) | OLED, dark mode, battery-aware | ⬜ Read |\n| [decision-trees.md](decision-trees.md) | Framework\u002Fstate\u002Fstorage selection | ⬜ Read |\n\n> ? **mobile-design-thinking.md is PRIORITY!** This file ensures AI thinks instead of using memorized patterns.\n\n### Platform-Specific (Read Based on Target)\n\n| Platform | File | Content | When to Read |\n|----------|------|---------|--------------|\n| **iOS** | [platform-ios.md](platform-ios.md) | Human Interface Guidelines, SF Pro, SwiftUI patterns | Building for iPhone\u002FiPad |\n| **Android** | [platform-android.md](platform-android.md) | Material Design 3, Roboto, Compose patterns | Building for Android |\n| **Cross-Platform** | Both above | Platform divergence points | React Native \u002F Flutter |\n\n> ? **If building for iOS → Read platform-ios.md FIRST!**\n> ? **If building for Android → Read platform-android.md FIRST!**\n> ? **If cross-platform → Read BOTH and apply conditional platform logic!**\n\n---\n\n## ⚠️ CRITICAL: ASK BEFORE ASSUMING (MANDATORY)\n\n> **STOP! If the user's request is open-ended, DO NOT default to your favorites.**\n\n### You MUST Ask If Not Specified:\n\n| Aspect | Ask | Why |\n|--------|-----|-----|\n| **Platform** | \"iOS, Android, or both?\" | Affects EVERY design decision |\n| **Framework** | \"React Native, Flutter, or native?\" | Determines patterns and tools |\n| **Navigation** | \"Tab bar, drawer, or stack-based?\" | Core UX decision |\n| **State** | \"What state management? (Zustand\u002FRedux\u002FRiverpod\u002FBLoC?)\" | Architecture foundation |\n| **Offline** | \"Does this need to work offline?\" | Affects data strategy |\n| **Target devices** | \"Phone only, or tablet support?\" | Layout complexity |\n\n### ⛔ AI MOBILE ANTI-PATTERNS (YASAK LİSTESİ)\n\n> ? **These are AI default tendencies that MUST be avoided!**\n\n#### Performance Sins\n\n| ❌ NEVER DO | Why It's Wrong | ✅ ALWAYS DO |\n|-------------|----------------|--------------|\n| **ScrollView for long lists** | Renders ALL items, memory explodes | Use `FlatList` \u002F `FlashList` \u002F `ListView.builder` |\n| **Inline renderItem function** | New function every render, all items re-render | `useCallback` + `React.memo` |\n| **Missing keyExtractor** | Index-based keys cause bugs on reorder | Unique, stable ID from data |\n| **Skip getItemLayout** | Async layout = janky scroll | Provide when items have fixed height |\n| **setState() everywhere** | Unnecessary widget rebuilds | Targeted state, `const` constructors |\n| **Native driver: false** | Animations blocked by JS thread | `useNativeDriver: true` always |\n| **console.log in production** | Blocks JS thread severely | Remove before release build |\n| **Skip React.memo\u002Fconst** | Every item re-renders on any change | Memoize list items ALWAYS |\n\n#### Touch\u002FUX Sins\n\n| ❌ NEVER DO | Why It's Wrong | ✅ ALWAYS DO |\n|-------------|----------------|--------------|\n| **Touch target \u003C 44px** | Impossible to tap accurately, frustrating | Minimum 44pt (iOS) \u002F 48dp (Android) |\n| **Spacing \u003C 8px between targets** | Accidental taps on neighbors | Minimum 8-12px gap |\n| **Gesture-only interactions** | Motor impaired users excluded | Always provide button alternative |\n| **No loading state** | User thinks app crashed | ALWAYS show loading feedback |\n| **No error state** | User stuck, no recovery path | Show error with retry option |\n| **No offline handling** | Crash\u002Fblock when network lost | Graceful degradation, cached data |\n| **Ignore platform conventions** | Users confused, muscle memory broken | iOS feels iOS, Android feels Android |\n\n#### Security Sins\n\n| ❌ NEVER DO | Why It's Wrong | ✅ ALWAYS DO |\n|-------------|----------------|--------------|\n| **Token in AsyncStorage** | Easily accessible, stolen on rooted device | `SecureStore` \u002F `Keychain` \u002F `EncryptedSharedPreferences` |\n| **Hardcode API keys** | Reverse engineered from APK\u002FIPA | Environment variables, secure storage |\n| **Skip SSL pinning** | MITM attacks possible | Pin certificates in production |\n| **Log sensitive data** | Logs can be extracted | Never log tokens, passwords, PII |\n\n#### Architecture Sins\n\n| ❌ NEVER DO | Why It's Wrong | ✅ ALWAYS DO |\n|-------------|----------------|--------------|\n| **Business logic in UI** | Untestable, unmaintainable | Service layer separation |\n| **Global state for everything** | Unnecessary re-renders, complexity | Local state default, lift when needed |\n| **Deep linking as afterthought** | Notifications, shares broken | Plan deep links from day one |\n| **Skip dispose\u002Fcleanup** | Memory leaks, zombie listeners | Clean up subscriptions, timers |\n\n---\n\n## ? Platform Decision Matrix\n\n### When to Unify vs Diverge\n\n```\n                    UNIFY (same on both)          DIVERGE (platform-specific)\n                    ───────────────────           ──────────────────────────\nBusiness Logic      ✅ Always                     -\nData Layer          ✅ Always                     -\nCore Features       ✅ Always                     -\n                    \nNavigation          -                             ✅ iOS: edge swipe, Android: back button\nGestures            -                             ✅ Platform-native feel\nIcons               -                             ✅ SF Symbols vs Material Icons\nDate Pickers        -                             ✅ Native pickers feel right\nModals\u002FSheets       -                             ✅ iOS: bottom sheet vs Android: dialog\nTypography          -                             ✅ SF Pro vs Roboto (or custom)\nError Dialogs       -                             ✅ Platform conventions for alerts\n```\n\n### Quick Reference: Platform Defaults\n\n| Element | iOS | Android |\n|---------|-----|---------|\n| **Primary Font** | SF Pro \u002F SF Compact | Roboto |\n| **Min Touch Target** | 44pt × 44pt | 48dp × 48dp |\n| **Back Navigation** | Edge swipe left | System back button\u002Fgesture |\n| **Bottom Tab Icons** | SF Symbols | Material Symbols |\n| **Action Sheet** | UIActionSheet from bottom | Bottom Sheet \u002F Dialog |\n| **Progress** | Spinner | Linear progress (Material) |\n| **Pull to Refresh** | Native UIRefreshControl | SwipeRefreshLayout |\n\n---\n\n## ? Mobile UX Psychology (Quick Reference)\n\n### Fitts' Law for Touch\n\n```\nDesktop: Cursor is precise (1px)\nMobile:  Finger is imprecise (~7mm contact area)\n\n→ Touch targets MUST be 44-48px minimum\n→ Important actions in THUMB ZONE (bottom of screen)\n→ Destructive actions AWAY from easy reach\n```\n\n### Thumb Zone (One-Handed Usage)\n\n```\n┌─────────────────────────────┐\n│      HARD TO REACH          │ ← Navigation, menu, back\n│        (stretch)            │\n├─────────────────────────────┤\n│      OK TO REACH            │ ← Secondary actions\n│       (natural)             │\n├─────────────────────────────┤\n│      EASY TO REACH          │ ← PRIMARY CTAs, tab bar\n│    (thumb's natural arc)    │ ← Main content interaction\n└─────────────────────────────┘\n        [  HOME  ]\n```\n\n### Mobile-Specific Cognitive Load\n\n| Desktop | Mobile Difference |\n|---------|-------------------|\n| Multiple windows | ONE task at a time |\n| Keyboard shortcuts | Touch gestures |\n| Hover states | NO hover (tap or nothing) |\n| Large viewport | Limited space, scroll vertical |\n| Stable attention | Interrupted constantly |\n\nFor deep dive: [touch-psychology.md](touch-psychology.md)\n\n---\n\n## ⚡ Performance Principles (Quick Reference)\n\n### React Native Critical Rules\n\n```typescript\n\u002F\u002F ✅ CORRECT: Memoized renderItem + React.memo wrapper\nconst ListItem = React.memo(({ item }: { item: Item }) => (\n  \u003CView style={styles.item}>\n    \u003CText>{item.title}\u003C\u002FText>\n  \u003C\u002FView>\n));\n\nconst renderItem = useCallback(\n  ({ item }: { item: Item }) => \u003CListItem item={item} \u002F>,\n  []\n);\n\n\u002F\u002F ✅ CORRECT: FlatList with all optimizations\n\u003CFlatList\n  data={items}\n  renderItem={renderItem}\n  keyExtractor={(item) => item.id}  \u002F\u002F Stable ID, NOT index\n  getItemLayout={(data, index) => ({\n    length: ITEM_HEIGHT,\n    offset: ITEM_HEIGHT * index,\n    index,\n  })}\n  removeClippedSubviews={true}\n  maxToRenderPerBatch={10}\n  windowSize={5}\n\u002F>\n```\n\n### Flutter Critical Rules\n\n```dart\n\u002F\u002F ✅ CORRECT: const constructors prevent rebuilds\nclass MyWidget extends StatelessWidget {\n  const MyWidget({super.key}); \u002F\u002F CONST!\n\n  @override\n  Widget build(BuildContext context) {\n    return const Column( \u002F\u002F CONST!\n      children: [\n        Text('Static content'),\n        MyConstantWidget(),\n      ],\n    );\n  }\n}\n\n\u002F\u002F ✅ CORRECT: Targeted state with ValueListenableBuilder\nValueListenableBuilder\u003Cint>(\n  valueListenable: counter,\n  builder: (context, value, child) => Text('$value'),\n  child: const ExpensiveWidget(), \u002F\u002F Won't rebuild!\n)\n```\n\n### Animation Performance\n\n```\nGPU-accelerated (FAST):     CPU-bound (SLOW):\n├── transform               ├── width, height\n├── opacity                 ├── top, left, right, bottom\n└── (use these ONLY)        ├── margin, padding\n                            └── (AVOID animating these)\n```\n\nFor complete guide: [mobile-performance.md](mobile-performance.md)\n\n---\n\n## ? CHECKPOINT (MANDATORY Before Any Mobile Work)\n\n> **Before writing ANY mobile code, you MUST complete this checkpoint:**\n\n```\n? CHECKPOINT:\n\nPlatform:   [ iOS \u002F Android \u002F Both ]\nFramework:  [ React Native \u002F Flutter \u002F SwiftUI \u002F Kotlin ]\nFiles Read: [ List the skill files you've read ]\n\n3 Principles I Will Apply:\n1. _______________\n2. _______________\n3. _______________\n\nAnti-Patterns I Will Avoid:\n1. _______________\n2. _______________\n```\n\n**Example:**\n```\n? CHECKPOINT:\n\nPlatform:   iOS + Android (Cross-platform)\nFramework:  React Native + Expo\nFiles Read: touch-psychology.md, mobile-performance.md, platform-ios.md, platform-android.md\n\n3 Principles I Will Apply:\n1. FlatList with React.memo + useCallback for all lists\n2. 48px touch targets, thumb zone for primary CTAs\n3. Platform-specific navigation (edge swipe iOS, back button Android)\n\nAnti-Patterns I Will Avoid:\n1. ScrollView for lists → FlatList\n2. Inline renderItem → Memoized\n3. AsyncStorage for tokens → SecureStore\n```\n\n> ? **Can't fill the checkpoint? → GO BACK AND READ THE SKILL FILES.**\n\n---\n\n## ? Framework Decision Tree\n\n```\nWHAT ARE YOU BUILDING?\n        │\n        ├── Need OTA updates + rapid iteration + web team\n        │   └── ✅ React Native + Expo\n        │\n        ├── Need pixel-perfect custom UI + performance critical\n        │   └── ✅ Flutter\n        │\n        ├── Deep native features + single platform focus\n        │   ├── iOS only → SwiftUI\n        │   └── Android only → Kotlin + Jetpack Compose\n        │\n        ├── Existing RN codebase + new features\n        │   └── ✅ React Native (bare workflow)\n        │\n        └── Enterprise + existing Flutter codebase\n            └── ✅ Flutter\n```\n\nFor complete decision trees: [decision-trees.md](decision-trees.md)\n\n---\n\n## ? Pre-Development Checklist\n\n### Before Starting ANY Mobile Project\n\n- [ ] **Platform confirmed?** (iOS \u002F Android \u002F Both)\n- [ ] **Framework chosen?** (RN \u002F Flutter \u002F Native)\n- [ ] **Navigation pattern decided?** (Tabs \u002F Stack \u002F Drawer)\n- [ ] **State management selected?** (Zustand \u002F Redux \u002F Riverpod \u002F BLoC)\n- [ ] **Offline requirements known?**\n- [ ] **Deep linking planned from day one?**\n- [ ] **Target devices defined?** (Phone \u002F Tablet \u002F Both)\n\n### Before Every Screen\n\n- [ ] **Touch targets ≥ 44-48px?**\n- [ ] **Primary CTA in thumb zone?**\n- [ ] **Loading state exists?**\n- [ ] **Error state with retry exists?**\n- [ ] **Offline handling considered?**\n- [ ] **Platform conventions followed?**\n\n### Before Release\n\n- [ ] **console.log removed?**\n- [ ] **SecureStore for sensitive data?**\n- [ ] **SSL pinning enabled?**\n- [ ] **Lists optimized (memo, keyExtractor)?**\n- [ ] **Memory cleanup on unmount?**\n- [ ] **Tested on low-end devices?**\n- [ ] **Accessibility labels on all interactive elements?**\n\n---\n\n## ? Reference Files\n\nFor deeper guidance on specific areas:\n\n| File | When to Use |\n|------|-------------|\n| [mobile-design-thinking.md](mobile-design-thinking.md) | **FIRST! Anti-memorization, forces context-based thinking** |\n| [touch-psychology.md](touch-psychology.md) | Understanding touch interaction, Fitts' Law, gesture design |\n| [mobile-performance.md](mobile-performance.md) | Optimizing RN\u002FFlutter, 60fps, memory\u002Fbattery |\n| [platform-ios.md](platform-ios.md) | iOS-specific design, HIG compliance |\n| [platform-android.md](platform-android.md) | Android-specific design, Material Design 3 |\n| [mobile-navigation.md](mobile-navigation.md) | Navigation patterns, deep linking |\n| [mobile-typography.md](mobile-typography.md) | Type scale, system fonts, accessibility |\n| [mobile-color-system.md](mobile-color-system.md) | OLED optimization, dark mode, battery |\n| [decision-trees.md](decision-trees.md) | Framework, state, storage decisions |\n\n---\n\n> **Remember:** Mobile users are impatient, interrupted, and using imprecise fingers on small screens. Design for the WORST conditions: bad network, one hand, bright sun, low battery. If it works there, it works everywhere.\n","# Mobile Design System\n\n> **Philosophy:** Touch-first. Battery-conscious. Platform-respectful. Offline-capable.\n> **Core Principle:** Mobile is NOT a small desktop. THINK mobile constraints, ASK platform choice.\n\n---\n\n## ? Runtime Scripts\n\n**Execute these for validation (don't read, just run):**\n\n| Script | Purpose | Usage |\n|--------|---------|-------|\n| `scripts\u002Fmobile_audit.py` | Mobile UX & Touch Audit | `python scripts\u002Fmobile_audit.py \u003Cproject_path>` |\n\n---\n\n## ? MANDATORY: Read Reference Files Before Working!\n\n**⛔ DO NOT start development until you read the relevant files:**\n\n### Universal (Always Read)\n\n| File | Content | Status |\n|------|---------|--------|\n| **[mobile-design-thinking.md](mobile-design-thinking.md)** | **⚠️ ANTI-MEMORIZATION: Forces thinking, prevents AI defaults** | **⬜ CRITICAL FIRST** |\n| **[touch-psychology.md](touch-psychology.md)** | **Fitts' Law, gestures, haptics, thumb zone** | **⬜ CRITICAL** |\n| **[mobile-performance.md](mobile-performance.md)** | **RN\u002FFlutter performance, 60fps, memory** | **⬜ CRITICAL** |\n| **[mobile-backend.md](mobile-backend.md)** | **Push notifications, offline sync, mobile API** | **⬜ CRITICAL** |\n| **[mobile-testing.md](mobile-testing.md)** | **Testing pyramid, E2E, platform-specific** | **⬜ CRITICAL** |\n| **[mobile-debugging.md](mobile-debugging.md)** | **Native vs JS debugging, Flipper, Logcat** | **⬜ CRITICAL** |\n| [mobile-navigation.md](mobile-navigation.md) | Tab\u002FStack\u002FDrawer, deep linking | ⬜ Read |\n| [mobile-typography.md](mobile-typography.md) | System fonts, Dynamic Type, a11y | ⬜ Read |\n| [mobile-color-system.md](mobile-color-system.md) | OLED, dark mode, battery-aware | ⬜ Read |\n| [decision-trees.md](decision-trees.md) | Framework\u002Fstate\u002Fstorage selection | ⬜ Read |\n\n> ? **mobile-design-thinking.md is PRIORITY!** This file ensures AI thinks instead of using memorized patterns.\n\n### Platform-Specific (Read Based on Target)\n\n| Platform | File | Content | When to Read |\n|----------|------|---------|--------------|\n| **iOS** | [platform-ios.md](platform-ios.md) | Human Interface Guidelines, SF Pro, SwiftUI patterns | Building for iPhone\u002FiPad |\n| **Android** | [platform-android.md](platform-android.md) | Material Design 3, Roboto, Compose patterns | Building for Android |\n| **Cross-Platform** | Both above | Platform divergence points | React Native \u002F Flutter |\n\n> ? **If building for iOS → Read platform-ios.md FIRST!**\n> ? **If building for Android → Read platform-android.md FIRST!**\n> ? **If cross-platform → Read BOTH and apply conditional platform logic!**\n\n---\n\n## ⚠️ CRITICAL: ASK BEFORE ASSUMING (MANDATORY)\n\n> **STOP! If the user's request is open-ended, DO NOT default to your favorites.**\n\n### You MUST Ask If Not Specified:\n\n| Aspect | Ask | Why |\n|--------|-----|-----|\n| **Platform** | \"iOS, Android, or both?\" | Affects EVERY design decision |\n| **Framework** | \"React Native, Flutter, or native?\" | Determines patterns and tools |\n| **Navigation** | \"Tab bar, drawer, or stack-based?\" | Core UX decision |\n| **State** | \"What state management? (Zustand\u002FRedux\u002FRiverpod\u002FBLoC?)\" | Architecture foundation |\n| **Offline** | \"Does this need to work offline?\" | Affects data strategy |\n| **Target devices** | \"Phone only, or tablet support?\" | Layout complexity |\n\n### ⛔ AI MOBILE ANTI-PATTERNS (YASAK LİSTESİ)\n\n> ? **These are AI default tendencies that MUST be avoided!**\n\n#### Performance Sins\n\n| ❌ NEVER DO | Why It's Wrong | ✅ ALWAYS DO |\n|-------------|----------------|--------------|\n| **ScrollView for long lists** | Renders ALL items, memory explodes | Use `FlatList` \u002F `FlashList` \u002F `ListView.builder` |\n| **Inline renderItem function** | New function every render, all items re-render | `useCallback` + `React.memo` |\n| **Missing keyExtractor** | Index-based keys cause bugs on reorder | Unique, stable ID from data |\n| **Skip getItemLayout** | Async layout = janky scroll | Provide when items have fixed height |\n| **setState() everywhere** | Unnecessary widget rebuilds | Targeted state, `const` constructors |\n| **Native driver: false** | Animations blocked by JS thread | `useNativeDriver: true` always |\n| **console.log in production** | Blocks JS thread severely | Remove before release build |\n| **Skip React.memo\u002Fconst** | Every item re-renders on any change | Memoize list items ALWAYS |\n\n#### Touch\u002FUX Sins\n\n| ❌ NEVER DO | Why It's Wrong | ✅ ALWAYS DO |\n|-------------|----------------|--------------|\n| **Touch target \u003C 44px** | Impossible to tap accurately, frustrating | Minimum 44pt (iOS) \u002F 48dp (Android) |\n| **Spacing \u003C 8px between targets** | Accidental taps on neighbors | Minimum 8-12px gap |\n| **Gesture-only interactions** | Motor impaired users excluded | Always provide button alternative |\n| **No loading state** | User thinks app crashed | ALWAYS show loading feedback |\n| **No error state** | User stuck, no recovery path | Show error with retry option |\n| **No offline handling** | Crash\u002Fblock when network lost | Graceful degradation, cached data |\n| **Ignore platform conventions** | Users confused, muscle memory broken | iOS feels iOS, Android feels Android |\n\n#### Security Sins\n\n| ❌ NEVER DO | Why It's Wrong | ✅ ALWAYS DO |\n|-------------|----------------|--------------|\n| **Token in AsyncStorage** | Easily accessible, stolen on rooted device | `SecureStore` \u002F `Keychain` \u002F `EncryptedSharedPreferences` |\n| **Hardcode API keys** | Reverse engineered from APK\u002FIPA | Environment variables, secure storage |\n| **Skip SSL pinning** | MITM attacks possible | Pin certificates in production |\n| **Log sensitive data** | Logs can be extracted | Never log tokens, passwords, PII |\n\n#### Architecture Sins\n\n| ❌ NEVER DO | Why It's Wrong | ✅ ALWAYS DO |\n|-------------|----------------|--------------|\n| **Business logic in UI** | Untestable, unmaintainable | Service layer separation |\n| **Global state for everything** | Unnecessary re-renders, complexity | Local state default, lift when needed |\n| **Deep linking as afterthought** | Notifications, shares broken | Plan deep links from day one |\n| **Skip dispose\u002Fcleanup** | Memory leaks, zombie listeners | Clean up subscriptions, timers |\n\n---\n\n## ? Platform Decision Matrix\n\n### When to Unify vs Diverge\n\n```\n                    UNIFY (same on both)          DIVERGE (platform-specific)\n                    ───────────────────           ──────────────────────────\nBusiness Logic      ✅ Always                     -\nData Layer          ✅ Always                     -\nCore Features       ✅ Always                     -\n                    \nNavigation          -                             ✅ iOS: edge swipe, Android: back button\nGestures            -                             ✅ Platform-native feel\nIcons               -                             ✅ SF Symbols vs Material Icons\nDate Pickers        -                             ✅ Native pickers feel right\nModals\u002FSheets       -                             ✅ iOS: bottom sheet vs Android: dialog\nTypography          -                             ✅ SF Pro vs Roboto (or custom)\nError Dialogs       -                             ✅ Platform conventions for alerts\n```\n\n### Quick Reference: Platform Defaults\n\n| Element | iOS | Android |\n|---------|-----|---------|\n| **Primary Font** | SF Pro \u002F SF Compact | Roboto |\n| **Min Touch Target** | 44pt × 44pt | 48dp × 48dp |\n| **Back Navigation** | Edge swipe left | System back button\u002Fgesture |\n| **Bottom Tab Icons** | SF Symbols | Material Symbols |\n| **Action Sheet** | UIActionSheet from bottom | Bottom Sheet \u002F Dialog |\n| **Progress** | Spinner | Linear progress (Material) |\n| **Pull to Refresh** | Native UIRefreshControl | SwipeRefreshLayout |\n\n---\n\n## ? Mobile UX Psychology (Quick Reference)\n\n### Fitts' Law for Touch\n\n```\nDesktop: Cursor is precise (1px)\nMobile:  Finger is imprecise (~7mm contact area)\n\n→ Touch targets MUST be 44-48px minimum\n→ Important actions in THUMB ZONE (bottom of screen)\n→ Destructive actions AWAY from easy reach\n```\n\n### Thumb Zone (One-Handed Usage)\n\n```\n┌─────────────────────────────┐\n│      HARD TO REACH          │ ← Navigation, menu, back\n│        (stretch)            │\n├─────────────────────────────┤\n│      OK TO REACH            │ ← Secondary actions\n│       (natural)             │\n├─────────────────────────────┤\n│      EASY TO REACH          │ ← PRIMARY CTAs, tab bar\n│    (thumb's natural arc)    │ ← Main content interaction\n└─────────────────────────────┘\n        [  HOME  ]\n```\n\n### Mobile-Specific Cognitive Load\n\n| Desktop | Mobile Difference |\n|---------|-------------------|\n| Multiple windows | ONE task at a time |\n| Keyboard shortcuts | Touch gestures |\n| Hover states | NO hover (tap or nothing) |\n| Large viewport | Limited space, scroll vertical |\n| Stable attention | Interrupted constantly |\n\nFor deep dive: [touch-psychology.md](touch-psychology.md)\n\n---\n\n## ⚡ Performance Principles (Quick Reference)\n\n### React Native Critical Rules\n\n```typescript\n\u002F\u002F ✅ CORRECT: Memoized renderItem + React.memo wrapper\nconst ListItem = React.memo(({ item }: { item: Item }) => (\n  \u003CView style={styles.item}>\n    \u003CText>{item.title}\u003C\u002FText>\n  \u003C\u002FView>\n));\n\nconst renderItem = useCallback(\n  ({ item }: { item: Item }) => \u003CListItem item={item} \u002F>,\n  []\n);\n\n\u002F\u002F ✅ CORRECT: FlatList with all optimizations\n\u003CFlatList\n  data={items}\n  renderItem={renderItem}\n  keyExtractor={(item) => item.id}  \u002F\u002F Stable ID, NOT index\n  getItemLayout={(data, index) => ({\n    length: ITEM_HEIGHT,\n    offset: ITEM_HEIGHT * index,\n    index,\n  })}\n  removeClippedSubviews={true}\n  maxToRenderPerBatch={10}\n  windowSize={5}\n\u002F>\n```\n\n### Flutter Critical Rules\n\n```dart\n\u002F\u002F ✅ CORRECT: const constructors prevent rebuilds\nclass MyWidget extends StatelessWidget {\n  const MyWidget({super.key}); \u002F\u002F CONST!\n\n  @override\n  Widget build(BuildContext context) {\n    return const Column( \u002F\u002F CONST!\n      children: [\n        Text('Static content'),\n        MyConstantWidget(),\n      ],\n    );\n  }\n}\n\n\u002F\u002F ✅ CORRECT: Targeted state with ValueListenableBuilder\nValueListenableBuilder\u003Cint>(\n  valueListenable: counter,\n  builder: (context, value, child) => Text('$value'),\n  child: const ExpensiveWidget(), \u002F\u002F Won't rebuild!\n)\n```\n\n### Animation Performance\n\n```\nGPU-accelerated (FAST):     CPU-bound (SLOW):\n├── transform               ├── width, height\n├── opacity                 ├── top, left, right, bottom\n└── (use these ONLY)        ├── margin, padding\n                            └── (AVOID animating these)\n```\n\nFor complete guide: [mobile-performance.md](mobile-performance.md)\n\n---\n\n## ? CHECKPOINT (MANDATORY Before Any Mobile Work)\n\n> **Before writing ANY mobile code, you MUST complete this checkpoint:**\n\n```\n? CHECKPOINT:\n\nPlatform:   [ iOS \u002F Android \u002F Both ]\nFramework:  [ React Native \u002F Flutter \u002F SwiftUI \u002F Kotlin ]\nFiles Read: [ List the skill files you've read ]\n\n3 Principles I Will Apply:\n1. _______________\n2. _______________\n3. _______________\n\nAnti-Patterns I Will Avoid:\n1. _______________\n2. _______________\n```\n\n**Example:**\n```\n? CHECKPOINT:\n\nPlatform:   iOS + Android (Cross-platform)\nFramework:  React Native + Expo\nFiles Read: touch-psychology.md, mobile-performance.md, platform-ios.md, platform-android.md\n\n3 Principles I Will Apply:\n1. FlatList with React.memo + useCallback for all lists\n2. 48px touch targets, thumb zone for primary CTAs\n3. Platform-specific navigation (edge swipe iOS, back button Android)\n\nAnti-Patterns I Will Avoid:\n1. ScrollView for lists → FlatList\n2. Inline renderItem → Memoized\n3. AsyncStorage for tokens → SecureStore\n```\n\n> ? **Can't fill the checkpoint? → GO BACK AND READ THE SKILL FILES.**\n\n---\n\n## ? Framework Decision Tree\n\n```\nWHAT ARE YOU BUILDING?\n        │\n        ├── Need OTA updates + rapid iteration + web team\n        │   └── ✅ React Native + Expo\n        │\n        ├── Need pixel-perfect custom UI + performance critical\n        │   └── ✅ Flutter\n        │\n        ├── Deep native features + single platform focus\n        │   ├── iOS only → SwiftUI\n        │   └── Android only → Kotlin + Jetpack Compose\n        │\n        ├── Existing RN codebase + new features\n        │   └── ✅ React Native (bare workflow)\n        │\n        └── Enterprise + existing Flutter codebase\n            └── ✅ Flutter\n```\n\nFor complete decision trees: [decision-trees.md](decision-trees.md)\n\n---\n\n## ? Pre-Development Checklist\n\n### Before Starting ANY Mobile Project\n\n- [ ] **Platform confirmed?** (iOS \u002F Android \u002F Both)\n- [ ] **Framework chosen?** (RN \u002F Flutter \u002F Native)\n- [ ] **Navigation pattern decided?** (Tabs \u002F Stack \u002F Drawer)\n- [ ] **State management selected?** (Zustand \u002F Redux \u002F Riverpod \u002F BLoC)\n- [ ] **Offline requirements known?**\n- [ ] **Deep linking planned from day one?**\n- [ ] **Target devices defined?** (Phone \u002F Tablet \u002F Both)\n\n### Before Every Screen\n\n- [ ] **Touch targets ≥ 44-48px?**\n- [ ] **Primary CTA in thumb zone?**\n- [ ] **Loading state exists?**\n- [ ] **Error state with retry exists?**\n- [ ] **Offline handling considered?**\n- [ ] **Platform conventions followed?**\n\n### Before Release\n\n- [ ] **console.log removed?**\n- [ ] **SecureStore for sensitive data?**\n- [ ] **SSL pinning enabled?**\n- [ ] **Lists optimized (memo, keyExtractor)?**\n- [ ] **Memory cleanup on unmount?**\n- [ ] **Tested on low-end devices?**\n- [ ] **Accessibility labels on all interactive elements?**\n\n---\n\n## ? Reference Files\n\nFor deeper guidance on specific areas:\n\n| File | When to Use |\n|------|-------------|\n| [mobile-design-thinking.md](mobile-design-thinking.md) | **FIRST! Anti-memorization, forces context-based thinking** |\n| [touch-psychology.md](touch-psychology.md) | Understanding touch interaction, Fitts' Law, gesture design |\n| [mobile-performance.md](mobile-performance.md) | Optimizing RN\u002FFlutter, 60fps, memory\u002Fbattery |\n| [platform-ios.md](platform-ios.md) | iOS-specific design, HIG compliance |\n| [platform-android.md](platform-android.md) | Android-specific design, Material Design 3 |\n| [mobile-navigation.md](mobile-navigation.md) | Navigation patterns, deep linking |\n| [mobile-typography.md](mobile-typography.md) | Type scale, system fonts, accessibility |\n| [mobile-color-system.md](mobile-color-system.md) | OLED optimization, dark mode, battery |\n| [decision-trees.md](decision-trees.md) | Framework, state, storage decisions |\n\n---\n\n> **Remember:** Mobile users are impatient, interrupted, and using imprecise fingers on small screens. Design for the WORST conditions: bad network, one hand, bright sun, low battery. If it works there, it works everywhere.\n",{"name":5,"description":7,"allowed-tools":57},"Read, Glob, Grep, Bash","main","34fa6acf794b9a6310d298cbb8fb8c9420a5edcf","cli-tool\u002Fcomponents\u002Fskills\u002Fcreative-design\u002Fmobile-design",2,"https:\u002F\u002Fgithub.com\u002Ftransaurus\u002Fstaging-davila7-claude-code-templates","https:\u002F\u002Fgithub.com\u002Ftransaurus","Automated works of Page Turner","2026-03-28 10:12:59",{"source":8,"skillName":5,"commands":67,"prompt":77,"zipAvailable":78},[68,71,74],{"tool":69,"command":70},"npx","npx skills add transaurus\u002Fstaging-davila7-claude-code-templates --skill mobile-design",{"tool":72,"command":73},"bunx","bunx skills add transaurus\u002Fstaging-davila7-claude-code-templates --skill mobile-design",{"tool":75,"command":76},"pnpm","pnpm dlx skills add transaurus\u002Fstaging-davila7-claude-code-templates --skill mobile-design","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Ftransaurus\u002Fstaging-davila7-claude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fcreative-design\u002Fmobile-design\u002FSKILL.md",true,[80,86,90,94,98,102,106,110,114,118,122,126,132],{"path":81,"resourceType":82,"resourceTypeDesc":83,"sizeBytes":84,"sourceHtmlUrl":85},"decision-trees.md","REFERENCE","参考文档",16320,"https:\u002F\u002Fgithub.com\u002Ftransaurus\u002Fstaging-davila7-claude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fcreative-design\u002Fmobile-design\u002Fdecision-trees.md",{"path":87,"resourceType":82,"resourceTypeDesc":83,"sizeBytes":88,"sourceHtmlUrl":89},"mobile-backend.md",14686,"https:\u002F\u002Fgithub.com\u002Ftransaurus\u002Fstaging-davila7-claude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fcreative-design\u002Fmobile-design\u002Fmobile-backend.md",{"path":91,"resourceType":82,"resourceTypeDesc":83,"sizeBytes":92,"sourceHtmlUrl":93},"mobile-color-system.md",10211,"https:\u002F\u002Fgithub.com\u002Ftransaurus\u002Fstaging-davila7-claude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fcreative-design\u002Fmobile-design\u002Fmobile-color-system.md",{"path":95,"resourceType":82,"resourceTypeDesc":83,"sizeBytes":96,"sourceHtmlUrl":97},"mobile-debugging.md",4250,"https:\u002F\u002Fgithub.com\u002Ftransaurus\u002Fstaging-davila7-claude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fcreative-design\u002Fmobile-design\u002Fmobile-debugging.md",{"path":99,"resourceType":82,"resourceTypeDesc":83,"sizeBytes":100,"sourceHtmlUrl":101},"mobile-design-thinking.md",17227,"https:\u002F\u002Fgithub.com\u002Ftransaurus\u002Fstaging-davila7-claude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fcreative-design\u002Fmobile-design\u002Fmobile-design-thinking.md",{"path":103,"resourceType":82,"resourceTypeDesc":83,"sizeBytes":104,"sourceHtmlUrl":105},"mobile-navigation.md",11855,"https:\u002F\u002Fgithub.com\u002Ftransaurus\u002Fstaging-davila7-claude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fcreative-design\u002Fmobile-design\u002Fmobile-navigation.md",{"path":107,"resourceType":82,"resourceTypeDesc":83,"sizeBytes":108,"sourceHtmlUrl":109},"mobile-performance.md",19305,"https:\u002F\u002Fgithub.com\u002Ftransaurus\u002Fstaging-davila7-claude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fcreative-design\u002Fmobile-design\u002Fmobile-performance.md",{"path":111,"resourceType":82,"resourceTypeDesc":83,"sizeBytes":112,"sourceHtmlUrl":113},"mobile-testing.md",11027,"https:\u002F\u002Fgithub.com\u002Ftransaurus\u002Fstaging-davila7-claude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fcreative-design\u002Fmobile-design\u002Fmobile-testing.md",{"path":115,"resourceType":82,"resourceTypeDesc":83,"sizeBytes":116,"sourceHtmlUrl":117},"mobile-typography.md",10717,"https:\u002F\u002Fgithub.com\u002Ftransaurus\u002Fstaging-davila7-claude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fcreative-design\u002Fmobile-design\u002Fmobile-typography.md",{"path":119,"resourceType":82,"resourceTypeDesc":83,"sizeBytes":120,"sourceHtmlUrl":121},"platform-android.md",19541,"https:\u002F\u002Fgithub.com\u002Ftransaurus\u002Fstaging-davila7-claude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fcreative-design\u002Fmobile-design\u002Fplatform-android.md",{"path":123,"resourceType":82,"resourceTypeDesc":83,"sizeBytes":124,"sourceHtmlUrl":125},"platform-ios.md",17127,"https:\u002F\u002Fgithub.com\u002Ftransaurus\u002Fstaging-davila7-claude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fcreative-design\u002Fmobile-design\u002Fplatform-ios.md",{"path":127,"resourceType":128,"resourceTypeDesc":129,"sizeBytes":130,"sourceHtmlUrl":131},"scripts\u002Fmobile_audit.py","SCRIPT","脚本",35976,"https:\u002F\u002Fgithub.com\u002Ftransaurus\u002Fstaging-davila7-claude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fcreative-design\u002Fmobile-design\u002Fscripts\u002Fmobile_audit.py",{"path":133,"resourceType":82,"resourceTypeDesc":83,"sizeBytes":134,"sourceHtmlUrl":135},"touch-psychology.md",16848,"https:\u002F\u002Fgithub.com\u002Ftransaurus\u002Fstaging-davila7-claude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fcreative-design\u002Fmobile-design\u002Ftouch-psychology.md",[137,162,183,207,226,252],{"skillNo":138,"name":139,"nameZh":6,"description":140,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":141,"categories":142,"keywords":146,"publishedAt":52},"01M6JMRJR3BE0HGWFWDZSB853S","zapier-make-patterns","No-code automation democratizes workflow building. Zapier and Make (formerly Integromat) let non-developers automate business processes without writing code. But no-code doesn't mean no-complexity - these platforms have their own patterns, pitfalls, and breaking points.  This skill covers when to use which platform, how to build reliable automations, and when to graduate to code-based solutions. Key insight: Zapier optimizes for simplicity and integrations (7000+ apps), Make optimizes for power","https:\u002F\u002Fgithub.com\u002Ftransaurus\u002Fstaging-davila7-claude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fworkflow-automation\u002Fzapier-make-patterns\u002FSKILL.md",[143],{"categoryNo":144,"categoryName":145,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",[147,44,148,149,150,151,152,153,154,155,45,156,157,42,41,158,159,160,36,161],"zapier make patterns","make","zapier","writing","workflow","automation","code","integrations","business","power","complexity","how to","No-Code","which","spawner",{"skillNo":163,"name":164,"nameZh":6,"description":165,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":166,"categories":167,"keywords":168,"publishedAt":52},"01M6JMR8YK6SWPCTG1MCQTMN9S","yeet","Use only when the user explicitly asks to stage, commit, push, and open a GitHub pull request in one flow using the GitHub CLI (`gh`).","https:\u002F\u002Fgithub.com\u002Ftransaurus\u002Fstaging-davila7-claude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fworkflow-automation\u002Fyeet\u002FSKILL.md",[],[164,169,170,171,172,173,174,175,176,177,178,179,45,180,181,182],"cli","github","commit","pull request","openai","pull","push","flow","open","gh","user","only","stage","github cli",{"skillNo":184,"name":185,"nameZh":6,"description":186,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":187,"categories":188,"keywords":190,"publishedAt":52},"01M6JMQNFE64ZASQK90HARRXW8","workflow-automation","Workflow automation is the infrastructure that makes AI agents reliable. Without durable execution, a network hiccup during a 10-step payment flow means lost money and angry customers. With it, workflows resume exactly where they left off.  This skill covers the platforms (n8n, Temporal, Inngest) and patterns (sequential, parallel, orchestrator-worker) that turn brittle scripts into production-grade automation.  Key insight: The platforms make different tradeoffs. n8n optimizes for accessibility","https:\u002F\u002Fgithub.com\u002Ftransaurus\u002Fstaging-davila7-claude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fworkflow-automation\u002Fworkflow-automation\u002FSKILL.md",[189],{"categoryNo":144,"categoryName":145,"taxonomyType":21,"taxonomyTypeDesc":22},[151,152,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,36,161],"Workflow Automation","ai agents","accessibility","workflows","apache","execution","inngest","parallel","orchestrator","resume","n8n","payment","worker","scripts","temporal","with",{"skillNo":208,"name":209,"nameZh":6,"description":210,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":211,"categories":212,"keywords":213,"publishedAt":52},"01M6JMQDYJ0XETERPHGDR3EVGN","trigger-dev","Trigger.dev expert for background jobs, AI workflows, and reliable async execution with excellent developer experience and TypeScript-first design. Use when: trigger.dev, trigger dev, background task, ai background job, long running task.","https:\u002F\u002Fgithub.com\u002Ftransaurus\u002Fstaging-davila7-claude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fworkflow-automation\u002Ftrigger-dev\u002FSKILL.md",[],[214,215,216,34,217,194,218,195,196,219,45,220,221,222,223,224,225,206,36,161],"dev","trigger dev","trigger","typescript","async execution","first","async","developer experience","expert","task","background jobs","long",{"skillNo":227,"name":228,"nameZh":6,"description":229,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":230,"categories":231,"keywords":235,"publishedAt":52},"01M6JMQ5J6KK3GSX9FJCWWK6G6","planning-with-files","Transforms workflow to use Manus-style persistent markdown files for planning, progress tracking, and knowledge storage. Use when starting complex tasks, multi-step projects, research tasks, or when the user mentions planning, organizing work, tracking progress, or wants structured output.","https:\u002F\u002Fgithub.com\u002Ftransaurus\u002Fstaging-davila7-claude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fworkflow-automation\u002Fplanning-with-files\u002FSKILL.md",[232],{"categoryNo":233,"categoryName":234,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000021","资料检索与研究",[236,237,238,206,239,151,240,241,242,243,244,245,45,246,247,248,249,250,251,36],"planning with files","planning","files","with files","storage","tasks","markdown","knowledge","projects","work","manus","structured output","progress","transforms","multi","output",{"skillNo":253,"name":254,"nameZh":6,"description":255,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":256,"categories":257,"keywords":262,"publishedAt":52},"01M6JMPWAT60RXXNEC4V9TRBRS","n8n-workflow-patterns","Proven workflow architectural patterns from real n8n workflows. Use when building new workflows, designing workflow structure, choosing workflow patterns, planning workflow architecture, or asking about webhook processing, HTTP API integration, database operations, AI agent workflows, or scheduled tasks.","https:\u002F\u002Fgithub.com\u002Ftransaurus\u002Fstaging-davila7-claude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fworkflow-automation\u002Fn8n\u002Fn8n-workflow-patterns\u002FSKILL.md",[258,261],{"categoryNo":259,"categoryName":260,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000010","后端与接口",{"categoryNo":144,"categoryName":145,"taxonomyType":21,"taxonomyTypeDesc":22},[151,263,201,264,44,265,266,194,267,241,237,268,269,270,271,272,273,274,275,276],"n8n workflow patterns","workflow patterns","n8n workflow","ai agent","architecture","database","api","planning workflow","structure","database operations","webhook","processing","http api","scheduled"]