Guide
How to review what AI agents change in your notes
To review AI agent changes to your notes, commit before the agent starts, read the diff before you keep anything, and record in each note who checked it. Git covers the basics. Knowtarium, an end-to-end encrypted knowledge base, signs every agent change so you can see it and undo it, and holds changes for your approval in the folders where you turn review on.
By Fadel Kaadan · Updated
Why unreviewed agent edits are risky
When you let an AI agent work in your notes, you need a way to check its changes before you rely on them. A coding agent is fast and fluent, and that's the problem: a wrong sentence reads exactly like a right one. In code, a test often fails when an agent gets something wrong. In a knowledge base, nothing fails. The wrong date just sits there.
A few things go wrong again and again:
- Quiet rewrites. You ask for a new note and the agent also "tidies" three old ones, changing the meaning of a sentence you wrote carefully.
- Overwritten edits. You fixed a number by hand yesterday. Today the agent rewrites the note from an older source and your fix is gone.
- Errors that spread. The next session reads the wrong fact as context, repeats it in two more notes, and now it looks confirmed.
- No record. A month later you can't tell which notes you wrote, which an agent wrote, and which anyone ever checked.
The fix has two parts: see every change before it sticks, and write down who checked what. This guide shows how to do both by hand with git and a few frontmatter fields, and after each step, how Knowtarium handles it. We build Knowtarium for this: agents' changes there are signed and undoable by default, and review before a change sticks is a switch you turn on per folder.
Review AI agent changes with git
Git is the best free tool for this job. If your notes are a folder of markdown files, put them under git and commit before every agent session. Then everything the agent does is a diff you can read, keep in part, or throw away.
# once, in your notes folder# before each agent session: a clean starting point on its own branch
Working on a branch keeps your main history clean: if the whole session was a mistake, you switch back and delete the branch. When the agent is done, read what it changed:
# which files changed, and how much# read the changes word by word, which suits prose better than whole lines# keep the hunks you agree with (y = keep, n = skip, s = split, e = edit)# throw away everything you didn't keep# back on main, bring in what you approved
git add -p is the part that makes this a real review. It walks you through each changed hunk and lets you stage it or skip it, so you can keep the new note and drop the unrequested rewrite of an old one. Press s to split a large hunk into smaller ones and e to edit one by hand.
Watch for new files
git diff only shows changes to files git already tracks. Notes the agent created show up in git status as untracked, so read them there, and don't forget them when you commit.
Put the agent's name in the commit message. git log then tells you which session wrote what, and shows a single note's full history.
In Knowtarium
In Knowtarium, every agent change is saved as a new version signed with the agent's own key, so the note's history lists each version with who made it and when, See changes shows the agent's edit as a diff, and Undo brings back the version before. For folders you want to read first, turn on review ("Ask me first"): agent changes there wait as diffs until you approve them, or reject them with a comment.
(opens full size in a new tab)
(opens full size in a new tab)Use Claude Code's own safeguards
If you use Claude Code, it has three features that help. None of them replaces git, but they catch problems earlier.
Permission modes
A permission mode decides what Claude can do without asking. In Manual mode (config value default) it asks before editing files. acceptEdits lets it edit without asking, which Anthropic suggests when you'd rather review with git diff afterwards. plan mode has Claude research and propose changes without making them until you approve the plan. Press Shift+Tab to cycle modes during a session. Recent versions start interactive sessions in auto mode, where a classifier reviews actions instead of you, so switch to Manual or plan mode for sessions in notes you care about.
Checkpoints
Claude Code saves a checkpoint before each prompt you send. Run , or press Esc twice with an empty prompt, to restore the files, the conversation, or both. Know the limits: checkpoints don't track files changed by shell commands like mv or rm, usually don't restore edits made by subagents, and are deleted after about 30 days by default. Anthropic's docs say plainly that checkpoints are not a replacement for version control.
Permission rules
Rules in .claude/settings.json block or gate edits to specific folders. Deny rules win over everything else and apply in every mode:
{"permissions": {"ask": ["Edit(/decisions/**)"],"deny": ["Edit(/journal/**)", "Edit(/people/**)"]}}
Here Claude can never edit journal/ or people/, and it has to ask before touching decisions/. Edit rules cover Claude's built-in file tools and file commands it recognises in the shell, but not a script that opens files itself. For a hard guarantee, Anthropic points to its sandbox.
In Knowtarium
Modes, checkpoints and permission rules decide what Claude Code may do during a session. Knowtarium covers what happens after it: whatever mode the session ran in, each change Claude Code made is signed, marked on the document and can be undone. In a folder with review on, it stays unverified until you approve it.
Tell agents what they may change
Most agents read an instructions file before they start: AGENTS.md for Codex, Cursor and many others, CLAUDE.md for Claude Code. Put your editing rules there. Keep them short and concrete enough to check:
## Changing documents- Never delete a document. Set `status: deprecated` and say why.- Never edit files in journal/ or people/.- Don't rewrite a paragraph you weren't asked to change.- Sign every document you write in `generated`, with your name and version.- Never add a `human:` entry to `verified`. Only a person does that.- End the session with a list of every file you created, changed or moved.
The last rule is the useful one for review: a list of every touched file, which you can compare with . If they differ, look closer.
Instructions are context, not a lock. Anthropic's docs describe CLAUDE.md as something Claude reads, not configuration it enforces, which is why the permission rules above exist. Our guide to AGENTS.md and CLAUDE.md for a knowledge base has a full template.
On macOS and Linux you can also make a folder read-only with . Treat it as a speed bump: an agent that can run shell commands can change permissions back.
In Knowtarium
When you connect Claude Code, Codex or Cursor with , Knowtarium gives it its conventions along with its tools: read the workspace's own index.md first, where it has one, tell you whether a change was saved or is waiting for approval, and never add a human: entry. They also say to delete or move documents only when you ask, and agents can do either only with your permission. For a folder like journal/, connect the agent only to the other folders, and the server refuses anything outside them; keep your other rules in AGENTS.md.
Record who wrote and who checked each document
A diff tells you what changed today. It doesn't tell next month's reader whether anyone checked a note. For that, write it into the note itself. The Open Knowledge Format (OKF), an open specification published by Google Cloud, has fields for exactly this:
---type: Decisiontitle: Switch billing to annual plansgenerated: { by: claude-code/2.1, at: 2026-09-26T09:12:00Z }verified:- { by: human:maya, at: 2026-09-26T11:40:00Z }stale_after: 2027-03-31T00:00:00Z---
generatedsays who wrote the current content and when. Agents sign asname/version, people ashuman:name.verifiedlists everyone who checked it since, with the time. A document with no entry is unverified, one checked only by agents or processes is machine-confirmed, and one checked by ahuman:actor is human-reviewed.stale_afteris the moment the document stops being safe to quote.
The routine is simple. The agent writes and signs generated, never verified. You review the diff, then add your own verified entry. With that in place, finding what nobody has checked is one command:
# documents nobody has checked yet: no verified line at all
In Knowtarium
In folders with review on, Knowtarium reads these fields and can colour every document in the graph by its trust tier, so unchecked documents stand out without a grep.
A review routine that holds up
- Commit, then start a branch for the session.
- Start the agent in Manual or plan mode, with deny rules for folders it should never touch.
- Give it one task. Ask for a list of touched files at the end.
- Compare that list with , then read .
- Keep what you agree with using , and restore the rest.
- Add your
verifiedentry to each note you checked, commit with the agent's name in the message, and merge.
Each tool catches something different:
| Tool | Catches | Misses |
|---|---|---|
| Git diff and add -p | Every change to the files, line by line | Whether a changed fact is still true elsewhere |
| Claude Code checkpoints | Quick undo within a session | Shell-command changes, most subagent edits, anything older than the retention period |
| Permission rules | Edits to folders you've ruled out | Scripts that write files themselves |
| Provenance frontmatter | Which notes were never checked, and by whom | Nothing on its own: someone has to do the checking |
| Knowtarium's history and optional review | Every agent change, signed and undoable; with review on, changes waiting for you and your edits waiting for an agent check | A change you keep or approve without reading it |
For a few dozen notes and one agent, git and this routine can be enough. It gets tedious when agents write every day, when one change touches ten notes, or when your own edit makes five other notes wrong without you noticing. That's the part Knowtarium is built for: every agent change is signed and one click from undone, and where you turn review on, agent changes wait for you and your own edits wait until you ask an agent to check them.
Review agent edits in Knowtarium
Knowtarium builds the routine above into an end-to-end encrypted knowledge base. Your agents connect over MCP and work on the same OKF documents, and the app shows you what they did and what still needs a look. Review comes in two strengths: undo for every change by default, and approval first where you ask for it.
Every change signed and undoable
By default an agent's change is saved at once as the document's next version, signed with the agent's own key. A dot in the sidebar marks the documents it edited until you open them, a line under the title says which agent and when, with a link to the changes and an Undo, and the workspace page lists what agents edited in the last 14 days. Undo brings back the version before as your own change, and the history keeps every version to restore, for as long as you set (30 days to start with, up to a year).
Ask me first: diffs, then approve
Turn on review for a workspace or a folder, and agents' changes there wait as proposals instead. Open one and you see the diff with the agent's own summary and who proposed it. Approve it, or reject it with a comment, or approve several at once. Approving adds you to verified with the time, which is the human: entry you'd otherwise type by hand. The agent's proposal already carries its own check, so once you approve it the note is fully verified.
(opens full size in a new tab)
(opens full size in a new tab)In those folders, one queue holds everything waiting for a check:
- changes an agent proposed, waiting for you;
- edits you made, waiting for an agent to check them;
- conflicts an agent found while checking.
Documents past their stale_after date, and those due soon, are listed on the Stale and expiring page wherever they are.
Checks in both directions
In folders with review on, the review runs the other way too. When you edit a document yourself, the edit is signed as yours and waits in the queue until an agent checks it against every connected document. Knowtarium doesn't call an AI itself: you ask your agent to check today's edits, and it records its check, or flags a conflict wherever something no longer matches.
Trust tiers
In folders with review on, every document has a trust tier:
| Tier | What it means |
|---|---|
| Unverified | Written, not checked yet |
| Machine-confirmed | Checked by a test or a process |
| Human-reviewed | Checked by a person |
| Fully verified | Checked by both, after the last change |
| Stale | Past its stale_after date |
The same rules hold for every agent: agents can't mark anything as checked by a person, they delete a document only if you gave them that permission, and in folders with review on they can't skip your review. Your documents are end-to-end encrypted, so we can't read them; the agents you connect see what they read. See the features and how agents connect.
Questions
How do I stop Claude Code from overwriting my notes?
Commit before each session so any overwrite can be undone, add deny rules such as Edit(/journal/**) to .claude/settings.json for folders it must never touch, and work in Manual or plan mode so Claude asks or proposes before it edits.
Are Claude Code checkpoints enough to undo agent edits?
Not on their own. Checkpoints don't track files changed by shell commands, usually don't restore subagent edits, and are deleted after about 30 days by default. Anthropic's docs say to keep using version control such as git.
What is the easiest way to see what an AI agent changed?
Put the folder under git and commit before the session. Afterwards, git status lists new and changed files, git diff --stat shows how much changed, and git diff --word-diff shows each change word by word.
How do I approve only some of an agent's edits?
Use git add -p. It shows each changed hunk and lets you stage it or skip it. Commit what you staged, then run git restore . to discard the rest.
How do I mark a note as reviewed?
Add an entry to its verified frontmatter field with your name and the time, such as { by: human:maya, at: 2026-09-26T11:40:00Z }. In OKF, a verified entry from a human: actor makes the note human-reviewed. In Knowtarium, approving an agent's change in a folder with review on adds that entry for you.
Can I review agent edits without git?
Yes, with Knowtarium. Each change an agent saves is a signed version, so you can see what it changed (See changes, on the note) and undo it in one click. Turn on review for a folder, and agent changes there wait as diffs until you approve them. Your documents are end-to-end encrypted, and you can export them as plain markdown whenever you like.