@event4u/agent-config 1.26.0 → 1.28.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/.agent-src/commands/e2e-heal.md +2 -0
- package/.agent-src/commands/e2e-plan.md +2 -0
- package/.agent-src/commands/research.md +142 -0
- package/.agent-src/contexts/contracts/frugality-charter.md +4 -3
- package/.agent-src/contexts/contracts/research-schema.md +117 -0
- package/.agent-src/rules/domain-adoption-policy.md +158 -0
- package/.agent-src/rules/no-roadmap-references.md +1 -1
- package/.agent-src/rules/no-unsolicited-rebase.md +107 -0
- package/.agent-src/rules/scope-control.md +6 -8
- package/.agent-src/skills/deep-reading-analyst/SKILL.md +192 -0
- package/.agent-src/skills/mobile-e2e-strategy/SKILL.md +147 -0
- package/.agent-src/skills/playwright-testing/SKILL.md +1 -0
- package/.agent-src/skills/react-native-setup/SKILL.md +221 -0
- package/.agent-src/skills/roadmap-writing/SKILL.md +3 -3
- package/.agent-src/templates/agent-settings.md +1 -1
- package/.claude-plugin/marketplace.json +5 -1
- package/CHANGELOG.md +48 -0
- package/README.md +3 -3
- package/docs/architecture.md +4 -4
- package/docs/catalog.md +16 -6
- package/docs/contracts/command-clusters.md +1 -0
- package/docs/contracts/file-ownership-matrix.json +1261 -96
- package/docs/decisions/ADR-004-rule-governance-pruning.md +3 -3
- package/docs/getting-started.md +2 -2
- package/docs/guidelines/agent-infra/inversion-thinking.md +388 -0
- package/docs/guidelines/agent-infra/ios-simulator-guide.md +383 -0
- package/docs/guidelines/agent-infra/mcp-request-signing.md +11 -14
- package/docs/guidelines/agent-infra/mental-models.md +314 -0
- package/docs/guidelines/agent-infra/scqa-framework.md +526 -0
- package/package.json +1 -1
- package/scripts/schemas/skill.schema.json +15 -0
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: deep-reading-analyst
|
|
3
|
+
description: "Deep analysis of articles/long-form via thinking frameworks (SCQA, mental models, inversion) — 'analyze article', 'deep dive', 'extract insights', URL/text wanting depth not summary."
|
|
4
|
+
status: active
|
|
5
|
+
source: package
|
|
6
|
+
external_source: "https://github.com/ginobefun/deep-reading-analyst-skill/tree/26cd7dc9920e025d39751e396e707399022e49ef/src/deep-reading-analyst"
|
|
7
|
+
refresh_trigger: "Upstream `ginobefun/deep-reading-analyst-skill` major rewrite (new framework added, dispatch table reshaped, or SHA pin invalidated by reference rename)."
|
|
8
|
+
sunset_criterion: "Replace with a 50-line pointer skill if (a) all referenced modules are adopted as project-local guidelines (`docs/guidelines/agent-infra/{framework}.md`) AND (b) the dispatch logic moves into a project-native router."
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
> **Pinned upstream:** `ginobefun/deep-reading-analyst-skill` @ SHA `26cd7dc9` (MIT). Re-verify per upstream major rewrite. Reference modules below link to the same SHA.
|
|
12
|
+
|
|
13
|
+
# deep-reading-analyst
|
|
14
|
+
|
|
15
|
+
Wing-1 deep-thinking skill for articles, papers, opinion pieces, case studies, and long-form decision documents. Routes the user's content through 8 thinking frameworks at four depth levels (Quick / Standard / Deep / Research) and returns insight tied to the user's **goal**, not framework completion.
|
|
16
|
+
|
|
17
|
+
## When to use
|
|
18
|
+
|
|
19
|
+
- User pastes an article URL, paper, or long text and wants depth ("analyze", "deep dive", "extract insights", "help me understand").
|
|
20
|
+
- User asks for a specific framework ("apply SCQA to this", "use inversion thinking", "give me the mental models lens").
|
|
21
|
+
- User is making a decision and wants pre-mortem / multi-lens analysis on a written proposal.
|
|
22
|
+
- User is studying or note-taking on dense material (research papers, strategy memos, books).
|
|
23
|
+
|
|
24
|
+
Do NOT use when:
|
|
25
|
+
- User wants a 3-bullet TL;DR — use `agent-docs-writing` or write a direct summary.
|
|
26
|
+
- Content is code or a diff — route to `judge-bug-hunter`, `judge-code-quality`, or `adversarial-review`.
|
|
27
|
+
- User wants risk analysis on a code change — route to `adversarial-review` (diff-bound) or `threat-modeling`.
|
|
28
|
+
- User wants debugging or incident analysis — route to `bug-analyzer` or `systematic-debugging`.
|
|
29
|
+
|
|
30
|
+
## Framework Arsenal
|
|
31
|
+
|
|
32
|
+
| Depth | Time | Frameworks | Reference module |
|
|
33
|
+
|---|---|---|---|
|
|
34
|
+
| **L1 — Quick** | ~15 min | SCQA, 5W2H | [`scqa-framework`](../../../docs/guidelines/agent-infra/scqa-framework.md), `5w2h_analysis.md` (upstream) |
|
|
35
|
+
| **L2 — Standard** | ~30 min | L1 + Critical Thinking, Inversion | + [`inversion-thinking`](../../../docs/guidelines/agent-infra/inversion-thinking.md), `critical_thinking.md` (upstream) |
|
|
36
|
+
| **L3 — Deep** | ~60 min | L2 + Mental Models, First Principles, Systems Thinking, Six Hats | + [`mental-models`](../../../docs/guidelines/agent-infra/mental-models.md), `first_principles.md`, `systems_thinking.md`, `six_hats.md` (upstream) |
|
|
37
|
+
| **L4 — Research** | 120 min+ | L3 + Cross-source comparison via web search | + `comparison_matrix.md` (upstream) |
|
|
38
|
+
|
|
39
|
+
Modules tagged `(upstream)` link to SHA-pinned files at the URL in `external_source` above; project-local modules are adopted as guidelines.
|
|
40
|
+
|
|
41
|
+
## Procedure: deep-reading-analyst
|
|
42
|
+
|
|
43
|
+
### Step 0: Inspect
|
|
44
|
+
|
|
45
|
+
1. **Detect content type** — article, paper, opinion piece, case study, how-to, strategy memo. Drives auto-suggested frameworks (Step 1).
|
|
46
|
+
2. **Detect goal signal** — problem-solving, learning, writing reference, decision-making, curiosity. Drives Step 4 output shape.
|
|
47
|
+
3. **Skip if mismatched** — see "Do NOT use when" above; route to the named skill.
|
|
48
|
+
|
|
49
|
+
### Step 1: Initialize Analysis
|
|
50
|
+
|
|
51
|
+
Ask the user three things in **one** message (not three turns), per `ask-when-uncertain` Iron Law (one question per turn — these three are bundled into a single numbered-options block):
|
|
52
|
+
|
|
53
|
+
1. **Goal** — problem-solving · learning · writing · decision-making · curiosity.
|
|
54
|
+
2. **Depth** — L1 Quick (15 min) · L2 Standard (30 min) · L3 Deep (60 min) · L4 Research (120 min+).
|
|
55
|
+
3. **Framework override** — defaults are auto-suggested by content type (table below); user may name specific frameworks.
|
|
56
|
+
|
|
57
|
+
If the user does not answer, default to L2 Standard with auto-selected frameworks.
|
|
58
|
+
|
|
59
|
+
**Auto-suggest matrix:**
|
|
60
|
+
|
|
61
|
+
| Content type | Default frameworks |
|
|
62
|
+
|---|---|
|
|
63
|
+
| Strategy / business article | SCQA + Mental Models + Inversion |
|
|
64
|
+
| Research paper | 5W2H + Critical Thinking + Systems Thinking |
|
|
65
|
+
| How-to guide | SCQA + 5W2H + First Principles |
|
|
66
|
+
| Opinion piece | Critical Thinking + Inversion + Six Hats |
|
|
67
|
+
| Case study | SCQA + Mental Models + Systems Thinking |
|
|
68
|
+
|
|
69
|
+
### Step 2: Structural Understanding (always run)
|
|
70
|
+
|
|
71
|
+
Regardless of depth, open with two short blocks:
|
|
72
|
+
|
|
73
|
+
**2A — Basic structure.**
|
|
74
|
+
|
|
75
|
+
```markdown
|
|
76
|
+
📄 Type: [article/paper/report]
|
|
77
|
+
🎯 Core thesis: [one sentence]
|
|
78
|
+
Structure:
|
|
79
|
+
├─ Argument 1 → [key support]
|
|
80
|
+
├─ Argument 2 → [key support]
|
|
81
|
+
└─ Argument 3 → [key support]
|
|
82
|
+
Key concepts: [3–5 terms with one-line definitions]
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
**2B — SCQA breakdown.** Apply the four-element decomposition from [`scqa-framework`](../../../docs/guidelines/agent-infra/scqa-framework.md):
|
|
86
|
+
|
|
87
|
+
```markdown
|
|
88
|
+
**S (Situation)**: [context the article establishes]
|
|
89
|
+
**C (Complication)**: [problem identified]
|
|
90
|
+
**Q (Question)**: [core question]
|
|
91
|
+
**A (Answer)**: [main solution / conclusion]
|
|
92
|
+
Structure quality — clarity / logic / completeness: [★★★☆☆]
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
**2C — 5W2H gap check** (L1+). Quick scan: which of *What, Why, Who, When, Where, How, How much* are well-covered, partial, or missing? Flag the 1–2 most critical gaps.
|
|
96
|
+
|
|
97
|
+
### Step 3: Apply Frameworks (depth-gated)
|
|
98
|
+
|
|
99
|
+
Load only the frameworks the user's depth bought. Each framework follows the same pattern: **load reference module → apply lens → produce one fixed-shape block**.
|
|
100
|
+
|
|
101
|
+
**L2 additions:**
|
|
102
|
+
|
|
103
|
+
- **Critical Thinking** (`critical_thinking.md`, upstream) — argument strength score (X/10), strengths, weaknesses, logical fallacies detected.
|
|
104
|
+
- **Inversion** ([`inversion-thinking`](../../../docs/guidelines/agent-infra/inversion-thinking.md)) — pre-mortem on the article's recommendation: "how would this fail?", missing risk factors, mitigations.
|
|
105
|
+
|
|
106
|
+
**L3 additions:**
|
|
107
|
+
|
|
108
|
+
- **Mental Models** ([`mental-models`](../../../docs/guidelines/agent-infra/mental-models.md)) — pick 3–5 models from different disciplines (physics, biology, psychology, economics, math), apply each lens, surface cross-model patterns.
|
|
109
|
+
- **First Principles** (`first_principles.md`, upstream) — strip to fundamental truths, validate each core assumption, rebuild from base.
|
|
110
|
+
- **Systems Thinking** (`systems_thinking.md`, upstream) — map relationships, feedback loops, leverage points.
|
|
111
|
+
- **Six Hats** (`six_hats.md`, upstream) — White (facts), Red (feelings), Black (cautions), Yellow (benefits), Green (creativity), Blue (process).
|
|
112
|
+
|
|
113
|
+
**L4 addition:**
|
|
114
|
+
|
|
115
|
+
- **Cross-source comparison** (`comparison_matrix.md`, upstream) — web-search 2–3 related sources, compare SCQA across sources, identify consensus vs divergence, synthesize integrated perspective.
|
|
116
|
+
|
|
117
|
+
### Step 4: Synthesize by Goal
|
|
118
|
+
|
|
119
|
+
Output shape is **driven by Step 0 goal**, not by frameworks applied. Pick exactly one of the four blocks below.
|
|
120
|
+
|
|
121
|
+
**For problem-solving:** Applicable solutions (2–3 from content) → Application plan with timed action steps → Success metrics → Risk mitigations from Inversion.
|
|
122
|
+
|
|
123
|
+
**For learning:** Core concepts (definition + example) → Mental models gained → Connections to prior knowledge → First Principles fundamental question → 3 verification questions (understanding / application / evaluation).
|
|
124
|
+
|
|
125
|
+
**For writing reference:** Key arguments + evidence (with paragraph citations) → Quotable insights with context → Critical analysis (strengths for citing, limitations for balanced discussion) → Alternative perspectives from Mental Models → Gaps and counterfactuals.
|
|
126
|
+
|
|
127
|
+
**For decision-making:** Options presented → Multi-model evaluation (economic + risk + systems lens) → Six Hats decision analysis → Scenario analysis (best / worst / most likely) → Synthesized recommendation.
|
|
128
|
+
|
|
129
|
+
### Step 5: Knowledge Activation (always end here)
|
|
130
|
+
|
|
131
|
+
Regardless of goal, close with three fixed blocks:
|
|
132
|
+
|
|
133
|
+
```markdown
|
|
134
|
+
## 🎯 Top 3 takeaways
|
|
135
|
+
1. **[Insight]** — Why it matters: [...] · One action: [specific, time-bound]
|
|
136
|
+
2. **[Insight]** — Why it matters: [...] · One action: [specific, time-bound]
|
|
137
|
+
3. **[Insight]** — Why it matters: [...] · One action: [specific, time-bound]
|
|
138
|
+
|
|
139
|
+
## 💡 Quick win — one tiny, specific action for the next 24 hours.
|
|
140
|
+
|
|
141
|
+
## 🧭 Frameworks used
|
|
142
|
+
✅ SCQA ✅ 5W2H ✅ Critical ✅ Inversion
|
|
143
|
+
□ Mental Models □ First Principles □ Systems □ Six Hats
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
### Step 6: Validate
|
|
147
|
+
|
|
148
|
+
1. Every claim is faithful to the source — no misrepresentation, facts distinguished from opinions.
|
|
149
|
+
2. Frameworks applied **purposefully**, not force-fit — drop a framework that adds no insight rather than padding the output.
|
|
150
|
+
3. Output ends with concrete, actionable steps — no analysis-without-application.
|
|
151
|
+
4. Specific citations (paragraph numbers, quotes) where the source supports them.
|
|
152
|
+
|
|
153
|
+
## Output format
|
|
154
|
+
|
|
155
|
+
1. **Structural block (Step 2)** — type / thesis / structure tree / key concepts / SCQA / 5W2H gaps.
|
|
156
|
+
2. **Framework blocks (Step 3)** — one fixed-shape block per framework the depth bought.
|
|
157
|
+
3. **Goal-shaped synthesis (Step 4)** — problem-solving / learning / writing / decision-making.
|
|
158
|
+
4. **Knowledge activation (Step 5)** — top 3 takeaways · quick win · frameworks-used checkboxes.
|
|
159
|
+
|
|
160
|
+
## Gotcha
|
|
161
|
+
|
|
162
|
+
- The model tends to **apply every framework** even at L1 — respect the depth budget; skip frameworks the user did not buy.
|
|
163
|
+
- The model tends to **summarize** instead of analyze when the user pastes long text — go deep on 1–3 points, not shallow on all of them.
|
|
164
|
+
- Inversion drifts into adversarial code review — this skill targets **decisions and arguments**, not diffs. Route diff stress-tests to `adversarial-review` / `judge-bug-hunter`.
|
|
165
|
+
- Mental Models drifts into name-dropping — pick 3–5, apply each lens *concretely* to the article's claims, drop models that yield no new insight.
|
|
166
|
+
- L4 cross-source comparison drifts into a literature review — keep it to 2–3 sources, focus on consensus / divergence / unique value.
|
|
167
|
+
- Output without action steps is a failure mode — every Step-4 synthesis must end with timed, concrete actions tied to the user's goal.
|
|
168
|
+
|
|
169
|
+
## Do NOT
|
|
170
|
+
|
|
171
|
+
- Do NOT force-apply all frameworks at the user's chosen depth — drop ones that add no insight.
|
|
172
|
+
- Do NOT copy text verbatim from the source — always reword for the user's understanding.
|
|
173
|
+
- Do NOT use academic jargon without one-line definitions in the "key concepts" block.
|
|
174
|
+
- Do NOT skip Step 5 — the takeaways + quick win are the load-bearing output, not optional decoration.
|
|
175
|
+
- Do NOT route code reviews, diff stress-tests, or incident debugging through this skill.
|
|
176
|
+
|
|
177
|
+
## Reference modules
|
|
178
|
+
|
|
179
|
+
Project-local guidelines (full text adopted under the Reference-Guideline Sunset Policy):
|
|
180
|
+
|
|
181
|
+
- [`scqa-framework`](../../../docs/guidelines/agent-infra/scqa-framework.md) — full 499-line authoritative-link adopt.
|
|
182
|
+
- [`mental-models`](../../../docs/guidelines/agent-infra/mental-models.md) — pure adopt of Munger's multi-discipline toolkit.
|
|
183
|
+
- [`inversion-thinking`](../../../docs/guidelines/agent-infra/inversion-thinking.md) — pre-mortem on decisions, distinct from `adversarial-review`.
|
|
184
|
+
|
|
185
|
+
Upstream modules (loaded on demand from the SHA-pinned URL in `external_source`):
|
|
186
|
+
|
|
187
|
+
- `5w2h_analysis.md` — completeness check (7 questions).
|
|
188
|
+
- `critical_thinking.md` — argument quality / fallacy detection.
|
|
189
|
+
- `first_principles.md` — fundamental-truth extraction.
|
|
190
|
+
- `systems_thinking.md` — feedback loops + leverage points.
|
|
191
|
+
- `six_hats.md` — White / Red / Black / Yellow / Green / Blue protocol.
|
|
192
|
+
- `comparison_matrix.md` — cross-source synthesis (L4 only).
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: mobile-e2e-strategy
|
|
3
|
+
description: "Use when picking a mobile E2E framework — Detox / Appium / Maestro / XCUITest / Espresso — or planning iOS Simulator / Android Emulator coverage in CI for RN, Expo, or native apps."
|
|
4
|
+
source: package
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# mobile-e2e-strategy
|
|
8
|
+
|
|
9
|
+
## When to use
|
|
10
|
+
|
|
11
|
+
- Choosing an E2E framework for a mobile app (React Native, Expo, Flutter, native iOS, native Android).
|
|
12
|
+
- Deciding whether to extend existing Playwright/web E2E to mobile or stand up a separate mobile suite.
|
|
13
|
+
- Planning iOS Simulator / Android Emulator coverage in CI (cost, runner type, parallelism).
|
|
14
|
+
- Triaging flaky mobile tests that span the simulator/emulator boundary.
|
|
15
|
+
- Bridging mobile E2E results into the same review surface as web E2E
|
|
16
|
+
(`playwright-testing`, `e2e-plan`, `e2e-heal`).
|
|
17
|
+
|
|
18
|
+
**This skill selects and plans — it does not generate test code.** For the chosen framework, apply its own conventions; for the host environment, see the cross-links below.
|
|
19
|
+
|
|
20
|
+
## Cross-links
|
|
21
|
+
|
|
22
|
+
- `react-native-setup` — RN/Expo environment, Xcode/Android Studio, EAS Build.
|
|
23
|
+
- `docs/guidelines/agent-infra/ios-simulator-guide.md` — `simctl` / `idb` / accessibility-driven testing on iOS.
|
|
24
|
+
- `playwright-testing` — web E2E baseline (do **not** reuse for native mobile).
|
|
25
|
+
- `e2e-plan` — explore an app and produce an E2E plan in Markdown.
|
|
26
|
+
- `e2e-heal` — debug and fix failing E2E tests.
|
|
27
|
+
|
|
28
|
+
## Procedure
|
|
29
|
+
|
|
30
|
+
1. **Classify the app.** Is it native iOS, native Android, React Native, Expo, Flutter, or a web view inside a shell?
|
|
31
|
+
2. **Classify the goal.** Smoke (boots + login + key flow), regression (every release), visual diff, accessibility audit, or performance baseline.
|
|
32
|
+
3. **Pick the framework** using the decision matrix below.
|
|
33
|
+
4. **Confirm host availability.** macOS for iOS Simulator (mandatory); any OS for Android Emulator.
|
|
34
|
+
5. **Plan CI coverage.** Decide runner type, parallelism, and whether iOS coverage runs every PR or nightly only.
|
|
35
|
+
6. **Define the artefact contract.** Screenshots, accessibility trees, video, log archives — name the storage path and retention.
|
|
36
|
+
7. **Validate.** Run a single smoke test locally before wiring CI; verify both iOS and Android paths if both are in scope.
|
|
37
|
+
|
|
38
|
+
## Decision matrix — framework selection
|
|
39
|
+
|
|
40
|
+
| Framework | Best for | Avoid when |
|
|
41
|
+
|---|---|---|
|
|
42
|
+
| **Detox** | React Native apps, gray-box testing, deterministic sync with the JS bridge | Native iOS/Android-only; Expo managed without a dev client |
|
|
43
|
+
| **Maestro** | Cross-platform smoke + regression, declarative YAML flows, fast onboarding | Need full programmable assertions or deep native introspection |
|
|
44
|
+
| **Appium** | Truly cross-platform (RN + Flutter + native), one team owning many apps, WebDriver-compatible tooling | Solo project — setup overhead is high; flaky on JS-heavy RN unless tuned |
|
|
45
|
+
| **XCUITest** (iOS) | Native iOS apps, deepest Apple toolchain integration, Xcode Cloud | Cross-platform coverage in one suite |
|
|
46
|
+
| **Espresso** (Android) | Native Android apps, in-process execution, fast reliable runs | Cross-platform coverage in one suite |
|
|
47
|
+
| **Playwright + WebView** | Web app embedded in a thin native shell, purely web flows | Native UI flows of any depth (use a mobile framework instead) |
|
|
48
|
+
|
|
49
|
+
**Default starting point:**
|
|
50
|
+
|
|
51
|
+
- React Native / Expo → **Detox** (single-platform RN team) or **Maestro** (cross-platform smoke).
|
|
52
|
+
- Flutter → **Maestro** (smoke) + **Flutter integration_test** (deep) — Flutter-specific, out of scope here.
|
|
53
|
+
- Native iOS only → **XCUITest**.
|
|
54
|
+
- Native Android only → **Espresso**.
|
|
55
|
+
- Mixed native portfolio → **Appium**.
|
|
56
|
+
|
|
57
|
+
## Host & environment prerequisites
|
|
58
|
+
|
|
59
|
+
**iOS (macOS-only)**
|
|
60
|
+
- Xcode 16.1+ and matching Command Line Tools — see `react-native-setup`.
|
|
61
|
+
- iOS Simulator boot/install/launch via `simctl` — see `ios-simulator-guide.md`.
|
|
62
|
+
- Optional: `idb` for accessibility-tree access and coordinate-level UI control.
|
|
63
|
+
- Apple developer account only required for physical-device or signed-build runs.
|
|
64
|
+
|
|
65
|
+
**Android (any host)**
|
|
66
|
+
- Android Studio Ladybug+ with SDK 35, Platform-Tools, Emulator.
|
|
67
|
+
- AVD with API 35 image; verify `emulator -list-avds` and `adb devices`.
|
|
68
|
+
- HAXM/Hypervisor (Intel) or hardware acceleration on Apple Silicon.
|
|
69
|
+
|
|
70
|
+
**Authoritative upstream docs**
|
|
71
|
+
- iOS Simulator: `https://developer.apple.com/documentation/xcode/running-your-app-in-simulator-or-on-a-device`
|
|
72
|
+
- Android Emulator: `https://developer.android.com/studio/run/emulator`
|
|
73
|
+
- Detox: `https://wix.github.io/Detox/`
|
|
74
|
+
- Maestro: `https://maestro.mobile.dev/`
|
|
75
|
+
- Appium: `https://appium.io/docs/en/latest/`
|
|
76
|
+
- XCUITest: `https://developer.apple.com/documentation/xctest/user_interface_tests`
|
|
77
|
+
- Espresso: `https://developer.android.com/training/testing/espresso`
|
|
78
|
+
|
|
79
|
+
## CI floor — cost and capacity
|
|
80
|
+
|
|
81
|
+
| Concern | iOS | Android |
|
|
82
|
+
|---|---|---|
|
|
83
|
+
| Runner OS | macOS only (GitHub `macos-latest`, self-hosted Mac) | Any (Linux fastest) |
|
|
84
|
+
| Boot time | 30–90 s per simulator cold-boot | 60–180 s per emulator cold-boot |
|
|
85
|
+
| Parallelism | 1 simulator per macOS runner is the safe default | KVM-accelerated on Linux scales well |
|
|
86
|
+
| Cost (GitHub Actions) | macOS minutes are ~10× Linux minutes | Standard Linux pricing |
|
|
87
|
+
| Recommended cadence | Nightly + on-release for full suite; smoke on every PR | Every PR feasible |
|
|
88
|
+
|
|
89
|
+
**Pragmatic split:**
|
|
90
|
+
|
|
91
|
+
- Every PR: Android emulator full suite + iOS smoke only.
|
|
92
|
+
- Nightly / pre-release: iOS full suite + cross-device matrix.
|
|
93
|
+
- Adjust if the project pays for self-hosted Mac runners or the
|
|
94
|
+
release cadence demands per-PR iOS parity.
|
|
95
|
+
|
|
96
|
+
## Artefact contract (recommended)
|
|
97
|
+
|
|
98
|
+
For every E2E run the suite SHOULD persist:
|
|
99
|
+
|
|
100
|
+
1. **Screenshots** — per-step PNG, named `{suite}/{test}/{step}.png`.
|
|
101
|
+
2. **Accessibility tree** — JSON dump per failure (iOS via `idb ui describe-all --json --nested`, Android via Espresso accessibility checks).
|
|
102
|
+
3. **Video** — full run on failure; first-class for Detox and Maestro.
|
|
103
|
+
4. **Logs** — structured logcat (Android) or `simctl spawn log` (iOS) filtered to the app under test.
|
|
104
|
+
5. **Result XML / JUnit** — for CI dashboard ingestion.
|
|
105
|
+
|
|
106
|
+
Retain artefacts for at least one release cycle; promote screenshots
|
|
107
|
+
of failures to the PR comment surface so reviewers see the failure
|
|
108
|
+
without leaving the review.
|
|
109
|
+
|
|
110
|
+
## Bridging to the existing E2E surface
|
|
111
|
+
|
|
112
|
+
- **Web + mobile in one repo:** keep Playwright for web, add a separate `mobile/` suite using Detox or Maestro. Do **not** force-fit Playwright onto native UI.
|
|
113
|
+
- **Plan reuse:** the planning patterns in `e2e-plan` (user journeys, test pyramid placement, stable selectors) apply unchanged. The implementation lives in the mobile framework.
|
|
114
|
+
- **Heal reuse:** the diagnostic loop in `e2e-heal` (reproduce → isolate → minimal fix → verify) applies. Replace browser-specific tooling with mobile-framework equivalents (Detox `--loglevel verbose`, Maestro Studio replays, Appium Inspector).
|
|
115
|
+
- **Selectors:** prefer accessibility identifiers (`accessibilityIdentifier` on iOS, `contentDescription` on Android) over coordinate taps — see `ios-simulator-guide.md` Module 1.
|
|
116
|
+
|
|
117
|
+
## Output format
|
|
118
|
+
|
|
119
|
+
1. A framework recommendation keyed off app type + team shape + cross-platform need.
|
|
120
|
+
2. A host & runner plan naming the macOS/Linux split for CI.
|
|
121
|
+
3. A cadence plan (per-PR vs nightly) with cost rationale.
|
|
122
|
+
4. An artefact contract listing screenshot/log/video/accessibility-tree paths.
|
|
123
|
+
|
|
124
|
+
## Auto-trigger keywords
|
|
125
|
+
|
|
126
|
+
- mobile E2E, React Native E2E, Expo E2E, Flutter E2E
|
|
127
|
+
- Detox, Appium, Maestro, XCUITest, Espresso
|
|
128
|
+
- iOS Simulator, Android Emulator, AVD, simctl, idb
|
|
129
|
+
- mobile CI, mobile test runner, macOS runner cost
|
|
130
|
+
|
|
131
|
+
## Gotcha
|
|
132
|
+
|
|
133
|
+
- Mobile E2E is fundamentally slower than web E2E — the test pyramid still applies; do not reach for E2E when a unit or integration test would do.
|
|
134
|
+
- iOS coverage on every PR is expensive on hosted runners; default to smoke on PR + full suite nightly until the cost is measured.
|
|
135
|
+
- React Native + Appium + non-trivial JS bridge timing is the historical flake hotspot — Detox or Maestro avoids the WebDriver layer entirely.
|
|
136
|
+
- Do not chain emulator-only tests from a developer laptop and a CI runner; environment drift (locale, timezone, API level) corrupts deterministic comparisons.
|
|
137
|
+
- Visual regression baselines are tied to a specific simulator/emulator image — pin the image SHA / API level explicitly in CI config.
|
|
138
|
+
- Maestro YAML is concise but not a full language; complex assertions still need Detox / Appium / native frameworks.
|
|
139
|
+
|
|
140
|
+
## Do NOT
|
|
141
|
+
|
|
142
|
+
- Do NOT reuse a Playwright suite for native UI flows — accessibility-tree access is wholly different.
|
|
143
|
+
- Do NOT mix two mobile E2E frameworks in one suite — pick one per platform pair, factor shared helpers behind a thin abstraction.
|
|
144
|
+
- Do NOT run iOS E2E on every PR until you measured the macOS-runner cost on the project's actual cadence.
|
|
145
|
+
- Do NOT rely on coordinate taps (`idb ui tap <x> <y>`) for stable tests — use accessibility identifiers instead. Coordinate taps are debug aids, not test selectors.
|
|
146
|
+
- Do NOT fork upstream simulator scripts (`accessibility_audit.py`, `visual_diff.py`, etc.) into the consumer project — link to the upstream SHA per `ios-simulator-guide.md`.
|
|
147
|
+
- Do NOT skip the artefact contract — without screenshots, logs, and accessibility trees, mobile E2E failures are nearly impossible to diagnose.
|
|
@@ -18,6 +18,7 @@ Use this skill when:
|
|
|
18
18
|
|
|
19
19
|
**Guideline:** `../../../docs/guidelines/e2e/playwright.md` — full conventions, config templates, CI setup.
|
|
20
20
|
**Rule:** `.augment/rules/e2e-testing.md` — constraints enforced during E2E test work.
|
|
21
|
+
**Mobile:** for native iOS/Android or React Native E2E, do NOT reuse Playwright — see the `mobile-e2e-strategy` skill for framework selection.
|
|
21
22
|
|
|
22
23
|
## Procedure: Write Playwright tests
|
|
23
24
|
|
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: react-native-setup
|
|
3
|
+
description: "Use when setting up React Native or Expo dev environments — Xcode, Android Studio, CocoaPods, EAS, Metro, New Architecture — even when the user just says 'my RN build won't start'."
|
|
4
|
+
source: package
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# react-native-setup
|
|
8
|
+
|
|
9
|
+
## When to use
|
|
10
|
+
|
|
11
|
+
- Initial React Native 0.76+ / Expo SDK 52+ environment setup
|
|
12
|
+
- Installing or configuring Xcode, Android Studio, or their command-line tools
|
|
13
|
+
- Setting up iOS simulators or Android emulators for development
|
|
14
|
+
- Troubleshooting "Command not found", `ANDROID_HOME`, or SDK path errors
|
|
15
|
+
- Fixing CocoaPods install failures (Apple Silicon, FFI, Ruby mismatches)
|
|
16
|
+
- Clearing Metro / Watchman cache or diagnosing reload loops
|
|
17
|
+
- Configuring EAS Build, dev clients, or OTA updates
|
|
18
|
+
- Migrating to or troubleshooting the New Architecture (Fabric / Turbo Modules)
|
|
19
|
+
|
|
20
|
+
**Cross-links:** `mobile-e2e-strategy` (Detox / Appium / Maestro selection),
|
|
21
|
+
`docs/guidelines/agent-infra/ios-simulator-guide.md` (iOS simulator decision matrix).
|
|
22
|
+
|
|
23
|
+
## Assess current setup before changing anything
|
|
24
|
+
|
|
25
|
+
Before installing or upgrading anything, inspect what's already there — modifying a working toolchain blindly is the most common source of wasted hours.
|
|
26
|
+
|
|
27
|
+
1. **Read `package.json`** — RN version, Expo SDK, scripts, native dependencies.
|
|
28
|
+
2. **Check `ios/Podfile` and `ios/Podfile.lock`** — CocoaPods version, deployment target, RCT_NEW_ARCH_ENABLED flag.
|
|
29
|
+
3. **Check `android/build.gradle` and `android/gradle.properties`** — Gradle version, compile/target SDK, `newArchEnabled`, NDK version.
|
|
30
|
+
4. **Verify host tools** — `node --version`, `xcodebuild -version`, `sdkmanager --list_installed`, `pod --version`, `watchman --version`.
|
|
31
|
+
5. **Check for an existing `.nvmrc`, `.tool-versions`, or `Brewfile`** — honour the project's pinned versions over global ones.
|
|
32
|
+
6. **Read project README and CONTRIBUTING** — many RN repos document one-time setup quirks (Apple Silicon Rosetta, Hermes flags, EAS profile names).
|
|
33
|
+
|
|
34
|
+
## Procedure
|
|
35
|
+
|
|
36
|
+
1. **Identify the target stack** — RN CLI vs Expo, target SDK, supported OS, monorepo or single-package.
|
|
37
|
+
2. **Verify prerequisites** — Node, package manager, Watchman, platform SDKs (see matrix below).
|
|
38
|
+
3. **Configure platform tooling** — Xcode + CocoaPods (iOS) or Android Studio + SDK 34/35 (Android).
|
|
39
|
+
4. **Install project dependencies** — `npm`/`yarn`/`pnpm`/`bun install`, then `pod install` for iOS.
|
|
40
|
+
5. **Run a smoke build** — `npm run ios` / `npm run android` / `npx expo start`.
|
|
41
|
+
6. **Validate** — app launches, fast refresh works, Metro bundler runs without warnings.
|
|
42
|
+
7. **On failure** — apply the matching pattern from "Common setup issues" below.
|
|
43
|
+
|
|
44
|
+
## Prerequisites (2025 baseline)
|
|
45
|
+
|
|
46
|
+
**Node.js**
|
|
47
|
+
- Node 20.x minimum (Node 18 EOL April 2025); Node 22 LTS recommended.
|
|
48
|
+
- `node --version && npm --version`.
|
|
49
|
+
- npm, yarn, pnpm, bun all supported. Corepack for yarn:
|
|
50
|
+
`corepack enable && corepack prepare yarn@stable --activate`.
|
|
51
|
+
|
|
52
|
+
**Xcode (macOS, iOS)**
|
|
53
|
+
- Xcode 16.1+ minimum (RN 0.83), Xcode 26+ for Liquid Glass.
|
|
54
|
+
- `xcode-select --install` then `sudo xcodebuild -license accept`.
|
|
55
|
+
- iOS 15.1+ deployment target; iOS 18+/26 for latest features.
|
|
56
|
+
|
|
57
|
+
**Android Studio**
|
|
58
|
+
- Ladybug or later (2024.2.1+).
|
|
59
|
+
- SDK Platform 35 (API 35), Build-Tools 35.0.0, Platform-Tools, Emulator.
|
|
60
|
+
- NDK 27.1.12297006 + CMake 3.22.1+ for native modules / Turbo Modules.
|
|
61
|
+
- `compileSdkVersion 35`, `targetSdkVersion 35`, `minSdkVersion 24`.
|
|
62
|
+
- `ANDROID_HOME` exported; edge-to-edge display ready (Android 15+).
|
|
63
|
+
|
|
64
|
+
**Watchman**
|
|
65
|
+
- macOS: `brew install watchman`.
|
|
66
|
+
- Required for fast refresh on large codebases. Reset: `watchman watch-del-all`.
|
|
67
|
+
|
|
68
|
+
## Platform setup
|
|
69
|
+
|
|
70
|
+
**iOS**
|
|
71
|
+
- CocoaPods 1.15+: `sudo gem install cocoapods`.
|
|
72
|
+
- New Architecture pods: `RCT_NEW_ARCH_ENABLED=1 pod install`.
|
|
73
|
+
- Provisioning profiles, certificates managed in Xcode or via EAS.
|
|
74
|
+
- Simulator management: `xcrun simctl list devices`. Liquid Glass requires iOS 26 simulator.
|
|
75
|
+
|
|
76
|
+
**Android**
|
|
77
|
+
- Gradle 8.10+ (bundled with Ladybug).
|
|
78
|
+
- AVD with API 35 image; verify edge-to-edge layout.
|
|
79
|
+
- New Architecture: `newArchEnabled=true` in `gradle.properties`.
|
|
80
|
+
|
|
81
|
+
**Metro bundler**
|
|
82
|
+
- Default port 8081. Cache reset: `npx react-native start --reset-cache`.
|
|
83
|
+
- Symlink support and custom resolvers needed for monorepos.
|
|
84
|
+
|
|
85
|
+
**EAS Build (Expo)**
|
|
86
|
+
- `npm install -g eas-cli` then `eas login`.
|
|
87
|
+
- `eas build:configure` to seed `eas.json`.
|
|
88
|
+
- Dev clients for custom native modules; EAS Update for OTA.
|
|
89
|
+
|
|
90
|
+
## Common setup issues
|
|
91
|
+
|
|
92
|
+
**"Command not found"**
|
|
93
|
+
- PATH for Node, Android SDK, Xcode tools missing in `~/.zshrc` or `~/.bash_profile`.
|
|
94
|
+
- Symlink drift with nvm / fnm — re-run `nvm use` after shell reload.
|
|
95
|
+
|
|
96
|
+
**SDK not found**
|
|
97
|
+
- `echo $ANDROID_HOME` empty → re-export.
|
|
98
|
+
- Re-run SDK Manager; reinstall NDK if native modules fail.
|
|
99
|
+
|
|
100
|
+
**Pod install failures**
|
|
101
|
+
- CocoaPods < 1.15 incompatible with New Architecture — upgrade.
|
|
102
|
+
- Apple Silicon FFI compile errors → use system Ruby or rbenv-managed Ruby.
|
|
103
|
+
- Stuck pods: `pod deintegrate && pod install`.
|
|
104
|
+
|
|
105
|
+
**Build failures**
|
|
106
|
+
- Clean iOS: `cd ios && rm -rf build Pods Podfile.lock && pod install && cd ..`.
|
|
107
|
+
- Clean Android: `cd android && ./gradlew clean && cd ..`.
|
|
108
|
+
- Clear Xcode derived data when stale build artefacts persist.
|
|
109
|
+
|
|
110
|
+
**New Architecture issues**
|
|
111
|
+
- Turbo Module not found → confirm codegen ran during build.
|
|
112
|
+
- Fabric component not rendering → verify native registration.
|
|
113
|
+
- Bridge incompatibility → use the interop layer.
|
|
114
|
+
|
|
115
|
+
## Quick verification
|
|
116
|
+
|
|
117
|
+
```bash
|
|
118
|
+
node --version # 20+ (22 LTS preferred)
|
|
119
|
+
npm --version
|
|
120
|
+
xcodebuild -version # 16.1+
|
|
121
|
+
pod --version # 1.15+
|
|
122
|
+
adb --version
|
|
123
|
+
emulator -version
|
|
124
|
+
watchman version
|
|
125
|
+
eas --version # Expo only
|
|
126
|
+
echo $ANDROID_HOME # non-empty
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
## Quick commands
|
|
130
|
+
|
|
131
|
+
**Create / run RN CLI project**
|
|
132
|
+
```bash
|
|
133
|
+
npx @react-native-community/cli init MyProject
|
|
134
|
+
cd MyProject
|
|
135
|
+
cd ios && RCT_NEW_ARCH_ENABLED=1 pod install && cd ..
|
|
136
|
+
npm start # Metro
|
|
137
|
+
npm run ios # in a second terminal
|
|
138
|
+
npm run android # in a third terminal
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
**Create / run Expo project**
|
|
142
|
+
```bash
|
|
143
|
+
npx create-expo-app@latest MyProject
|
|
144
|
+
cd MyProject
|
|
145
|
+
npx expo start
|
|
146
|
+
# Custom native code → dev client:
|
|
147
|
+
npx expo install expo-dev-client
|
|
148
|
+
eas build --profile development --platform ios
|
|
149
|
+
eas build --profile development --platform android
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
**Simulator / emulator**
|
|
153
|
+
```bash
|
|
154
|
+
xcrun simctl list devices
|
|
155
|
+
xcrun simctl boot "iPhone 16 Pro"
|
|
156
|
+
emulator -list-avds
|
|
157
|
+
emulator -avd Pixel_8_API_35
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
**Reset everything**
|
|
161
|
+
```bash
|
|
162
|
+
watchman watch-del-all
|
|
163
|
+
npx react-native start --reset-cache # RN CLI
|
|
164
|
+
npx expo start --clear # Expo
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
## Pro tips
|
|
168
|
+
|
|
169
|
+
1. **Shell profile** — add SDK paths once, reload once:
|
|
170
|
+
```bash
|
|
171
|
+
export ANDROID_HOME=$HOME/Library/Android/sdk
|
|
172
|
+
export PATH=$PATH:$ANDROID_HOME/emulator
|
|
173
|
+
export PATH=$PATH:$ANDROID_HOME/platform-tools
|
|
174
|
+
export PATH=$PATH:$ANDROID_HOME/cmdline-tools/latest/bin
|
|
175
|
+
```
|
|
176
|
+
2. **EAS minimum `eas.json`** — `development` (dev client + internal), `preview` (internal), `production` (defaults).
|
|
177
|
+
3. **Hermes** — RN ≥ 0.70 ships Hermes by default; verify with `global.HermesInternal !== undefined` at runtime.
|
|
178
|
+
4. **Health check** — a single shell function running the verification block above catches 80 % of "it doesn't build" reports.
|
|
179
|
+
|
|
180
|
+
## Version compatibility (2025)
|
|
181
|
+
|
|
182
|
+
| Component | Minimum | Recommended | Notes |
|
|
183
|
+
|---|---|---|---|
|
|
184
|
+
| Node.js | 20.x | 22 LTS | Node 18 EOL April 2025 |
|
|
185
|
+
| React Native | 0.76 | 0.83 | New Architecture default since 0.76 |
|
|
186
|
+
| React | 18.3 | 19.2 | `Activity`, `useEffectEvent` |
|
|
187
|
+
| Expo SDK | 52 | 54 | Native tabs, Liquid Glass |
|
|
188
|
+
| Xcode | 16.1 | 26 | iOS 26 required for Liquid Glass |
|
|
189
|
+
| Android SDK | 34 | 35 | Edge-to-edge support |
|
|
190
|
+
| CocoaPods | 1.14 | 1.15+ | New Architecture compatibility |
|
|
191
|
+
| Gradle | 8.6 | 8.10+ | K2 compiler support |
|
|
192
|
+
|
|
193
|
+
## Output format
|
|
194
|
+
|
|
195
|
+
1. A short setup plan keyed off the target stack (RN CLI vs Expo, iOS vs Android vs both).
|
|
196
|
+
2. Concrete shell commands the user can paste — no placeholders unless flagged `<…>`.
|
|
197
|
+
3. A verification block confirming the toolchain is healthy before any feature work.
|
|
198
|
+
|
|
199
|
+
## Auto-trigger keywords
|
|
200
|
+
|
|
201
|
+
- React Native, Expo, EAS Build
|
|
202
|
+
- Xcode, CocoaPods, pod install
|
|
203
|
+
- Android Studio, ANDROID_HOME, AVD, emulator
|
|
204
|
+
- Metro bundler, Watchman, fast refresh
|
|
205
|
+
- New Architecture, Fabric, Turbo Modules
|
|
206
|
+
|
|
207
|
+
## Gotcha
|
|
208
|
+
|
|
209
|
+
- Don't set `RCT_NEW_ARCH_ENABLED=1` selectively — once enabled, every `pod install` for that project must use it or cached artefacts diverge.
|
|
210
|
+
- Apple Silicon + system Ruby + FFI is the single biggest source of "pod install hangs" reports — switch to rbenv before retrying.
|
|
211
|
+
- Watchman left over from a previous project can pin Metro to a stale tree — `watchman watch-del-all` is cheap, run it before deeper debugging.
|
|
212
|
+
- iOS Simulator versions are tied to Xcode versions. Liquid Glass features need both Xcode 26 AND an iOS 26 simulator image installed.
|
|
213
|
+
- Android NDK version drift breaks Turbo Modules silently — pin `27.1.12297006` until the project explicitly upgrades.
|
|
214
|
+
|
|
215
|
+
## Do NOT
|
|
216
|
+
|
|
217
|
+
- Do NOT mix `npm`, `yarn`, `pnpm`, and `bun` lockfiles in the same project — pick one, commit its lockfile, delete the others.
|
|
218
|
+
- Do NOT skip `pod install` after pulling iOS-side changes — the JS bundle will load but native modules will be stale.
|
|
219
|
+
- Do NOT enable New Architecture mid-feature — flag it on a clean branch, run a full clean build, validate both platforms.
|
|
220
|
+
- Do NOT hand-edit `Podfile.lock` or `gradle.lock`-style files — re-run the installers instead.
|
|
221
|
+
- Do NOT commit `node_modules`, `ios/Pods`, `android/.gradle`, or platform `build/` directories.
|
|
@@ -152,6 +152,6 @@ to every roadmap you author.
|
|
|
152
152
|
|
|
153
153
|
## Examples
|
|
154
154
|
|
|
155
|
-
|
|
156
|
-
(structural
|
|
157
|
-
|
|
155
|
+
Browse `agents/roadmaps/` (active plate) and `agents/roadmaps/archive/`
|
|
156
|
+
(closed work) for canonical structural / tactical / structural-with-council
|
|
157
|
+
examples.
|
|
@@ -453,7 +453,7 @@ the canonical narrative lives in
|
|
|
453
453
|
| `commands.suggestion.max_options` | integer | `4` | Max number of command suggestions before the always-present "run as-is" option (total rendered = `max_options + 1`). |
|
|
454
454
|
| `commands.suggestion.blocklist` | list of command names | `[]` | Commands that never appear as a suggestion. They still work when typed explicitly. |
|
|
455
455
|
| `commands.create_pr.preview_description` | `true`, `false` | `false` | When `false`: `/create-pr` skips the title/body preview + adjust loop and uses the generated content directly. Saves agent tokens. When `true`: show title and body before creating and ask for adjustments. `/create-pr:description-only` always previews regardless of this setting. |
|
|
456
|
-
| `verbosity.preview_artifacts` | `true`, `false` | `false` | Show generated commit messages, PR titles/bodies, branch names before acting. `false` = use generated content directly. See
|
|
456
|
+
| `verbosity.preview_artifacts` | `true`, `false` | `false` | Show generated commit messages, PR titles/bodies, branch names before acting. `false` = use generated content directly. See the token-frugality plate under `agents/roadmaps/` (Phase 2/3). |
|
|
457
457
|
| `verbosity.routine_confirmations` | `true`, `false` | `false` | Confirmation prompts for routine workflow steps when there is one obvious answer ("looks good — commit?"). Iron-Law gates (`commit-policy`, `scope-control` git-ops, `non-destructive-by-default`) ALWAYS ask regardless. |
|
|
458
458
|
| `verbosity.offer_council_in_delivery` | `true`, `false` | `false` | Offer "run AI Council on this?" inside delivery commands (`/feature-plan`, `/review-changes`, `/roadmap-create`). Council commands themselves are unaffected. |
|
|
459
459
|
| `verbosity.post_action_reports` | `off`, `minimal`, `full` | `minimal` | Multi-line status / summary blocks after a successful action. `off` = no report; `minimal` = one-line confirmation; `full` = bullet list. |
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
},
|
|
7
7
|
"metadata": {
|
|
8
8
|
"description": "Shared agent configuration \u2014 skills for AI coding tools (Claude Code, Augment, Cursor, Cline, Windsurf, Gemini CLI).",
|
|
9
|
-
"version": "1.
|
|
9
|
+
"version": "1.28.0"
|
|
10
10
|
},
|
|
11
11
|
"plugins": [
|
|
12
12
|
{
|
|
@@ -80,6 +80,7 @@
|
|
|
80
80
|
"./.claude/skills/data-flow-mapper",
|
|
81
81
|
"./.claude/skills/database",
|
|
82
82
|
"./.claude/skills/dcf-modeling",
|
|
83
|
+
"./.claude/skills/deep-reading-analyst",
|
|
83
84
|
"./.claude/skills/dependency-upgrade",
|
|
84
85
|
"./.claude/skills/description-assist",
|
|
85
86
|
"./.claude/skills/design-review",
|
|
@@ -153,6 +154,7 @@
|
|
|
153
154
|
"./.claude/skills/memory-propose",
|
|
154
155
|
"./.claude/skills/merge-conflicts",
|
|
155
156
|
"./.claude/skills/migration-creator",
|
|
157
|
+
"./.claude/skills/mobile-e2e-strategy",
|
|
156
158
|
"./.claude/skills/mode",
|
|
157
159
|
"./.claude/skills/module",
|
|
158
160
|
"./.claude/skills/module-create",
|
|
@@ -198,6 +200,7 @@
|
|
|
198
200
|
"./.claude/skills/prompt-optimizer",
|
|
199
201
|
"./.claude/skills/quality-fix",
|
|
200
202
|
"./.claude/skills/quality-tools",
|
|
203
|
+
"./.claude/skills/react-native-setup",
|
|
201
204
|
"./.claude/skills/react-shadcn-ui",
|
|
202
205
|
"./.claude/skills/readme-reviewer",
|
|
203
206
|
"./.claude/skills/readme-writing",
|
|
@@ -206,6 +209,7 @@
|
|
|
206
209
|
"./.claude/skills/refine-prompt",
|
|
207
210
|
"./.claude/skills/refine-ticket",
|
|
208
211
|
"./.claude/skills/requesting-code-review",
|
|
212
|
+
"./.claude/skills/research",
|
|
209
213
|
"./.claude/skills/review-changes",
|
|
210
214
|
"./.claude/skills/review-routing",
|
|
211
215
|
"./.claude/skills/rice-prioritization",
|