detachbox
PáginasElige y configura tu agente

Elige y configura tu agente

Cada box ejecuta un agente: cada pestaña de terminal nueva lo arranca. Claude Code, Codex, OpenCode y Gemini CLI vienen preinstalados con las aprobaciones desactivadas, junto a Docker y un juego completo de herramientas de desarrollo.

Elige el agente de un box

Eliges el agente en 2. Agente al crear un box. Para cambiarlo después:

  1. Abre el box y quédate en Resumen.
  2. En el panel Agente, elige un valor nuevo en Cada pestaña nueva ejecuta.
  3. Abre una pestaña nueva. El cambio se aplica a las pestañas que abras a partir de ahora. Las pestañas abiertas conservan su agente.
La página del box shipyard: CPU, memoria y disco en vivo, el comando SSH, el agente y la cuenta de Claude con la que entra, y los interruptores para lo que pasa cuando el agente se detiene.
AgenteCómo inicia sesión
Claude CodeTu suscripción de Claude, conectada en el panel, o un inicio de sesión dentro del box
CodexTu suscripción de ChatGPT, conectada en el panel, o un inicio de sesión dentro del box
OpenCodeSu propio inicio de sesión, dentro del box
Gemini CLISu propio inicio de sesión, dentro del box
Claude Code · Z.aiTu propia clave de API de Z.ai
Claude Code · DeepSeekTu propia clave de API de DeepSeek
ShellUn shell de login normal. Ejecuta la herramienta que quieras

Cambiar a un agente que usa otro tipo de suscripción desvincula la suscripción anterior y desactiva la rotación. Cómo conectar suscripciones se explica en Suscripciones.

Lo que trae cada box

Los boxes nuevos usan la imagen box-v3:

  • Ubuntu 26.04 LTS, Docker Engine con compose, Node 24, Python 3.14, git y tmux.
  • El usuario dev con sudo sin contraseña, en el grupo docker.
  • CLI de agentes: Claude Code, Codex, OpenCode, Gemini CLI, Happy y DeepSeek Harness (dsh), más los wrappers claude-zai y claude-deepseek.
  • Git y GitHub: gh, glab, git-lfs, delta.
  • Búsqueda y datos: ripgrep, fd, fzf, jq, yq, bat, httpie.
  • Clientes de bases de datos: sqlite3, psql, redis-cli, mariadb.
  • Gestores de paquetes: pipx, uv, mise, bun, pnpm, yarn.
  • Nube: kubectl, helm, OpenTofu (tofu), AWS CLI v2.

Las toolchains de lenguajes no vienen preinstaladas, para no comerse tu disco. Añade la que quieras con mise:

mise use -g go@latest

Las CLI viven en tu carpeta personal, así que se actualizan sin sudo. Un box creado antes de box-v3 conserva su imagen Debian anterior hasta que lo restableces. La línea Imagen de Ajustes muestra cuál usa un box.

Las aprobaciones están desactivadas

Un box es un sandbox que puedes restablecer, así que cada agente viene en su modo sin confirmaciones. Un agente que espera un sí a las 2 de la mañana no termina nada.

AgenteModo
Claude CodebypassPermissions
CodexPolítica de aprobación never, acceso completo
Gemini CLI--approval-mode=yolo
OpenCodePermiso allow

Las pantallas de primer arranque y las preguntas de confianza en carpetas ya están respondidas. Abre una pestaña y el agente está listo para una tarea.

Instrucciones compartidas en AGENTS.md

/etc/detachbox/AGENTS.md es un único archivo de instrucciones que leen todos los agentes. Les explica cómo funcionan las URL de vista previa y cómo darte un comando SSH para puertos TCP sin HTTP. Está enlazado en ~/.claude/CLAUDE.md, ~/.codex/AGENTS.md, ~/.config/opencode/AGENTS.md y ~/.gemini/GEMINI.md.

Si tienes tu propio archivo en uno de esos sitios, sigue siendo tuyo. detachbox solo añade una referencia al archivo compartido.

Claude Code sobre Z.ai o DeepSeek

claude-zai y claude-deepseek ejecutan Claude Code contra el endpoint compatible con Anthropic de cada proveedor, con tu propia clave de API. Cada uno tiene su propia carpeta de configuración, ~/.claude-zai o ~/.claude-deepseek, así que tu sesión de Claude en ~/.claude no se toca.

Guarda la clave en el box una vez y todas las pestañas la usan:

mkdir -p ~/.config/detachbox
read -rs -p 'Key: ' k && printf '%s\n' "$k" > ~/.config/detachbox/zai.key
chmod 600 ~/.config/detachbox/zai.key

Para DeepSeek, escribe ~/.config/detachbox/deepseek.key. También sirve exportar ZHIPU_API_KEY o DEEPSEEK_API_KEY. Sin clave, el wrapper te dice dónde ponerla. Los proveedores Z.ai y DeepSeek integrados en OpenCode se activan con los mismos archivos de clave.

Datos del box en box.env

/etc/detachbox/box.env describe el box a cada shell y a cada agente. detachbox lo reescribe al crear, restablecer, arrancar y cambiar de tamaño, así que no lo edites.

VariableValor
DETACHBOX_BOXEl nombre del box
DETACHBOX_SSHEl comando SSH de este box
DETACHBOX_PLANEl código del plan
DETACHBOX_CPUSNúmero de vCPU
DETACHBOX_RAM_GBMemoria en GB
DETACHBOX_DISK_GBDisco en GB
DETACHBOX_URLLa página del box en el panel

Las variables se cargan en shells de login, interactivos y no interactivos, incluido ssh <name>@ssh.detachbox.com <command>.

Abre una página en tu navegador con detachbox-open

detachbox-open <url> abre un enlace http o https en el navegador de quien está ante la terminal del box. xdg-open, open y $BROWSER apuntan a él. Así, los inicios de sesión que lanzan gh, el módulo webbrowser de Python o un agente llegan a tu navegador.

Un enlace al propio localhost:<port> del box se convierte en su URL de vista previa. Otros esquemas, como file:, se rechazan. La guía de la terminal muestra qué hace el panel cuando llega una página.

Pásale un prompt a un agente con detachbox-say

detachbox-say <tmux session> <text> entrega un texto al agente de esa pestaña como un prompt nuevo. Usa el mecanismo de entrega del propio agente, nunca pulsaciones de teclas, así que la línea que estás escribiendo queda intacta. Funciona con Claude Code y Codex.

El servidor lo usa para escribir «continue» cuando un límite se reinicia. El código de salida 3 significa que la pestaña no tiene ningún Claude Code ni Codex en marcha al que entregarlo.