Pre-release · 0.1 coming soon

A Mac IDE built around
your work,
not your windows.

Every piece of work gets its own track, with its own worktree and agent. Nothing lands on main until you promote it.

On your phone? Side is a Mac app; we’ll email you the link.

Launch news and the occasional build note, never spam. See the privacy policy.

Bring your own agent:or use Heron, built in.

One track, from the code to review

saveNote.tsNotesStore.ts
✕ 1Ln 8, Col 15TypeScript

The editor shows a TypeScript save function; a missing import is flagged and fixed.

Start in the code: an editor drawn on the GPU, with the language server close at hand.

One stage owns the screen.

No permanent sidebars, no chat rail, no terminal drawer. Side shows the stage that fits what you’re doing, and the rest waits in the bar.

Tracks, the fifth stage, is one click on the track pill. Resume, park and archive work there.

Work in tracks,
not tabs.

Each track has its own git worktree, so agents work in parallel without sharing a checkout, and switching tracks never stashes anything.

Stack related changes: schema, then API, then UI. Review and promote each layer on its own. Pull a parent’s changes in one action.

Durable
Resume with your intent, decisions, commands and checkpoints intact.
Attention
See what needs you, what failed and what’s ready to review.
Git underneath
Ordinary branches, commits and pull requests.
Tracks3 active · 1 parked · 3 archived
New TrackSearch tracksShow Archived

NEEDS YOU

Update the onboarding copy
Needs youside/onboarding· 12 min. ago · 2 ahead
⋯Respond
Search notes by title
Activeside/search-notes· active now · 1 subtrack, 1 working
⋯WatchOpen
Fix the save-conflict race
Activeside/save-race· 1 hr. ago · 1 ahead, 1 uncommitted
⋯WatchOpen
Export notes as Markdown
Parkedside/export-md· 3 days ago
⋯WatchResume
Tracks3 active · 1 parked · 3 archived
New TrackSearch tracksShow Archived

NEEDS YOU

Update the onboarding copy
Needs youside/onboarding· 12 min. ago · 2 ahead
⋯Respond
Search notes by title
Activeside/search-notes· active now · 1 subtrack, 1 working
⋯WatchOpen
Fix the save-conflict race
Activeside/save-race· 1 hr. ago · 1 ahead, 1 uncommitted
⋯WatchOpen
Export notes as Markdown
Parkedside/export-md· 3 days ago
⋯WatchResume

Every track has a way back to main.

Tracks branch from main, or from each other when one piece of work depends on another. Each is reviewed and promoted on its own, one layer at a time, so main only ever moves forward.

Agents propose. You promote.

Each agent turn ends in a checkpoint: the diff, the reasoning, the commands it ran and whether the tests passed. Review it, undo it, or promote it toward main.

Visible
Inspect every command, tool call and instruction file.
Reversible
Undo checkpoints. Promote only when you’re ready.
Publishable
Push and open a pull request from Review.
Search notes by titleside/search-notes → main · 1 checkpoint ahead
Publish…
claude-sonnet-5, about checkpoint 1 · 2 min. agoShow more

Normalizes the query once and filters by title, so an empty search keeps every note and the list keeps its order. Tests for case and empty input are in the subtrack.

Unverified
main1Now
1 · Filter notes by title

claude-sonnet-5 · 2 min. ago · +24 −1 · 2 files · 1 command · verified

All changesCopy SHAUndo…
Changes vs main2 files +24 −1Collapse All

Promote to main… is always yours to press.

claude-sonnet-5, about checkpoint 1 · 2 min. agoShow more

Normalizes the query once and filters by title, so an empty search keeps every note and the list keeps its order. Tests for case and empty input are in the subtrack.

Unverified
main1Now
1 · Filter notes by title

claude-sonnet-5 · 2 min. ago · +24 −1 · 2 files · 1 command · verified

All changesCopy SHAUndo…
Changes vs main2 files +24 −1Collapse All

Promote to main… is always yours to press.

Use the agent you already pay for.

Run an outside agent in a track on your own account, through the Agent Client Protocol. Or use Heron, Side’s own, with Anthropic, OpenAI or Gemini models, or local ones through Ollama and LM Studio. Same worktrees, checkpoints and review.

  • Heron built in
  • Claude Code
  • Codexexperimental
  • Gemini CLIexperimental
  • Piexperimental
  • OpenCodeexperimental

Outside agents run on your own subscription or API key, through their own CLI.

Many agents, one track model.

Agents can hand work to each other across providers. Each handoff gets its own track, worktree and review.

Where does the notes list get filtered?

Nowhere yet. NotesList renders whatever visibleNotes returns, and that only sorts.

Search the notes list by title, ignoring case.

Done, in filterNotes.ts. Want tests for case and empty input?

Yes. Give them to Codex.

Handing them to a subtrack on Codex, so they get their own worktree and review.

Hand work to a subtrackCreate subtrack “Write the search tests” on CodexRan
✓ Checkpoint (3f9a2c1): Filter notes by title
Ask about this project…
Where does the notes list get filtered?

Nowhere yet. NotesList renders whatever visibleNotes returns, and that only sorts.

Search the notes list by title, ignoring case.

Done, in filterNotes.ts. Want tests for case and empty input?

Yes. Give them to Codex.

Handing them to a subtrack on Codex, so they get their own worktree and review.

Hand work to a subtrackCreate subtrack “Write the search tests” on CodexRan
✓ Checkpoint (3f9a2c1): Filter notes by title
Ask about this project…

A Mac app, not a web page in a window.

  • Alloy

    Side’s own text engine, drawn with Metal.

  • Language servers

    Completion, hover, signature help, references, rename, quick fixes and formatting.

  • Debugger

    Breakpoints, stepping and variables over DAP. Reads launch.json.

  • Keyboard first

    Every stage, palette and list, with the keymap you already use.

filterNotes.tsNotesList.tsx
Ln 5, Col 22TypeScript
filterNotes.tsNotesList.tsx
Ln 5, Col 22TypeScript

Your colours, in every stage.

Light or dark, or follow the system. Pick an editor theme for each appearance, or import one from VS Code. It colours your code, diffs and terminal.

Appearance
Editor theme in light appearance
filterNotes.tsNotesList.tsx
Ln 6, Col 26TypeScript
filterNotes.tsNotesList.tsx
Ln 6, Col 26TypeScript

The engines are open source.

Heron powers Think. Alloy powers Make. Both are open source under Apache-2.0. Use them in your apps, read the code, or contribute.

Where Side is.

Side runs on macOS 15 or later. Version 0.1 will be the first public build, and it’s still moving quickly: file formats may change before 1.0, and Side migrates them forward when they do.

We'll email you when 0.1 is ready.

Be the first to try it.

On your phone? Side is a Mac app; we’ll email you the link.

Launch news and the occasional build note, never spam. See the privacy policy.