Architecture

lazypr is a Bun monorepo with a GitHub Action entrypoint bundled for Node.js.

Packages

Runtime flow

flowchart TD
  ghEvent[GitHubEvent pull_request] --> action[apps/github-action]
  action -->|compare diff| ghCompare[GitHubCompareAPI]
  action -->|sanitize+truncate| coreSanitize[packages/core DiffSanitizer+TokenManager]
  action -->|prompt+LLM| aiEngine[packages/ai-engine generatePRSummar]
  action -->|list commits| ghCommits[GitHubPullsAPI listCommits]
  action -->|per-commit diff| ghCommitDiff[GitHubCommitsAPI diff]
  action -->|ghost detection| coreGhost[packages/core GhostCommitDetector]
  action -->|update PR body| ghUpdate[GitHubPullsAPI update]
  action -->|labels| ghLabels[GitHubIssuesAPI labels]

Notes