Awesome-omni-skill raise-pr
Create a GitHub PR for FlashList. Ensures no AI/Claude attribution in commits or PR body, follows repo conventions for title, description, and test plan.
install
source · Clone the upstream repo
git clone https://github.com/diegosouzapw/awesome-omni-skill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/cli-automation/raise-pr" ~/.claude/skills/diegosouzapw-awesome-omni-skill-raise-pr && rm -rf "$T"
manifest:
skills/cli-automation/raise-pr/SKILL.mdsafety · automated scan (low risk)
This is a pattern-based risk scan, not a security review. Our crawler flagged:
- git push --force
Always read a skill's source content before installing. Patterns alone don't mean the skill is malicious — but they warrant attention.
source content
Raise a FlashList PR
Rules
- NEVER push directly to
— always create a branch and open a PR.main - NEVER mention Claude, AI, or any AI tool in commit messages, PR title, PR body, or comments. No
AI lines. The PR must read as if written entirely by a human.Co-Authored-By - Only raise a PR when explicitly asked by the user.
- All checks must pass first:
,yarn test
,yarn type-check
.yarn lint
Step 1 — Verify Checks Pass
yarn test && yarn type-check && yarn lint
If any fail, fix them before proceeding.
Step 2 — Create Branch and Commit
Branch naming
fix/issue-<number>-<short-slug> feat/<short-slug> refactor/<short-slug>
Commit message format
fix(<scope>): <concise description> Fixes #<number>
Scope examples:
layout, hooks, scroll, sticky-headers, recycling, viewability.
Do NOT include:
linesCo-Authored-By- Any mention of Claude, AI, Anthropic, or automated tools
orGenerated by
attributionsAssisted by
Commands
git checkout -b fix/issue-<number>-<short-slug> git add <specific files> git commit -m "$(cat <<'EOF' fix(<scope>): <description> Fixes #<number> EOF )" git push -u origin fix/issue-<number>-<short-slug>
Step 2b — Self-Review Before Creating PR
Always review your own diff before creating the PR. Run
git diff HEAD~1 (or git diff main...HEAD) and check for:
- Orphaned or misplaced JSDoc comments — moving code can separate a JSDoc from its function
- Unnecessary
casts — use specific types wherever possible (e.g.,as any
instead ofas React.ComponentType<any>
)as any - Leftover debug code —
,console.log
, temporary commentsfetch("http://localhost:...") - Unrelated changes — files or hunks that aren't part of the fix
- Formatting issues — the diff should be clean and minimal
Fix any issues found, then amend the commit before proceeding to Step 3.
Step 3 — Create the PR
PR title
- Under 70 characters
- Same format as commit:
fix(<scope>): <description>
PR body template
gh pr create \ --repo Shopify/flash-list \ --title "fix(<scope>): <description>" \ --body "$(cat <<'EOF' ## Description <1-3 sentences: what the bug was and how the fix works> Fixes #<number> ## Reviewers' hat-rack :tophat: <What reviewers should focus on — layout logic, hook behavior, edge cases, etc.> ## Screenshots or videos <Before/after screenshots if applicable> ## Test plan - [ ] Unit tests pass (`yarn test`) - [ ] Type check passes (`yarn type-check`) - [ ] Lint passes (`yarn lint`) - [ ] Verified on iOS simulator - [ ] No regressions on related screens EOF )"
Review the PR body before submitting
Before running
gh pr create, double-check:
- No mention of Claude, AI, Anthropic, or any AI tool anywhere
- No
lines in any commit (Co-Authored-By
to check)git log --format=full - Description explains the "what" and "why" clearly
- Test plan is specific to the change
Step 4 — Post-Creation
Return the PR URL to the user.
If the user asks to update the PR:
# Amend and force-push (only if user explicitly asks) git add <files> git commit --amend --no-edit git push --force-with-lease
Common Mistakes
- Leftover
from default git hooks — check withCo-Authored-By
before pushinggit log -1 --format=full - Debug
orconsole.log
left in source — search before committing:fetch("http://localhost:9876")grep -r "console\.\(log\|warn\)\|localhost:9876" src/ --include="*.ts" --include="*.tsx" - Including unrelated files — use
, nevergit add <specific files>
orgit add .git add -A - Fixture
left withindex.js
— always check and revert before committingforceRTL(true)