Cline v3.39 adds Explain Changes, embedding reasoning-level explanations into diffs
Cline v3.39 introduces Explain Changes, a feature that embeds AI-generated, reasoning-level explanations directly into multi-file diffs. Launched December 2, 2025, the feature places contextual comments inline with changed lines, and a new /explain-changes slash command extends the same capability to any git diff — commits, branches, PRs, staged work, or the working directory.
Why explainability matters for code review
The largest bottleneck in modern development has shifted from writing code to understanding it. Research indicates developers spend roughly 58–70% of their time on program comprehension; code review contributes multiple hours per day for many teams. Large, multi-file changes produced by coding agents increase the cognitive load: reconstructing mental models from static diffs requires frequent context switching between the diff, chat context, and the broader codebase.
Explainability is therefore not an optional convenience but a practical necessity. When reasoning behind changes is accessible, reviewers can better calibrate trust — avoiding both over-reliance on automated suggestions and blind rejection of useful changes. The McKinsey State of AI survey cited in the announcement also highlights explainability as a key organizational concern.
- IEEE paper on program comprehension: https://ieeexplore.ieee.org/document/7997917?ref=cline.ghost.io
How Explain Changes works
Explain Changes integrates explanations directly into the diff interface:
- A visible Explain Changes button appears after a Cline task completes.
- Clicking the button opens the multi-file diff with inline explanations streaming in as comments placed at the exact locations of edits.
- Explanations leverage the full conversation context, so comments explain not only what changed but why particular decisions were made.
- Each comment includes a reply input for follow-ups; complex threads can be promoted into Cline’s main chat input to continue the discussion with full agent capabilities.
The inline approach reduces context switching and supports interactive review workflows where clarification and iteration are required.
For usage details, see the Explain Changes documentation: https://docs.cline.bot/features/explain-changes?ref=cline.ghost.io
The /explain-changes slash command
The /explain-changes command brings the same explanatory capabilities to any git diff, independent of the task workflow. It supports commits, branches, tags, PRs, staged changes, and the working directory. For PR usage, GitHub CLI is required.
Examples highlighted in the announcement include:
- Explaining the last commit after pulling team changes.
- Running
/explain-changes for PR #42to get intent-level explanations before manual review. - Inspecting recent commits with
/explain-changes for the last 5 commitsduring incident investigation. - Catching up on a project via
/explain-changes since v2.0.0.
Slash command documentation: https://docs.cline.bot/features/slash-commands/explain-changes?ref=cline.ghost.io
When to use Explain Changes
Explain Changes is positioned for scenarios where authorship or intent is unclear:
- Before committing Cline-generated changes.
- During code review to enter a PR with prior understanding of intent.
- Onboarding to unfamiliar code, to learn recent design choices.
- Investigating regressions or bugs, to narrow down likely causes.
Getting started
The button-triggered Explain Changes workflow requires Checkpoints to be enabled. The /explain-changes command only needs a git repository and, for PR targets, the GitHub CLI.
Further details and step-by-step instructions are available in the Explain Changes documentation: https://docs.cline.bot/features/explain-changes?ref=cline.ghost.io
Original post: https://cline.bot/blog/cline-v3-39-explain-changes



