tmux, connecting over SSH, and attaching the editors and agents you already use — Zed, VS Code, Claude Code, and Codex.
For the underlying lifecycle and flags, see Boxes; for the in-box runtime, see Environment.
Interactive shell with console
The fastest way into a box is4kr console. It opens an interactive login shell with a TTY and drops you in /work:
console is built for interactive use — it forces a TTY and raw mode by default, inherits your TERM, and runs as root unless you pass --user. A few common variants:
Keep sessions alive with tmux
4kr console is a live connection: if your laptop sleeps, the network drops, or you close the terminal, the shell goes with it. Anything running in the foreground dies. Because dev-base (and box-base) ships with tmux, the fix is to run your work inside a tmux session so it survives disconnects.
Start or attach to a persistent session in one command:
Ctrl-b d — your processes keep running. To get back later, just run the same command again and you land back in the running session. List what’s there with tmux ls:
SSH
4kr ssh connects to a box through the SSH gateway. On Unix it execs into your real ssh client, so keys, agent forwarding, and config all behave exactly as they would for any host:
ssh invocation. The username is <project>--<box>, the gateway host comes from your profile, and the default port is 2222. Print the exact command without connecting:
A reusable SSH config entry
External editors and agents connect best through a named~/.ssh/config host. Take the values from 4kr ssh my-box --info and add an entry:
ssh my-box works directly, and every tool below can target the host alias my-box.
The box’s pod IP changes on stop/resume, but the gateway host and your
~/.ssh/config entry do not — reconnect after a resume and you’re back in.Connect your editor or agent
Each tool below connects over the same SSH gateway. Set up the SSH config entry first; then point the tool at the host alias (my-box).
Zed
Zed’s remote development opens a project on a remote host over SSH and runs the Zed server there transparently.cmd-shift-p → projects: open remote in Zed and pick the my-box host. Zed installs and manages its server-side component for you on first connect.
VS Code
VS Code offers two ways to work in a box. Remote - SSH (docs) connects your local VS Code to the box and runs the VS Code server there over SSH. Install the Remote - SSH extension, then:Remote-SSH: Connect to Host… from the command palette and choose my-box.
VS Code Server (docs) runs a server inside the box that you reach from a browser — handy when you can’t install the desktop app locally. dev-base ships the VS Code CLI (code), so you can serve the web UI from within the box:
8000 with a service and open the published URL in your browser. The same code binary also supports secure tunnels via code tunnel if you prefer connecting through a tunnel instead of publishing a port.
Claude Code
Claude Code can run over an SSH session: connect to the box, then launchclaude there. dev-base already has @anthropic-ai/claude-code installed globally, so no setup is needed inside the box:
my-box host.
To keep Claude Code signed in across boxes, use the dashboard developer profile to sync Claude credentials or ANTHROPIC_API_KEY into a project user’s shared home. See Coding agent auth.
Codex
Codex supports remote connections to an SSH host.dev-base installs @openai/codex globally, so you can connect Codex to the my-box host and it will run the Codex agent inside the box. To run it directly:
4kr inject writes ~/.codex/auth.json and config into the box (see Boxes → Inject credentials).
For repeatable Codex auth on a project user, use the dashboard developer profile instead. It syncs ~/.codex/auth.json into /home/<user> so the login survives box deletion. See Coding agent auth.
Agent observability
Boxes inject OpenTelemetry defaults for Claude Code and other tools that honor standard OTEL environment variables. Claude Code telemetry, trace export, and prompt logging are enabled withOTEL_LOG_USER_PROMPTS=1.
Forkr also writes a Codex OTEL template at /etc/forkr/codex-otel.toml with log_user_prompt = true. Add that block to ~/.codex/config.toml when you want in-box Codex sessions to export logs, metrics, and traces to Forkr observability.
Search traces with:
Next steps
Boxes
Create, exec, console, and ssh into boxes from outside.
Environment
The in-box runtime: PATH,
/box/* volumes, env vars, and DNS.Services
Expose a box — like VS Code Server — on a public URL.
Exec and console
Full flag reference for exec, console, ssh, and logs.