skelm-code-reviewer

agent
Guvenlik Denetimi
Basarisiz
Health Uyari
  • License — License: MIT
  • Description — Repository has a description
  • Active repo — Last push 0 days ago
  • Low visibility — Only 5 GitHub stars
Code Basarisiz
  • process.env — Environment variable access in scripts/find-assigned-prs.ts
  • exec() — Shell command execution in src/gh.ts
Permissions Gecti
  • Permissions — No dangerous permissions requested

Bu listing icin henuz AI raporu yok.

SUMMARY

Autonomous GitHub PR reviewer agent built on the skelm framework — one agent, composable skills, cron + webhook triggers, language-aware reviews for JS/TS, Python, C/C++, and Bash.

README.md

skelm-code-reviewer

Autonomous GitHub PR reviewer agent, built on the
skelm workflow framework. One agent, five composable skills,
two trigger paths (cron + webhooks).

What it does

  • Discovers open PRs where a configured account (REVIEWER_LOGIN,
    e.g. <your-bot-login>) is the requested reviewer.
  • Clones the PR head, reads the diff and the surrounding code.
  • Produces a structured review using language-aware skills (JS/TS,
    Python, C/C++, Bash).
  • Posts the review back to GitHub (or saves it locally in dry-run).
  • On new commits: re-reviews with awareness of prior findings.
  • On human comments: detects threads that need a reply and addresses them.
  • Decides approve / request_changes / comment via a rollout-gated
    state machine (dry-runcomment-onlyfull).

Quickstart

pnpm install
cp .env.example .env
# edit .env: REVIEWER_LOGIN, POST_MODE=dry-run, BACKEND=pi or codex

# unit tests
pnpm test

# typecheck
pnpm typecheck

# one-shot manual run
pnpm discover | pnpm skelm run workflows/review-prs.workflow.ts --input @-

# scheduled cron (every 5 min)
pnpm skelm schedule add workflows/review-prs.workflow.ts --cron '*/5 * * * *'

# webhook gateway (see docs/WEBHOOKS.md)
pnpm gateway --port 4015

Architecture

The agent (agents/pr-reviewer) is the brain. The workflow is thin
glue: discover → sync → invoke agent → decide verdict → publish →
persist. All review logic — checklist, severity tiers, per-language
pitfalls, follow-up rules, approval policy — lives in skills:

  • skills/pr-review-format — output JSON schema
  • skills/pr-review-checklist — Tier 1/2/3 severity, focus areas
  • skills/pr-review-followup — new commits and comment replies
  • skills/pr-review-approval — verdict policy
  • skills/pr-review-languages — JS/TS, Python, C/C++, Bash references

This means iterating on what the reviewer cares about is mostly
markdown edits, not code.

Documentation

Languages supported

JS / TS / JSX / TSX, Python, C / C++, Bash. Other languages fall through
to the generic checklist.

Backends

Default: @skelm/pi (local llamacpp via Pi SDK). Configure
BACKEND=codex to use OpenAI Codex instead. Any skelm backend works as
long as it supports skills + the standard tool set.

License

MIT.

Yorumlar (0)

Sonuc bulunamadi