[REPLACE: SKILL_NAME]
SkillDev toolsLets your agent review newly opened GitHub pull requests, post a friendly verdict comment, and label them.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the [REPLACE: SKILL_NAME] skill
About this capability
First-touch review of newly opened PRs on [REPLACE: WATCHED_REPO], verdict + welcoming comment + label
What this skill tells your AI
The instructions your AI receives, as published by aeonfun/aeon in docs/examples/skill-templates/code-reviewer/SKILL.md and read by ahel’s review.
${var} — Optional. PR number to review. If empty, scans all newly-opened PRs on
[REPLACE: WATCHED_REPO].
Today is ${today}. Review external PRs on [REPLACE: WATCHED_REPO] with a focus on [REPLACE: REVIEW_FOCUS].
Steps
-
List candidates — every open PR opened in the last 24h that hasn't been reviewed by this skill yet:
if [ -n "${var:-}" ]; then PRS="$var" else PRS=$(gh pr list -R [REPLACE: WATCHED_REPO] --state open --json number,author,createdAt,additions,deletions \ --jq '.[] | select(.author.login != "github-actions[bot]" and .author.login != "aeonframework") | .number') fiTrack previously-reviewed PRs in
memory/topics/[REPLACE: SKILL_NAME]-reviewed.json(a flat array of PR numbers). Skip anything already in there. -
For each PR — fetch metadata + diff:
gh pr view "$PR" -R [REPLACE: WATCHED_REPO] --json title,body,additions,deletions,files,author > .pr-meta.json gh pr diff "$PR" -R [REPLACE: WATCHED_REPO] > .pr-diff.patchSkip if
additions + deletions > [REPLACE: MAX_PR_LINES]— flag it asDEFERRED: too large for first-touch review, leave a note, and move on. -
Apply the rubric — assign one of four verdicts:
Verdict Trigger ACCEPT Touches expected paths, follows repo conventions, focused scope, no obvious bugs in the diff. NEEDS-CHANGES Reasonable intent but specific issues: missing tests, broken format, incorrect assumption, naming. DEFER Out of scope for this skill — needs a human reviewer (large refactor, architectural change). OUT-OF-SCOPE Touches files outside what the repo accepts contributions on (e.g. lock files, generated assets). Focus the rubric on [REPLACE: REVIEW_FOCUS] — that's the lens that matters most for this repo.
-
Post a comment — use a friendly, specific tone. Acknowledge the contributor, name the verdict, give 1-3 concrete bullets:
gh pr comment "$PR" -R [REPLACE: WATCHED_REPO] --body "Thanks for the PR! [verdict text] - [bullet 1] - [bullet 2]" -
Label the PR via
gh pr edit "$PR" -R [REPLACE: WATCHED_REPO] --add-label "<label>"— useaccepted/needs-changes/defer/out-of-scope(create the labels in the target repo first if they don't exist). -
Notify via
./notifyonly onACCEPTorOUT-OF-SCOPE— those are the actionable verdicts for the operator. Silent onNEEDS-CHANGESandDEFER(the comment on the PR is the signal). -
Log — append to
memory/logs/${today}.md:## [REPLACE: SKILL_NAME] - **PRs reviewed**: N (skipped M as previously seen) - **Verdicts**: accept=X, needs-changes=Y, defer=Z, out-of-scope=W - **Status**: REVIEW_OK | REVIEW_QUIET (no new PRs)
Network note
gh handles auth via the workflow's GITHUB_TOKEN. To comment on or label a PR in [REPLACE: WATCHED_REPO], the token needs pull-requests: write and issues: write permission on that repo — verify the workflow grants those, or this skill will silently fail to write.
Constraints
- Be welcoming. The PR may be someone's first open-source contribution. Lead with thanks, then specifics.
- Never auto-merge. This skill is first-touch review, not auto-merge. Even an
ACCEPTverdict still waits for a human merge. - Idempotent. Re-running the skill must never double-comment. The
reviewed.jsonstate file is what enforces that.
Signals
- GitHub stars
- 750
- Forks
- 264
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
replace-skill-name- Source
- github.com/aeonfun/aeon