DiffNotes
Lets coding agents attach plain-language notes, screenshots and live demos to pull request diffs, shown via a browser extension on GitHub, GitLab and Bitbucket.
At a Glance
Free and open source (MIT) self-hosted DiffNotes in one Docker container, also for commercial use.
Engagement
Available On
Alternatives
Listed Nov 2026
About DiffNotes
DiffNotes is an open-source (MIT) tool by Igor Kasyanchuk that lets a coding agent explain its own pull request. The agent uploads notes, screenshots and small demos to a DiffNotes server, and reviewers see them inside the diff on GitHub, GitLab or Bitbucket through a browser extension. Nothing is posted to the pull request itself. It can be used on the hosted server at diffnotes.dev or self-hosted with Docker.
What It Is
DiffNotes is a pull request annotation tool built around coding agents such as Claude Code, Codex, Cursor and other Agent Skills tools, with an MCP endpoint as an alternative to the skill. The agent that wrote the code explains each changed file and the non-obvious lines, flags risky parts such as auth, money or migrations, and attaches supporting material. The notes are stored on a DiffNotes server rather than posted as bot comments, so there is no notification noise.
How the Workflow Runs
A user signs in with GitHub, installs the browser extension and connects it, then runs one setup command for their agent. On a branch with an open pull request, the agent is asked to annotate it and uploads the notes. Reviewers opening the Files changed view see a summary box above the first file, a list of where to look hardest, and notes attached to the changed lines. Notes added or changed since a reviewer's last visit are tagged, and a dock and keyboard shortcuts help navigate them.
Note Content and Repository Rules
Notes can include before/after screenshots with a drag handle, screen recordings, image galleries, previews of Markdown, CSV and text files, Mermaid flowcharts, and small HTML demos that run in a sandbox with no network access. A .diffnotes.yml file in the repository, read from the base branch, can set the language, require risk ratings or deploy cards, skip paths, and choose paths for screenshots. After new commits the agent can update notes and remove stale ones.
Hosting and Teams
Accounts have owner, admin and member roles, with invitations by email, GitHub login or an expiring link. Files can be stored on disk or in S3-compatible storage. The project states that notes expire after a year by default, and a single extension can connect to several servers.
Community Discussions
Be the first to start a conversation about DiffNotes
Share your experience with DiffNotes, ask questions, or help others learn from your insights.
Pricing
Self-hosted (MIT)
Free and open source (MIT) self-hosted DiffNotes in one Docker container, also for commercial use.
- MIT license
- Run on your own infrastructure via Docker
- Code context never leaves your infrastructure
- Files on disk or S3-compatible storage
- Free for commercial use
Hosted at diffnotes.dev
Free hosted server run by the author, with no paid plan.
- Notes and files deleted 365 days after a pull request's last upload
- Up to 10,000 pull requests per account
- 1 GB of files per account
Capabilities
Key Features
- Agent-written plain-language notes attached to changed lines
- Summary box and where-to-look-hardest risk list
- Before/after screenshots, screen recordings and image galleries
- Sandboxed live HTML demos
- Mermaid flowcharts rendered in the diff
- Previews of Markdown, CSV and text attachments
- Notes updated or removed after new commits
- What-changed-since-last-visit tags
- Repository rules via .diffnotes.yml
- Team accounts with owner, admin and member roles
- Self-hosting with Docker and S3-compatible storage
- MCP endpoint and Agent Skills support
- Nothing posted to the pull request
