Getting started
Pack. Move. Work.
Install Desk
Section titled “Install Desk”Desk supports Linux and macOS on x64 and ARM64, including Linux inside WSL. With Node.js 20 or newer and npm installed, run:
npm i -g @centillex/deskdesk --helpOn Windows, run the installation command inside your WSL Linux terminal, using Node.js and npm installed in WSL.
Keep npm’s optional dependencies and install scripts enabled. npm installs a native
Go executable built with CGO_ENABLED=0. Desk embeds SQLite and needs no Node.js,
SQLite installation, or C toolchain at runtime.
Install the agent you want to use separately: Claude, Codex, Qoder, or Bob.
Save a project
Section titled “Save a project”Stop the source agent and other processes writing your project, then run:
cd /path/to/projectdesk pack --from=claudeDesk prints a pack ID and its tar archive path. Your original files remain in place. A pack includes the workspace, supported native settings, and the project’s sessions. Known credential filenames are filtered from native agent state; project files are copied in full. Packs can contain secrets and are stored in plaintext.
If exactly one source agent can be detected, desk pack is sufficient.
Move to another agent
Section titled “Move to another agent”Install and configure the target agent before launching it. From the same project directory, use its latest saved pack:
desk move --to=codexDesk keeps the current project directory and restores readable conversation text into Codex’s native session storage. Codex uses your existing HOME, configuration and login. Desk prints the working directory and HOME.
To choose a particular pack, or restore it from another directory, supply its ID:
desk move PACK_ID --to=codexWithout an ID, Desk matches the source directory recorded in the pack metadata.
If none exists, run desk pack first. Pack again to include new changes.
--to accepts claude, codex, qoder, and bob. Source and target must differ.
Bob launch currently supports version 2.0.2.
See what Desk saved
Section titled “See what Desk saved”desk lsdesk psls shows saved packs. ps shows the sources and targets managed by Desk, including
agents that have already exited. It does not list unrelated agents on your machine.
Storage location
Section titled “Storage location”Desk stores data in ~/.desk/store by default. Set DESK_HOME=/path/to/desk
to use /path/to/desk/store. Use the same setting across Desk commands.
Capture individual projects that do not contain the active store.
desk ls uses short IDs, relative creation times and readable archive sizes.
Use desk ls --no-trunc for full IDs; move accepts unique ID prefixes.
See storage and archives for the directory layout.
Pick up moved work later
Section titled “Pick up moved work later”Use your agent’s native continue or resume command in the moved workspace with your normal HOME. Follow the examples for Claude, Codex, Qoder, or Bob.