Engineer

Submergent for Engineers

The tasks you keep putting off are the ones too big for a chat window and too tedious to hand-write: a rename across two hundred files, a test that fails one run in five, the module you inherited with no coverage. Each one needs something that can read the whole workspace, make the change, and show you exactly what it did — not something you paste snippets into and back out of.

Coming soonSubmergent 1.0.0 · macOS 14+ · Apple Silicon · get notified when it ships
01

Rename a concept across the whole workspace

Editor rename works until the concept leaks into strings, tests, filenames, and docs. Then it becomes an afternoon of grep and hope, and the part you miss surfaces in review a week later.

Ask for it like thisRename the Session concept to Conversation across the workspace, including tests, filenames, and docs. Show me the plan before you change anything.

With Plan Mode on you get the plan first and decide whether to run it. Then the edits land as real file changes, and the Review tab shows the diff against your base ref.

02

Reproduce the test that only sometimes fails

A flaky test costs you the twenty minutes it takes to reproduce it, every time. Most of that is re-running and reading, which is exactly the part you can hand off.

Ask for it like thischeckout.test.ts fails about one run in five. Reproduce it, find the race, and fix it.

The agent runs the test repeatedly, reads the surrounding code, and proposes a fix. Every command it wants to run is subject to the permission you set for the session.

03

Backfill tests on code you did not write

The module with no coverage is the one nobody wants to touch, and the reason nobody touches it is that it has no coverage. Somebody has to go first.

Ask for it like thisWrite tests for src/billing/. Run them, and tell me what you could not cover and why.

Tests get written and run. The useful part is the second half: an honest list of what resisted testing, which is usually where the design needs work.

04

Read the diff before you trust it

An agent that edits files is only as good as your ability to check it. Scrolling a chat transcript to reconstruct what changed is not checking it.

Ask for it like thisWhat did you change, and why did you touch the config file?

The Review tab shows a read-only diff of uncommitted changes against the base ref, and the Files tab shows the workspace tree. Both appear when Developer Mode is on.

05

Keep a task off your current checkout

Handing an agent your working tree while you are mid-task on something else is how you end up with two half-finished changes in one diff.

Ask for it like thisStart this on its own branch off main.

Pick the Worktree environment before the session’s first message and Submergent creates a managed git worktree and branch from the base you choose. Deleting the session keeps both, and tells you where they are.

06

Run the command you would rather not run here

Some commands you want to happen somewhere other than your laptop’s main environment — a full migration, a destructive script, a dependency install you do not trust.

Ask for it like thisRun the full migration against the dev database and report what changed.

Pick the Container environment before the first message and the agent runs inside Docker or Podman. Your workspace is mounted read and write, so this contains the environment, not the file changes.

07

Plan with one model, build with another

The model that reasons best about a design is not always the one you want writing two hundred lines, and re-explaining the task to a second tool costs you the context you just built.

Ask for it like thisGood plan. Switch to Codex and build it.

Change provider or model mid-session and the conversation carries over. Seven providers are supported; you connect the accounts you already have.

08

Run several tasks at once

Waiting on one agent is slower than your own hands. The point of delegation is parallelism, which means more than one session at a time.

Ask for it like thisRefactor auth here. Meanwhile, in the other workspace: find why the sync job retries.

Sessions run concurrently across workspaces, each with its own provider, model, permission, and environment. The sidebar shows which are working and which are waiting on you.

Where it stops

What Submergent will not do.

Submergent gets the change written and shows you what changed. It does not put the change anywhere. Git stays yours: the agent can run git commands you approve, but Submergent itself never commits, pushes, merges, or opens a pull request on your behalf.

Questions engineers ask

Which providers can I use?

Seven: GitHub Copilot, OpenAI Codex, Cursor, Claude Code, OpenCode, Pi, and Ollama. You connect accounts you already have — Submergent reuses the login from a provider CLI rather than running the provider’s OAuth itself. Ollama runs locally with nothing to connect.

Does my code leave my machine?

Your files stay on your Mac. The content you send in a session goes directly from your Mac to the provider you selected, under that provider’s terms — Submergent does not proxy it through a service of ours and does not keep a copy.

Do I need a git repository?

Not for a local session — a workspace is any folder. The Worktree environment does need git, since it creates a real worktree and branch.

Can I see every command before it runs?

Yes. Each session carries a permission setting that decides whether commands run freely, ask first, or are blocked, and Plan Mode gets you a written plan before anything is touched. Changing the permission applies to the next message, not the turn already running.

Ready when you are.

Coming soonSubmergent 1.0.0 · macOS 14+ · Apple Silicon · get notified when it ships