Guide

Move a task to another machine or agent, mid-way

To carry a coding-agent task over to another computer, the new place needs the branch, the uncommitted changes and what happened so far. In wisp, the Runs on button next to the follow-up box moves all three with your next message: the work travels as a git bundle into a worktree on the same branch, and the agent there gets the earlier turns. The same follow-up can switch from Claude Code to Codex.

Source on GitHub

Free and open source · Claude Code, Codex, Cursor CLI, opencode, Antigravity CLI, Grok Build · macOS, Linux, Windows (beta) · Node 20+

When you’d move a task

Doing it by hand

Git can carry the work. The agent’s conversation can’t: it stays in the first CLI’s session files on the first computer.

# on the laptop: commit what's there, bundle the branch, copy it over
git add -A && git commit -m "wip: stripe v2"
git bundle create /tmp/work.bundle origin/main..HEAD
scp /tmp/work.bundle devbox:/tmp/

# on the dev box: a worktree on the same branch
cd ~/code/app && git fetch /tmp/work.bundle HEAD:stripe-v2
git worktree add ../app-stripe stripe-v2
cd ../app-stripe && codex   # starts with no idea what happened so far

Then you explain the task again: what was asked, what the first agent did, what’s left. And the WIP commit is now part of your branch.

With wisp: one follow-up

  1. Connect the other computer once, under Machines. It needs SSH with a key, Node.js 20+ and the agent CLIs, signed in. See agents on multiple machines.
  2. Click the Runs on button (the laptop icon next to the follow-up box) and pick the machine. To switch agents too, use the harness button beside it and pick Codex, opencode or another model.
  3. Type the follow-up and press Enter. A running task has to stop or finish first.

Then wisp:

  1. packs the task’s branch and its uncommitted and untracked changes into a git bundle (your own checkout and index are left alone);
  2. carries it to the other computer, which reuses its checkout of the project or clones the repo’s origin;
  3. unpacks it into a worktree there, on the same branch, with the uncommitted changes still uncommitted;
  4. starts the agent on your follow-up, with the earlier turns written out ahead of it: each request, the report it got and the files that were edited;
  5. archives the old card with a Continues on devbox link. The new card shows From MacBook and tags each earlier turn with where it ran.

Rerun has the same picker, for starting the task over somewhere else instead.

Switch agent without moving

The harness button in the follow-up box works on its own too. What the next agent knows depends on what you switch:

You switchConversationWhat it’s told
Model or thinking levelSame conversation, resumedNothing extra: it was there
Harness (Claude Code → Codex)Codex starts its own, in the same folderEvery turn it didn’t see, newest first, up to about 24k characters
Back to the first harnessIts own session, resumedOnly what happened while it was away
ComputerA new session on that computerEvery earlier turn, tagged with where it ran

Each turn’s badge shows the harness that ran it, so the card reads as one story across agents and computers.

From the CLI and API

# switch agent and model on the next follow-up
wisp reply <id> "finish the other call sites" --agent codex

# move the task too: machine is a machine's id, "" for this computer
curl -X POST localhost:4477/api/sessions/<id>/reply \
  -H 'content-type: application/json' \
  -d '{"text":"finish the other call sites","machine":"devbox","agent":"codex"}'

The MCP tool wisp_reply takes agent, model and effort as well. See integrations.

Questions

Can I move a task while the agent is running?
No. Stop it or let it finish first, so there is a settled state to pack. Then send the follow-up with another computer picked.
Does the agent on the other computer remember the conversation?
Its CLI starts a new session there, since the old one stays on the first computer. wisp writes the earlier turns into the follow-up: each request, the report and the files edited, newest first. The code itself is already in the worktree.
What if the other machine doesn’t have the project?
wisp reuses a clone of the same repo if it finds one there, or clones the project’s origin first. A repo without a remote can’t be cloned this way; add its folder on that machine instead.
Can I move it back?
Yes. Use the same button on the new card and pick this computer. The work and history come back the same way.