---
title: How do I review and commit the changes my agent made?
question: review and commit changes
area: browser
order: 7
surface: desktop
audience: beginner
keywords: [changes tab, source control, git, commit, stage, unstage, discard, revert, diff, review changes, staged changes, untracked, merge changes, commit message, push, pull, fetch, branch, save my work]
related: [what-is-the-devtools-panel-and-how-do-i-open-it, the-devtools-panel, how-do-i-browse-files-history-and-pull-requests]
updated: 2026-07-21
---

# How do I review and commit the changes my agent made?

Open the DevTools panel and click the **Changes** tab. It lists every file the agent edited, lets you look at exactly what changed in each one, and lets you save that work as a commit. This is your Git working area, and it is the safe way to see what happened before you keep it.

If DevTools is not open yet, click the **</>** button on the preview's toolbar. See [What is the DevTools panel?](what-is-the-devtools-panel-and-how-do-i-open-it.md) if you need a hand.

## Reading what changed

The **Changes** tab groups your files into sections, each with a count:

- **Staged Changes** are edits you have marked ready to commit.
- **Changes** are edited files not yet staged.
- **Untracked** are brand new files Git has not seen before.
- **Merge Changes** are files with a conflict to resolve.

Click any file to see its **diff**, a side-by-side of the lines added and removed. A letter next to each file tells you what happened to it: **M** for modified, **A** for added, **D** for deleted, and so on. Hover the letter for the word.

## Staging and discarding

Staging is how you choose which edits go into the next commit.

- Click the **+** on a file to stage it. It moves up into **Staged Changes**.
- Click the **−** on a staged file to unstage it.
- Click the **↶** on a file to discard its edits and put the file back. This cannot be undone, so codus asks you to confirm first, with a message like "Discard changes to file.js? This cannot be undone."

Each section header has its own buttons to stage, unstage, or discard everything in that section at once.

## Committing

A commit is a saved snapshot with a short note about what you did.

1. Stage the files you want to keep, so they sit in **Staged Changes**.
2. Type a short description in the **Message** box.
3. Click the **✓** button to commit.

The **✓** stays greyed out until you have both staged something and typed a message. Hover it to see what it is waiting for: "Stage changes first", "Type a commit message", or "Commit staged changes" when it is ready.

## Sending your commits to GitHub

The bar across the top of the DevTools panel shows your branch name and three round buttons for syncing with GitHub or wherever your code lives:

- **↓** pulls down commits from the remote. It shows a number when there are commits waiting.
- **↑** pushes your commits up. It shows a number when you have commits to send.
- **⟳** fetches, which checks the remote for updates without changing your files.

Click the branch name itself to switch, create, rename, or delete branches.

## Common problems

**The Changes tab is empty or says "No changes".** Nothing has been edited since the last commit. That is fine, it just means your work is already saved.

**It says "Not a git repository" or "No folder selected".** The **Changes** tab only works on a Git project. Make sure a folder is pinned to this quadrant and that it is a Git repository.

**I do not see the branch name or the push and pull buttons.** They only appear once codus can read the repository's branch. Give it a moment after opening the panel, and confirm the folder is a Git project.

**A push or pull showed a red error.** The message appears at the top of the panel with an **×** to dismiss it. Common causes are having no internet, not being signed in to the remote, or the branch having no upstream set yet.
