Review
Generate an eval pack and create (or update) a pull request with the eval pack committed to the branch.From its SKILL.md
npx -y skills add smalls257/eval-pack --skill reviewAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
4.0 KB, as published. Nobody here has run it
Generate Eval Pack + Create PR
This skill combines eval pack generation with PR creation. Follow these steps:
Step 1: Generate Eval Pack
Invoke the eval-pack generate skill internally. Run the full generation flow:
- Extract metrics from transcript
- Detect heuristic patterns
- Run appropriate tests, capture screenshots and logs
- Write Claude analysis (retrospective, friction, prompt quality)
- Render HTML eval pack
Step 2: Stage Eval Pack
The .eval-packs/ directory is gitignored — force-add the zip:
git add -f .eval-packs/
git commit -m "chore: add eval pack for session ${SESSION_ID}"
git push
Step 3: Create or Update PR
Check if a PR already exists for the current branch:
EXISTING_PR=$(gh pr list --head "$(git branch --show-current)" --json number --jq '.[0].number // empty')
If a PR exists, the push above already updated it. Note: the ticket reference below is added on PR creation only; an existing PR's body is not rewritten on later runs.
If no PR exists, first discover the work ticket, then create the PR.
Discover the ticket
A PR with no ticket link forces the reviewer to leave the PR and hunt the tracker for
the why. Resolve the ticket pattern from config first — repos configure their own key
shape via ticketPattern in .eval-pack.json:
PYTHON="${CLAUDE_PLUGIN_OPTION_pythonExecutable:-python3}"
TICKET_PATTERN=$("$PYTHON" -c "
import sys; sys.path.insert(0, '${CLAUDE_PLUGIN_ROOT}/scripts')
from config import load_config
print(load_config('$(pwd)')['ticketPattern'])
" 2>/dev/null || echo '[A-Z][A-Z0-9]+-[0-9]+')
Find the ticket key in this order, stopping at the first hit:
-
Branch name — match
$TICKET_PATTERNagainst the current branch:BRANCH=$(git branch --show-current) TICKET=$(printf '%s' "$BRANCH" | grep -oE "$TICKET_PATTERN" | head -1) -
Commit messages — if
TICKETis empty, scan this branch's commits for the same pattern or aTicket:trailer:if [ -z "$TICKET" ]; then BASE=$(git merge-base HEAD main 2>/dev/null || git merge-base HEAD master 2>/dev/null || echo "") RANGE=${BASE:+$BASE..HEAD} TICKET=$(git log $RANGE --format='%B' 2>/dev/null | grep -oE "$TICKET_PATTERN" | head -1) fi -
Ask the user once — if
TICKETis still empty, ask: "Ticket for this PR? Provide a key (e.g. PROJ-123), a full URL, or 'none'."- If they give a key, set
TICKETto it. - If they give a full URL, set
TICKET_URLto that URL (skip the link-building below). - If they answer
none, leave both empty and omit the Ticket section.
- If they give a key, set
Build the ticket line
- If you have a full
TICKET_URL(user pasted a URL): the line isTicket: <TICKET_URL>. - Else if you have a bare
TICKETkey ANDticketBaseUrlfrom the resolved config (.eval-pack.jsonor legacy plugin option) is non-empty: the line isTicket: [<TICKET>](<ticketBaseUrl><TICKET>). - Else if you have a bare
TICKETkey and noticketBaseUrl: the line isTicket: <TICKET>. - Else (no ticket): omit the entire
## Ticketsection from the body.
Create the PR
Include the ## Ticket section above ## Summary only when a ticket was found:
gh pr create --title "<appropriate title based on work done>" --body "$(cat <<'EOF'
## Ticket
Ticket: <the ticket line you built, or omit this whole section if none>
## Summary
<summarize what was accomplished in this session>
## Eval Pack
The eval pack zip is committed to this branch at `.eval-packs/<session-id>.zip`.
Extract and open `index.html` in a browser to view the full report.
## Test Results
<verdict: pass/fail/none with brief summary>
---
Generated by [eval-pack](https://github.com/smalls257/eval-pack)
EOF
)"
Step 4: Report
Tell the user:
- PR URL
- Eval pack verdict
- That the zip is in
.eval-packs/on the branch — extract and openindex.html