{"slug": "i-made-my-coding-agent-explain-its-own-pull-requests", "title": "I made my coding agent explain its own pull requests", "summary": "Developer Igor Kasyanchuk released DiffNotes, an MIT-licensed tool that has coding agents annotate their own pull requests with plain-language explanations of each changed block, plus a PR summary, a deploy card covering migrations, flags and rollback, and a risk list. DiffNotes runs as a single Docker container with SQLite and two runtime dependencies, or on the hosted diffnotes.dev server, and installs an Agent Skill that Claude Code, Codex, Cursor and other skills-aware agents pick up, with an MCP alternative added via `claude mcp add --transport http diffnotes https://diffnotes.dev/mcp`. Notes are scoped to members of the account owning the repository and expire, keeping the PR conversation human; per-repository rules can be set in a `.diffnotes.yml` file on the base branch, such as requiring a deploy note for every migration.", "body_md": "# I made my coding agent explain its own pull requests\n\nThe problem: the agent knows why, the reviewer doesn't More and more of the pull requests I review were written by a coding agent. The code is usually fine. Reviewing it is not: I open Files changed, see 400 lines across 12 files, and start reverse-engineering the reasons behind each block. The fu\n\nnny part is that the agent knew those reasons. It had just made every decision. By the time a human opens the diff, that context is gone. I tried asking the agent to write PR comments.\n\nThat works, but every comment pings the whole team, the agent's text mixes with the human discussion, and it all stays in the PR forever. So I built DiffNotes. A note is a short, plain-language \"why\" attached to a changed block: On top of the diff, a summary box shows what the PR does, the deploy steps, and where to look hardest: Notes can carry screenshots (before/after, mobile/desktop), Markdown reports, CSVs and small HTML demos that run in a sandbox right under the note. 1.\n\nA server. Use the free hosted one at diffnotes.dev (sign in with GitHub), or run your own: docker run -d -p 3000:3000 -v diffnotes:/data \\ -e ADMIN_EMAIL=you@company.com -e PUBLIC_URL=https://reviews.example.com \\ ghcr.io/igorkasyanchuk/diffnotes 2. The skill, on each developer machine. The welcome page gives you this command with your token already filled in: curl -fsSL https://diffnotes.dev/install.sh | DIFFNOTES_SETUP_TOKEN=dn_… sh It installs an Agent Skill that Claude Code, Codex, Cursor and other skills-aware agents pick up.\n\nIf your agent speaks MCP instead: claude mcp add --transport http diffnotes https://diffnotes.dev/mcp \\ --header \"Authorization: Bearer $DIFFNOTES_TOKEN\" 3. The extension for reviewers: Chrome Web Store. It opens a tab on install: enter your server, sign in, done. When the PR is ready: annotate this PR with diffnotes The agent reads its own diff and uploads: a summary of the PR a deploy card (migrations, flags, rollback) a risk list: which spots deserve the closest look one note per changed block, explaining why, not restating what screenshots or a small demo when the UI changed You can add per-repository rules in a .diffnotes.yml on the base branch, for example \"every migration needs a deploy note\".\n\nThe agent reads them before writing. Open Files changed. The extension draws the notes next to the lines. Scroll away and a small dock keeps the note count and a switch to hide everything.\n\nImages open in a gallery; a demo expands to phone, tablet or desktop width. Try it without installing anything: diffnotes.dev/demo. No noise. The PR conversation stays human.\n\nPrivacy. Notes live on your server. Only members of the account that owns the repository can read them. They expire.\n\nExplanations of a diff are useful during review, not forever. DiffNotes is MIT and small on purpose: one container, SQLite, two runtime dependencies. If your team reviews AI-written code, I'd love to hear what would make those reviews faster. ⭐ github.com/igorkasyanchuk/diffnotes\n\n## Key Takeaways\n\n- •It had just made every decision.\n- •This story was reported by **Dev.to** , covering developments in the**dev** space.\n- •AI advancements continue to reshape industries — read the full article on Dev.to for complete coverage.\n\n📖 Continue reading the full article:\n\n[Read Full Article on Dev.to →](https://dev.to/igorkasyanchuk/i-made-my-coding-agent-explain-its-own-pull-requests-j67)", "url": "https://wpnews.pro/news/i-made-my-coding-agent-explain-its-own-pull-requests", "canonical_source": "https://ainexusdaily.vercel.app/article/2026-11-01-i-made-my-coding-agent-explain-its-own-pull-requests", "published_at": "2026-11-01 12:25:55+00:00", "updated_at": "2026-11-01 12:51:16.151216+00:00", "lang": "en", "topics": ["ai-agents", "ai-tools", "developer-tools", "agent-protocols"], "entities": ["DiffNotes", "Igor Kasyanchuk", "Claude Code", "Codex", "Cursor", "GitHub", "Chrome Web Store", "Dev.to"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/i-made-my-coding-agent-explain-its-own-pull-requests", "markdown": "https://wpnews.pro/news/i-made-my-coding-agent-explain-its-own-pull-requests.md", "text": "https://wpnews.pro/news/i-made-my-coding-agent-explain-its-own-pull-requests.txt", "jsonld": "https://wpnews.pro/news/i-made-my-coding-agent-explain-its-own-pull-requests.jsonld"}}