# Git and review — Canopy > Review diffs, pull requests, comments, checks, and agent-written changes. The most important artifact of an agent session is the change it leaves behind. Trace that change through files, commits, checks, and PR conversation. Canopy can stage review findings and run focused fix tasks, while a person vets the result and decides when to merge. Start with the intended behavior and end with the final diff. Canopy runs installed coding CLIs; their providers control model access, limits, and billing. Check the installed app release for version-specific features. Each link opens the article's clean Markdown version. ## Articles - [Agent session, terminal tab, branch, or worktree: what is the difference?](https://canopyide.dev/guides/agent-session-vs-tab-vs-worktree.md): A practical map of the four things people mix up when running multiple coding agents, with a two-agent example and checkout verification commands. - [Agent swarms do not ship software. Ownership does.](https://canopyide.dev/blog/agent-swarms-do-not-ship-software.md): Running more coding agents can increase output and confusion at the same time. Here is a better way to divide work and review the result. - [AI-built app works locally but fails on Vercel Preview](https://canopyide.dev/guides/ai-built-app-works-locally-fails-vercel-preview.md): Find the first difference between a working Canopy run and a broken Vercel Preview: commit, build, environment, runtime request, or backend target. - [AI-generated pull request review checklist and reviewer prompt](https://canopyide.dev/guides/ai-generated-pr-review-checklist.md): A practical checklist for intent, changed files, risk, tests, UI behavior, comments, and the final diff, with a copyable reviewer brief. - [An AI coding-agent task brief you can copy and use](https://canopyide.dev/guides/ai-coding-agent-task-brief-template.md): A bounded brief with context, acceptance checks, constraints, and a handoff format for Claude Code, Codex, or another coding CLI. - [Can I launch my AI-built app? A founder's decision sheet](https://canopyide.dev/guides/ai-built-app-launch-checklist-for-founders.md): A go-or-hold review for an AI-built web app: running behavior, access, data, payments, recovery, and the exact release version. - [Can two coding agents use the same development database?](https://canopyide.dev/guides/parallel-coding-agents-share-development-database.md): Find which database each agent worktree really uses, choose shared or isolated state deliberately, and review competing migrations before integration. - [Canopy vs Claude Code Desktop: which agent workspace fits?](https://canopyide.dev/use-cases/canopy-vs-claude-code-desktop.md): A current, fair comparison of parallel sessions, worktrees, preview, PR review, remote work, supported CLIs, accounts, and operating systems. - [Canopy vs cmux for coding agents: terminal control or project workspace?](https://canopyide.dev/use-cases/canopy-vs-cmux-for-coding-agents.md): A dated, source-backed comparison of Canopy and cmux across parallel CLI sessions, attention, browser preview, PR review, remote access, and platform fit. - [Canopy vs Conductor for parallel coding agents](https://canopyide.dev/use-cases/canopy-vs-conductor-for-parallel-coding-agents.md): Compare two full multi-agent workflows across isolated workspaces, local and cloud execution, preview, PR review, team sharing, and platform support. - [Canopy vs Cursor for coding agents: which workflow fits?](https://canopyide.dev/use-cases/canopy-vs-cursor-for-coding-agents.md): A dated, source-backed comparison of independent CLIs, Cursor Agent, worktrees, review, local previews, remote work, accounts, and pricing boundaries. - [Canopy vs Devin Desktop (formerly Windsurf) for coding agents](https://canopyide.dev/use-cases/canopy-vs-devin-desktop-formerly-windsurf.md): A dated comparison of multi-agent coordination, installed CLIs versus ACP, local previews, review, cloud handoff, and account boundaries. - [Canopy vs GitHub Copilot CLI for coding agents](https://canopyide.dev/use-cases/canopy-vs-github-copilot-cli-for-coding-agents.md): A dated comparison of Copilot CLI sessions, models, worktrees, review, voice, and remote control with Canopy's multi-CLI project workflow. - [Canopy vs Superset for parallel coding agents](https://canopyide.dev/use-cases/canopy-vs-superset-for-parallel-coding-agents.md): Compare two local agent workspaces across worktrees, persistent processes, app runs, browser preview, PR review, Remote, and license terms. - [Canopy vs VS Code for coding-agent work](https://canopyide.dev/use-cases/canopy-vs-vscode-for-coding-agents.md): A practical comparison of real CLI sessions, worktrees, PR review, local previews, and the editor features you may still need. - [Canopy vs Warp for coding agents: what changes in the workflow?](https://canopyide.dev/use-cases/canopy-vs-warp-for-coding-agents.md): A dated comparison of third-party CLI agents, worktrees, review, cloud orchestration, team sharing, local data, accounts, and open-source licenses. - [Canopy vs Zed for coding agents: which workflow fits?](https://canopyide.dev/use-cases/canopy-vs-zed-for-coding-agents.md): Compare Zed Agent, ACP external agents, terminal threads, worktrees, Git, tasks, real-time collaboration, and Canopy's project workflow. - [Did your coding agent weaken a test to make CI pass?](https://canopyide.dev/guides/did-coding-agent-weaken-test-to-make-ci-pass.md): Review changed assertions, skips, mocks, and browser setup against the original behavior before accepting an agent's green check. - [From GitHub issue to agent draft PR: a reviewable handoff](https://canopyide.dev/use-cases/github-issue-to-agent-draft-pr.md): Read the whole ticket, give one agent a scoped branch, test the running change, and close the loop with evidence in the PR. - [Git worktrees for parallel coding agents: commands and cleanup](https://canopyide.dev/guides/git-worktrees-for-parallel-coding-agents.md): Create a separate branch and directory per coding agent, check status, integrate reviewed work, and remove worktrees safely. - [How do I check an AI-built page with a keyboard and screen reader?](https://canopyide.dev/guides/test-ai-built-ui-keyboard-screen-reader-before-merge.md): Review an agent-built form and dialog with keyboard, accessible-name, error, and screen-reader checks before accepting the PR. - [How do I resolve a merge conflict between two coding agents?](https://canopyide.dev/guides/resolve-merge-conflict-between-coding-agents.md): Find the conflicting branches, compare each agent's intent, make one integration decision, and test the combined behavior. - [How do I stop a coding agent rebuilding a feature that already exists?](https://canopyide.dev/guides/stop-coding-agent-rebuilding-existing-feature.md): Make the agent locate the active implementation and its callers before editing, then review the smallest change against the running app. - [How do I test an AI-built UI before merging it?](https://canopyide.dev/guides/test-agent-built-ui-before-merge.md): Review the running page across viewport sizes, interaction states, console and network errors, keyboard use, and the latest PR diff. - [How do I turn a Figma design into a running page with a coding agent?](https://canopyide.dev/guides/figma-design-to-running-page-with-coding-agent-canopy.md): Hand an agent one frame, states, assets, and component constraints; run the page in Canopy and review behavior, visuals, and the final diff. - [How many coding agents should you run at once?](https://canopyide.dev/guides/how-many-coding-agents-to-run-at-once.md): A practical way to size parallel agent work by independent tasks, review capacity, worktrees, local resources, and provider usage. - [How to evaluate an AI coding workspace on a real project](https://canopyide.dev/guides/evaluate-ai-coding-workspace-on-real-project.md): A repeatable trial for terminal, IDE, and multi-agent workspaces that follows one change from setup through running behavior, review, resume, and accepted result. - [How to hand an AI-built app to a developer for review](https://canopyide.dev/guides/handoff-ai-built-app-to-developer.md): A concrete handoff for founders: reproduce the app, show the exact change, list verified behavior and unknowns, and ask a developer for a risk decision. - [How to review an AI-generated access-control PR](https://canopyide.dev/guides/review-ai-generated-access-control-pr.md): Use a permission matrix and cross-user tests to review an agent-written authentication or authorization change before merge. - [How to review an AI-generated pull request](https://canopyide.dev/guides/review-ai-generated-pull-requests.md): A review workflow for agent-written code: inspect the diff, ask for a risk map, address comments, fix CI, and merge deliberately. - [How to stop an endless AI code review loop](https://canopyide.dev/guides/stop-endless-ai-code-review-loop.md): When each review pass finds another issue, triage findings against the same acceptance checks, verify the latest commit, and decide what blocks this PR. - [Keep building a Bolt app with local coding agents in Canopy](https://canopyide.dev/guides/bolt-to-canopy-local-coding-agent-workflow.md): Connect Bolt to GitHub, isolate an agent change, check the app's backend and run commands, merge in GitHub, and verify Bolt and the live site. - [Measure AI coding cost per accepted change](https://canopyide.dev/guides/measure-ai-coding-cost-per-accepted-change.md): A repeatable worksheet for comparing model choices by accepted work, review time, retries, token categories, and provider charges. - [My coding agent committed an API key. What now?](https://canopyide.dev/guides/coding-agent-committed-api-key-to-github.md): A staged response to an agent-written secret leak: stop propagation, revoke the credential, restore services, inspect exposure, and decide whether Git history needs cleanup. - [My coding agent edited the wrong branch or worktree. What now?](https://canopyide.dev/guides/coding-agent-edited-wrong-branch-or-worktree.md): Identify the actual checkout, preserve every change, move the intended work safely, and verify the correct branch before restarting the agent. - [Review an agent-written PR, address comments, and fix CI](https://canopyide.dev/use-cases/review-agent-pr-and-fix-ci.md): A review loop from intended behavior to final diff, including draft findings, feedback, conflict resolution, and checks. - [Review an AI-built Stripe Checkout before taking payments](https://canopyide.dev/guides/review-ai-built-stripe-checkout-before-launch.md): A founder's test-mode review of Checkout, signed webhooks, delayed payments, duplicate events, and fulfillment before launch. - [Review an AI-generated Supabase migration before deployment](https://canopyide.dev/guides/review-ai-generated-supabase-migration-before-deploy.md): Check the target project, schema diff, existing data, RLS, staging result, and actual restore option before an agent-written migration reaches production. - [Run Claude Code and Codex side by side without losing the work](https://canopyide.dev/use-cases/parallel-claude-code-codex-agents.md): A concrete two-agent workflow with separate checkouts, clear ownership, shared project context, and one final review. - [Share agent work with a team without sharing AI accounts](https://canopyide.dev/use-cases/share-agent-work-with-a-team.md): A host, implementer, and reviewer handoff through Canopy Team: project chat, files, review requests, disk ownership, and separate model accounts. - [Should I use a cheaper AI model first, then a stronger model to review?](https://canopyide.dev/use-cases/small-model-first-pass-strong-model-review.md): Choose current Claude or OpenAI models for triage, implementation, and review; copy the handoff prompts and compare complete task costs. - [The coding agent says done, but the app is still broken](https://canopyide.dev/guides/agent-says-done-but-app-is-broken.md): A recovery workflow: reproduce the failure, inspect local services and logs, point the agent at evidence, and verify the new diff. - [Turn a screenshot or rough idea into a coding-agent task](https://canopyide.dev/use-cases/turn-screenshot-into-coding-agent-task.md): Capture the evidence, investigate before editing, write a bounded acceptance check, and review the resulting draft PR. - [v0 not showing your local agent's GitHub changes? Check the branches](https://canopyide.dev/guides/v0-not-showing-local-github-changes.md): Trace a local Canopy agent change through GitHub, v0's base and working branches, Pull Changes, preview deployments, and production permissions. - [Vercel says the Git author must be a team member: what do I check?](https://canopyide.dev/guides/vercel-git-author-must-be-team-member.md): Diagnose a Vercel PR preview blocked before its build by checking the commit author, connected Git account, project team, and access request. - [What do file claims solve when coding agents share a repository?](https://canopyide.dev/use-cases/file-claims-for-parallel-coding-agents.md): Use visible file ownership to catch overlapping plans early, then verify checkout isolation, actual edits, and the final integrated diff. - [What to do when an AI agent opens a 40-file pull request](https://canopyide.dev/guides/split-oversized-ai-generated-pull-request.md): Inventory an oversized agent diff, separate independent work from dependencies, and rebuild reviewable PRs without losing the original change. - [Which coding agent needs me? Triage several live sessions](https://canopyide.dev/use-cases/which-coding-agent-needs-my-attention.md): Avoid replying in the wrong terminal: identify project, checkout, branch, waiting question, and next decision before steering an agent. - [Which coding-agent session introduced this regression?](https://canopyide.dev/guides/trace-regression-to-coding-agent-session.md): Trace a reproducible failure through the running build, Git history, pull request, and related agent session before assigning a fix. - [Why cheaper AI tokens can make a coding task more expensive](https://canopyide.dev/blog/cheaper-tokens-more-expensive-coding-task.md): A worked task-cost comparison that counts retries, cache categories, human review, and accepted code instead of ranking models by input-token price. - [Why did Claude Code forget my task after compaction?](https://canopyide.dev/guides/claude-code-forgot-task-after-compaction.md): Recover a Claude Code task after /compact by checking the actual branch, diff, tests, and lost instructions before giving the agent one verified next step. - [Why did my coding agent change the lockfile for a small fix?](https://canopyide.dev/guides/coding-agent-changed-lockfile-for-small-fix.md): Trace an unexpected package-lock or pnpm-lock diff to its command and dependency decision, then review and reproduce the PR safely. - [Why did my Trigger.dev task send two emails?](https://canopyide.dev/guides/trigger-dev-task-sent-email-twice.md): Trace duplicate email through task run IDs, retry attempts, app triggers, and provider events before replaying or changing idempotency settings. - [Why do my agent tests pass locally but fail in GitHub Actions?](https://canopyide.dev/guides/coding-agent-tests-pass-locally-but-github-actions-fails.md): Compare the exact PR commit, failing CI step, runner, install, environment, and test command before changing code or rerunning a job. - [Why does my AI-built app lose data when I refresh?](https://canopyide.dev/guides/ai-built-app-loses-data-on-refresh.md): Find whether a Save button updates only UI state, browser storage, or a real backend, then test the persistence the product actually needs. - [Work on a Lovable app locally in Canopy without losing Git sync](https://canopyide.dev/guides/lovable-to-canopy-local-coding-agent-workflow.md): A branch, environment, preview, and publishing checklist for using local coding agents on a Lovable project connected to GitHub.