@buivietphi/skill-mobile-mt 2.0.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.
- package/AGENTS.md +482 -0
- package/README.md +528 -0
- package/SKILL.md +1399 -0
- package/android/android-native.md +480 -0
- package/bin/install.mjs +976 -0
- package/flutter/flutter.md +304 -0
- package/humanizer/humanizer-mobile.md +295 -0
- package/ios/ios-native.md +182 -0
- package/package.json +56 -0
- package/react-native/react-native.md +743 -0
- package/shared/agent-rules-template.md +343 -0
- package/shared/ai-dlc-workflow.md +237 -0
- package/shared/anti-patterns.md +407 -0
- package/shared/architecture-intelligence.md +416 -0
- package/shared/bug-detection.md +71 -0
- package/shared/ci-cd.md +423 -0
- package/shared/claude-md-template.md +125 -0
- package/shared/code-review.md +133 -0
- package/shared/common-pitfalls.md +117 -0
- package/shared/document-analysis.md +167 -0
- package/shared/error-recovery.md +467 -0
- package/shared/observability.md +688 -0
- package/shared/offline-first.md +377 -0
- package/shared/performance-prediction.md +210 -0
- package/shared/platform-excellence.md +244 -0
- package/shared/prompt-engineering.md +705 -0
- package/shared/release-checklist.md +82 -0
- package/shared/testing-strategy.md +332 -0
- package/shared/ui-ux-mobile.md +667 -0
- package/shared/version-management.md +526 -0
package/README.md
ADDED
|
@@ -0,0 +1,528 @@
|
|
|
1
|
+
# @buivietphi/skill-mobile-mt
|
|
2
|
+
|
|
3
|
+
**Master Senior Mobile Engineer** — AI skill for Claude Code, Cline, Roo Code, Cursor, Windsurf, Copilot, Codex, Gemini CLI, Kimi, Kilo Code, Kiro, and Antigravity.
|
|
4
|
+
|
|
5
|
+
Pre-built architecture patterns from **30+ production repos (200k+ GitHub stars)** including Ignite, Expensify, Mattermost, Immich, AppFlowy, Now in Android, TCA + auto-adaptation to your current project.
|
|
6
|
+
|
|
7
|
+
## Install
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
npx @buivietphi/skill-mobile-mt
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
Interactive checkbox UI — detects which AI agents are installed, lets you select with arrow keys + space.
|
|
14
|
+
|
|
15
|
+
### Install to specific agents
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
npx @buivietphi/skill-mobile-mt --claude # Claude Code
|
|
19
|
+
npx @buivietphi/skill-mobile-mt --codex # Codex
|
|
20
|
+
npx @buivietphi/skill-mobile-mt --gemini # Gemini CLI
|
|
21
|
+
npx @buivietphi/skill-mobile-mt --kimi # Kimi
|
|
22
|
+
npx @buivietphi/skill-mobile-mt --antigravity # Antigravity
|
|
23
|
+
npx @buivietphi/skill-mobile-mt --all # All agents
|
|
24
|
+
npx @buivietphi/skill-mobile-mt --path ./dir # Custom directory
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
### Generate project-level rules
|
|
28
|
+
|
|
29
|
+
Cline, Roo Code, Cursor, Windsurf, Copilot, Kilo Code, and Kiro read rules from **project-level files**. Run `--init` inside your project to generate them:
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
npx @buivietphi/skill-mobile-mt --init # Interactive selector
|
|
33
|
+
npx @buivietphi/skill-mobile-mt --init cursor # .cursorrules
|
|
34
|
+
npx @buivietphi/skill-mobile-mt --init cline # .clinerules/mobile-rules.md
|
|
35
|
+
npx @buivietphi/skill-mobile-mt --init roocode # .roo/rules/mobile-rules.md
|
|
36
|
+
npx @buivietphi/skill-mobile-mt --init copilot # .github/copilot-instructions.md
|
|
37
|
+
npx @buivietphi/skill-mobile-mt --init windsurf # .windsurfrules
|
|
38
|
+
npx @buivietphi/skill-mobile-mt --init kilocode # .kilocode/rules/mobile-rules.md
|
|
39
|
+
npx @buivietphi/skill-mobile-mt --init kiro # .kiro/steering/mobile-rules.md
|
|
40
|
+
npx @buivietphi/skill-mobile-mt --init all # All files
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
**What `--init` does:**
|
|
44
|
+
1. Auto-detects your project (framework, language, state management, navigation, API client, package manager)
|
|
45
|
+
2. Generates rules files pre-filled with your detected stack
|
|
46
|
+
3. Includes mobile best practices, security rules, and quality gates
|
|
47
|
+
4. Won't overwrite existing files (safe to run multiple times)
|
|
48
|
+
|
|
49
|
+
## Usage
|
|
50
|
+
|
|
51
|
+
### Mode 1: Pre-Built Architecture (default)
|
|
52
|
+
|
|
53
|
+
```
|
|
54
|
+
@skill-mobile-mt
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Uses battle-tested patterns from 30+ production repos:
|
|
58
|
+
- **React Native** — Ignite (19.7k stars), Obytes Template, Expensify/App, Mattermost Mobile, Artsy Eigen
|
|
59
|
+
- **Flutter** — Immich (93.5k stars), AppFlowy (68.2k), Spotube (44.6k), Hiddify, Ente Photos
|
|
60
|
+
- **iOS** — TCA / Point-Free (14.4k), Clean Arch SwiftUI, Modern Clean Arch
|
|
61
|
+
- **Android** — Now in Android (20.7k), Android Showcase, Mihon (18.8k)
|
|
62
|
+
|
|
63
|
+
### Mode 2: Adapt to Your Project (project)
|
|
64
|
+
|
|
65
|
+
```
|
|
66
|
+
@skill-mobile-mt project
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
Reads your current project first, then follows **your** conventions:
|
|
70
|
+
- Detects framework, language, package manager, state management, navigation
|
|
71
|
+
- Matches your naming, imports, file structure, patterns
|
|
72
|
+
- Clones the most similar existing feature when scaffolding new ones
|
|
73
|
+
- Never suggests migrations or imposes different architecture
|
|
74
|
+
|
|
75
|
+
## Humanizer — Mobile Copy
|
|
76
|
+
|
|
77
|
+
Installed automatically alongside the main skill. Removes AI writing patterns from mobile app text.
|
|
78
|
+
|
|
79
|
+
```
|
|
80
|
+
@humanizer-mobile
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
Use for: app store descriptions, release notes, error messages, onboarding, push notifications, permission prompts, paywall copy.
|
|
84
|
+
|
|
85
|
+
**App Store Description**
|
|
86
|
+
```
|
|
87
|
+
❌ "TaskFlow is a powerful, comprehensive task management application that
|
|
88
|
+
seamlessly integrates with your existing workflow."
|
|
89
|
+
|
|
90
|
+
✅ "TaskFlow keeps your team's work in one place. Add tasks, assign them,
|
|
91
|
+
set deadlines — everything syncs in real time. Works with Slack and Notion."
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
**Release Notes**
|
|
95
|
+
```
|
|
96
|
+
❌ "Version 2.1.0 introduces significant enhancements to the overall user
|
|
97
|
+
experience including robust improvements to performance and reliability."
|
|
98
|
+
|
|
99
|
+
✅ "2.1.0
|
|
100
|
+
- Faster load times on older Android devices (was 4s, now 1.2s)
|
|
101
|
+
- Fixed crash when opening notifications while offline
|
|
102
|
+
- Dark mode now remembers your setting between sessions"
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
**Error Messages**
|
|
106
|
+
```
|
|
107
|
+
❌ "We apologize for the inconvenience. An unexpected error has occurred."
|
|
108
|
+
|
|
109
|
+
✅ "Couldn't save — no internet connection.
|
|
110
|
+
[Try again] [Save for later]"
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
**Push Notifications**
|
|
114
|
+
```
|
|
115
|
+
❌ "You have received a new message from a team member."
|
|
116
|
+
✅ "Alex commented on "Landing page redesign""
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
**Paywall**
|
|
120
|
+
```
|
|
121
|
+
❌ "Unlock the full potential of our comprehensive premium features."
|
|
122
|
+
|
|
123
|
+
✅ "Go Pro
|
|
124
|
+
• Unlimited projects (free plan: 3)
|
|
125
|
+
• Team sharing
|
|
126
|
+
[Start 7-day free trial]"
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
Covers 24 AI patterns across: content inflation, chatbot artifacts, style issues, mobile-specific copy (App Store limits, permission prompts, rating requests, subscription CTAs).
|
|
130
|
+
|
|
131
|
+
### Works with all agents
|
|
132
|
+
|
|
133
|
+
| Agent | Invocation |
|
|
134
|
+
|-------|-----------|
|
|
135
|
+
| Claude Code | `@humanizer-mobile` |
|
|
136
|
+
| Gemini CLI | `@humanizer-mobile` |
|
|
137
|
+
| Codex / Kimi / Antigravity | `@humanizer-mobile` |
|
|
138
|
+
| Cline / Roo Code / Cursor / Windsurf / Copilot | Paste the text and say "humanize this app copy" |
|
|
139
|
+
|
|
140
|
+
---
|
|
141
|
+
|
|
142
|
+
## Quick Start Examples
|
|
143
|
+
|
|
144
|
+
### Step 1: Install the skill
|
|
145
|
+
|
|
146
|
+
```bash
|
|
147
|
+
# Install globally (one-time setup)
|
|
148
|
+
npx @buivietphi/skill-mobile-mt
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
You'll see an interactive checkbox — use arrow keys to navigate, space to select, Enter to confirm:
|
|
152
|
+
|
|
153
|
+
```
|
|
154
|
+
Select agents to install:
|
|
155
|
+
↑↓ navigate Space toggle A select all Enter confirm Q cancel
|
|
156
|
+
|
|
157
|
+
› ◉ Claude Code [detected]
|
|
158
|
+
◯ Cline [detected]
|
|
159
|
+
◯ Roo Code [not found]
|
|
160
|
+
◯ Cursor [detected]
|
|
161
|
+
◯ Windsurf [not found]
|
|
162
|
+
◯ Copilot [not found]
|
|
163
|
+
◯ Codex [not found]
|
|
164
|
+
◉ Gemini CLI [detected]
|
|
165
|
+
◯ Kimi [not found]
|
|
166
|
+
◯ Kilo Code [not found]
|
|
167
|
+
◯ Kiro [not found]
|
|
168
|
+
◯ Antigravity [not found]
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
Install output:
|
|
172
|
+
|
|
173
|
+
```
|
|
174
|
+
✓ skill-mobile-mt/ → Claude Code (~/.claude/skills/skill-mobile-mt)
|
|
175
|
+
✓ humanizer-mobile/ → Claude Code (~/.claude/skills/humanizer-mobile)
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
Both are installed automatically. Use `@humanizer-mobile` for app store copy, release notes, and UX text.
|
|
179
|
+
|
|
180
|
+
### Step 2: Generate project rules
|
|
181
|
+
|
|
182
|
+
```bash
|
|
183
|
+
# cd into your mobile project first
|
|
184
|
+
cd ~/projects/my-app
|
|
185
|
+
|
|
186
|
+
# Generate rules for your agents
|
|
187
|
+
npx @buivietphi/skill-mobile-mt --init all
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
Output:
|
|
191
|
+
|
|
192
|
+
```
|
|
193
|
+
📁 Project directory: /Users/you/projects/my-app
|
|
194
|
+
🔍 Detected: Expo (React Native) (TypeScript)
|
|
195
|
+
|
|
196
|
+
✓ .cursorrules → Cursor (auto-detected: Expo (React Native))
|
|
197
|
+
✓ .github/copilot-instructions.md → GitHub Copilot
|
|
198
|
+
✓ .clinerules/mobile-rules.md → Cline
|
|
199
|
+
✓ .roo/rules/mobile-rules.md → Roo Code
|
|
200
|
+
✓ .kilocode/rules/mobile-rules.md → Kilo Code
|
|
201
|
+
✓ .kiro/steering/mobile-rules.md → Kiro
|
|
202
|
+
✓ .windsurfrules → Windsurf
|
|
203
|
+
|
|
204
|
+
✅ Done! → 7 file(s) generated
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
### Step 3: Use in your AI agent
|
|
208
|
+
|
|
209
|
+
#### Claude Code
|
|
210
|
+
|
|
211
|
+
```bash
|
|
212
|
+
# In Claude Code terminal, type:
|
|
213
|
+
@skill-mobile-mt
|
|
214
|
+
|
|
215
|
+
# Then ask anything:
|
|
216
|
+
> Create auth feature with login and register screens
|
|
217
|
+
|
|
218
|
+
# Or with project mode (reads YOUR code first):
|
|
219
|
+
@skill-mobile-mt project
|
|
220
|
+
> Add cart feature following the same pattern as ProductList
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
#### Cline / Roo Code / Kilo Code
|
|
224
|
+
|
|
225
|
+
After running `--init cline` (or `roocode`, `kilocode`), rules are auto-loaded from the project directory. Just open your project and ask:
|
|
226
|
+
|
|
227
|
+
```
|
|
228
|
+
> Create a login screen with email/password
|
|
229
|
+
> Fix the crash in ProductDetail when images is null
|
|
230
|
+
> Review this PR for mobile best practices
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
#### Cursor
|
|
234
|
+
|
|
235
|
+
After running `--init cursor`, Cursor auto-loads `.cursorrules` every session. Just open your project and code normally.
|
|
236
|
+
|
|
237
|
+
#### Kiro (AWS)
|
|
238
|
+
|
|
239
|
+
After running `--init kiro`, Kiro loads `.kiro/steering/mobile-rules.md` as steering context. The generated file uses `inclusion: always` frontmatter.
|
|
240
|
+
|
|
241
|
+
#### GitHub Copilot
|
|
242
|
+
|
|
243
|
+
After running `--init copilot`, Copilot reads `.github/copilot-instructions.md` as workspace context.
|
|
244
|
+
|
|
245
|
+
#### Windsurf
|
|
246
|
+
|
|
247
|
+
After running `--init windsurf`, Windsurf auto-loads `.windsurfrules`. Just code normally.
|
|
248
|
+
|
|
249
|
+
#### Gemini CLI
|
|
250
|
+
|
|
251
|
+
```bash
|
|
252
|
+
# In Gemini CLI:
|
|
253
|
+
@skill-mobile-mt
|
|
254
|
+
> Setup a new Flutter project with Riverpod + clean architecture
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
#### Codex / Kimi / Antigravity
|
|
258
|
+
|
|
259
|
+
Same as Claude Code — the skill is loaded from the skills directory.
|
|
260
|
+
|
|
261
|
+
### Example Prompts (all agents)
|
|
262
|
+
|
|
263
|
+
| What you want | What to type |
|
|
264
|
+
|--------------|-------------|
|
|
265
|
+
| New feature | `Create auth feature with login, register, forgot password` |
|
|
266
|
+
| New screen | `Add settings screen with profile, notifications, theme toggle` |
|
|
267
|
+
| Fix bug | `Fix crash when product.images is undefined` |
|
|
268
|
+
| Code review | `Review src/features/cart/ for mobile best practices` |
|
|
269
|
+
| Performance | `Optimize ProductList — it's janky when scrolling 100+ items` |
|
|
270
|
+
| Architecture | `Setup project structure for a new Expo app with Zustand + TanStack Query` |
|
|
271
|
+
| Release | `Prepare the app for App Store submission` |
|
|
272
|
+
| Security | `Audit the auth flow for security vulnerabilities` |
|
|
273
|
+
|
|
274
|
+
## Auto-Detect
|
|
275
|
+
|
|
276
|
+
The skill automatically detects before any action:
|
|
277
|
+
|
|
278
|
+
| What | How |
|
|
279
|
+
|------|-----|
|
|
280
|
+
| **Framework** | `pubspec.yaml` → Flutter, `package.json` with `react-native` → RN, `*.xcodeproj` → iOS, `build.gradle` → Android |
|
|
281
|
+
| **Language** | `.dart` → Dart, `.tsx/.ts` → TypeScript, `.swift` → Swift, `.kt` → Kotlin |
|
|
282
|
+
| **Package Manager** | `yarn.lock` → yarn, `pnpm-lock.yaml` → pnpm, `package-lock.json` → npm, `pubspec.lock` → flutter pub |
|
|
283
|
+
| **State Management** | Redux / MobX / Zustand / Riverpod / BLoC / StateFlow / Combine |
|
|
284
|
+
| **Navigation** | React Navigation / Expo Router / GoRouter / NavigationStack |
|
|
285
|
+
|
|
286
|
+
## Smart Loading
|
|
287
|
+
|
|
288
|
+
Only loads the relevant platform docs — saves **~45% context tokens** vs loading everything.
|
|
289
|
+
|
|
290
|
+
```
|
|
291
|
+
Flutter project?
|
|
292
|
+
→ Load: flutter/flutter.md + ios/ + android/ + shared/
|
|
293
|
+
→ Skip: react-native/
|
|
294
|
+
|
|
295
|
+
React Native project?
|
|
296
|
+
→ Load: react-native/react-native.md + ios/ + android/ + shared/
|
|
297
|
+
→ Skip: flutter/
|
|
298
|
+
|
|
299
|
+
iOS only?
|
|
300
|
+
→ Load: ios/ios-native.md + shared/
|
|
301
|
+
→ Skip: flutter/ + react-native/ + android/
|
|
302
|
+
```
|
|
303
|
+
|
|
304
|
+
## Context Cost
|
|
305
|
+
|
|
306
|
+
| Scenario | Tokens | % of 128K | % of 200K |
|
|
307
|
+
|----------|-------:|----------:|----------:|
|
|
308
|
+
| SKILL.md only | ~13,200 | 10.3% | 6.6% |
|
|
309
|
+
| + 1 platform + core shared/ | ~38,600 | 30.2% | 19.3% |
|
|
310
|
+
| Cross-platform (RN/Flutter + iOS + Android) | ~55,300 | 43.2% | 27.7% |
|
|
311
|
+
| All files loaded | ~77,000 | 60.2% | 38.5% |
|
|
312
|
+
| **Smart load (recommended)** | **~40,900** | **31.9%** | **20.5%** |
|
|
313
|
+
|
|
314
|
+
### Per-file token breakdown
|
|
315
|
+
|
|
316
|
+
| File | Tokens |
|
|
317
|
+
|------|-------:|
|
|
318
|
+
| `SKILL.md` | 6,100 |
|
|
319
|
+
| `AGENTS.md` | 1,600 |
|
|
320
|
+
| `react-native/react-native.md` | 5,108 |
|
|
321
|
+
| `flutter/flutter.md` | 2,100 |
|
|
322
|
+
| `ios/ios-native.md` | 1,452 |
|
|
323
|
+
| `android/android-native.md` | 4,400 |
|
|
324
|
+
| `shared/code-review.md` | 865 |
|
|
325
|
+
| `shared/bug-detection.md` | 499 |
|
|
326
|
+
| `shared/prompt-engineering.md` | 3,927 |
|
|
327
|
+
| `shared/architecture-intelligence.md` | 4,500 |
|
|
328
|
+
| `shared/common-pitfalls.md` | 1,160 |
|
|
329
|
+
| `shared/error-recovery.md` | 2,435 |
|
|
330
|
+
| `shared/document-analysis.md` | 1,200 |
|
|
331
|
+
| `shared/release-checklist.md` | 587 |
|
|
332
|
+
| `shared/anti-patterns.md` | 2,800 |
|
|
333
|
+
| `shared/performance-prediction.md` | 1,500 |
|
|
334
|
+
| `shared/platform-excellence.md` | 2,200 |
|
|
335
|
+
| `shared/version-management.md` | 3,500 |
|
|
336
|
+
| `shared/observability.md` | 3,000 |
|
|
337
|
+
| `shared/offline-first.md` | 2,566 |
|
|
338
|
+
| `shared/testing-strategy.md` | 2,200 |
|
|
339
|
+
| `shared/ci-cd.md` | 2,500 |
|
|
340
|
+
| `shared/ai-dlc-workflow.md` | 2,500 |
|
|
341
|
+
| `shared/ui-ux-mobile.md` | 5,500 |
|
|
342
|
+
| `shared/claude-md-template.md` | ~500 |
|
|
343
|
+
| `shared/agent-rules-template.md` | ~2,500 |
|
|
344
|
+
| **Total** | **~55,800** |
|
|
345
|
+
|
|
346
|
+
## Installed Structure
|
|
347
|
+
|
|
348
|
+
```
|
|
349
|
+
~/.claude/skills/ (or ~/.cline/skills/, ~/.roo/skills/, ~/.gemini/skills/, etc.)
|
|
350
|
+
└── skill-mobile-mt/
|
|
351
|
+
├── SKILL.md Entry point + auto-detect + quality gates
|
|
352
|
+
├── AGENTS.md Multi-agent compatibility
|
|
353
|
+
├── react-native/
|
|
354
|
+
│ └── react-native.md React Native + Expo patterns
|
|
355
|
+
├── flutter/
|
|
356
|
+
│ └── flutter.md Flutter + Dart patterns
|
|
357
|
+
├── ios/
|
|
358
|
+
│ └── ios-native.md iOS Swift patterns
|
|
359
|
+
├── android/
|
|
360
|
+
│ └── android-native.md Android Kotlin + Java patterns
|
|
361
|
+
└── shared/
|
|
362
|
+
├── code-review.md Senior review checklist
|
|
363
|
+
├── bug-detection.md Auto bug scanner
|
|
364
|
+
├── prompt-engineering.md Auto-think + prompt templates
|
|
365
|
+
├── architecture-intelligence.md Patterns from 30+ production repos
|
|
366
|
+
├── common-pitfalls.md Problem → Symptoms → Solution
|
|
367
|
+
├── error-recovery.md 16 build/runtime error fixes
|
|
368
|
+
├── document-analysis.md Parse docs/images → code
|
|
369
|
+
├── anti-patterns.md PII, cardinality, payload detection
|
|
370
|
+
├── performance-prediction.md Frame budget, FPS prediction
|
|
371
|
+
├── platform-excellence.md iOS 18+ vs Android 15+ guidelines + HIG
|
|
372
|
+
├── version-management.md SDK compatibility matrix
|
|
373
|
+
├── observability.md Sessions as 4th pillar
|
|
374
|
+
├── release-checklist.md Pre-release verification
|
|
375
|
+
├── offline-first.md Local-first + sync patterns
|
|
376
|
+
├── testing-strategy.md Detox + Maestro + XCUITest + Espresso E2E
|
|
377
|
+
├── ci-cd.md GitHub Actions CI/CD templates
|
|
378
|
+
├── ai-dlc-workflow.md AI-DLC structured dev workflow
|
|
379
|
+
├── ui-ux-mobile.md Design system + screen templates + touch + navigation
|
|
380
|
+
├── claude-md-template.md CLAUDE.md template for projects
|
|
381
|
+
└── agent-rules-template.md Rules templates for all agents
|
|
382
|
+
```
|
|
383
|
+
|
|
384
|
+
### Project-level files (generated by `--init`)
|
|
385
|
+
|
|
386
|
+
```
|
|
387
|
+
your-project/
|
|
388
|
+
├── .cursorrules Cursor rules (auto-detected stack)
|
|
389
|
+
├── .windsurfrules Windsurf rules (auto-detected stack)
|
|
390
|
+
├── .clinerules/
|
|
391
|
+
│ └── mobile-rules.md Cline rules (auto-detected stack)
|
|
392
|
+
├── .roo/
|
|
393
|
+
│ └── rules/
|
|
394
|
+
│ └── mobile-rules.md Roo Code rules (auto-detected stack)
|
|
395
|
+
├── .kilocode/
|
|
396
|
+
│ └── rules/
|
|
397
|
+
│ └── mobile-rules.md Kilo Code rules (auto-detected stack)
|
|
398
|
+
├── .kiro/
|
|
399
|
+
│ └── steering/
|
|
400
|
+
│ └── mobile-rules.md Kiro steering (auto-detected stack)
|
|
401
|
+
└── .github/
|
|
402
|
+
└── copilot-instructions.md Copilot rules (auto-detected stack)
|
|
403
|
+
```
|
|
404
|
+
|
|
405
|
+
## What's Included
|
|
406
|
+
|
|
407
|
+
### Clean Architecture & SOLID
|
|
408
|
+
- Dependencies flow inward (UI → Domain → Data)
|
|
409
|
+
- Single responsibility per file (max 300 lines)
|
|
410
|
+
- Dependency injection, no hardcoded singletons
|
|
411
|
+
|
|
412
|
+
### Code Review Protocol
|
|
413
|
+
- Architecture, correctness, performance, security, platform checklists
|
|
414
|
+
- Severity levels: Critical / High / Medium / Low
|
|
415
|
+
- Auto-fail patterns (console.log in production, hardcoded secrets, empty catch blocks)
|
|
416
|
+
|
|
417
|
+
### Bug Detection Scanner
|
|
418
|
+
- Crash risks, memory leaks, race conditions
|
|
419
|
+
- Security vulnerabilities, performance issues, UX problems
|
|
420
|
+
- Platform-specific detection rules
|
|
421
|
+
|
|
422
|
+
### Grounding Protocol (Anti-Hallucination)
|
|
423
|
+
- **Source hierarchy**: project code > skill files > official docs > production repos > AI knowledge
|
|
424
|
+
- **Mandatory rules**: Read before answer, verify APIs exist, cite sources, say "I don't know" when unsure
|
|
425
|
+
- **No phantom packages**: verify package exists in package.json before suggesting
|
|
426
|
+
- **Version-specific**: check actual SDK version, never assume latest
|
|
427
|
+
- **Grounded bug fix**: read file → find exact line → verify types → cite source
|
|
428
|
+
- **Anti-hallucination checklist**: runs before every AI response
|
|
429
|
+
|
|
430
|
+
### Docs-First Protocol (Always Use Latest)
|
|
431
|
+
- **WebSearch before coding**: when setting up any library, ALWAYS search official docs first
|
|
432
|
+
- **Never rely on AI memory**: docs change, APIs change, syntax changes between versions
|
|
433
|
+
- **Package installation protocol**: verify exists → check compatibility → search install guide → test both platforms
|
|
434
|
+
- **Common AI traps**: React Navigation v5 vs v7, Firebase v8 vs v9 modular, Swift async/await availability
|
|
435
|
+
- **Version matrix + live verification**: snapshot matrix in skill + mandatory WebSearch for current data
|
|
436
|
+
|
|
437
|
+
### Security Protocol
|
|
438
|
+
- **7-category security scan** on every feature: secrets, token storage, input validation, network, data protection, auth flow, platform-specific
|
|
439
|
+
- **6 absolute rules**: never store tokens in plain storage, never hardcode secrets, never log sensitive data, never trust deep links, never disable SSL, never commit .env
|
|
440
|
+
- **Platform-specific checks**: iOS ATS + privacy manifest, Android cleartext + ProGuard + exported components
|
|
441
|
+
- **Never skip security**: even for prototypes, internal apps, or "quick fixes"
|
|
442
|
+
|
|
443
|
+
### Advanced AI Patterns (from Windsurf, Cursor, Devin, Cline)
|
|
444
|
+
- **Status Update Pattern**: Brief progress notes before tool use (no monologues)
|
|
445
|
+
- **Execution Modes**: Discovery → Implementation → Completion (prevents thrashing)
|
|
446
|
+
- **Pre-Action Validation**: Think blocks verify parameters before acting
|
|
447
|
+
- **Error Recovery Protocol**: Max 3 attempts with fallbacks, then ask user
|
|
448
|
+
- **Mobile Context Capture**: Platform, SDK, device, native modules, permissions
|
|
449
|
+
- **Build & Deploy Gates**: Platform-specific pre-completion checklists
|
|
450
|
+
- **Mobile Anti-Patterns**: Common mistakes from AI tools (and how to avoid them)
|
|
451
|
+
|
|
452
|
+
### Intelligent Prompt Engineering
|
|
453
|
+
- XML tag structure for clarity (`<task>`, `<context>`, `<instructions>`, `<constraints>`)
|
|
454
|
+
- Enhanced auto-think templates with pre-action validation
|
|
455
|
+
- Progressive context loading (5 levels: overview → pattern → files → docs → expert)
|
|
456
|
+
- Just-in-time file reading (grep first, read only needed)
|
|
457
|
+
- Reference pattern system (clone existing instead of reading docs)
|
|
458
|
+
- Multi-AI format support (Claude, Gemini, Kimi, Cursor, Copilot, Windsurf)
|
|
459
|
+
|
|
460
|
+
### Document Analysis
|
|
461
|
+
- Parse images (mockups, wireframes), PDFs (requirements), DOCX, XML, JSON
|
|
462
|
+
- UI Analysis: extract layout, components, styling, states from screenshots
|
|
463
|
+
- Requirements Extraction: user stories, screen flows, data models, business rules
|
|
464
|
+
- Document → Code pipeline: read → extract → map features → scaffold
|
|
465
|
+
|
|
466
|
+
### Architecture Intelligence (from 30+ production repos)
|
|
467
|
+
|
|
468
|
+
- **Architecture Intelligence** (`architecture-intelligence.md`): Cross-platform patterns from Ignite, Immich, AppFlowy, TCA, Now in Android and more. Includes: dual state management, feature-based modules, bootstrap/startup pattern, functional error handling, architecture validation (Konsist), production folder structure templates, and decision matrices for state/nav/testing.
|
|
469
|
+
|
|
470
|
+
### Production Patterns (from Senaiverse, Mhuxain, VoltAgent, Nexus)
|
|
471
|
+
|
|
472
|
+
- **Anti-Pattern Detection** (`anti-patterns.md`): Detect PII leaks (CRITICAL), high cardinality tags, unbounded payloads, unstructured logs, sync telemetry on main thread — with auto-fix suggestions
|
|
473
|
+
- **Performance Prediction** (`performance-prediction.md`): Calculate frame budget, FlatList bridge calls, and memory usage BEFORE writing code. Example: `50 items × 3 bridge calls × 0.3ms = 45ms/frame → 22 FPS ❌ JANK`
|
|
474
|
+
- **Platform Excellence** (`platform-excellence.md`): iOS 18+ vs Android 15+ native UX standards — navigation patterns, typography, haptic feedback types, permission timing, ratings prompt flow, Live Activities/Dynamic Island, performance targets (cold start < 1s iOS, < 1.5s Android)
|
|
475
|
+
- **Version Management** (`version-management.md`): Full SDK compatibility matrix for RN 0.73-0.76, Expo 50-52, Flutter 3.22-3.27, iOS 16-18, Android 13-15. Check SDK compat BEFORE `npm install`. Release-mode testing protocol.
|
|
476
|
+
- **Observability** (`observability.md`): Sessions as the 4th pillar (Metrics + Logs + Traces + **Sessions**). Session lifecycle, enrichment API, unified instrumentation stack, correlation queries. Every event carries `session_id` for full user journey reconstruction.
|
|
477
|
+
|
|
478
|
+
### UI/UX Mobile Design
|
|
479
|
+
- Screen templates with ASCII wireframes: Login, Home/Feed, Detail, Profile/Settings, Onboarding
|
|
480
|
+
- Design tokens system (colors, spacing, radius, shadows, typography) for RN and Flutter
|
|
481
|
+
- Component patterns: bottom sheet, empty state, loading skeleton, toast/snackbar
|
|
482
|
+
- Touch targets (44pt iOS / 48dp Android), dark mode implementation, animation guidelines
|
|
483
|
+
- Accessibility checklist (screen reader labels, contrast ratios, font scaling)
|
|
484
|
+
- Device sizing reference table (iPhone SE → Pro Max, Android small → large, iPad)
|
|
485
|
+
|
|
486
|
+
### AI-DLC Workflow (AI-Driven Development Lifecycle)
|
|
487
|
+
- Based on AWS AI-DLC methodology — structured development for complex features
|
|
488
|
+
- **Elaboration**: decompose task into Intent + Units before coding
|
|
489
|
+
- **Construction loop**: 4 Hats per Unit (Architecture → Builder → Security → Reviewer)
|
|
490
|
+
- **Backpressure gates**: compiler, lint, security, review must pass before next Unit
|
|
491
|
+
- **Operating modes**: HITL (human approves each Unit), OHOTL, AHOTL
|
|
492
|
+
- Auto-activates for multi-screen features (3+ units); skips for bug fixes
|
|
493
|
+
|
|
494
|
+
### Error Recovery
|
|
495
|
+
- 16 common build/runtime errors with concrete fixes
|
|
496
|
+
- Platform-specific solutions (RN CLI, Expo, Flutter, iOS, Android)
|
|
497
|
+
- General recovery protocol for systematic debugging
|
|
498
|
+
|
|
499
|
+
### Release & Review
|
|
500
|
+
- Pre-release checklist for App Store and Play Store submissions
|
|
501
|
+
- Common pitfalls with Problem → Symptoms → Solution format
|
|
502
|
+
- Security audit patterns
|
|
503
|
+
|
|
504
|
+
### Security Non-Negotiables
|
|
505
|
+
- No hardcoded secrets
|
|
506
|
+
- Secure token storage (Keychain / EncryptedSharedPreferences / SecureStore)
|
|
507
|
+
- Deep link validation, HTTPS only
|
|
508
|
+
|
|
509
|
+
## Supported Agents
|
|
510
|
+
|
|
511
|
+
| Agent | How it works | Setup command |
|
|
512
|
+
|-------|-------------|---------------|
|
|
513
|
+
| **Claude Code** | Reads from `~/.claude/skills/` | `npx skill-mobile-mt --claude` |
|
|
514
|
+
| **Cline** | Reads `.clinerules/` from project root | `npx skill-mobile-mt --init cline` |
|
|
515
|
+
| **Roo Code** | Reads `.roo/rules/` from project root | `npx skill-mobile-mt --init roocode` |
|
|
516
|
+
| **Cursor** | Reads `.cursorrules` from project root | `npx skill-mobile-mt --init cursor` |
|
|
517
|
+
| **Windsurf** | Reads `.windsurfrules` from project root | `npx skill-mobile-mt --init windsurf` |
|
|
518
|
+
| **Copilot** | Reads `.github/copilot-instructions.md` | `npx skill-mobile-mt --init copilot` |
|
|
519
|
+
| **Codex** | Reads from `~/.codex/skills/` | `npx skill-mobile-mt --codex` |
|
|
520
|
+
| **Gemini CLI** | Reads from `~/.gemini/skills/` | `npx skill-mobile-mt --gemini` |
|
|
521
|
+
| **Kimi** | Reads from `~/.kimi/skills/` | `npx skill-mobile-mt --kimi` |
|
|
522
|
+
| **Kilo Code** | Reads `.kilocode/rules/` from project root | `npx skill-mobile-mt --init kilocode` |
|
|
523
|
+
| **Kiro** | Reads `.kiro/steering/` from project root | `npx skill-mobile-mt --init kiro` |
|
|
524
|
+
| **Antigravity** | Reads from `~/.agents/skills/` | `npx skill-mobile-mt --antigravity` |
|
|
525
|
+
|
|
526
|
+
## License
|
|
527
|
+
|
|
528
|
+
MIT — by [buivietphi](https://github.com/buivietphi)
|