@rune-kit/rune 2.10.0 → 2.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (205) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +8 -6
  3. package/commands/rune.md +168 -168
  4. package/contexts/dev.md +34 -34
  5. package/contexts/research.md +43 -43
  6. package/contexts/review.md +55 -55
  7. package/extensions/ai-ml/PACK.md +88 -88
  8. package/extensions/ai-ml/skills/ai-agents.md +172 -172
  9. package/extensions/ai-ml/skills/code-sandbox.md +187 -187
  10. package/extensions/ai-ml/skills/deep-research.md +146 -146
  11. package/extensions/ai-ml/skills/embedding-search.md +66 -66
  12. package/extensions/ai-ml/skills/fine-tuning-guide.md +74 -74
  13. package/extensions/ai-ml/skills/llm-architect.md +125 -125
  14. package/extensions/ai-ml/skills/llm-integration.md +64 -64
  15. package/extensions/ai-ml/skills/prompt-patterns.md +72 -72
  16. package/extensions/ai-ml/skills/rag-patterns.md +66 -66
  17. package/extensions/ai-ml/skills/web-extraction.md +114 -114
  18. package/extensions/analytics/PACK.md +92 -92
  19. package/extensions/analytics/skills/ab-testing.md +72 -72
  20. package/extensions/analytics/skills/dashboard-patterns.md +83 -83
  21. package/extensions/analytics/skills/data-validation.md +68 -68
  22. package/extensions/analytics/skills/funnel-analysis.md +81 -81
  23. package/extensions/analytics/skills/sql-patterns.md +57 -57
  24. package/extensions/analytics/skills/statistical-analysis.md +79 -79
  25. package/extensions/analytics/skills/tracking-setup.md +71 -71
  26. package/extensions/backend/PACK.md +104 -104
  27. package/extensions/backend/skills/api-patterns.md +84 -84
  28. package/extensions/backend/skills/async-pipeline.md +193 -193
  29. package/extensions/backend/skills/auth-patterns.md +97 -97
  30. package/extensions/backend/skills/background-jobs.md +133 -133
  31. package/extensions/backend/skills/caching-patterns.md +108 -108
  32. package/extensions/backend/skills/cli-generation.md +133 -133
  33. package/extensions/backend/skills/database-patterns.md +87 -87
  34. package/extensions/backend/skills/middleware-patterns.md +104 -104
  35. package/extensions/chrome-ext/PACK.md +93 -93
  36. package/extensions/chrome-ext/skills/cws-preflight.md +143 -143
  37. package/extensions/chrome-ext/skills/cws-publish.md +104 -104
  38. package/extensions/chrome-ext/skills/ext-ai-integration.md +251 -251
  39. package/extensions/chrome-ext/skills/ext-messaging.md +139 -139
  40. package/extensions/chrome-ext/skills/ext-storage.md +133 -133
  41. package/extensions/chrome-ext/skills/mv3-scaffold.md +164 -164
  42. package/extensions/content/PACK.md +96 -96
  43. package/extensions/content/skills/blog-patterns.md +88 -88
  44. package/extensions/content/skills/cms-integration.md +131 -131
  45. package/extensions/content/skills/content-scoring.md +107 -107
  46. package/extensions/content/skills/i18n.md +83 -83
  47. package/extensions/content/skills/mdx-authoring.md +137 -137
  48. package/extensions/content/skills/reference.md +1014 -1014
  49. package/extensions/content/skills/seo-patterns.md +67 -67
  50. package/extensions/content/skills/video-repurpose.md +153 -153
  51. package/extensions/devops/PACK.md +101 -101
  52. package/extensions/devops/skills/chaos-testing.md +67 -67
  53. package/extensions/devops/skills/ci-cd.md +75 -75
  54. package/extensions/devops/skills/docker.md +58 -58
  55. package/extensions/devops/skills/edge-serverless.md +163 -163
  56. package/extensions/devops/skills/infra-as-code.md +158 -158
  57. package/extensions/devops/skills/kubernetes.md +110 -110
  58. package/extensions/devops/skills/monitoring.md +57 -57
  59. package/extensions/devops/skills/server-setup.md +64 -64
  60. package/extensions/devops/skills/ssl-domain.md +42 -42
  61. package/extensions/ecommerce/PACK.md +116 -116
  62. package/extensions/ecommerce/skills/cart-system.md +79 -79
  63. package/extensions/ecommerce/skills/inventory-mgmt.md +102 -102
  64. package/extensions/ecommerce/skills/order-management.md +126 -126
  65. package/extensions/ecommerce/skills/payment-integration.md +472 -472
  66. package/extensions/ecommerce/skills/shopify-dev.md +69 -69
  67. package/extensions/ecommerce/skills/subscription-billing.md +93 -93
  68. package/extensions/ecommerce/skills/tax-compliance.md +117 -117
  69. package/extensions/gamedev/PACK.md +142 -142
  70. package/extensions/gamedev/skills/asset-pipeline.md +74 -74
  71. package/extensions/gamedev/skills/audio-system.md +129 -129
  72. package/extensions/gamedev/skills/camera-system.md +87 -87
  73. package/extensions/gamedev/skills/ecs.md +98 -98
  74. package/extensions/gamedev/skills/game-loops.md +72 -72
  75. package/extensions/gamedev/skills/input-system.md +199 -199
  76. package/extensions/gamedev/skills/multiplayer.md +180 -180
  77. package/extensions/gamedev/skills/particles.md +105 -105
  78. package/extensions/gamedev/skills/physics-engine.md +89 -89
  79. package/extensions/gamedev/skills/scene-management.md +146 -146
  80. package/extensions/gamedev/skills/threejs-patterns.md +90 -90
  81. package/extensions/gamedev/skills/webgl.md +71 -71
  82. package/extensions/mobile/PACK.md +106 -106
  83. package/extensions/mobile/skills/app-store-connect.md +152 -152
  84. package/extensions/mobile/skills/app-store-prep.md +66 -66
  85. package/extensions/mobile/skills/deep-linking.md +109 -109
  86. package/extensions/mobile/skills/flutter.md +60 -60
  87. package/extensions/mobile/skills/ios-build-pipeline.md +142 -142
  88. package/extensions/mobile/skills/native-bridge.md +66 -66
  89. package/extensions/mobile/skills/ota-updates.md +97 -97
  90. package/extensions/mobile/skills/push-notifications.md +111 -111
  91. package/extensions/mobile/skills/react-native.md +82 -82
  92. package/extensions/saas/PACK.md +116 -116
  93. package/extensions/saas/skills/billing-integration.md +200 -200
  94. package/extensions/saas/skills/feature-flags.md +130 -130
  95. package/extensions/saas/skills/multi-tenant.md +103 -103
  96. package/extensions/saas/skills/onboarding-flow.md +139 -139
  97. package/extensions/saas/skills/subscription-flow.md +95 -95
  98. package/extensions/saas/skills/team-management.md +144 -144
  99. package/extensions/security/PACK.md +99 -99
  100. package/extensions/security/skills/api-security.md +140 -140
  101. package/extensions/security/skills/compliance.md +68 -68
  102. package/extensions/security/skills/owasp-audit.md +64 -64
  103. package/extensions/security/skills/pentest-patterns.md +77 -77
  104. package/extensions/security/skills/secret-mgmt.md +65 -65
  105. package/extensions/security/skills/supply-chain.md +65 -65
  106. package/extensions/trading/PACK.md +80 -80
  107. package/extensions/trading/skills/chart-components.md +55 -55
  108. package/extensions/trading/skills/experiment-loop.md +125 -125
  109. package/extensions/trading/skills/fintech-patterns.md +47 -47
  110. package/extensions/trading/skills/indicator-library.md +58 -58
  111. package/extensions/trading/skills/quant-analysis.md +111 -111
  112. package/extensions/trading/skills/realtime-data.md +58 -58
  113. package/extensions/trading/skills/trade-logic.md +104 -104
  114. package/extensions/ui/PACK.md +130 -130
  115. package/extensions/ui/skills/a11y-audit.md +91 -91
  116. package/extensions/ui/skills/animation-patterns.md +127 -127
  117. package/extensions/ui/skills/component-patterns.md +100 -100
  118. package/extensions/ui/skills/design-decision.md +108 -108
  119. package/extensions/ui/skills/design-system.md +68 -68
  120. package/extensions/ui/skills/landing-patterns.md +155 -155
  121. package/extensions/ui/skills/palette-picker.md +173 -173
  122. package/extensions/ui/skills/react-health.md +90 -90
  123. package/extensions/ui/skills/type-system.md +125 -125
  124. package/extensions/ui/skills/web-vitals.md +153 -153
  125. package/extensions/zalo/PACK.md +145 -145
  126. package/extensions/zalo/skills/zalo-oa-mcp.md +317 -317
  127. package/extensions/zalo/skills/zalo-oa-messaging.md +429 -429
  128. package/extensions/zalo/skills/zalo-oa-setup.md +236 -236
  129. package/extensions/zalo/skills/zalo-oa-webhook.md +189 -189
  130. package/extensions/zalo/skills/zalo-personal-messaging.md +194 -194
  131. package/extensions/zalo/skills/zalo-personal-setup.md +153 -153
  132. package/extensions/zalo/skills/zalo-rate-guard.md +219 -219
  133. package/hooks/auto-format/index.cjs +48 -48
  134. package/hooks/hooks.json +111 -111
  135. package/hooks/post-session-reflect/index.cjs +189 -189
  136. package/hooks/pre-compact/index.cjs +95 -95
  137. package/hooks/run-hook.cmd +1 -1
  138. package/hooks/secrets-scan/index.cjs +100 -100
  139. package/hooks/session-start/index.cjs +71 -71
  140. package/hooks/typecheck/index.cjs +65 -65
  141. package/package.json +63 -63
  142. package/references/ui-pro-max-data/LICENSE-UI-PRO-MAX +21 -21
  143. package/references/ui-pro-max-data/charts.csv +26 -26
  144. package/references/ui-pro-max-data/colors.csv +161 -161
  145. package/references/ui-pro-max-data/styles.csv +68 -68
  146. package/references/ui-pro-max-data/typography.csv +74 -74
  147. package/references/ui-pro-max-data/ui-reasoning.csv +162 -162
  148. package/references/ui-pro-max-data/ux-guidelines.csv +99 -99
  149. package/skills/adversary/SKILL.md +283 -283
  150. package/skills/asset-creator/SKILL.md +157 -157
  151. package/skills/audit/SKILL.md +147 -2
  152. package/skills/autopsy/SKILL.md +335 -335
  153. package/skills/brainstorm/SKILL.md +342 -342
  154. package/skills/browser-pilot/SKILL.md +168 -168
  155. package/skills/constraint-check/SKILL.md +165 -165
  156. package/skills/context-engine/SKILL.md +404 -404
  157. package/skills/cook/SKILL.md +917 -863
  158. package/skills/db/SKILL.md +273 -273
  159. package/skills/debug/SKILL.md +465 -465
  160. package/skills/dependency-doctor/SKILL.md +265 -235
  161. package/skills/deploy/SKILL.md +274 -231
  162. package/skills/design/DESIGN-REFERENCE.md +365 -365
  163. package/skills/design/SKILL.md +589 -589
  164. package/skills/doc-processor/SKILL.md +254 -254
  165. package/skills/docs/SKILL.md +374 -374
  166. package/skills/docs-seeker/SKILL.md +177 -177
  167. package/skills/fix/SKILL.md +330 -330
  168. package/skills/git/SKILL.md +339 -339
  169. package/skills/hallucination-guard/SKILL.md +219 -219
  170. package/skills/incident/SKILL.md +254 -253
  171. package/skills/integrity-check/SKILL.md +169 -169
  172. package/skills/journal/SKILL.md +240 -240
  173. package/skills/launch/SKILL.md +344 -344
  174. package/skills/logic-guardian/SKILL.md +251 -251
  175. package/skills/marketing/SKILL.md +290 -289
  176. package/skills/mcp-builder/SKILL.md +425 -425
  177. package/skills/neural-memory/SKILL.md +362 -362
  178. package/skills/onboard/SKILL.md +404 -403
  179. package/skills/perf/SKILL.md +346 -346
  180. package/skills/plan/SKILL.md +433 -428
  181. package/skills/preflight/SKILL.md +415 -415
  182. package/skills/problem-solver/SKILL.md +380 -284
  183. package/skills/rescue/SKILL.md +474 -474
  184. package/skills/retro/SKILL.md +3 -1
  185. package/skills/review/SKILL.md +612 -588
  186. package/skills/review-intake/SKILL.md +249 -249
  187. package/skills/safeguard/SKILL.md +200 -200
  188. package/skills/sast/SKILL.md +190 -190
  189. package/skills/scaffold/SKILL.md +328 -287
  190. package/skills/scope-guard/SKILL.md +180 -180
  191. package/skills/scout/SKILL.md +263 -263
  192. package/skills/sentinel/SKILL.md +382 -381
  193. package/skills/sentinel-env/SKILL.md +254 -254
  194. package/skills/sequential-thinking/SKILL.md +234 -234
  195. package/skills/session-bridge/SKILL.md +543 -543
  196. package/skills/skill-forge/SKILL.md +581 -581
  197. package/skills/skill-router/SKILL.md +3 -0
  198. package/skills/surgeon/SKILL.md +215 -215
  199. package/skills/team/SKILL.md +556 -537
  200. package/skills/test/SKILL.md +614 -614
  201. package/skills/trend-scout/SKILL.md +145 -145
  202. package/skills/verification/SKILL.md +326 -326
  203. package/skills/video-creator/SKILL.md +201 -201
  204. package/skills/watchdog/SKILL.md +168 -168
  205. package/skills/worktree/SKILL.md +140 -140
@@ -1,71 +1,71 @@
1
- ---
2
- name: "webgl"
3
- pack: "@rune/gamedev"
4
- description: "WebGL patterns — shader programming, GLSL, buffer management, texture handling, instanced rendering."
5
- model: sonnet
6
- tools: [Read, Edit, Write, Grep, Glob, Bash]
7
- ---
8
-
9
- # webgl
10
-
11
- WebGL patterns — shader programming, GLSL, buffer management, texture handling, instanced rendering.
12
-
13
- #### Workflow
14
-
15
- **Step 1 — Detect WebGL usage**
16
- Use Grep to find WebGL code: `getContext('webgl`, `gl.createShader`, `gl.createProgram`, `*.glsl`, `*.vert`, `*.frag`. Read shader files and GL initialization to understand: WebGL version, shader complexity, and buffer strategy.
17
-
18
- **Step 2 — Audit shader and buffer efficiency**
19
- Check for: uniforms set every frame that don't change (use UBO), separate draw calls for identical geometry (use instancing), textures not using mipmaps, missing `gl.deleteBuffer`/`gl.deleteTexture` cleanup, and shaders with expensive per-fragment branching.
20
-
21
- **Step 3 — Emit optimized WebGL code**
22
- Emit: WebGL2 setup with proper context attributes, VAO-based buffer management, instanced rendering for repeated geometry, and GLSL shaders with documented inputs/outputs.
23
-
24
- #### Example
25
-
26
- ```glsl
27
- // Vertex shader — instanced rendering with per-instance transform
28
- #version 300 es
29
- layout(location = 0) in vec3 aPosition;
30
- layout(location = 1) in vec3 aNormal;
31
- layout(location = 2) in mat4 aInstanceMatrix; // per-instance (locations 2-5)
32
-
33
- uniform mat4 uViewProjection;
34
-
35
- out vec3 vNormal;
36
- out vec3 vWorldPos;
37
-
38
- void main() {
39
- vec4 worldPos = aInstanceMatrix * vec4(aPosition, 1.0);
40
- vWorldPos = worldPos.xyz;
41
- vNormal = mat3(transpose(inverse(aInstanceMatrix))) * aNormal;
42
- gl_Position = uViewProjection * worldPos;
43
- }
44
- ```
45
-
46
- ```glsl
47
- // Fragment shader — PBR-lite with single directional light
48
- #version 300 es
49
- precision highp float;
50
-
51
- in vec3 vNormal;
52
- in vec3 vWorldPos;
53
- out vec4 fragColor;
54
-
55
- uniform vec3 uLightDir;
56
- uniform vec3 uCameraPos;
57
- uniform vec3 uBaseColor;
58
-
59
- void main() {
60
- vec3 N = normalize(vNormal);
61
- vec3 L = normalize(uLightDir);
62
- vec3 V = normalize(uCameraPos - vWorldPos);
63
- vec3 H = normalize(L + V);
64
-
65
- float diffuse = max(dot(N, L), 0.0);
66
- float specular = pow(max(dot(N, H), 0.0), 32.0);
67
- vec3 ambient = uBaseColor * 0.15;
68
-
69
- fragColor = vec4(ambient + uBaseColor * diffuse + vec3(specular * 0.5), 1.0);
70
- }
71
- ```
1
+ ---
2
+ name: "webgl"
3
+ pack: "@rune/gamedev"
4
+ description: "WebGL patterns — shader programming, GLSL, buffer management, texture handling, instanced rendering."
5
+ model: sonnet
6
+ tools: [Read, Edit, Write, Grep, Glob, Bash]
7
+ ---
8
+
9
+ # webgl
10
+
11
+ WebGL patterns — shader programming, GLSL, buffer management, texture handling, instanced rendering.
12
+
13
+ #### Workflow
14
+
15
+ **Step 1 — Detect WebGL usage**
16
+ Use Grep to find WebGL code: `getContext('webgl`, `gl.createShader`, `gl.createProgram`, `*.glsl`, `*.vert`, `*.frag`. Read shader files and GL initialization to understand: WebGL version, shader complexity, and buffer strategy.
17
+
18
+ **Step 2 — Audit shader and buffer efficiency**
19
+ Check for: uniforms set every frame that don't change (use UBO), separate draw calls for identical geometry (use instancing), textures not using mipmaps, missing `gl.deleteBuffer`/`gl.deleteTexture` cleanup, and shaders with expensive per-fragment branching.
20
+
21
+ **Step 3 — Emit optimized WebGL code**
22
+ Emit: WebGL2 setup with proper context attributes, VAO-based buffer management, instanced rendering for repeated geometry, and GLSL shaders with documented inputs/outputs.
23
+
24
+ #### Example
25
+
26
+ ```glsl
27
+ // Vertex shader — instanced rendering with per-instance transform
28
+ #version 300 es
29
+ layout(location = 0) in vec3 aPosition;
30
+ layout(location = 1) in vec3 aNormal;
31
+ layout(location = 2) in mat4 aInstanceMatrix; // per-instance (locations 2-5)
32
+
33
+ uniform mat4 uViewProjection;
34
+
35
+ out vec3 vNormal;
36
+ out vec3 vWorldPos;
37
+
38
+ void main() {
39
+ vec4 worldPos = aInstanceMatrix * vec4(aPosition, 1.0);
40
+ vWorldPos = worldPos.xyz;
41
+ vNormal = mat3(transpose(inverse(aInstanceMatrix))) * aNormal;
42
+ gl_Position = uViewProjection * worldPos;
43
+ }
44
+ ```
45
+
46
+ ```glsl
47
+ // Fragment shader — PBR-lite with single directional light
48
+ #version 300 es
49
+ precision highp float;
50
+
51
+ in vec3 vNormal;
52
+ in vec3 vWorldPos;
53
+ out vec4 fragColor;
54
+
55
+ uniform vec3 uLightDir;
56
+ uniform vec3 uCameraPos;
57
+ uniform vec3 uBaseColor;
58
+
59
+ void main() {
60
+ vec3 N = normalize(vNormal);
61
+ vec3 L = normalize(uLightDir);
62
+ vec3 V = normalize(uCameraPos - vWorldPos);
63
+ vec3 H = normalize(L + V);
64
+
65
+ float diffuse = max(dot(N, L), 0.0);
66
+ float specular = pow(max(dot(N, H), 0.0), 32.0);
67
+ vec3 ambient = uBaseColor * 0.15;
68
+
69
+ fragColor = vec4(ambient + uBaseColor * diffuse + vec3(specular * 0.5), 1.0);
70
+ }
71
+ ```
@@ -1,106 +1,106 @@
1
- ---
2
- name: "@rune/mobile"
3
- description: Mobile development patterns — React Native, Flutter, deep linking, push notifications, OTA updates, app store preparation, native bridge integration, iOS build pipeline, and App Store Connect automation.
4
- metadata:
5
- author: runedev
6
- version: "0.3.0"
7
- layer: L4
8
- price: "$15"
9
- target: Mobile developers
10
- format: split
11
- ---
12
-
13
- # @rune/mobile
14
-
15
- ## Purpose
16
-
17
- Mobile development has platform-specific pitfalls that web developers hit repeatedly: navigation stacks that leak memory, FlatList rendering that drops frames, New Architecture migration that silently breaks third-party libraries, deep links that work in dev but fail in production, push notifications that never arrive on iOS, OTA updates that crash on bytecode mismatch, and app store rejections for missing privacy manifests. This pack provides patterns for React Native and Flutter — detect the framework, audit for mobile-specific anti-patterns, and emit fixes that pass platform review.
18
-
19
- ## Triggers
20
-
21
- - Auto-trigger: when `react-native`, `expo`, `flutter`, `android/`, `ios/`, `app.json` (Expo) detected
22
- - `/rune react-native` — audit React Native architecture and performance
23
- - `/rune flutter` — audit Flutter architecture and state management
24
- - `/rune deep-linking` — set up or audit deep linking (Universal Links, App Links)
25
- - `/rune push-notifications` — set up or audit push notification pipeline
26
- - `/rune ota-updates` — set up or audit OTA update strategy
27
- - `/rune app-store-prep` — prepare app store submission
28
- - `/rune native-bridge` — audit or create native module bridges
29
- - `/rune ios-build` — end-to-end iOS build, sign, archive, upload pipeline
30
- - `/rune app-store-connect` — App Store Connect API operations (versions, screenshots, localization, IAPs)
31
- - Called by `cook` (L1) when mobile task detected
32
- - Called by `team` (L1) when porting web to mobile
33
-
34
- ## Skills Included
35
-
36
- | Skill | Model | Description |
37
- |-------|-------|-------------|
38
- | [react-native](skills/react-native.md) | sonnet | New Architecture migration, navigation, state management, performance optimization |
39
- | [flutter](skills/flutter.md) | sonnet | Widget composition, Riverpod/BLoC state, platform channels, adaptive layouts |
40
- | [deep-linking](skills/deep-linking.md) | sonnet | Universal Links (iOS), App Links (Android), auth + deep link race condition |
41
- | [push-notifications](skills/push-notifications.md) | sonnet | FCM v1, APNs, Expo Notifications, permission handling, delivery debugging |
42
- | [ota-updates](skills/ota-updates.md) | sonnet | EAS Update, runtime version management, rollback, bytecode compatibility |
43
- | [app-store-prep](skills/app-store-prep.md) | sonnet | Screenshots, metadata, privacy manifests, submission checklist |
44
- | [native-bridge](skills/native-bridge.md) | sonnet | Expo Modules API, TurboModules, Swift/Kotlin interop, background tasks |
45
- | [ios-build-pipeline](skills/ios-build-pipeline.md) | sonnet | Certificate generation, provisioning, Xcode archive, IPA export, TestFlight upload |
46
- | [app-store-connect](skills/app-store-connect.md) | sonnet | Version management, localization, screenshot upload, IAP, review submission |
47
-
48
- Skill files: `skills/<skill-name>.md`
49
-
50
- ## Connections
51
-
52
- ```
53
- Calls → browser-pilot (L3): device testing and screenshot automation
54
- Calls → asset-creator (L3): generate app icons and splash screens
55
- Calls → sentinel (L2): audit push notification security, deep link validation
56
- Calls → verification (L3): run mobile-specific checks (build, lint, type-check)
57
- Calls → @rune/ui (L4): design system tokens, palette, typography for mobile UI consistency
58
- Calls → @rune/backend (L4): API patterns for mobile backend integration (auth, push server)
59
- Calls → @rune/security (L4): code signing audit, API key management, certificate validation
60
- Called By ← cook (L1): when mobile task detected
61
- Called By ← team (L1): when porting web to mobile
62
- Called By ← launch (L1): app store submission flow
63
- Called By ← deploy (L2): mobile-specific deployment (EAS Build, Fastlane)
64
- Inter-skill: ios-build-pipeline → app-store-prep (pipeline feeds into submission checklist)
65
- Inter-skill: app-store-connect → app-store-prep (API automation completes manual checklist items)
66
- Inter-skill: ios-build-pipeline → app-store-connect (upload build → attach to version → submit)
67
- ```
68
-
69
- ## Tech Stack Support
70
-
71
- | Framework | State Management | Navigation | Build | OTA |
72
- |-----------|-----------------|------------|-------|-----|
73
- | React Native (bare) | Zustand / Redux | React Navigation v7 | Metro + Gradle/Xcode | CodePush |
74
- | Expo (managed) | Zustand | Expo Router v4 | EAS Build | EAS Update |
75
- | Flutter | Riverpod / BLoC | GoRouter | Flutter CLI | Shorebird |
76
- | Native iOS (Swift) | SwiftUI @Observable | NavigationStack | xcodebuild | — |
77
-
78
- ## Sharp Edges
79
-
80
- Critical failures to know before using this pack:
81
-
82
- - **New Architecture** silently breaks legacy `NativeModules.X` and `setNativeProps` — audit all native deps against `reactnative.directory` before upgrading
83
- - **OTA bytecode mismatch** crashes on launch — never deploy OTA update across React Native version boundaries; use `fingerprintExperimental` runtime version
84
- - **Universal Links** silently break when AASA endpoint redirects (HTTP→HTTPS) — serve at exact path, verify with `curl -I`
85
- - **Firebase Dynamic Links** shut down August 2025 — all `page.link` URLs dead; migrate to Branch.io or standard App Links
86
- - **PrivacyInfo.xcprivacy** absence triggers auto-rejection on App Store (mandatory since April 2025)
87
- - **FCM Legacy API** fully shut down June 2024 — must use FCM v1 with service account JSON
88
- - **OpenSSL 3.x** `.p12` export silently fails without `-legacy` flag on macOS 14+
89
- - **ASC API rate limit**: 200 req/min; JWT expires in 20 min — implement auto-refresh and exponential backoff
90
-
91
- Full sharp edges table: see individual skill files.
92
-
93
- ## Done When
94
-
95
- - React Native/Flutter codebase audited for New Architecture compatibility with migration plan
96
- - Deep links working on both platforms with authentication integration and real device verification
97
- - Push notifications delivering reliably via FCM v1 with proper permission handling
98
- - OTA update strategy configured with runtime version management and rollback procedure
99
- - App store metadata generated with correct dimensions, privacy manifest, and platform-specific requirements
100
- - Native bridges typed and error-handled for both platforms using modern APIs
101
- - iOS build pipeline producing signed IPA with idempotent signing state
102
- - App Store Connect operations automated — version, localization, screenshots, IAP, submission
103
-
104
- ## Cost Profile
105
-
106
- ~16,000–32,000 tokens per full pack run (all 9 skills). Individual skill: ~2,000–5,000 tokens. Sonnet default. Use haiku for config detection; escalate to sonnet for code generation, build pipeline, and ASC API patterns.
1
+ ---
2
+ name: "@rune/mobile"
3
+ description: Mobile development patterns — React Native, Flutter, deep linking, push notifications, OTA updates, app store preparation, native bridge integration, iOS build pipeline, and App Store Connect automation.
4
+ metadata:
5
+ author: runedev
6
+ version: "0.3.0"
7
+ layer: L4
8
+ price: "$15"
9
+ target: Mobile developers
10
+ format: split
11
+ ---
12
+
13
+ # @rune/mobile
14
+
15
+ ## Purpose
16
+
17
+ Mobile development has platform-specific pitfalls that web developers hit repeatedly: navigation stacks that leak memory, FlatList rendering that drops frames, New Architecture migration that silently breaks third-party libraries, deep links that work in dev but fail in production, push notifications that never arrive on iOS, OTA updates that crash on bytecode mismatch, and app store rejections for missing privacy manifests. This pack provides patterns for React Native and Flutter — detect the framework, audit for mobile-specific anti-patterns, and emit fixes that pass platform review.
18
+
19
+ ## Triggers
20
+
21
+ - Auto-trigger: when `react-native`, `expo`, `flutter`, `android/`, `ios/`, `app.json` (Expo) detected
22
+ - `/rune react-native` — audit React Native architecture and performance
23
+ - `/rune flutter` — audit Flutter architecture and state management
24
+ - `/rune deep-linking` — set up or audit deep linking (Universal Links, App Links)
25
+ - `/rune push-notifications` — set up or audit push notification pipeline
26
+ - `/rune ota-updates` — set up or audit OTA update strategy
27
+ - `/rune app-store-prep` — prepare app store submission
28
+ - `/rune native-bridge` — audit or create native module bridges
29
+ - `/rune ios-build` — end-to-end iOS build, sign, archive, upload pipeline
30
+ - `/rune app-store-connect` — App Store Connect API operations (versions, screenshots, localization, IAPs)
31
+ - Called by `cook` (L1) when mobile task detected
32
+ - Called by `team` (L1) when porting web to mobile
33
+
34
+ ## Skills Included
35
+
36
+ | Skill | Model | Description |
37
+ |-------|-------|-------------|
38
+ | [react-native](skills/react-native.md) | sonnet | New Architecture migration, navigation, state management, performance optimization |
39
+ | [flutter](skills/flutter.md) | sonnet | Widget composition, Riverpod/BLoC state, platform channels, adaptive layouts |
40
+ | [deep-linking](skills/deep-linking.md) | sonnet | Universal Links (iOS), App Links (Android), auth + deep link race condition |
41
+ | [push-notifications](skills/push-notifications.md) | sonnet | FCM v1, APNs, Expo Notifications, permission handling, delivery debugging |
42
+ | [ota-updates](skills/ota-updates.md) | sonnet | EAS Update, runtime version management, rollback, bytecode compatibility |
43
+ | [app-store-prep](skills/app-store-prep.md) | sonnet | Screenshots, metadata, privacy manifests, submission checklist |
44
+ | [native-bridge](skills/native-bridge.md) | sonnet | Expo Modules API, TurboModules, Swift/Kotlin interop, background tasks |
45
+ | [ios-build-pipeline](skills/ios-build-pipeline.md) | sonnet | Certificate generation, provisioning, Xcode archive, IPA export, TestFlight upload |
46
+ | [app-store-connect](skills/app-store-connect.md) | sonnet | Version management, localization, screenshot upload, IAP, review submission |
47
+
48
+ Skill files: `skills/<skill-name>.md`
49
+
50
+ ## Connections
51
+
52
+ ```
53
+ Calls → browser-pilot (L3): device testing and screenshot automation
54
+ Calls → asset-creator (L3): generate app icons and splash screens
55
+ Calls → sentinel (L2): audit push notification security, deep link validation
56
+ Calls → verification (L3): run mobile-specific checks (build, lint, type-check)
57
+ Calls → @rune/ui (L4): design system tokens, palette, typography for mobile UI consistency
58
+ Calls → @rune/backend (L4): API patterns for mobile backend integration (auth, push server)
59
+ Calls → @rune/security (L4): code signing audit, API key management, certificate validation
60
+ Called By ← cook (L1): when mobile task detected
61
+ Called By ← team (L1): when porting web to mobile
62
+ Called By ← launch (L1): app store submission flow
63
+ Called By ← deploy (L2): mobile-specific deployment (EAS Build, Fastlane)
64
+ Inter-skill: ios-build-pipeline → app-store-prep (pipeline feeds into submission checklist)
65
+ Inter-skill: app-store-connect → app-store-prep (API automation completes manual checklist items)
66
+ Inter-skill: ios-build-pipeline → app-store-connect (upload build → attach to version → submit)
67
+ ```
68
+
69
+ ## Tech Stack Support
70
+
71
+ | Framework | State Management | Navigation | Build | OTA |
72
+ |-----------|-----------------|------------|-------|-----|
73
+ | React Native (bare) | Zustand / Redux | React Navigation v7 | Metro + Gradle/Xcode | CodePush |
74
+ | Expo (managed) | Zustand | Expo Router v4 | EAS Build | EAS Update |
75
+ | Flutter | Riverpod / BLoC | GoRouter | Flutter CLI | Shorebird |
76
+ | Native iOS (Swift) | SwiftUI @Observable | NavigationStack | xcodebuild | — |
77
+
78
+ ## Sharp Edges
79
+
80
+ Critical failures to know before using this pack:
81
+
82
+ - **New Architecture** silently breaks legacy `NativeModules.X` and `setNativeProps` — audit all native deps against `reactnative.directory` before upgrading
83
+ - **OTA bytecode mismatch** crashes on launch — never deploy OTA update across React Native version boundaries; use `fingerprintExperimental` runtime version
84
+ - **Universal Links** silently break when AASA endpoint redirects (HTTP→HTTPS) — serve at exact path, verify with `curl -I`
85
+ - **Firebase Dynamic Links** shut down August 2025 — all `page.link` URLs dead; migrate to Branch.io or standard App Links
86
+ - **PrivacyInfo.xcprivacy** absence triggers auto-rejection on App Store (mandatory since April 2025)
87
+ - **FCM Legacy API** fully shut down June 2024 — must use FCM v1 with service account JSON
88
+ - **OpenSSL 3.x** `.p12` export silently fails without `-legacy` flag on macOS 14+
89
+ - **ASC API rate limit**: 200 req/min; JWT expires in 20 min — implement auto-refresh and exponential backoff
90
+
91
+ Full sharp edges table: see individual skill files.
92
+
93
+ ## Done When
94
+
95
+ - React Native/Flutter codebase audited for New Architecture compatibility with migration plan
96
+ - Deep links working on both platforms with authentication integration and real device verification
97
+ - Push notifications delivering reliably via FCM v1 with proper permission handling
98
+ - OTA update strategy configured with runtime version management and rollback procedure
99
+ - App store metadata generated with correct dimensions, privacy manifest, and platform-specific requirements
100
+ - Native bridges typed and error-handled for both platforms using modern APIs
101
+ - iOS build pipeline producing signed IPA with idempotent signing state
102
+ - App Store Connect operations automated — version, localization, screenshots, IAP, submission
103
+
104
+ ## Cost Profile
105
+
106
+ ~16,000–32,000 tokens per full pack run (all 9 skills). Individual skill: ~2,000–5,000 tokens. Sonnet default. Use haiku for config detection; escalate to sonnet for code generation, build pipeline, and ASC API patterns.