Full access to project operations
Create, read, search, rename, delete and precisely edit files. Folders, project tree, statistics and hashes — also through commands.
UNDO is a local agent that turns AI requests into real file operations. Read code, create structure, fix errors and manage the project through short, clear commands.
Instead of “open the file and paste this code” — a command that does the work. Instead of guesses — the actual content of the project. Instead of the risk of losing changes — backups and rollback.
Create, read, search, rename, delete and precisely edit files. Folders, project tree, statistics and hashes — also through commands.
Project description, log, tasks, notes and decisions are stored together. The CTX command assembles them for the AI.
A backup before every edit, diff against the previous version, file restore and storage configuration. Experiment and roll back.
Syntax checks for Python, JSON, HTML and JavaScript. After EDIT you immediately see whether the check passed.
Search text and regular expressions, open the needed lines, inspect project state and read the log right in the working loop.
Context, logs and command results are returned to the clipboard. Paste the answer into the chat — the AI continues concretely.
Ctrl+C, Ctrl+V, Ctrl+X, Ctrl+A are handled by physical keycode, so they work in Russian, Chinese, or any other keyboard layout — no switching needed.
Edit Undo’s own source with Undo. It saves a backup, checks the syntax, and restarts itself in place — the tool is its own test case.
The entire UI — menus, logs, manifest — switches between English, Russian and Chinese. Undo restarts itself and comes back in the chosen language.
Type anything that doesn’t look like an AI command — and it goes straight to cmd.exe, with the output in the same log. Switch between working with AI and working with your machine without leaving the window.
dirlist filescd ..change folderecho hiechopython -Vpythonpip listpippowershell …powershellclearclear loghelplist commands↑ / ↓command historyCALC: 2**16safe calculatorArrow keys cycle through what you typed. Same as in bash — just tap up and hit Enter.
In the log: copy selection, copy the whole log, clear, show clipboard, paste to input. In the input line: cut, copy, paste, select all, clear.
Ctrl+C, Ctrl+V, Ctrl+X, Ctrl+A are handled by physical keycode. Russian, Chinese, German — same keys, same behaviour.
CMD: open report.pdf — Undo calls the default handler. PDF in the viewer, .py in the editor, image in the gallery.
CMD: run calc — and the Windows calculator opens. Anything the shell can start, Undo can start.
CMD: folder opens the folder where Undo lives — logs, backups, shots, config. One click from the terminal.
Undo is not just a command runner. The top menu gives you the same operations as buttons — a screenshot, the project context, the whole log, the manifest for the AI. No typing needed.
The very first item in the AI menu. Click it once — the manifest is in your clipboard, ready to paste into any chat.
One click — the active window goes straight to the clipboard as an image. No command, no filename, no path.
Same, for the whole desktop. Ctrl+V into any chat — the AI sees everything.
Assemble the whole project memory — description, errors, tasks, log — and put it on the clipboard in one click.
The full session log, ready to paste. Useful when something went wrong and you want the AI to see it.
Pick a project folder or jump to one of the last twenty. Undo remembers where you worked.
Write what this project is about. It lands in .agent/desc.md and travels with the context every time.
Three fonts — VT323, Consolas, Courier New. Three languages — EN, RU, ZH. Undo restarts itself and comes back with your choice.
Window size, position, recent projects, current project, chosen font and language — all restored on next launch.
The SHOT command takes a screenshot and puts it straight into the clipboard — as an image, not text. Paste it into any chat and the AI sees exactly what you see. No plugins, no screen-share, no permissions.
SHOT:active windowSHOT: fullwhole screenSHOT: "Chrome"window by nameSHOT: wait=3after N secondsSHOT: save=path.pngsave to fileAI writes “SHOT: full”, you press Ctrl+V into the chat. The AI sees the whole desktop — no description needed.
Error in a window? Just SHOT: and paste. Works over any chat, any time, any place.
Run a program, take a shot with SHOT: wait=2, paste it. The AI checks layout, colors, and errors visually.
After every EDIT, Undo runs a syntax check on the file. If something is broken, the response says CHECK FAILED — and the AI sees it before you do. Nothing lands on disk silently.
.pypy_compile.jsonjson.loads.html</html>, script balance.jsbraces & parensCHECK: pathmanual check anytimeAn EDIT can carry multiple FIND/REPLACE blocks. Undo checks every block first. If a single one is missing, nothing is applied — the file never ends up half-edited. And edits are idempotent: applying the same block twice changes nothing the second time.
All FIND blocks are validated before any write. One missing block → nothing changes. No partial states.
If a block is not found, Undo reports it and skips. It never duplicates lines — applying an EDIT twice is a no-op the second time.
CRLF vs LF is normalised on the fly. A Unix edit applies cleanly to a Windows file without touching the rest.
Edit Undo’s own source with Undo. It saves a backup, runs the syntax check, then restarts itself in place — 800 ms later you’re looking at the new version, same window size and position.
1edit Undo.py2backup & check3restart in place4same window size5new code runningCommands read like instructions. The first line defines the operation; the following lines contain the path, text or parameters.
FILE: src/app.pycreate / replaceEDIT: src/app.pyprecise block editAPPEND / DELETEappend / deleteRENAME / TOUCH / MKDIRfile & folder opsREAD: src/app.py | 1-80read with linesHEAD / TAIL: path | Nfirst / last NSTAT / COUNT / HASHsize, words, md5+sha1FIND: path | textsearch in fileSEARCH: TODOsearch projectREGEX: path | patternregex searchLIST / TREEfolder / project treeCHECK: src/app.pysyntax checkCALC: 2**16safe calculatorSNIPPET: python_cli18 code templatesBACKUPS / DIFFlist / compare↑ ↓command historyright-clickcopy / paste menu↑ ↓command historyright-clickcopy / paste menuRESTORE: src/app.py | 1restore versionCLEANUP / BACKUP_RULEbackup retentionCTX: / NOTE: / TASK:project memoryREMIND: ctx=30context reminderSHOT: / SHOT: fullscreenshotsCMD: run / open / foldersystem commandsLOG: Nlast N log linesAll work passes through the clipboard. There are no hidden actions: the command and the response are shown in the Undo log.
Describe the result you want. If context is needed, request CTX first.
The AI formats the command in a separate block. The Copy button puts it into the clipboard.
The agent recognizes the marker, performs the action, shows the log and returns the result.
Paste the result. The AI checks it and prepares the next well-grounded step.
Before FILE, EDIT, DELETE and RENAME, Undo saves a backup. You can view the diff, roll back to a chosen version and configure automatic cleanup of old backups.
Every edit makes a backup. Every launch, Undo tidies up: files older than 30 days are deleted, only the 30 newest versions are kept per file, and anything younger than one hour is never touched.
Fully configurable from the same window:
Inside each project Undo keeps a small .agent/ folder. It stores the idea, the errors you solved, the tasks still open, and a running log. One command — CTX: — collects everything into a single block of text for any AI chat.
CTX:assemble contextNOTE: textadd a noteTASK: add textadd a taskTASK: done Nmark doneTASK: listlist tasksREMIND: ctx=30reminder every N editsOpen a fresh AI chat, paste CTX:, and the assistant knows your project name, its goals, the errors you already fixed, and what’s still on the list.
Undo never forgets. Every session ends where the next one begins — no re-explaining, no “remind me what we were doing”.
Not sure what this folder was for? Run CTX: and read it yourself — description, tasks, notes, history, all in one place.
A small local agent that gives any AI assistant a working hand on your machine — through the clipboard, with full transparency and backups.
Undo is a terminal-style desktop application. You run it locally. The AI writes a command. You copy it into the clipboard. Undo reads the clipboard, executes the command on disk and writes the result back. You paste the result into the chat. That is the whole protocol.
No server. No account. No internet needed. No API keys. No telemetry. Everything happens on your machine.
Modern AI assistants are great at writing code and reasoning about it, but they cannot touch your file system. Cloud “tool use” requires accounts, keys, network and trust in a third party. Undo replaces all of that with the clipboard — the one channel every OS, every browser and every chat already supports.
Anything that can show a text block with a Copy button: ChatGPT, Claude, DeepSeek, Gemini, local LLM frontends (Ollama, LM Studio, SillyTavern), even Notepad.
MIT. Take it, fork it, ship it, sell it — no questions asked.
Yes. When a command with a marker lands in the clipboard, Undo recognizes it automatically and shows the result in the log.
Undo returns an error message. Before the next edit the AI can request the file contents or specific lines to prepare a precise fix.
Yes. The DIFF command shows the difference against the latest backup. RESTORE brings back a chosen version and saves the current state first.
Run CTX and paste the assembled context into the chat. It includes project metadata, description, notes, tasks and log.
No. Undo has no network code by design. Nothing leaves your machine.
Only if you run the .py source. The compiled .exe works on its own.
Undo ships with a manifest — a single text document that tells any AI assistant how to work with the agent. Copy it, paste it into a new chat, and the AI instantly knows all the commands, the rules, and the backup policy. No training, no configuration.
1.Open Undo → AI menu2.Click “Copy manifest for AI”3.Paste it in any chat4.AI is ready to workWorks with ChatGPT, Claude, DeepSeek, Gemini, local LLMs. Anything that can display a text block with a Copy button.
A single installer. One folder on your machine. No Python required, no account, no network.
DOWNLOAD UNDO_SETUP.EXE ↓
Installs into %LOCALAPPDATA%\Undo. Creates a desktop shortcut. Includes an uninstaller.
Explore the project. Make changes. Check the result. Return to any version — command after command.
EXPLORE COMMANDS →