1. Install and first run
Take the build for your platform from the Download page and run it. Straight after installing, the only thing you need is git. If you mean to use an agent, the CLI you already use (Claude Code, Codex and the rest) only has to be on PATH — codeme installs nothing for you and uses only what is already there.
There is no sign-in screen on first run. There is no account.
2. Open a project
Open a folder from the project list at the top of the sidebar. CtrlR brings the recent list back. You can keep several projects open at once, and each project's worktrees stack underneath it.
The sidebar has two layouts to pick from (workbench.sidebar):
one-rail— projects, worktrees and files stack in one column on the left. This is the default.two-rails— worktrees per project on the left, files on the right.
3. Make a worktree
Make a worktree with + on the project row. Give a new branch name and it makes that branch and the worktree together; pick a branch that already exists and it makes only the worktree.
Why a worktree rather than a branch switch. Switching branches rewrites the files in the same directory, and the build cache and node_modules go stale every time. A worktree uses a directory of its own, so you can keep three open at once and leave each build standing.
4. Attach an agent
Pick an agent from the + menu on the worktree card. That menu shows two things as separate items.
- Start fresh — opens an empty session.
- Resume — picks up the session that was running in that worktree.
Whether an agent is running, or waiting on you, shows as a number in the menu bar. When the window is not in front, an OS notification says so instead — when it is in front the corner toast does that job, so the default is to send no notification.
5. Read what changed
Ctrl⇧X opens the Agent changes panel. The files the agent touched on the left, that file's diff on the right.
- The baseline is the moment the agent started. Edits you made before that are not mixed in.
- The folded lines between hunks open, down to "which function these three lines sit in".
- You can switch to a side-by-side view.
- When you have read it, Mark reviewed moves the baseline forward.
6. Commit and push
Ctrl⇧G is the commit panel, Ctrl⇧H the history graph. Staging, committing and pushing are in one place, and pushing lives on the same screen as the commit — you do not go looking for somewhere to push once you have committed.
The history draws branches splitting and joining as they actually are. Measured on a repository of a hundred thousand commits.
7. Connect My work (optional)
Ctrl⇧Y opens the My work panel. Review requests on top, yours underneath. GitHub, Forgejo and Jira are read directly through their own APIs, and connecting takes one paste of a token in the panel.
- The token goes to the macOS keychain.
- The settings file keeps only the address. No IPC command hands a token back to the window.
- A connection you are not signed in to is shown not as a failure but as one line with the address it called, and a Sign in button.
Click a pull request and you either open it in the browser or make a worktree on its branch. If the branch is not on this machine, it is fetched and then made.
8. Pick a theme
A theme has two axes. Change one and the other stays where it is.
| Settings | What it paints | What you can pick |
|---|---|---|
workbench.theme |
The window's own look — sidebar, toolbar, panels | system · light · dark |
workbench.codeTheme |
The surfaces code is drawn on — editor · terminal · diff | the whole catalogue |
The theme menu in this site's header uses part of that same catalogue — it comes out of the same file.
9. Shortcuts
The default scheme is the VS Code layout (there is an IntelliJ scheme too).
| Key | What it does |
|---|---|
| ⌘1 / 2 / 3 | Layout — one group / group + terminal / two groups + terminal |
| Ctrl` | New terminal |
| ⌘\ | Split the editor |
| ⌘P | Go to file |
| ⌘⇧F | Find across files |
| Ctrl⇧G | Source control (commit) |
| Ctrl⇧H | History |
| Ctrl⇧X | Agent changes |
| Ctrl⇧Y | My work |
| Ctrl⇧D | Containers |
| Ctrl⇧Q | Databases |
| ⌘B | Fold and unfold the sidebar |
| CtrlR | Open a recent project |
| ⌘, | Settings |
10. When you get stuck
Completion, hover and go-to-definition do nothing
That language's language server has to be installed on this machine — of rust-analyzer, gopls, clangd and pyright, only the ones already there are used. When there is none, the status bar says so. TypeScript and JavaScript are not in the list because Monaco answers for them with its own service.
The My work panel is empty
The token is missing or expired. It is shown not as a failure but as one line with the address it called, and a Sign in — so start by checking that the address on that line is right.
The terminal draws broken characters
On a machine with no GPU renderer, the core works that out and falls back to the CPU renderer. If it still looks wrong, you can pick the renderer yourself in settings.
Anything else
Tell us through wherever you got the build. No diagnostic data is sent automatically, so what happened is only what you write down.