Agent skill

Asyncreview

by AsyncFuncAI in AsyncFuncAI/AsyncReview

AI-powered GitHub PR/Issue reviews with agentic codebase access.

MITAuto-check passedDevelopment

Install Asyncreview

skills CLI
$ npx skills add AsyncFuncAI/AsyncReview --skill asyncreview -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install AsyncFuncAI/AsyncReview asyncreview --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/AsyncFuncAI/AsyncReview.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/asyncreview .claude/skills/asyncreview && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
asyncreview
GitHub stars
459
Token cost
~2.1k tokens
SKILL.md length
672 words
Files
1
Skills in repo
1
Repo updated
First seen
Licence
MIT

At a glance

AI-powered GitHub PR/Issue reviews with agentic codebase access.

  • Works in 2 steps: Check for GEMINI_API_KEY (Required) → Check if Repository is Private (Critical)
  • The user needs to review pull requests
  • SKILL.md covers When to use this skill, How to use this skill, Prerequisites and Quick start, plus 8 more sections
  • Calls npx, gh and curl; reaches github.com and api.github.com; needs GITHUB_TOKEN and GEMINI_API_KEY

What it does

Asyncreview is an agent skill from AsyncFuncAI/AsyncReview. AI-powered GitHub PR/Issue reviews with agentic codebase access. Use when the user needs to review pull requests, analyze code changes, ask questions about PRs, or get AI feedback on GitHub issues.

Its SKILL.md is about 2.1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development, covering Pull requests and LLM API integration. It works with GitHub and Google Gemini. The repository describes itself as: Open-source Agentic code review tool inspired by DevinReview, using Recursive Language Models (RLM). The licence is MIT.

When your agent uses it

  • The user needs to review pull requests
  • Analyze code changes
  • Ask questions about PRs
  • Get AI feedback on GitHub issues

Example prompts

  • “/asyncreview”

Requirements

  • Python 3
  • Node.js
  • A credential in GEMINI_API_KEY
  • A credential in GITHUB_TOKEN
  • Pre-approved tools (allowed-tools): Bash(npx asyncreview:*)

Workflow steps

2 steps, taken from the step headings in SKILL.md.

  1. Check for GEMINI_API_KEY (Required)
  2. Check if Repository is Private (Critical)

What it can do on your machine

Read from SKILL.md and the folder at commit 0c9cd43. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Bash(npx asyncreview:*)

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • npx
    • gh
    • curl

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • github.com
    • api.github.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • GITHUB_TOKEN
    • GEMINI_API_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Asyncreview loads about 2.1k tokens when it runs. Until then it costs about 52 tokens; SKILL.md has 672 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~52
When it runs · the whole SKILL.md, loaded when a task matches
~2.1k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from AsyncFuncAI/AsyncReview at commit 0c9cd43, republished under its MIT licence (© AsyncFuncAI). 672 words, ~2,124 tokens.

Download SKILL.mdSave it as .claude/skills/asyncreview/SKILL.md (or your agent's skills folder).
name
asyncreview
description
AI-powered GitHub PR/Issue reviews with agentic codebase access. Use when the user needs to review pull requests, analyze code changes, ask questions about PRs, or get AI feedback on GitHub issues.
allowed-tools
Bash(npx asyncreview:*)

AsyncReview CLI

When to use this skill

Use this skill when the user:

  • Asks to review a GitHub pull request
  • Wants AI feedback on code changes in a PR
  • Needs to check if a PR breaks existing functionality
  • Asks questions about a GitHub issue or PR
  • Wants to verify if something was missed in a code change

How to use this skill

  1. Check prerequisites — Verify GEMINI_API_KEY is set
  2. Check if repo is private — Use gh repo view to determine if GITHUB_TOKEN is required
  3. Set GITHUB_TOKEN if needed — Use gh auth token for private repos
  4. Get the PR/Issue URL — Ask user if not provided
  5. Formulate a question — Convert user's request into a specific question
  6. Run the review command — Execute npx asyncreview review --url <URL> -q "<question>"
  7. Present the results — Share the AI's findings with sources

Prerequisites

1. Check for GEMINI_API_KEY (Required)

Before running any command, check for GEMINI_API_KEY:

bash
echo $GEMINI_API_KEY

If empty or not set, ask the user to provide their Gemini API key:

"AsyncReview requires a Gemini API key. Please set GEMINI_API_KEY in your environment or provide it now."

Then set it:

bash
export GEMINI_API_KEY="user-provided-key"
2. Check if Repository is Private (Critical)

IMPORTANT: Before reviewing a PR/Issue, you MUST check if the repository is private. If it is, GITHUB_TOKEN is REQUIRED.

Step 1: Extract owner and repo from URL

From a URL like https://github.com/owner/repo/pull/123, extract:

  • owner: owner
  • repo: repo
Step 2: Check repository visibility

Option A: Using GitHub CLI (if available)

bash
gh repo view owner/repo --json isPrivate -q '.isPrivate'

Option B: Without GitHub CLI (using curl)

bash
# Try to access the repo via GitHub API without authentication
curl -s -o /dev/null -w "%{http_code}" https://api.github.com/repos/owner/repo

Possible outcomes:

  • With gh:

    • true → Repository is private, GITHUB_TOKEN is REQUIRED
    • false → Repository is public, GITHUB_TOKEN is optional
    • Error (e.g., "not found") → May indicate private repo without auth, or repo doesn't exist
  • With curl:

    • 200 → Repository is public, GITHUB_TOKEN is optional (but recommended for higher rate limits)
    • 404 → Repository is private or doesn't exist, GITHUB_TOKEN is REQUIRED
    • 403 → Rate limited, need GITHUB_TOKEN
Step 3: If private, ensure GITHUB_TOKEN is set
bash
# Check if GITHUB_TOKEN is already set
echo $GITHUB_TOKEN

If empty or not set, obtain it using one of these methods:

Option A: Using GitHub CLI (if available)

bash
# Get token from GitHub CLI (must be authenticated with `gh auth login` first)
export GITHUB_TOKEN=$(gh auth token)

# Verify it's set
echo $GITHUB_TOKEN

If gh auth token fails, authenticate first:

bash
gh auth login

Option B: Without GitHub CLI (create token via web)

  1. Go to GitHub: https://github.com/settings/tokens
  2. Click "Generate new token" → "Generate new token (classic)"
  3. Give it a descriptive name (e.g., "AsyncReview CLI")
  4. Select scopes:
    • ✅ repo (Full control of private repositories)
  5. Click "Generate token"
  6. Copy the token (you won't see it again!)
  7. Set it in your terminal:
bash
export GITHUB_TOKEN="ghp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

# Verify it's set
echo $GITHUB_TOKEN

Security tip: For better security, consider creating a fine-grained token with minimal permissions:

Then run the review with the token:

bash
npx asyncreview review --url <URL> -q "question" --github-token $GITHUB_TOKEN

Or set it as an environment variable for the session:

bash
export GITHUB_TOKEN=$(gh auth token)
npx asyncreview review --url <URL> -q "question"
Show full SKILL.md (225 more words)Show less

Quick start

bash
npx asyncreview review --url <PR_URL> -q "question"   # Review a PR
npx asyncreview review --url <PR_URL> --expert        # Expert code review
npx asyncreview review --url <PR_URL> --output markdown     # Markdown output

Core workflow

  1. Get PR URL from user
  2. Run review with specific question
  3. Read the step-by-step reasoning output
  4. Model can fetch files outside the diff autonomously

Commands

Review
bash
npx asyncreview review --url <url> -q "question"      # Review with question
npx asyncreview review --url <url> -q "q" --output markdown # Markdown output
npx asyncreview review --url <url> -q "q" -o json     # JSON output

URL formats supported:

  • https://github.com/owner/repo/pull/123
  • https://github.com/owner/repo/issues/456

Environment variables

bash
GEMINI_API_KEY="your-key"         # Required: Google Gemini API key
GITHUB_TOKEN="ghp_xxx"            # Optional: For private repos / higher rate limits

Example: Review a PR

bash
npx asyncreview review \
  --url https://github.com/stanfordnlp/dspy/pull/9223 \
  -q "Does this change break any existing callers?"

Output shows:

  • Step number
  • 💭 Reasoning (what the AI is thinking)
  • 📝 Code (Python being executed)
  • 📤 Output (REPL result)
  • Final answer with sources

Example: Check if feature exists elsewhere

bash
npx asyncreview review \
  --url https://github.com/owner/repo/pull/123 \
  -q "Fetch src/utils.py and check if deprecated_func is still used"

The AI will:

  1. Search for the file path
  2. Fetch the file via GitHub API
  3. Analyze content in the Python sandbox
  4. Report findings with evidence

Example: Review a Private Repository PR

Complete workflow for private repositories:

bash
# Step 1: Extract owner/repo from URL
# URL: https://github.com/myorg/private-repo/pull/42
# owner="myorg", repo="private-repo"

# Step 2: Check if repository is private

## Option A: With GitHub CLI
gh repo view myorg/private-repo --json isPrivate -q '.isPrivate'
# Output: true (it's private!)

## Option B: Without GitHub CLI (using curl)
curl -s -o /dev/null -w "%{http_code}" https://api.github.com/repos/myorg/private-repo
# Output: 404 (likely private or doesn't exist)

# Step 3: Ensure GITHUB_TOKEN is set
echo $GITHUB_TOKEN

## If empty, Option A: Get from GitHub CLI
export GITHUB_TOKEN=$(gh auth token)

## If empty, Option B: Create via web (https://github.com/settings/tokens)
## Then:
export GITHUB_TOKEN="ghp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

# Step 4: Run the review with the token
npx asyncreview review \
  --url https://github.com/myorg/private-repo/pull/42 \
  -q "Does this PR introduce any security vulnerabilities?" \
  --github-token $GITHUB_TOKEN

# Alternative: Token is already in environment, no flag needed
npx asyncreview review \
  --url https://github.com/myorg/private-repo/pull/42 \
  -q "Does this PR introduce any security vulnerabilities?"

If you get a 404 or authentication error: The repository is likely private, and you need to provide GITHUB_TOKEN.

Output formats

FormatFlagDescription
Pretty(default)Rich terminal output with boxes
Markdown--output markdown or -o markdownMarkdown formatted
JSON--output json or -o jsonMachine-readable

Expert Code Review

Use --expert flag for comprehensive PR reviews covering SOLID principles, security, performance, and code quality:

bash
# Full expert review (no question needed)
npx asyncreview review --url <PR_URL> --expert

# Expert review with additional custom question
npx asyncreview review --url <PR_URL> --expert -q "Also check for breaking API changes"

Expert review analyzes:

  • SOLID Principles - SRP, OCP, LSP, ISP, DIP violations
  • Security - XSS, injection, auth gaps, race conditions, secrets
  • Code Quality - Error handling, N+1 queries, boundary conditions
  • Removal Candidates - Dead code, unused imports

Output includes:

  • Severity-tagged findings (P0 Critical → P3 Low)
  • Suggested fixes for P0/P1 issues
  • Overall assessment: APPROVE / REQUEST_CHANGES / COMMENT

© AsyncFuncAI, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/asyncreview of AsyncFuncAI/AsyncReview.

Open the folder on GitHubat commit 0c9cd43

Compare with similar skills

Asyncreview next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Asyncreview compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Asyncreview this skillAsyncFuncAI/AsyncReview459—~2.1kAutomated safety check: PassMIT
PR Babysitteropeninterpreter/openinterpreter69k3 repos~4.2kAutomated safety check: PassApache-2.0
Check PRonyx-dot-app/onyx32k2 repos~2.3kAutomated safety check: PassMIT
Contributor-First PR MergeHKUDS/OpenHarness16k1 repos~847Automated safety check: PassMIT
Create Pull Requestcline/cline70k1 repos~1.6kAutomated safety check: PassApache-2.0
Pull Request Title and Body Writeropeninterpreter/openinterpreter69k2 repos~1.1kAutomated safety check: PassApache-2.0

Similar skills

  • PR Babysitter

    openinterpreter/openinterpreter

    Watches an open GitHub pull request until it merges, handling review comments, diagnosing CI failures and retrying flaky checks along the way.

    69k GitHub starsUsed in 3 repos~4.2k tokens
    DevelopmentAuto-check passed
  • Check PR

    onyx-dot-app/onyx

    Checks a GitHub, GitLab, or Perforce (p4) pull request (or merge request, or shelved changelist) for unresolved review comments, failing status checks, and incomplete PR descriptions.

    32k GitHub starsUsed in 2 repos~2.3k tokens
    DevelopmentAuto-check passed
  • Merges external GitHub pull requests while keeping the original author credited, and fixes conflicts after the merge instead of rewriting the contribution.

    16k GitHub starsUsed in 1 repo~847 tokens
    DevelopmentAuto-check passed
  • Opens a GitHub pull request from your current branch with the gh CLI, after reviewing the commits and diff and gathering the details the PR needs.

    70k GitHub starsUsed in 1 repo~1.6k tokens
    DevelopmentAuto-check passed
  • Pull Request Title and Body Writer

    openinterpreter/openinterpreter

    Rewrites the title and body of one or more pull requests with gh, leading with why the change was made, then what changed, and describing only the net result.

    69k GitHub starsUsed in 2 repos~1.1k tokens
    DevelopmentAuto-check passed
  • Official

    Runs a loop on a GitHub pull request: fetch review state, triage comments into actions, implement them and resolve threads, repeating until nothing actionable is left.

    48k GitHub stars~2.2k tokensUpdated yesterday
    DevelopmentAuto-check passed

Categories

Questions about Asyncreview

What does Asyncreview do?

AI-powered GitHub PR/Issue reviews with agentic codebase access. Asyncreview is an agent skill from AsyncFuncAI/AsyncReview. AI-powered GitHub PR/Issue reviews with agentic codebase access.

When should I use Asyncreview?

Asyncreview fits situations like: the user needs to review pull requests; analyze code changes; ask questions about PRs; get AI feedback on GitHub issues.

How do I install Asyncreview in Claude Code?

Run `npx skills add AsyncFuncAI/AsyncReview --skill asyncreview -a claude-code`. Or copy the skill folder (skills/asyncreview in AsyncFuncAI/AsyncReview) into .claude/skills/asyncreview in your project. Claude Code loads it when a task matches its description.

How do I install Asyncreview in Codex?

Run `npx skills add AsyncFuncAI/AsyncReview --skill asyncreview -a codex`. Or copy the skill folder (skills/asyncreview in AsyncFuncAI/AsyncReview) into .agents/skills/asyncreview in your project. Codex loads it when a task matches its description.

Can I use Asyncreview in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add AsyncFuncAI/AsyncReview --skill asyncreview -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/asyncreview, .gemini/skills/asyncreview, .github/skills/asyncreview and .opencode/skills/asyncreview in your project.

What does Asyncreview need to run?

Going by SKILL.md and its folder, Asyncreview needs the command-line tools its instructions call (npx, gh and curl) and credentials named GITHUB_TOKEN and GEMINI_API_KEY. Our summary lists: Python 3; Node.js; A credential in GEMINI_API_KEY; A credential in GITHUB_TOKEN. Its frontmatter pre-approves these tools: Bash(npx asyncreview:*).

Does Asyncreview access the network?

SKILL.md names 2 domains. In commands or code: github.com and api.github.com; the agent is likely to contact these when it follows the instructions. This is read from the text; nothing was executed.

Is Asyncreview safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Asyncreview use?

Asyncreview is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Asyncreview use?

About 2.1k tokens (SKILL.md is roughly 8.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Asyncreview?

Skills that share tags, products or a category with Asyncreview: PR Babysitter (openinterpreter/openinterpreter, 69k stars), Check PR (onyx-dot-app/onyx, 32k stars), Contributor-First PR Merge (HKUDS/OpenHarness, 16k stars) and Create Pull Request (cline/cline, 70k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Asyncreview?

AsyncFuncAI (a GitHub organization) maintains it in AsyncFuncAI/AsyncReview, which has 459 GitHub stars. The repository was last updated on April 27, 2026.

Source: AsyncFuncAI/AsyncReview on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.