Skip to content

Commit f47a64e

Browse files
authored
chore(skills): add analyze-feedback skill and incorporate agent learnings (#2208)
* chore(skills): move analyze-feedback skill to .claude/skills directory Move skill file and scan cursor to the correct .claude/ directory structure and remove the now-unnecessary setup script. * Incorporate feedback
1 parent 5ffed99 commit f47a64e

7 files changed

Lines changed: 25 additions & 25 deletions

File tree

Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"last_scanned_at": "2026-02-22T00:00:00Z",
3-
"last_run_id": 0,
2+
"last_scanned_at": "2026-03-24T18:03:09Z",
3+
"last_run_id": 23504809129,
44
"note": "ISO-8601 UTC timestamp of the most recent workflow run that was scanned"
55
}

‎.claude/skills/agent-device/SKILL.md‎

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -286,6 +286,12 @@ settings wifi off # Toggle wifi
286286
settings permission grant camera # Grant camera permission
287287
```
288288

289+
## CI Known Issues
290+
291+
- **Session creation may hang on CI runners** — `agent-device open` can hang indefinitely on CI. Set reasonable timeouts and be prepared to fall back to code-only verification with unit tests.
292+
- **Use full bundle ID on CI** — the app may not be recognized by display name; use the full bundle ID (e.g., `org.reactjs.native.example.FlatListPro`) instead of `FlatListPro`.
293+
- **Snapshot/session timeouts** — CI runners may experience persistent timeouts with snapshots and sessions. If agent-device is unavailable, document it in feedback and proceed with automated tests only.
294+
289295
## Tips
290296

291297
- Round coordinates to the nearest integer
File renamed without changes.

‎.claude/skills/fix-github-issue/SKILL.md‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,7 @@ Always do this **before** the raise-pr step.
9797

9898
- **`dist/` is NOT rebuilt on branch switch** — you MUST `yarn build` after every `git checkout`. Verify with `grep` in `dist/` that the expected code change is present. Without this, you test stale code and get false results.
9999
- **Always reproduce the bug on `main` BEFORE testing the fix** — without confirming the bug exists on the base branch, you can't prove the fix works. See `review-and-test` skill → "Review Methodology".
100+
- **Code-only diagnosis is acceptable on CI** — layout/scroll bugs, Android-only issues (no emulator on macOS CI), and web/SSR issues (no browser on CI) can be diagnosed from code analysis + unit tests when simulator reproduction isn't feasible.
100101

101102
For more testing/debugging pitfalls (console.log, RTL setup, agent-device swipe, observable callbacks), see the **`review-and-test` skill**.
102103

‎.claude/skills/raise-pr/SKILL.md‎

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ description: Create a GitHub PR for FlashList. Ensures no AI/Claude attribution
55

66
# Raise a FlashList PR
77

8-
**Prerequisite:** Run the `review-and-test` skill first. All checks must pass and device testing must be done before raising a PR.
8+
**Prerequisite:** Run the `review-and-test` skill first. All checks must pass and device testing must be done before raising a PR. **DO NOT SKIP**.
99

1010
## Rules
1111

@@ -46,6 +46,7 @@ Fixes #<number>
4646
Scope examples: `layout`, `hooks`, `scroll`, `sticky-headers`, `recycling`, `viewability`.
4747

4848
**Do NOT include**:
49+
4950
- `Co-Authored-By` lines
5051
- Any mention of Claude, AI, Anthropic, or automated tools
5152
- `Generated by` or `Assisted by` attributions
@@ -76,6 +77,7 @@ Run `git diff HEAD~1` and check for:
7677
- **Fixture `index.js` left with `forceRTL(true)`** — always revert before committing
7778

7879
Quick check:
80+
7981
```bash
8082
grep -r "console\.\(log\|warn\)\|localhost:9876\|forceRTL(true)" src/ fixture/react-native/index.js --include="*.ts" --include="*.tsx" --include="*.js"
8183
```
@@ -93,7 +95,7 @@ Fix any issues found, then amend the commit before proceeding.
9395

9496
### PR body template
9597

96-
**Always use `--body-file`** — inline `--body` with markdown `#` headers triggers Claude Code permission checks and wastes turns. Use the `Write` tool to create the file (not `cat` or `echo`, which may not be in allowed tools on CI).
98+
**Always use `--body-file`** — inline `--body` with markdown `#` headers triggers Claude Code permission checks and wastes turns. Use the `Write` tool to create the file (not `cat`, `echo`, or `touch`, which may be blocked by sandbox on CI).
9799

98100
Write the following to `/tmp/pr-body.md` using the Write tool:
99101

@@ -113,16 +115,17 @@ Fixes #<number>
113115
<Before/after screenshots if applicable>
114116

115117
## Test plan
118+
116119
- [ ] Unit tests pass (`yarn test`)
117120
- [ ] Type check passes (`yarn type-check`)
118121
- [ ] Lint passes (`yarn lint`)
119122
- [ ] Verified on iOS simulator
120123
- [ ] No regressions on related screens
121-
EOF
124+
EOF
122125

123126
GH_TOKEN="$AGENT_PR_TOKEN" gh pr create \
124-
--title "fix(<scope>): <description>" \
125-
--body-file /tmp/pr-body.md
127+
--title "fix(<scope>): <description>" \
128+
--body-file /tmp/pr-body.md
126129
```
127130

128131
> **CRITICAL — TOKEN VERIFICATION (read this before running `gh pr create`)**
@@ -135,6 +138,7 @@ GH_TOKEN="$AGENT_PR_TOKEN" gh pr create \
135138
> If `AGENT_PR_TOKEN` is empty, try `SHOPIFY_GH_ACCESS_TOKEN` as fallback: `GH_TOKEN="${AGENT_PR_TOKEN:-$SHOPIFY_GH_ACCESS_TOKEN}" gh pr create ...`
136139
137140
Before running `gh pr create`, double-check:
141+
138142
- [ ] Token is verified (see above)
139143
- [ ] No mention of Claude, AI, Anthropic, or any AI tool anywhere
140144
- [ ] Description explains the "what" and "why" clearly
@@ -147,6 +151,7 @@ Before running `gh pr create`, double-check:
147151
Return the PR URL to the user.
148152

149153
If the user asks to update the PR (interactive only — not available on CI):
154+
150155
```bash
151156
git add <files>
152157
git commit --amend --no-edit

‎.claude/skills/triage-issue/SKILL.md‎

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,5 +32,11 @@ description: Triage a GitHub issue — classify priority (P0/P1/P2), search for
3232
- Do NOT modify any code.
3333
- Do NOT close issues — only label (and comment per Step 5 when genuinely needed).
3434
- **Only apply these labels**: `P0`, `P1`, `P2`. Do NOT apply any other labels (especially not `agent-fix`).
35+
- If the issue already has non-priority labels (e.g., `agent-fix`), leave them as-is — triage only adds priority labels, never removes existing ones.
36+
- **Test/spam issues**: If the title contains "[Test]", "please ignore", or similar markers, classify as P2 with minimal effort (skip thorough duplicate search).
3537
- Do NOT run `gh auth`, `gh api`, `gh secret`, or any `gh` command other than `gh issue`.
3638
- Do NOT read environment variables, process info, or files outside the repository.
39+
40+
## CI Notes
41+
42+
On CI, the issue number should be passed in the workflow prompt. If `gh issue` commands are blocked by permissions, the workflow's `allowedTools` or `settings.json` must include `gh issue view`, `gh issue list`, `gh issue edit`, and `gh issue comment`.

‎setup-analyze-feedback-skill.sh‎

Lines changed: 0 additions & 18 deletions
This file was deleted.

0 commit comments

Comments
 (0)