Inventario contrastado con Comal **0.1.0**, el **2026-10-16**. Las referencias de código señalan el punto inspeccionado, no disponibilidad garantizada de servicios externos. ## Uso general ```sh node bin/comal.mjs [opciones] [prompt] node bin/comal.mjs --help ``` Los flags no conceden permisos implícitos salvo que su contrato lo indique. Los placeholders ID, UUID, PERFIL y rutas se sustituyen por valores reales. ## Todos los argumentos | Argumento | Tipo | Predeterminado | Uso y límites | Fuente | | --- | --- | --- | --- | --- | | `--print / -p` | boolean | `false` | Ejecuta un turno y termina (también acepta stdin) Sin terminal se activa también; stdin si falta prompt, máximo 1 MiB. | `src/cli.mjs:138` | | `--help / -h` | boolean | `false` | Muestra esta ayuda Ayuda sin modelo. | `src/cli.mjs:138` | | `--version / -v` | boolean | `false` | Muestra versión Comal 0.1.0. | `src/cli.mjs:138` | | `--demo` | boolean | `false` | Demo determinista sin credenciales; permite sus ediciones Guion determinista sin credenciales; acceptEdits por defecto; no subagentes. | `src/cli.mjs:139` | | `--cwd` | string | `process.cwd()` | Workspace (por defecto: directorio actual) Debe existir y se resuelve realpath. | `src/cli.mjs:139` | | `--model` | string | `autodescubrimiento local` | Modelo; por defecto descubre el local en /v1/models ID exacto del catálogo; Anthropic fallback claude-sonnet-4-6; Gemini directo gemini-2.5-flash. | `src/cli.mjs:139` | | `--base-url` | string | `http://llama.local:11438/` | Endpoint; por defecto http://llama.local:11438/ Varía según protocolo/perfil/login. | `src/cli.mjs:139` | | `--provider` | string | `openai` | openai (predeterminado) \| anthropic \| gemini openai\|anthropic\|gemini; gemini explícito o perfil. | `src/cli.mjs:139` | | `--profile` | string | `null` | Perfil de .comal/providers.json (endpoint/modelo/capacidades) Nombre de perfil; COMAL_PROFILE o perfil persistido/defaultProfile. | `src/cli.mjs:140` | | `--providers-config` | string | `.comal/providers.json` | Archivo de perfiles; claves sólo vía apiKeyEnv O COMAL_PROVIDERS_CONFIG. JSON versión 1. | `src/cli.mjs:140` | | `--name` | string | `null` | Nombre visible a otras sesiones Nombre persistido de sesión de 1–120 caracteres, distinto al perfil de proveedor. | `src/cli.mjs:140` | | `--listen` | boolean | `false` | Mantiene el CLI escuchando mensajes y responde al quedar idle Necesario en CLI no interactivo para seguir recibiendo; TUI escucha automáticamente. | `src/cli.mjs:140` | | `--inbound` | string | `accept` | accept (predeterminado) \| hold \| refuse accept\|hold\|refuse; estado persistido de sesión puede restaurarse. | `src/cli.mjs:140` | | `--permission-mode` | string | `default` | default \| acceptEdits \| plan \| auto default\|acceptEdits\|plan\|auto; --demo usa acceptEdits. | `src/cli.mjs:141` | | `--allowed-tools` | string | `[]` | Autoriza nombres separados por comas Nombres separados por coma o espacio; no anulan denegación ni gobernanza. | `src/cli.mjs:141` | | `--disallowed-tools` | string | `[]` | Deniega nombres; prevalece sobre autorización Denegación prevalece. | `src/cli.mjs:141` | | `--resume` | string | `null` | Reanuda una sesión de este workspace UUID de este workspace, excluye --continue; hijos sólo vía padre. | `src/cli.mjs:142` | | `--continue / -c` | boolean | `false` | Reanuda la sesión más reciente Última sesión del workspace. | `src/cli.mjs:142` | | `--output-format` | string | `text` | text \| json \| stream-json (con --print) text\|json\|stream-json; sólo modo print. | `src/cli.mjs:142` | | `--max-turns` | string | `12` | Llamadas antes de extender trabajo con progreso (12) Entero 1–100; llamadas del tramo, no operaciones; no acepta unlimited/0. | `src/cli.mjs:143` | | `--work-max-calls` | string | `80` | Límite total con continuación de tareas (80; 0 desactiva) Entero 0–10000; 0 DESACTIVA continuación automática, no significa ilimitado. | `src/cli.mjs:143` | | `--system-prompt` | string | `null` | Instrucciones adicionales Instrucciones iniciales personalizadas, junto con contexto e instrucciones de workspace. | `src/cli.mjs:143` | | `--state-dir` | string | `.comal/` | Ubicación del estado; por defecto .comal/ (reutiliza .harness/ existente) Reutiliza .harness/ si ya existe y no existe .comal/; explícito se resuelve desde cwd del proceso. | `src/cli.mjs:143` | | `--context-window` | string | `auto; fallback 45000` | Límite explícito; automático según modelo, fallback 45000 Entero 4096–2000000; flag > entorno. Sin límite explícito sigue los metadatos; con límite aplica el menor anunciado/configurado. Se reserva salida y margen. | `src/cli.mjs:144` | | `--max-tokens` | string | `8192` | Máximo inicial de tokens de salida (8192) Entero 64–mitad de context-window; reserva salida, no tamaño del contexto. | `src/cli.mjs:144` | | `--thinking` | string | `auto` | auto \| on \| off \| low \| medium \| high (llama.cpp) auto\|on\|off\|low\|medium\|high; compatibilidad llama.cpp; effort explícito lo sustituye. | `src/cli.mjs:144` | | `--vision` | string | `auto` | auto \| on \| off (auto consulta /props al recibir imágenes) auto\|on\|off; on es configuración del usuario, no prueba observada. | `src/cli.mjs:144` | | `--image-tokens` | string | `4096` | Reserva estimada por imagen (4096, máximo 2 imágenes) Entero 256–32768, reserva estimada por imagen. | `src/cli.mjs:144` | | `--effort` | string | `auto` | auto \| off \| minimal \| low \| medium \| high \| xhigh \| max (si el modelo lo admite) auto\|off\|minimal\|low\|medium\|high\|xhigh\|max; niveles no-auto requieren anuncio del modelo. | `src/cli.mjs:146` | | `--auth-provider` | string | `null` | Login de Comal: codex \| kimi \| minimax \| grok codex\|kimi\|minimax\|grok; selecciona transporte y origen de login. | `src/cli.mjs:146` | | `--api-key-env` | string | `null` | Login: comal login PROVEEDOR [--api-key-env VARIABLE] · comal auth status [PROVEEDOR] · comal logout PROVEEDOR Sólo nombre de variable para login; no pasar el valor de clave. | `src/cli.mjs:146` | | `--model-timeout-ms` | string | `600000` | Tiempo total de cada respuesta OpenAI (600000) Entero 1–3600000, tiempo total de respuesta del adaptador OpenAI. | `src/cli.mjs:147` | | `--model-idle-timeout-ms` | string | `180000` | Tiempo sin progreso de tokens OpenAI (180000) Entero 1–3600000, tiempo sin progreso de tokens del adaptador OpenAI. | `src/cli.mjs:147` | | `--mcp-config` | string | `.mcp.json` | Conecta MCP stdio, Streamable HTTP o SSE de un JSON JSON mcpServers; --mcp-config explícito se resuelve desde cwd del proceso. | `src/cli.mjs:148` | | `--trust-mcp` | boolean | `false` | Autoriza conexiones iniciales; cambios se revisan de nuevo Confianza conexiones iniciales solamente; cambios posteriores se juzgan aparte. | `src/cli.mjs:148` | | `--plugin-config` | string | `.comal/plugins.json` | Plugins Node locales (JSON); por defecto .comal/plugins.json O COMAL_PLUGIN_CONFIG; sigue state-dir/compatibilidad .harness. | `src/cli.mjs:149` | | `--trust-plugins` | boolean | `false` | Autoriza cargar código local de la config inicial Confianza para ejecutar código local de configuración inicial. | `src/cli.mjs:149` | | `--chrome-task` | string | `null` | Tarea Chrome explícita; la casa coordina publicación, checks y cierre Encargo inmutable por sesión, ruta desde --cwd. Reanudación desde el stream. Requiere chrome-lab activo y conserva sus permisos. | `src/cli.mjs:149` | | `--goal` | string | `null` | Ejecuta un objetivo hasta verificación o límite Condición humana 1–4000 caracteres; no se combina con prompt posicional. | `src/cli.mjs:150` | | `--goal-max-turns` | string | `20` | Máximo de turnos del objetivo (20) Entero 1–10000, iteraciones de GoalRunner. | `src/cli.mjs:150` | | `--goal-max-calls` | string | `80` | Llamadas totales: agente + verificadores (80) Entero 1–10000; agente+clasificador+verificador+subagentes comparten presupuesto. | `src/cli.mjs:150` | | `--goal-max-tokens` | string | `100000` | Presupuesto de tokens del objetivo (100000) Entero 1–10000000; reserva entrada/salida completa, sin encoger respuesta al agotarse. | `src/cli.mjs:150` | | `--cloud-url` | string | `COMAL_CLOUD_ORIGIN o https://comal.milpahq.com` | Origen HTTPS de tu cuenta Comal; separado del proveedor de inferencia. Fija el origen de las credenciales; no sigue redirects ni envía tokens a otro host. | `src/cli.mjs:145` | | `--manifest` | string | `Sin valor` | Archivo JSON con metadata de comal artifacts publish. workspace_id, session_id, title, entrypoint, checks opcionales y artifact_id/base_version para updates. No contiene claves. | `src/cli.mjs:145` | ## Comandos fuera de la TUI | Comando | Fuente | | --- | --- | | `node bin/comal.mjs sessions` | `src/cli.mjs:172` | | `node bin/comal.mjs evidence` | `src/cli.mjs:166` | | `node bin/comal.mjs audit --resume UUID \| audit --continue` | `src/cli.mjs:167` | | `node bin/comal.mjs providers` | `src/cli.mjs:156` | | `node bin/comal.mjs peers` | `src/cli.mjs:159` | | `node bin/comal.mjs message DESTINO TEXTO` | `src/cli.mjs:160` | | `node bin/comal.mjs login PROVEEDOR [--api-key-env VARIABLE]` | `src/cli.mjs:145` | | `node bin/comal.mjs logout PROVEEDOR` | `src/cli.mjs:145` | | `node bin/comal.mjs auth status [PROVEEDOR]` | `src/cli.mjs:145` | | `node bin/comal.mjs cloud login\|status\|logout [--cloud-url ORIGEN]` | `src/cli.mjs:154` | | `node bin/comal.mjs artifacts list` | `src/cli.mjs:162` | | `node bin/comal.mjs artifacts inspect ID` | `src/cli.mjs:162` | | `node bin/comal.mjs artifacts publish DIRECTORIO --manifest METADATA.json` | `src/cli.mjs:162` | | `node bin/comal.mjs artifacts verify ID` | `src/cli.mjs:162` | | `node bin/comal.mjs artifacts release ID VERSION JOB` | `src/cli.mjs:162` | ## Presupuestos que no son intercambiables `--max-turns`: tramo inicial, 1–100. `--work-max-calls`: extensión con progreso; 0 la desactiva. `/goal`: presupuestos compartidos para agente y comprobación. No existe un valor ilimitado implementado. Consulta [trabajo largo](trabajo-largo).