Skip to content

Referencia de configuración

Cada variable de entorno que Crow lee, en un solo lugar. Crow sigue una filosofía de cero configuración primero: el gateway arranca sin ningún .env, usando los valores predeterminados de abajo. Define variables solo cuando necesites la función que desbloquean.

La configuración vive en .env en la raíz del repositorio (copiado desde .env.example por npm run setup). Después de editarlo, ejecuta npm run mcp-config para regenerar la configuración del cliente MCP, y reinicia el gateway.

Esenciales del día 1

Un operador recién llegado normalmente solo toca estas: CROW_GATEWAY_URL (acceso remoto), MINIO_ENDPOINT + MINIO_ROOT_USER/MINIO_ROOT_PASSWORD (almacenamiento de archivos) y una o dos claves de API de integraciones. Todo lo demás tiene un valor predeterminado funcional.

Núcleo (rutas, puertos, identidad)

VariablePredeterminadoPropósito
CROW_HOME~/.crowDirectorio base de configuración/datos. Una segunda instancia en la misma máquina usa el suyo propio (p. ej. ~/.crow-mpa).
CROW_DATA_DIR~/.crow/dataRaíz de los datos SQLite.
CROW_DB_PATH~/.crow/data/crow.dbArchivo de base de datos principal.
CROW_GATEWAY_PORT / PORT3001Puerto de escucha del gateway.
CROW_GATEWAY_BIND0.0.0.0Dirección de enlace del gateway.
CROW_GATEWAY_URL(sin definir = solo local)URL pública de esta instancia (p. ej. tu dirección HTTPS *.ts.net). Requerida para clientes MCP remotos y OAuth.
CROW_DEVICE_ID(sin definir)Identidad del dispositivo para los overrides de crow.md por dispositivo (p. ej. laptop).
CROW_FILES_PATH/homeRaíz a la que puede acceder el servidor MCP de sistema de archivos (usada por npm run mcp-config).
CROW_JOURNAL_MODEautoModo de journal de SQLite. Sin definir, Crow elige WAL, o DELETE en hosts con poca RAM (memoria total ≤ CROW_WAL_MIN_RAM_GB, predeterminado 2 GiB — p. ej. VMs de nube de capa gratuita). Defínela explícitamente para anular la selección automática; de lo contrario, déjala en paz. El resolutor lee primero el modo actual de la base de datos y solo lo cambia cuando difiere, así que un cambio de modo nunca traba las conexiones.
NODE_ENVdevelopmentDefine production en instancias desplegadas.

Gateway, autenticación y acceso

VariablePredeterminadoPropósito
CROW_DASHBOARD_PUBLICfalseVálvula de escape que permite que el tráfico por Funnel llegue al dashboard. Déjala apagada — el invariante de exposición de red depende de ella.
CROW_ALLOWED_IPS(sin definir)Lista CIDR adicional de direcciones permitidas para el acceso al dashboard (p. ej. un proxy inverso).
CROW_SETUP_TOKEN(sin definir)Token requerido para la configuración inicial de la contraseña cuando está definido.
CROW_CSRF_STRICThabilitadoDefine 0 solo como interruptor de emergencia para desactivar CSRF.
CORS_ALLOWED_ORIGINS(sin definir)Lista de orígenes CORS permitidos, separados por comas.
CROW_ENROLL_ENABLED0Permite la inscripción de nuevas instancias (emparejamiento). Habilítala solo mientras emparejas.
CROW_ENROLL_OTC(sin definir)Código de un solo uso requerido para la inscripción cuando está definido.
CROW_HOSTED / CROW_HOSTING_API_URL / CROW_HOSTING_AUTH_TOKEN(sin definir)Solo para el modo de hosting administrado.
CROW_CROWDSEC_BOUNCER_KEY / CROW_CROWDSEC_LAPI_URL(sin definir) / http://127.0.0.1:8091Integración con el bouncer de CrowdSec (bundle opcional).

IA y modelos

VariablePredeterminadoPropósito
CROW_ORCHESTRATOR_PROVIDER / CROW_ORCHESTRATOR_MODEL(primero la tabla providers de la BD)Proveedor/modelo predeterminado para el orquestador. Es preferible configurar los proveedores en Configuración → IA.
COMPANION_FAST_MODELcrow-voice/qwen3.5-4bModelo rápido para los turnos de voz del AI Companion.
COMPANION_ESCALATION_MODELcrow-chat/qwen3.6-35b-a3bModelo de escalación (turnos con !escalate / herramientas).
COMPANION_FAST_DISABLE_THINKING1Desactiva la cadena de razonamiento en los turnos de voz.
COMPANION_TOOL_ESCALATION1Escala automáticamente cuando se detecta uso de herramientas.
COMPANION_TOOL_CONTEXT_LOOKBACK8Mensajes que se escanean en busca de intención de usar herramientas.
COMPANION_PORT12393Puerto del servidor del Companion (Open-LLM-VTuber).
SDXL_SERVICE_URLhttp://127.0.0.1:3005Servicio de generación de imágenes para las herramientas de almacenamiento.
GPU_IDLE_CHECK_INTERVAL_MS / GPU_IDLE_REVERT_MS120000 / 1200000Sondeo de inactividad del orquestador de GPU / ventana de reversión.

Almacenamiento (MinIO / S3)

VariablePredeterminadoPropósito
MINIO_ENDPOINT(sin definir = almacenamiento desactivado)Host de MinIO (o host:puerto).
MINIO_PORTdel endpointOverride del puerto.
MINIO_ROOT_USER / MINIO_ROOT_PASSWORDcrowadmin / (requerida)Credenciales.
MINIO_USE_SSLfalseTLS hacia MinIO.
S3_ENDPOINT / S3_ACCESS_KEY / S3_SECRET_KEY(sin definir)Cualquier alternativa a MinIO compatible con S3.
MAX_UPLOAD_SIZE104857600 (100 MB)Límite de subida HTTP (bytes).
STORAGE_QUOTA_MB5120Cuota por usuario.

Notificaciones y push

VariablePredeterminadoPropósito
NTFY_HOST / NTFY_PORTlocalhost / 2586Servidor ntfy para push al teléfono.
NTFY_TOPIC(sin definir = desactivado)Tema (topic) al que publicar.
NTFY_AUTH_TOKEN / NTFY_EXTERNAL_URL / NTFY_EXTRA_TOPICS(sin definir)Autenticación, URL externa para los enlaces, temas adicionales.
VAPID_PUBLIC_KEY / VAPID_PRIVATE_KEY(sin definir = push de PWA desactivado)Claves de Web Push (npx web-push generate-vapid-keys).
VAPID_EMAILmailto:admin@localhostContacto VAPID.
RESEND_API_KEY / MPA_EMAIL_FROM / MPA_EMAIL_TO(sin definir)Notificaciones por correo vía Resend.

Compartición, P2P y llamadas

VariablePredeterminadoPropósito
CROW_UNIFIED_DASHBOARDhabilitadoDashboard federado entre instancias emparejadas (0 lo desactiva).
CROW_PEER_TOKENS_PATHpor CROW_HOMEOverride del archivo de credenciales de peers (hosts con varios gateways).
CROW_CALLS_ENABLED0Función de llamadas WebRTC.
CROW_CALLS_MAX_PEERS4Máximo de peers por sala de llamada.
WEBRTC_TURN_URL / TURN_SECRET(sin definir)Relay TURN para atravesar NAT.

Respaldo y operaciones

VariablePredeterminadoPropósito
CROW_BACKUP_DIR~/.crow/backupsSalida de POST /api/admin/backup (endpoint solo de localhost).
CROW_BACKUP_KEEP_DAYS7Retención.
CROW_BACKUP_TOKEN(sin definir)Requisito adicional de bearer para el endpoint de respaldo.
CROW_AUTO_UPDATEhabilitadoAuto-actualización basada en pull (0 la desactiva).
CROW_SSE_MAX200Tope de streams SSE abiertos simultáneamente entre todos los endpoints de streaming; por encima del tope, las solicitudes reciben 503 + Retry-After: 5.
CROW_SHUTDOWN_DRAIN_MS3000Cuánto espera el apagado ordenado a las solicitudes en curso antes de cortar las conexiones restantes.
CROW_WAL_MIN_RAM_GB2Umbral de RAM (GiB) por debajo del cual el modo de journal selecciona automáticamente DELETE en lugar de WAL (ver CROW_JOURNAL_MODE).
CROW_FILEVIEW_ROOTdirectorio homeRaíz que el visor de markdown del dashboard puede leer.
CROW_BUNDLES_DIR~/.crow/bundlesDirectorio de bundles instalados.

Avanzado / desarrollador

Estas, de forma intencional, no están en .env.example — defínelas solo si sabes por qué: CROW_DISABLE_ROUTER (=1 sirve las herramientas crudas por servidor en lugar de las herramientas de categoría), CROW_ENABLE_TURBO (=0 desactiva Turbo Drive), CROW_DEFAULT_SERVER, CROW_SKIP_CONFIRM_GATES, CROW_SYNC_PROVIDERS, CROW_BUNDLE_HOST_ALLOW_ALL, STRICT_PANEL_MOUNT, CROW_PIPELINE_TRACE, CROW_PIPELINE_SUBPROCESS, CROW_REFCOUNT_PATH, CROW_PET_MODE, CROW_PET_SOCKET, BLOG_FIGURE_GATEWAY_URL, BLOG_FIGURE_PYTHON, RENDER_EXTERNAL_URL (despliegues legados en Render), CROW_TASKS_DB_PATH, MPA_PROSPECTUS_INBOX/MPA_PROSPECTUS_OUT, JELLYFIN_URL, PLEX_URL, ROMM_PORT, BRAVE_API_KEY (búsqueda del gestor de ventanas). Overrides de tiempos de espera HTTP (en milisegundos, leídos una sola vez al arrancar): CROW_HTTP_LLM_CONNECT_TIMEOUT_MS (predeterminado 20000 — plazo hasta el primer byte para LLM en streaming), CROW_HTTP_AI_TIMEOUT_MS (predeterminado 60000 — tope total para llamadas de embeddings con búfer), CROW_HTTP_TTS_TIMEOUT_MS (predeterminado 10000 — plazo hasta el primer byte para la síntesis TTS), CROW_HTTP_VOICELIST_TIMEOUT_MS (predeterminado 5000 — tope total para obtener las listas de voces).

Claves de API de integraciones

Las claves de integraciones de terceros (GitHub, Slack, Notion, Google Workspace, Discord, Trello, Canvas, Zotero, …) están documentadas en línea en .env.example con enlaces de configuración por servicio, y en cada página de integración. Agrégalas de una en una; todas son opcionales.

Variables de bundles

Los bundles de autoalojamiento (Caddy, AdGuard, Gitea, Vaultwarden, SearXNG, Netdata, Uptime Kuma, …) leen sus propias variables *_PORT/de credenciales, documentadas en las secciones de bundles de .env.example y en el manifiesto de cada bundle.


Esta página se mantiene a mano contra el código. Si encuentras una variable en el código que no está listada aquí (o una listada que ya no existe), eso es un bug — repórtalo, por favor.

Released under the MIT License.