Motty
原生桌面 SSH 工作台:终端、SFTP/SCP、端口转发、VNC 与 RDP 远程桌面、AI 助手都在一个窗口里。Go 编写,没有 Electron,空闲时保持安静。免费开源,支持 macOS、Windows 和 Linux。
翻译准备中
Let PR reviews be fun again
翻译准备中
正在加载完整 README。
查看完整 README ↗Review GitHub pull requests and GitLab merge requests with diffs grouped by topic, attention points, comments, and optional AI chat. The review app runs locally at http://localhost:3010: one server for all your projects.
You need Node.js 22+, npm, Git, and the CLI for your host:
gh auth login.glab auth login.
For self-hosted GitLab whose hostname does not contain gitlab, set PR_REVIEW_HOST=gitlab.Install the command globally:
npm install -g @vintasoftware/pr-review-canvas
To update an existing installation and its project skills, run pr-review upgrade from
that project. See upgrade options.
Run these commands in the repository you want to review:
cd /path/to/your-project
pr-review doctor --all-checks
doctor --all-checks checks your repository, host CLI login, local storage, the project's
skill and own prompt templates, and acpx for AI Chat. Follow any hints it prints to fix failed checks.
If only acpx is missing, you can still review canvases; install it below to enable chat.
If only the skill is missing, you can still generate from the review app or with
pr-review generate, which use the skill pr-review ships.
Install the generation skill to run /pr-review-canvas in Claude Code or Codex, or to
customize it for the project:
pr-review install-skill
install-skill copies the skill to .claude/skills/pr-review-canvas and
.agents/skills/pr-review-canvas. Commit these copies so your team can use them. Restart your
coding agent if the skill does not appear. Repeat this for each project.
Generations from the review app follow the project's copy when there is one, with any changes
the project made to it. pr-review upgrade replaces a changed copy with the shipped skill, so
commit your changes before you upgrade.
To ask questions about a PR inside the canvas, install acpx globally:
npm install -g acpx@latest
acpx --version
pr-review doctor --all-checks
Install and sign in to Claude Code or Codex on the same machine. Start or restart the review server, then choose the Chat agent in settings. Chat uses that agent's account. See AI Chat for model settings and review checkouts.
With the skill installed, run it in Claude Code or Codex,
replacing 123 with your PR or MR number:
/pr-review-canvas 123
The skill generates and validates the canvas, then shares it in a PR or MR comment using
your gh or glab login. It returns a local review URL and the comment link.
Anyone with access to the PR or MR can read the shared canvas.
Start the server from your project; it opens the review in the browser:
pr-review serve
Open the review URL. For each attention point marked yours, click resolve and explain why it needs no reviewer decision. Your reason stays visible to reviewers. Then request review from your team.
After pushing new commits, run /pr-review-canvas 123 again to update the canvas.
Reviewers click refresh to load it.
With AI Chat installed, you can also generate from the review app, with or without the skill installed: click generate canvas on the home page or on a review with no canvas, or generate for current head on an outdated one. See generating from the review app.
The same generation runs from a terminal while pr-review serve runs:
pr-review generate 123 # generate or update the canvas of PR 123, and share it
pr-review generate # the open PR of the current branch
pr-review generate 123 --out ~/Desktop # post nothing; write the canvas zip to send to someone
The reviewer loads that zip with pr-review import <zip>. --out keeps that run local only:
resolving a point on the review page later shares the canvas unless
sharing is off. See
generating from the terminal for the other flags.
See self-review for resolution details and manual sharing if automatic sharing fails.
Before opening a PR, you can generate a canvas for your local work:
/pr-review-canvas branch # the current branch against the default branch
/pr-review-canvas uncommitted # includes working-tree edits and new files
From a terminal, pr-review generate branch and pr-review generate uncommitted do the same.
Run pr-review serve in the project to open its home page, and find these local work canvases
under the Before the pull request panel. These reviews stay local, and you can resolve
attention points before sharing your work. Use --base <ref> to compare against another branch.
See local branch and uncommitted reviews
for details.
Run pr-review serve from your clone of the project. It starts the server and opens the project's
home page in the browser. Enter the PR or MR number to load the shared canvas, read the diffs, and
leave comments. Keep the terminal running while you review; stop the server with Ctrl+C.
One server serves all your projects:
pr-review serve in another project's folder adds that project to the running server and opens
it. pr-review open does the same, and pr-review open 123 opens one PR or MR.http://localhost:3010/r/<owner>/<repo>/. A linked worktree
gets /r/<owner>/<repo>~<worktree>/, since its branch and working tree differ from the main
checkout's.See the contributor guide for development setup and checks, website guide for previews and deployment, and publishing guide for releases.
Licensed under the Apache License 2.0.