Todos los comandos de la CLI

Cada comando de autodev, exactamente como la CLI lo declara: su firma, sus flags, sus valores predeterminados y lo que imprime.

Ejecutar autodev sin comando #

autodev sin comando nunca abre una UI de terminal: el panel de VS Code es la única interfaz. autodev sin comando es texto, y retoma lo que un reinicio o un fallo dejó atrás:

usage
autodev

Ejecutar y observar #

Estos comandos inician una ejecución y la leen de vuelta.

autodev start #

usage
autodev start

Inicia la ejecución de este proyecto, o la retoma. Imprime Thread run started or already running. No acepta argumentos ni flags: lo que la ejecución trabaja viene de autodev send. Iniciar es una intención de continuar, así que borra una petición de pausa que haya quedado de antes.

autodev status #

usage
autodev status [--json]

Imprime el estado de la ejecución: el proyecto, su estado, si el daemon está vivo, la tarea actual, la iteración, el costo estimado, el último heartbeat (marcado con (stalled?) cuando una ejecución activa lleva 40 minutos en silencio), cuándo se retoma la ejecución, si el servidor web está arriba y, en una ejecución que espera, qué espera. --json imprime el sobre de estado legible por máquina (Command v1 StateSubset) en lugar de texto.

autodev attach #

usage
autodev attach [--json]
autodev watch [--json]

Sigue la actividad en vivo del daemon y vuelve cuando la ejecución termina. Ctrl+C solo lo desconecta, y el daemon sigue funcionando. watch es un alias de attach. --json emite Envelope v1 NDJSON (RelayEnvelope) en lugar de texto para personas.

autodev thread #

usage
autodev thread

Imprime el hilo compartido: quién dijo qué, de lo más antiguo a lo más nuevo. Un mensaje tuyo que ninguna ejecución ha leído todavía aparece al final como Queued for next run.

autodev report #

usage
autodev report [--hours <n>] [--json]

Lo que se ejecutó durante la noche: trabajo hecho, lo que se bloqueó, cuota quemada, lo que te necesita. --hours <n> fija la ventana del informe en horas, y el valor predeterminado es 12. --json emite el modelo de vista como JSON en lugar de texto.

autodev quota #

usage
autodev quota [--days <n>] [--series] [--json]

Capacidad de la suscripción usada, dejada ociosa y convertida en commits. --days <n> fija el período del informe en días, y el valor predeterminado es 7. --series imprime tramos por día y por proveedor en lugar de los totales del período. --json emite el modelo de vista como JSON en lugar de texto.

Hablar con la ejecución #

El hilo es la única entrada. Estos comandos ponen algo en él, o responden a lo que un participante puso delante de ti.

autodev send #

usage
autodev send [--image <file>]... [--no-start] "<message>"

Publica un mensaje en el hilo compartido. El primer mensaje es el objetivo, y cada uno de los siguientes conduce la ejecución. Cada mensaje también se escribe en .autodev/goal.md, bajo un encabezado con la hora, así que el objetivo es un archivo que puedes editar. Varias palabras se unen en un solo mensaje.

Si no hay ninguna ejecución viva, send inicia una e imprime Message sent; run started. Si hay una ejecución viva, pone el mensaje en cola para ella e imprime Message queued.

Un proyecto solo puede correr cuando tiene un equipo que esta máquina confirmó. Antes de eso, send imprime set up the team before sending a message y sale con código 1; autodev team arma un equipo. Un mensaje vacío se rechaza.

FlagPredeterminadoQué hace
--image <file>ningunoAdjunta una imagen al mensaje. Repite la flag para más, hasta 6 imágenes de como máximo 8 MB cada una. Solo se aceptan archivos de imagen.
--no-startapagadaPone el mensaje en cola y no inicia una ejecución.

autodev answer #

usage
autodev answer <noticeId> <text...>

Responde a un aviso: un mensaje que un participante te dejó mientras la ejecución seguía. La respuesta llega a ese participante en un turno posterior, y levanta la retención que el aviso puso sobre una capacidad, salvo que hayas retenido el aviso. El id es el que está en notices.json, n- seguido de ocho dígitos hexadecimales. Con un id que ningún aviso tiene, imprime No notice with id <id>. y sale con código 1. El panel responde a un aviso sin pedir el id.

autodev notice #

usage
autodev notice hold <id>
autodev notice release <id>
autodev notice dismiss <id>

Cambia un aviso sin responderlo. hold mantiene el aviso abierto, y mantiene suspendida la capacidad que suspendió, hasta que lo liberes: una respuesta o un mensaje tuyo ya no lo sueltan. release termina la retención y levanta la suspensión. dismiss cierra el aviso sin respuesta. Cada uno imprime Notice updated., y un id desconocido imprime No notice with id <id>. y sale con código 1.

Conducir la ejecución #

Estos comandos cambian una ejecución que ya existe.

autodev pause #

usage
autodev pause

Pide una pausa e imprime Pause requested.

autodev resume #

usage
autodev resume

Pide retomar. Si el daemon salió, ejecuta autodev start para iniciarlo de nuevo.

autodev stop #

usage
autodev stop

Detiene el daemon con cuidado, después de la iteración actual.

autodev kill #

usage
autodev kill

Mata a la fuerza el árbol de procesos del daemon, cierra el navegador que la ejecución mantenía abierto y devuelve el estado a inactivo. Dice cuál de dos cosas pasó: terminó un daemon en ejecución y el agente que había iniciado, y lo que estaba sin terminar puede haber quedado a medias en el árbol de trabajo; o no había nada corriendo, y limpió el estado que había quedado.

autodev approve #

usage
autodev approve

Aprueba el gate pendiente de acción irreversible e inicia el daemon de nuevo, para que la acción se realice. Se niega, y dice por qué, cuando no hay un gate pendiente, cuando la ejecución no está esperando en el gate, o cuando un mensaje tuyo está en cola y puede retirar el gate.

autodev deny #

usage
autodev deny

Deniega el gate pendiente: la acción nunca se realiza. Ejecuta autodev start para continuar la ejecución. Se niega en los mismos casos que approve.

autodev new-run #

usage
autodev new-run [--yes]

Empieza de cero. Archiva las sesiones, el hilo, los eventos y el estado de la ejecución terminada, y vacía goal.md y memory.md, para que la próxima ejecución no retome la conversación de la noche anterior. Antes, una copia de cada uno de los dos archivos va al archivo, y los participantes quedan intactos. El archivo es una carpeta con el nombre del día, .run-YYYY-MM-DD, junto al estado de la ejecución en esta máquina, y new-run imprime dónde está.

Como vacía dos archivos que escribiste tú, lo avisa y pregunta Start a new run? antes de mover nada. --yes omite la pregunta. Se niega mientras un daemon está corriendo y apunta a autodev stop. Cuando termine, escribe el nuevo objetivo con autodev send.

Equipo y proveedores #

El equipo es el conjunto de participantes en .autodev/participants/, un archivo cada uno. El archivo de participante describe el archivo.

autodev team #

usage
autodev team

Imprime Team: y su estado, y luego una línea por participante: el id, el proveedor, y el modelo y el esfuerzo, cada uno mostrado como default cuando no está definido. El estado es ready para un equipo que esta máquina confirmó, confirm para un equipo que vino con el proyecto y aún no está confirmado aquí, use_default cuando no hay equipo y existe un equipo predeterminado en esta máquina, y setup cuando todavía no hay nada.

autodev team add #

usage
autodev team add <provider>

Añade un participante que corre en un proveedor. claude, codex y antigravity son los que AutoDev conduce hoy. El id es el nombre del proveedor, o claude-2, claude-3 cuando ese nombre ya está en uso. Empieza sin fijar, en el modelo predeterminado del proveedor. Imprime el id y confirma el equipo en esta máquina.

autodev team remove #

usage
autodev team remove <id>

Quita un participante borrando su archivo. Se rechaza mientras ese participante está en un turno.

autodev team rename #

usage
autodev team rename <id> <to>

Renombra un participante. Su conversación sigue al nuevo nombre. Se rechaza mientras ese participante está en un turno. El planificador desempata en orden alfabético, así que un nombre también decide quién abre un hilo.

autodev team pin #

usage
autodev team pin <id> [--model <model>] [--effort <effort>]

Fija el modelo y el esfuerzo de un participante, escritos en su archivo. Ninguno de los dos se contrasta con una lista, porque los proveedores añaden valores propios. Rechaza un id que no está en el equipo.

autodev team unpin #

usage
autodev team unpin <id>

Quita la fijación, y el participante vuelve a su modelo y esfuerzo predeterminados.

autodev team confirm #

usage
autodev team confirm

Confirma el equipo en esta máquina. Un equipo que vino con el proyecto no corre hasta que lo confirmes, porque un archivo de participante se convierte en flags e instrucciones para una CLI. Imprime Team confirmed.

autodev team default #

usage
autodev team default use
autodev team default save

El equipo predeterminado pertenece a esta máquina y es el equipo del que parte un proyecto nuevo. El primer equipo que armas se guarda solo como predeterminado; después, solo save lo cambia. use copia el equipo predeterminado a este proyecto y lo confirma. save guarda el equipo de este proyecto como el predeterminado.

autodev team template #

usage
autodev team template
autodev team template <name> [--provider <id=cli>]... [--yes]

Sin nombre, lista las plantillas: solo (un participante, builder), builder-reviewer (un constructor y un revisor que comprueba cada cambio) y manager-builder-reviewer (un gestor que asigna bloques, un constructor y un revisor). Con un nombre, aplica una: escribe los participantes de la plantilla, quita los demás participantes del proyecto y confirma el equipo.

--provider <id>=<cli> fija la CLI de un participante de la plantilla, y se puede repetir. Un id que no está en la plantilla es un error. Si el proyecto ya tiene participantes, el comando lista los archivos que reemplazaría y pide --yes. Se rechaza mientras un participante está en un turno.

autodev team edit #

usage
autodev team edit <id>

Imprime la ruta del archivo de instrucciones de un participante. No lo abre.

autodev providers #

usage
autodev providers
autodev providers use <provider> <binPath>

Lista las CLI de agente adoptadas en esta máquina, una por línea como name: path, con PATH cuando la CLI se encuentra en el PATH. Sin ninguna, imprime No providers adopted on this machine. use registra el binario que se ejecuta para un proveedor, para una CLI instalada fuera del PATH. El inicio de sesión sigue en la CLI del propio proveedor: AutoDev nunca pide ni guarda una credencial.

Checkpoints y proyectos #

AutoDev escribe un checkpoint a medida que una ejecución avanza. Estos comandos los listan, vuelven a uno de ellos y listan los proyectos de la máquina.

autodev restore #

usage
autodev restore [<id>]

Sin id, lista los checkpoints de AutoDev. Con un id, devuelve el código a ese checkpoint e imprime dónde quedó, y la rama que guardó el trabajo del que se apartó, cuando hay una.

Se niega mientras un daemon está corriendo, imprime Stop the run before restoring — restore resets the project tree. y sale con código 1.

autodev workspaces #

usage
autodev workspaces
autodev workspaces forget <path>

Lista todos los proyectos de AutoDev de esta máquina. forget <path> quita uno del índice de workspaces. Cualquier otra acción, o forget sin ruta, imprime un error y sale con código 1.

Ajustes y estado #

Estos comandos leen los archivos que AutoDev guarda de un proyecto. Las claves, los valores predeterminados y las variables de entorno de config tienen su propia página, Todas las claves de configuración.

autodev config #

usage
autodev config
autodev config set <key> <value>
autodev config unset <key>

Ve o cambia los ajustes de la ejecución. Sin subcomando, imprime cada clave con su valor efectivo y de dónde viene: una variable de entorno, el archivo de configuración o el valor predeterminado. set guarda un valor y unset lo quita. Algunas claves pertenecen a la máquina y se escriben en ~/.autodev/config.json; las demás van al .autodev/config.json del proyecto. set nunca imprime un valor secreto: imprime (hidden) en su lugar.

autodev memory #

usage
autodev memory

Imprime .autodev/memory.md, o (no memory yet) cuando no hay ninguno.

autodev browser login #

usage
autodev browser login <url>

Abre el perfil de navegador propio de AutoDev, visible, en una página de inicio de sesión. Inicia sesión una vez y el inicio de sesión queda para todas las ejecuciones siguientes. Las herramientas de navegador usan ese perfil, que es aparte de tu navegador de todos los días. La dirección debe ser una URL completa, con http:// o https://.

Si una ejecución tiene ese navegador abierto y visible, la página se abre en una pestaña nueva de él, y cierras la pestaña después de iniciar sesión. Si la ejecución lo tiene oculto, no hay ventana donde iniciar sesión, y el comando dice que lo hagas cuando la ejecución termine. Sin Chrome ni Edge, pide que apuntes AUTODEV_BROWSER a uno de ellos. El panel tiene la misma acción.

Servidores e interfaces de máquina #

Estos comandos sirven AutoDev a algo que no es una persona en una terminal.

autodev serve #

usage
autodev serve [--daemon] [--port <n>] [--token <t>] [--tier <t>] [--tunnel]

Sirve el plano web (eventos SSE y comandos POST) en 127.0.0.1, para una UI local o la extensión. No inicia una ejecución. Sin --daemon, corre en esta terminal. Cualquier acción distinta de stop y pair imprime un error y sale con código 1.

FlagPredeterminadoQué hace
--daemonapagadaCorre separado y supervisado. Sobrevive a la terminal y, tras un reinicio, vuelve a levantarse cuando ejecutas autodev en cualquier proyecto.
--port <n>8787El puerto a usar. 0 elige un puerto efímero.
--token <t>generadoEl token bearer que los clientes deben presentar. Usa AUTODEV_WEB_TOKEN cuando está definida, y se genera en caso contrario.
--tier <t>fullEl nivel de telemetría del flujo de eventos: status, events o full. Cualquier otro valor se lee como full.
--tunnelapagadaExpone el plano públicamente mediante un quick tunnel de cloudflared, para el check-in remoto.

Con --daemon, imprime la dirección y dice dónde queda guardado el token, ~/.autodev/serve.json.

autodev serve pair #

usage
autodev serve pair

Pide al servidor en ejecución un código de emparejamiento, e imprime el código, cuándo caduca y, con un túnel arriba, la dirección pública que se abre en el teléfono. Sin servidor en ejecución, imprime remote access is not running y sale con código 1.

autodev serve stop #

usage
autodev serve stop

Detiene un servidor separado. Si no hay ninguno, lo dice y borra cualquier descriptor viejo.

autodev mcp #

usage
autodev mcp

Sirve las herramientas de AutoDev para un participante por MCP stdio: el hilo, la memoria, los avisos y, cuando están activadas, las herramientas de navegador. La CLI de un participante lo inicia, y encuentra el proyecto mediante AUTODEV_ROOT.

autodev dispatch #

usage
autodev dispatch <envelope>

Despacha un sobre Command v1, dado como JSON: la interfaz de máquina para comandos. Imprime una línea JSON, ok, kind y result o reason, y sale con un código distinto de cero ante un rechazo o un sobre mal formado.