Features · Review & revert
Nothing lands without a second look.
File writes and terminal commands are gated by approval cards that show the exact path, the unified diff and the command. Allow once, always allow, or deny — and roll back afterwards if you change your mind.
src/lib/client.ts
- return fetch(url, init)
+ return request(url, { ...init, retry: 3 })
+ if (!res.ok) throw new ApiError(res)
Interface illustration — sample approval.
What it does
01
Approval cards
Each action shows what will happen: the command, the paths, and a unified diff before it runs.
02
Per-action decisions
Deny, allow once, or always allow that action. Nobody approves a hidden batch on your behalf.
03
Rollback
Every write snapshots the previous file, so you can revert a single file or the whole task afterwards.
Details
What you can rely on.
The small print, written plainly — including the parts that depend on your account.
- Text files up to 2 MB are snapshotted before a write.
- "Review all changes" opens the full diff for a run.
- Interrupted runs resume from per-step checkpoints.
- Skills and MCP servers never grant themselves permissions; approvals still happen at the action.
Availability
Included with every account. Approval applies to every file write and terminal command.
Keep exploring.
Try Devora.
Install the desktop app, open your project, and start with a question about your own codebase.
Windows 10 & 11 · Local workspace · Reviewable edits