mobile-ai-agents 1.0.23
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 +228 -0
- package/CLAUDE.md +236 -0
- package/LICENSE +21 -0
- package/README.md +652 -0
- package/agents/android/android-crash-analyzer/README.md +134 -0
- package/agents/android/android-crash-analyzer/agent.md +206 -0
- package/agents/android/android-crash-analyzer/example-input.md +138 -0
- package/agents/android/android-crash-analyzer/example-output.md +225 -0
- package/agents/android/anr-investigation/README.md +78 -0
- package/agents/android/anr-investigation/agent.md +117 -0
- package/agents/android/anr-investigation/example-input.md +62 -0
- package/agents/android/anr-investigation/example-output.md +103 -0
- package/agents/android/axiom/agent.md +197 -0
- package/agents/android/code-reviewer/README.md +108 -0
- package/agents/android/code-reviewer/agent.md +210 -0
- package/agents/android/code-reviewer/example-input.md +116 -0
- package/agents/android/code-reviewer/example-output.md +115 -0
- package/agents/android/compose-navigation/README.md +76 -0
- package/agents/android/compose-navigation/agent.md +121 -0
- package/agents/android/compose-navigation/example-input.md +49 -0
- package/agents/android/compose-navigation/example-output.md +325 -0
- package/agents/android/compose-screen-builder/README.md +95 -0
- package/agents/android/compose-screen-builder/agent.md +170 -0
- package/agents/android/compose-screen-builder/example-input.md +40 -0
- package/agents/android/compose-screen-builder/example-output.md +568 -0
- package/agents/android/compose-ui-reviewer/README.md +73 -0
- package/agents/android/compose-ui-reviewer/agent.md +253 -0
- package/agents/android/compose-ui-reviewer/example-input.md +84 -0
- package/agents/android/compose-ui-reviewer/example-output.md +102 -0
- package/agents/android/crash-analyzer/README.md +53 -0
- package/agents/android/crash-analyzer/agent.md +295 -0
- package/agents/android/memory-leak-analyzer/README.md +79 -0
- package/agents/android/memory-leak-analyzer/agent.md +116 -0
- package/agents/android/memory-leak-analyzer/example-input.md +78 -0
- package/agents/android/memory-leak-analyzer/example-output.md +128 -0
- package/agents/cross-platform/accessibility-auditor/README.md +47 -0
- package/agents/cross-platform/accessibility-auditor/agent.md +268 -0
- package/agents/cross-platform/accessibility-auditor/example-input.md +84 -0
- package/agents/cross-platform/accessibility-auditor/example-output.md +132 -0
- package/agents/cross-platform/appforge/agent.md +303 -0
- package/agents/cross-platform/ci-cd-generator/README.md +65 -0
- package/agents/cross-platform/ci-cd-generator/agent.md +422 -0
- package/agents/cross-platform/ci-cd-generator/example-input.md +69 -0
- package/agents/cross-platform/ci-cd-generator/example-output.md +261 -0
- package/agents/cross-platform/crasher/agent.md +221 -0
- package/agents/cross-platform/figma/agent.md +247 -0
- package/agents/cross-platform/launchpad/agent.md +330 -0
- package/agents/cross-platform/mobile-harness/agent.md +422 -0
- package/agents/cross-platform/mobile-memory/agent.md +429 -0
- package/agents/cross-platform/perf/agent.md +261 -0
- package/agents/cross-platform/pipeline/agent.md +288 -0
- package/agents/cross-platform/release-notes-generator/README.md +63 -0
- package/agents/cross-platform/release-notes-generator/agent.md +218 -0
- package/agents/cross-platform/release-notes-generator/example-input.md +71 -0
- package/agents/cross-platform/release-notes-generator/example-output.md +96 -0
- package/agents/cross-platform/scribe/agent.md +180 -0
- package/agents/cross-platform/security-scanner/README.md +61 -0
- package/agents/cross-platform/security-scanner/agent.md +287 -0
- package/agents/cross-platform/security-scanner/example-input.md +77 -0
- package/agents/cross-platform/security-scanner/example-output.md +141 -0
- package/agents/cross-platform/sentinel/agent.md +217 -0
- package/agents/cross-platform/store-listing-writer/README.md +58 -0
- package/agents/cross-platform/store-listing-writer/agent.md +380 -0
- package/agents/cross-platform/store-listing-writer/example-input.md +67 -0
- package/agents/cross-platform/store-listing-writer/example-output.md +131 -0
- package/agents/flutter/bloc-feature-builder/README.md +101 -0
- package/agents/flutter/bloc-feature-builder/agent.md +225 -0
- package/agents/flutter/bloc-feature-builder/example-input.md +47 -0
- package/agents/flutter/bloc-feature-builder/example-output.md +838 -0
- package/agents/flutter/dart/agent.md +223 -0
- package/agents/flutter/widget-generator/README.md +66 -0
- package/agents/flutter/widget-generator/agent.md +264 -0
- package/agents/flutter/widget-generator/example-input.md +71 -0
- package/agents/flutter/widget-generator/example-output.md +163 -0
- package/agents/gaming/forge/agent.md +197 -0
- package/agents/gaming/unreal/agent.md +200 -0
- package/agents/ios/crash-analyzer/README.md +69 -0
- package/agents/ios/crash-analyzer/agent.md +300 -0
- package/agents/ios/crash-analyzer/example-input.md +83 -0
- package/agents/ios/crash-analyzer/example-output.md +126 -0
- package/agents/ios/swift/agent.md +206 -0
- package/agents/ios/swift-reviewer/README.md +68 -0
- package/agents/ios/swift-reviewer/agent.md +231 -0
- package/agents/ios/swift-reviewer/example-input.md +100 -0
- package/agents/ios/swift-reviewer/example-output.md +127 -0
- package/agents/react-native/bridge/agent.md +212 -0
- package/agents/react-native/performance-optimizer/README.md +81 -0
- package/agents/react-native/performance-optimizer/agent.md +284 -0
- package/agents/react-native/performance-optimizer/example-input.md +104 -0
- package/agents/react-native/performance-optimizer/example-output.md +132 -0
- package/agents/unity/shader-generator/README.md +77 -0
- package/agents/unity/shader-generator/agent.md +270 -0
- package/agents/unity/shader-generator/example-input.md +70 -0
- package/agents/unity/shader-generator/example-output.md +160 -0
- package/agents/unreal/blueprint-advisor/README.md +71 -0
- package/agents/unreal/blueprint-advisor/agent.md +311 -0
- package/agents/unreal/blueprint-advisor/example-input.md +73 -0
- package/agents/unreal/blueprint-advisor/example-output.md +217 -0
- package/cli/index.js +1091 -0
- package/docs/agent-guide.md +138 -0
- package/docs/chatgpt-integration.md +219 -0
- package/docs/core-loops.md +143 -0
- package/docs/cursor-integration.md +143 -0
- package/docs/getting-started.md +132 -0
- package/docs/index.html +711 -0
- package/docs/installation.md +271 -0
- package/docs/mobile-harness.md +160 -0
- package/docs/mobile-mcp.md +172 -0
- package/docs/mobile-memory.md +349 -0
- package/docs/release-process.md +85 -0
- package/docs/releases/release-v1.0.0.md +165 -0
- package/docs/roadmap/github-issues.md +239 -0
- package/docs/skill-categories.md +125 -0
- package/docs/vscode-copilot-integration.md +104 -0
- package/docs/wiki.md +615 -0
- package/install.sh +507 -0
- package/mobile-karpathy.md +79 -0
- package/package.json +57 -0
- package/skills/android/README.md +31 -0
- package/skills/android/android-tdd.md +89 -0
- package/skills/android/anr-investigation.md +251 -0
- package/skills/android/code-review.md +98 -0
- package/skills/android/compose-migration.md +48 -0
- package/skills/android/compose-review.md +78 -0
- package/skills/android/kotlin-modernize.md +51 -0
- package/skills/android/memory-leak-investigation.md +256 -0
- package/skills/android/proguard-rules.md +48 -0
- package/skills/cross-platform/accessibility-audit.md +63 -0
- package/skills/cross-platform/api-versioning.md +59 -0
- package/skills/cross-platform/clean-code-audit.md +239 -0
- package/skills/cross-platform/crash-triage.md +53 -0
- package/skills/cross-platform/deeplink-debug.md +57 -0
- package/skills/cross-platform/feature-slice.md +48 -0
- package/skills/cross-platform/grill-mobile.md +64 -0
- package/skills/cross-platform/mobile-mcp-qa.md +193 -0
- package/skills/cross-platform/mobile-memory-graph.md +179 -0
- package/skills/cross-platform/mobile-memory-save.md +210 -0
- package/skills/cross-platform/mobile-memory-search.md +154 -0
- package/skills/cross-platform/perf-audit.md +61 -0
- package/skills/cross-platform/prd-verification.md +324 -0
- package/skills/cross-platform/release-prep.md +64 -0
- package/skills/cross-platform/security-audit.md +281 -0
- package/skills/cross-platform/store-listing.md +75 -0
- package/skills/flutter/README.md +32 -0
- package/skills/flutter/dart-modernize.md +47 -0
- package/skills/flutter/flutter-review.md +59 -0
- package/skills/flutter/flutter-tdd.md +73 -0
- package/skills/flutter/widget-extract.md +41 -0
- package/skills/flutter/widget-gen.md +131 -0
- package/skills/gaming/blueprint-to-cpp.md +51 -0
- package/skills/gaming/game-perf.md +54 -0
- package/skills/gaming/shader-gen.md +44 -0
- package/skills/gaming/unity-tdd.md +85 -0
- package/skills/ios/README.md +45 -0
- package/skills/ios/data-persistence.md +151 -0
- package/skills/ios/ios-tdd.md +90 -0
- package/skills/ios/networking.md +139 -0
- package/skills/ios/performance.md +122 -0
- package/skills/ios/swift-concurrency.md +57 -0
- package/skills/ios/swift-review.md +124 -0
- package/skills/ios/swiftui-review.md +49 -0
- package/skills/ios/swiftui-state.md +122 -0
- package/skills/ios/unit-testing.md +144 -0
- package/skills/ios/xcode-warnings.md +37 -0
- package/skills/react-native/README.md +42 -0
- package/skills/react-native/bridge-audit.md +104 -0
- package/skills/react-native/expo-optimize.md +55 -0
- package/skills/react-native/new-arch-migrate.md +53 -0
- package/skills/react-native/performance.md +124 -0
- package/skills/react-native/rn-review.md +53 -0
- package/skills/react-native/rn-tdd.md +76 -0
- package/skills/shared/README.md +46 -0
- package/skills/shared/accessibility-audit.md +132 -0
- package/skills/shared/crash-analysis.md +110 -0
- package/skills/shared/security-scan.md +149 -0
- package/skills/unity/README.md +31 -0
- package/skills/unity/shader-review.md +110 -0
- package/templates/agent-template.md +88 -0
- package/templates/prompt-template.md +50 -0
- package/templates/skill-template.md +64 -0
- package/templates/workflow-template.md +48 -0
- package/workflows/app-launch.md +66 -0
- package/workflows/appforge-workflow.md +232 -0
- package/workflows/ci-setup.md +77 -0
- package/workflows/crash-to-fix.md +71 -0
- package/workflows/feature-ship.md +61 -0
- package/workflows/game-level.md +72 -0
- package/workflows/mobile-harness.md +319 -0
- package/workflows/mobile-mcp-qa.md +228 -0
- package/workflows/mobile-memory-workflow.md +243 -0
- package/workflows/new-project-setup.md +93 -0
- package/workflows/new-screen.md +68 -0
- package/workflows/perf-sprint.md +78 -0
- package/workflows/release-cycle.md +71 -0
|
@@ -0,0 +1,319 @@
|
|
|
1
|
+
# Workflow — Mobile Harness
|
|
2
|
+
|
|
3
|
+
**Type:** Top-level mobile delivery orchestration
|
|
4
|
+
**Agents Used:** MOBILE-HARNESS, APPFORGE, Mobile Memory, AXIOM / SWIFT / DART / BRIDGE, CRASHER, PERF, LAUNCHPAD, SCRIBE, PIPELINE
|
|
5
|
+
**Skills Used:** /mobile-mcp-qa, /accessibility-audit, /perf-audit, /mobile-memory-save, /release-prep, /store-listing
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## When to Use
|
|
10
|
+
|
|
11
|
+
Use this workflow when a user wants one orchestrator that can manage the complete mobile app lifecycle: idea, planning, implementation, verification, multi-session memory, device QA, and launch preparation.
|
|
12
|
+
|
|
13
|
+
This workflow is intentionally strict. It prevents the common AI failure mode of building code without proving it matches the product plan, design, and real-device behavior.
|
|
14
|
+
|
|
15
|
+
The goal is near-zero human effort. MOBILE-HARNESS should do routine product, engineering, QA, documentation, and release-prep work itself. The user should mainly provide the initial goal, approve major gates, and supply credentials or business decisions that cannot be inferred safely.
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## Autonomy Contract
|
|
20
|
+
|
|
21
|
+
MOBILE-HARNESS is autonomous by default:
|
|
22
|
+
|
|
23
|
+
- Create missing docs instead of asking the user to write them.
|
|
24
|
+
- Choose practical MVP defaults when requirements are underspecified.
|
|
25
|
+
- Generate PRD, design plan, tasks, dependencies, roadmap, QA report, memory, and launch docs.
|
|
26
|
+
- Select the next safe task from `TASKS.md`.
|
|
27
|
+
- Implement one scoped task at a time.
|
|
28
|
+
- Run available tests, linters, builds, reviewers, and Mobile MCP QA.
|
|
29
|
+
- Compare behavior against `PRD.md` and UI against the design artifact.
|
|
30
|
+
- Fix failures that are inside the current task scope.
|
|
31
|
+
- Update `MOBILE_MEMORY.md` so work can resume days or weeks later.
|
|
32
|
+
|
|
33
|
+
Ask the user only for:
|
|
34
|
+
|
|
35
|
+
- Product or business decisions that change the MVP.
|
|
36
|
+
- Credentials, API keys, certificates, billing, or store account access.
|
|
37
|
+
- Paid, destructive, irreversible, or public release actions.
|
|
38
|
+
- Legal/privacy policy content that requires the owner.
|
|
39
|
+
- Approval before first implementation starts, unless the user has already approved the plan.
|
|
40
|
+
- External systems that are unavailable to the harness.
|
|
41
|
+
|
|
42
|
+
---
|
|
43
|
+
|
|
44
|
+
## Lifecycle Map
|
|
45
|
+
|
|
46
|
+
```text
|
|
47
|
+
0. START
|
|
48
|
+
↓ New idea or existing codebase?
|
|
49
|
+
|
|
50
|
+
1. DELIVERY PROFILE
|
|
51
|
+
↓ Smallest MVP, Demo-grade MVP, or Production-ready MVP
|
|
52
|
+
|
|
53
|
+
2. DESIGN DIRECTION
|
|
54
|
+
↓ Clean utility, polished consumer, playful gamified, premium wellness, dense dashboard, enterprise/admin, or custom reference
|
|
55
|
+
|
|
56
|
+
3. MEMORY
|
|
57
|
+
↓ Load or create MOBILE_MEMORY.md
|
|
58
|
+
|
|
59
|
+
4. PRODUCT PLAN
|
|
60
|
+
↓ APPFORGE discovery, PRD.md, design plan, TASKS.md, DEPENDENCIES.md
|
|
61
|
+
|
|
62
|
+
5. TASK LOOP
|
|
63
|
+
↓ Select exactly one task
|
|
64
|
+
↓ Implement only that task
|
|
65
|
+
↓ Platform review
|
|
66
|
+
↓ Tests
|
|
67
|
+
↓ PRD verification
|
|
68
|
+
↓ UI match review
|
|
69
|
+
↓ Mobile MCP QA
|
|
70
|
+
↓ Update MOBILE_MEMORY.md
|
|
71
|
+
|
|
72
|
+
6. FULL QA
|
|
73
|
+
↓ Accessibility, performance, crash risk, edge cases
|
|
74
|
+
|
|
75
|
+
7. LAUNCH
|
|
76
|
+
↓ Store listing, release notes, checklist, pipeline
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
---
|
|
80
|
+
|
|
81
|
+
## Delivery Profiles
|
|
82
|
+
|
|
83
|
+
Pick a delivery profile before APPFORGE creates PRD, design, and tasks.
|
|
84
|
+
|
|
85
|
+
| Profile | Use When | Minimum Bar |
|
|
86
|
+
|---|---|---|
|
|
87
|
+
| Smallest MVP | Fastest useful app or proof of concept. | Core flow works, tests pass, minimal UI, no avoidable scope. |
|
|
88
|
+
| Demo-grade MVP | Video, social demo, investor demo, launch article, or Loop Engineering showcase. | 4+ visible screens/states, seeded sample data, polished UI, screenshot plan, device evidence. |
|
|
89
|
+
| Production-ready MVP | Release candidate or serious dogfooding build. | Demo-grade scope plus stricter accessibility, performance, security, crash, privacy, release, and store gates. |
|
|
90
|
+
|
|
91
|
+
Demo-grade MVP exists to prevent the loop from producing a technically correct but boring app. It should be the default whenever the user says they want to create a video or market the repo.
|
|
92
|
+
|
|
93
|
+
For Demo-grade MVP, APPFORGE and MOBILE-HARNESS must include:
|
|
94
|
+
|
|
95
|
+
- A visually strong first launch with sample data or guided empty state.
|
|
96
|
+
- At least 4 visible screens/states unless the user approves fewer.
|
|
97
|
+
- Dashboard or summary surface where the domain supports it.
|
|
98
|
+
- Detail, history, insights, settings, or progress surface where useful.
|
|
99
|
+
- Add/edit/delete or equivalent primary interaction.
|
|
100
|
+
- Empty, populated, error/validation, and confirmation states when applicable.
|
|
101
|
+
- Screenshot plan and recording script.
|
|
102
|
+
- UI polish pass before marking the build complete.
|
|
103
|
+
|
|
104
|
+
---
|
|
105
|
+
|
|
106
|
+
## Design Direction
|
|
107
|
+
|
|
108
|
+
Ask for design direction before creating product artifacts:
|
|
109
|
+
|
|
110
|
+
```text
|
|
111
|
+
What design direction should this app use?
|
|
112
|
+
A. Clean utility — simple, quiet, task-focused
|
|
113
|
+
B. Polished consumer — friendly, modern, app-store ready
|
|
114
|
+
C. Playful gamified — colorful, streaks, rewards, motion
|
|
115
|
+
D. Premium wellness — calm, spacious, refined
|
|
116
|
+
E. Dense dashboard — data-first, productivity-focused
|
|
117
|
+
F. Enterprise/admin — structured, compact, operational
|
|
118
|
+
G. Custom reference — describe or link the style
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
If the user does not choose, infer the best direction from the app category and delivery profile, then document the assumption in `DESIGN.md`. For Demo-grade MVP, do not default to a plain stock UI unless the user specifically asks for a clean utility style.
|
|
122
|
+
|
|
123
|
+
`DESIGN.md` must include:
|
|
124
|
+
|
|
125
|
+
- Design direction and rationale.
|
|
126
|
+
- Target audience and emotional tone.
|
|
127
|
+
- Visual hierarchy and first-screen goal.
|
|
128
|
+
- Color, typography, spacing, iconography, and component style.
|
|
129
|
+
- Empty, populated, validation/error, loading, confirmation, and success states when applicable.
|
|
130
|
+
- Screenshot and recording plan.
|
|
131
|
+
|
|
132
|
+
---
|
|
133
|
+
|
|
134
|
+
## Source of Truth
|
|
135
|
+
|
|
136
|
+
| Artifact | Required | Owner | Purpose |
|
|
137
|
+
|---|---|---|---|
|
|
138
|
+
| `MOBILE_MEMORY.md` | Required for multi-session work | Mobile Memory | Context, decisions, current task, next action |
|
|
139
|
+
| `PRD.md` | Required before implementation | APPFORGE | Product behavior and requirements |
|
|
140
|
+
| Design plan / `DESIGN.md` | Required before UI implementation | APPFORGE | Visual target and UI states |
|
|
141
|
+
| `TASKS.md` | Required before implementation | APPFORGE | Task scope and acceptance criteria |
|
|
142
|
+
| `DEPENDENCIES.md` | Required before implementation | APPFORGE / PIPELINE | Libraries, APIs, env vars, build constraints |
|
|
143
|
+
| `ROADMAP.md` | Recommended | APPFORGE | Milestones and sequencing |
|
|
144
|
+
| `MOBILE_HARNESS_REPORT.md` | Required after each cycle | MOBILE-HARNESS | Evidence and pass/fail state |
|
|
145
|
+
|
|
146
|
+
If any required artifact is missing, MOBILE-HARNESS creates or updates it through APPFORGE before coding.
|
|
147
|
+
|
|
148
|
+
---
|
|
149
|
+
|
|
150
|
+
## Stage 1 — Start or Restore
|
|
151
|
+
|
|
152
|
+
Ask whether this is:
|
|
153
|
+
|
|
154
|
+
- New app idea
|
|
155
|
+
- Existing codebase
|
|
156
|
+
- Existing feature in progress
|
|
157
|
+
- QA-only pass
|
|
158
|
+
- Launch preparation
|
|
159
|
+
|
|
160
|
+
Ask for delivery profile:
|
|
161
|
+
|
|
162
|
+
```text
|
|
163
|
+
Do you want:
|
|
164
|
+
A. Smallest MVP — fastest usable version
|
|
165
|
+
B. Demo-grade MVP — polished, video-ready, seeded, and visually complete
|
|
166
|
+
C. Production-ready MVP — release-gated with broader hardening
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
If the user already says "demo", "video", "viral", "marketing", or "showcase", choose Demo-grade MVP and document that assumption.
|
|
170
|
+
|
|
171
|
+
Ask for design direction using the options in the Design Direction section. If the prompt already gives a clear visual reference or audience tone, document the inferred direction and continue.
|
|
172
|
+
|
|
173
|
+
Then load `MOBILE_MEMORY.md` if present. If no memory file exists and the work is more than a short one-off, create one.
|
|
174
|
+
|
|
175
|
+
If the user already gave enough context to infer the mode, do not stop for this question. Pick the mode, document the assumption in `MOBILE_MEMORY.md`, and continue.
|
|
176
|
+
|
|
177
|
+
---
|
|
178
|
+
|
|
179
|
+
## Stage 2 — Product Planning
|
|
180
|
+
|
|
181
|
+
If product artifacts are missing, run APPFORGE internally:
|
|
182
|
+
|
|
183
|
+
1. Discovery
|
|
184
|
+
2. `PRD.md`
|
|
185
|
+
3. Design plan
|
|
186
|
+
4. `TASKS.md`
|
|
187
|
+
5. `DEPENDENCIES.md`
|
|
188
|
+
6. `ROADMAP.md`
|
|
189
|
+
|
|
190
|
+
Do not implement until the user approves these artifacts.
|
|
191
|
+
|
|
192
|
+
Do not ask the user to draft these files. MOBILE-HARNESS owns the first complete version and asks for approval or corrections.
|
|
193
|
+
|
|
194
|
+
---
|
|
195
|
+
|
|
196
|
+
## Stage 3 — One-Task Implementation Loop
|
|
197
|
+
|
|
198
|
+
For each task:
|
|
199
|
+
|
|
200
|
+
1. Read `MOBILE_MEMORY.md`.
|
|
201
|
+
2. Read `PRD.md`.
|
|
202
|
+
3. Read design plan.
|
|
203
|
+
4. Read `TASKS.md`.
|
|
204
|
+
5. Read `DEPENDENCIES.md`.
|
|
205
|
+
6. Select exactly one task.
|
|
206
|
+
7. Implement only that task.
|
|
207
|
+
8. Run platform reviewer.
|
|
208
|
+
9. Run tests.
|
|
209
|
+
10. Verify behavior against `PRD.md`.
|
|
210
|
+
11. Verify UI against design.
|
|
211
|
+
12. Run `/mobile-mcp-qa` if device automation is available.
|
|
212
|
+
13. Write `MOBILE_HARNESS_REPORT.md`.
|
|
213
|
+
14. Update `MOBILE_MEMORY.md`.
|
|
214
|
+
|
|
215
|
+
After a task passes, continue to the next safe task automatically when the user has approved autonomous execution for the project. Stop only at human gates defined in the Autonomy Contract.
|
|
216
|
+
|
|
217
|
+
---
|
|
218
|
+
|
|
219
|
+
## Stage 4 — PRD Verification
|
|
220
|
+
|
|
221
|
+
Every acceptance criterion must reference a source:
|
|
222
|
+
|
|
223
|
+
```markdown
|
|
224
|
+
| Criteria | Source | Result | Evidence |
|
|
225
|
+
|---|---|---|---|
|
|
226
|
+
| Save button disabled until form is valid | PRD.md > Functional Requirements > Invoice Form | PASS | Unit test + screenshot |
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
Never verify against memory or assumptions.
|
|
230
|
+
|
|
231
|
+
Run `/prd-verification` with `PRD.md`, `DESIGN.md`, `TASKS.md`, `DEPENDENCIES.md`, `MOBILE_MEMORY.md`, changed files, test output, screenshots, and Mobile MCP reports when available. Treat UNKNOWN as not done unless the user explicitly risk-accepts the missing evidence.
|
|
232
|
+
|
|
233
|
+
---
|
|
234
|
+
|
|
235
|
+
## Stage 5 — UI Match Review
|
|
236
|
+
|
|
237
|
+
Compare implementation against the approved design artifact:
|
|
238
|
+
|
|
239
|
+
- Layout
|
|
240
|
+
- Spacing
|
|
241
|
+
- Typography
|
|
242
|
+
- Colors
|
|
243
|
+
- Components
|
|
244
|
+
- Responsiveness
|
|
245
|
+
- Empty/loading/error states
|
|
246
|
+
- Accessibility
|
|
247
|
+
|
|
248
|
+
Default pass threshold: 90%.
|
|
249
|
+
|
|
250
|
+
---
|
|
251
|
+
|
|
252
|
+
## Stage 6 — Mobile MCP QA
|
|
253
|
+
|
|
254
|
+
Run `/mobile-mcp-qa` when a device, emulator, or simulator is available.
|
|
255
|
+
|
|
256
|
+
Capture:
|
|
257
|
+
|
|
258
|
+
- Device name
|
|
259
|
+
- App id
|
|
260
|
+
- Screen size
|
|
261
|
+
- Screenshots
|
|
262
|
+
- Element list
|
|
263
|
+
- User flow results
|
|
264
|
+
- Edge cases
|
|
265
|
+
- Accessibility issues
|
|
266
|
+
- Restart/rotation results
|
|
267
|
+
|
|
268
|
+
If Mobile MCP is unavailable, mark this stage `SKIPPED` and provide manual QA steps.
|
|
269
|
+
|
|
270
|
+
---
|
|
271
|
+
|
|
272
|
+
## Stage 7 — Full QA and Launch Prep
|
|
273
|
+
|
|
274
|
+
After task loop completion:
|
|
275
|
+
|
|
276
|
+
- Run `/accessibility-audit`
|
|
277
|
+
- Run PERF or `/perf-audit`
|
|
278
|
+
- Run CRASHER if crash logs appear
|
|
279
|
+
- Run LAUNCHPAD or `/store-listing`
|
|
280
|
+
- Run SCRIBE for release notes
|
|
281
|
+
- Run PIPELINE if build/release automation is missing
|
|
282
|
+
- Run `/release-prep`
|
|
283
|
+
|
|
284
|
+
---
|
|
285
|
+
|
|
286
|
+
## Pass Criteria
|
|
287
|
+
|
|
288
|
+
A task can be marked done only when:
|
|
289
|
+
|
|
290
|
+
- Acceptance criteria pass
|
|
291
|
+
- Tests pass or accepted skip is documented
|
|
292
|
+
- PRD verification passes
|
|
293
|
+
- UI match is at or above threshold
|
|
294
|
+
- Mobile MCP QA passes or accepted skip is documented
|
|
295
|
+
- No CRITICAL platform-review findings remain
|
|
296
|
+
- `MOBILE_MEMORY.md` is updated
|
|
297
|
+
- NEXT ACTION is either the next task or a concrete fix
|
|
298
|
+
|
|
299
|
+
---
|
|
300
|
+
|
|
301
|
+
## Handoff Prompts
|
|
302
|
+
|
|
303
|
+
Start from scratch:
|
|
304
|
+
|
|
305
|
+
```text
|
|
306
|
+
Use MOBILE-HARNESS. Start from a new app idea and orchestrate APPFORGE, Mobile Memory, implementation, QA, and launch prep.
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
Resume multi-day feature:
|
|
310
|
+
|
|
311
|
+
```text
|
|
312
|
+
Use MOBILE-HARNESS. Read MOBILE_MEMORY.md, PRD.md, DESIGN.md, TASKS.md, and DEPENDENCIES.md. Continue from NEXT ACTION.
|
|
313
|
+
```
|
|
314
|
+
|
|
315
|
+
QA-only:
|
|
316
|
+
|
|
317
|
+
```text
|
|
318
|
+
Use MOBILE-HARNESS in QA_ONLY mode. Run /mobile-mcp-qa against this app flow and produce MOBILE_HARNESS_REPORT.md.
|
|
319
|
+
```
|
|
@@ -0,0 +1,228 @@
|
|
|
1
|
+
# Workflow — Mobile MCP QA
|
|
2
|
+
|
|
3
|
+
**Type:** Device automation QA
|
|
4
|
+
**Agents Used:** APPFORGE, AXIOM / SWIFT / DART / BRIDGE, CRASHER, PERF, Mobile Memory
|
|
5
|
+
**Skills Used:** /mobile-mcp-qa, /accessibility-audit, /perf-audit, /mobile-memory-save
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## When to Use
|
|
10
|
+
|
|
11
|
+
Use this workflow when a mobile feature is implemented and needs real-device, simulator, or emulator verification before merge or launch.
|
|
12
|
+
|
|
13
|
+
Mobile MCP is useful for:
|
|
14
|
+
|
|
15
|
+
- Native app automation on iOS and Android
|
|
16
|
+
- Scripted user journeys
|
|
17
|
+
- Form entry and multi-step flows
|
|
18
|
+
- Screenshots and visual evidence
|
|
19
|
+
- Accessibility element inspection
|
|
20
|
+
- App install, launch, terminate, and orientation checks
|
|
21
|
+
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
## Setup
|
|
25
|
+
|
|
26
|
+
Add Mobile MCP to the AI tool:
|
|
27
|
+
|
|
28
|
+
```json
|
|
29
|
+
{
|
|
30
|
+
"mcpServers": {
|
|
31
|
+
"mobile-mcp": {
|
|
32
|
+
"command": "npx",
|
|
33
|
+
"args": ["-y", "@mobilenext/mobile-mcp@latest"]
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
Claude Code:
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
claude mcp add mobile-mcp -- npx -y @mobilenext/mobile-mcp@latest
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
Codex:
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
codex mcp add mobile-mcp npx "@mobilenext/mobile-mcp@latest"
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
Then confirm at least one device, emulator, or simulator is available.
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
## Flow
|
|
56
|
+
|
|
57
|
+
```text
|
|
58
|
+
Build app
|
|
59
|
+
↓
|
|
60
|
+
Install or launch with Mobile MCP
|
|
61
|
+
↓
|
|
62
|
+
Baseline screenshot + element list
|
|
63
|
+
↓
|
|
64
|
+
Run happy path
|
|
65
|
+
↓
|
|
66
|
+
Run edge cases
|
|
67
|
+
↓
|
|
68
|
+
Capture screenshots after state changes
|
|
69
|
+
↓
|
|
70
|
+
Run accessibility and performance checks
|
|
71
|
+
↓
|
|
72
|
+
Write QA report
|
|
73
|
+
↓
|
|
74
|
+
Save context with /mobile-memory-save
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
---
|
|
78
|
+
|
|
79
|
+
## Step 1 — Device Selection
|
|
80
|
+
|
|
81
|
+
Use Mobile MCP to list available devices and select the target:
|
|
82
|
+
|
|
83
|
+
- Prefer the requested device if specified.
|
|
84
|
+
- Otherwise choose the newest available emulator/simulator.
|
|
85
|
+
- Record screen size and orientation.
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
## Step 2 — App Install and Launch
|
|
90
|
+
|
|
91
|
+
If a build path is available, install it:
|
|
92
|
+
|
|
93
|
+
- Android: `.apk`
|
|
94
|
+
- iOS: `.app`, `.ipa`, or simulator build
|
|
95
|
+
|
|
96
|
+
Launch the app by package name or bundle ID. Take a screenshot immediately.
|
|
97
|
+
|
|
98
|
+
---
|
|
99
|
+
|
|
100
|
+
## Step 3 — Happy Path Test
|
|
101
|
+
|
|
102
|
+
For every step:
|
|
103
|
+
|
|
104
|
+
1. Inspect visible UI elements.
|
|
105
|
+
2. Prefer structured accessibility targets.
|
|
106
|
+
3. Tap, type, or swipe.
|
|
107
|
+
4. Capture a screenshot after major transitions.
|
|
108
|
+
5. Compare the screen to the expected PRD/design outcome.
|
|
109
|
+
|
|
110
|
+
---
|
|
111
|
+
|
|
112
|
+
## Step 4 — Edge Cases
|
|
113
|
+
|
|
114
|
+
Run the relevant cases:
|
|
115
|
+
|
|
116
|
+
- Invalid input
|
|
117
|
+
- Empty state
|
|
118
|
+
- Loading state
|
|
119
|
+
- API error
|
|
120
|
+
- Offline state
|
|
121
|
+
- Back navigation
|
|
122
|
+
- App restart
|
|
123
|
+
- Rotation
|
|
124
|
+
- Permission denial
|
|
125
|
+
- Long text
|
|
126
|
+
- Keyboard overlap
|
|
127
|
+
|
|
128
|
+
---
|
|
129
|
+
|
|
130
|
+
## Step 5 — Accessibility Pass
|
|
131
|
+
|
|
132
|
+
Check:
|
|
133
|
+
|
|
134
|
+
- Missing labels
|
|
135
|
+
- Small touch targets
|
|
136
|
+
- Ambiguous buttons
|
|
137
|
+
- Focus order
|
|
138
|
+
- Text contrast from screenshot evidence
|
|
139
|
+
- Error messages announced or visible
|
|
140
|
+
|
|
141
|
+
Pair with `/accessibility-audit` for a deeper report.
|
|
142
|
+
|
|
143
|
+
---
|
|
144
|
+
|
|
145
|
+
## Step 6 — Performance Pass
|
|
146
|
+
|
|
147
|
+
Check:
|
|
148
|
+
|
|
149
|
+
- Cold launch behavior
|
|
150
|
+
- Slow screen transitions
|
|
151
|
+
- Long loading states
|
|
152
|
+
- Repeated jank during scroll
|
|
153
|
+
- Memory or crash symptoms during restart/rotation
|
|
154
|
+
|
|
155
|
+
Pair with PERF or `/perf-audit` when performance risk appears.
|
|
156
|
+
|
|
157
|
+
---
|
|
158
|
+
|
|
159
|
+
## Output
|
|
160
|
+
|
|
161
|
+
Create:
|
|
162
|
+
|
|
163
|
+
```text
|
|
164
|
+
MOBILE_MCP_QA_REPORT.md
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
Format:
|
|
168
|
+
|
|
169
|
+
```markdown
|
|
170
|
+
# Mobile MCP QA Report
|
|
171
|
+
|
|
172
|
+
## Summary
|
|
173
|
+
Result: PASS | FAIL | BLOCKED
|
|
174
|
+
Platform:
|
|
175
|
+
Device:
|
|
176
|
+
App ID:
|
|
177
|
+
Build:
|
|
178
|
+
|
|
179
|
+
## Flow Tested
|
|
180
|
+
<flow name and purpose>
|
|
181
|
+
|
|
182
|
+
## Evidence
|
|
183
|
+
| Step | Screenshot | Result |
|
|
184
|
+
|---|---|---|
|
|
185
|
+
|
|
186
|
+
## Bugs
|
|
187
|
+
| Severity | Screen | Issue | Repro | Fix |
|
|
188
|
+
|---|---|---|---|---|
|
|
189
|
+
|
|
190
|
+
## Accessibility
|
|
191
|
+
<findings>
|
|
192
|
+
|
|
193
|
+
## Performance
|
|
194
|
+
<findings>
|
|
195
|
+
|
|
196
|
+
## Next Action
|
|
197
|
+
<single executable next step>
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
---
|
|
201
|
+
|
|
202
|
+
## APPFORGE Integration
|
|
203
|
+
|
|
204
|
+
In APPFORGE, use this workflow during:
|
|
205
|
+
|
|
206
|
+
- Stage 6 UI Match Review
|
|
207
|
+
- Stage 7 Full QA
|
|
208
|
+
- Stage 8 screenshot plan validation
|
|
209
|
+
|
|
210
|
+
Do not use device automation to expand MVP scope. Use it to prove the approved PRD and design are working on a real screen.
|
|
211
|
+
|
|
212
|
+
---
|
|
213
|
+
|
|
214
|
+
## Mobile Memory Integration
|
|
215
|
+
|
|
216
|
+
After each QA pass, run:
|
|
217
|
+
|
|
218
|
+
```text
|
|
219
|
+
/mobile-memory-save
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
Capture:
|
|
223
|
+
|
|
224
|
+
- Device tested
|
|
225
|
+
- App build
|
|
226
|
+
- Screenshots captured
|
|
227
|
+
- Bugs found
|
|
228
|
+
- Next action
|