# Referencia de configuración

Consulta los campos de facade.json, sus valores predeterminados y cómo los aplica Facade.

## Campos de nivel superior

Abre el archivo desde [Configuración de los agentes](https://facadecode.com/es/docs/settings/). El archivo acepta comentarios JSON y comas finales. Un objeto vacío usa los valores predeterminados.

| Campo | Valor | Predeterminado |
| --- | --- | --- |
| `yolo` | Booleano que controla las aprobaciones de la CLI y el acceso entre agentes. | `true` |
| `names` | Lista de nombres sugeridos no vacíos para los agentes. | Lista de nombres integrada |
| `clis` | Objeto con las modificaciones de las CLI integradas y las entradas con nombre adicionales. | `{}`; las CLI integradas siguen disponibles |
| `$schema` | Cadena para los metadatos de esquema del editor. | Se omite |

## Campos de las entradas de CLI

| Campo | Valor | Predeterminado |
| --- | --- | --- |
| `type` | `claude`, `codex`, `agy`, `muse`, `opencode`, `pi` o `custom`. | Implícito en los IDs integrados exactos; obligatorio en las entradas añadidas. |
| `command` | Un nombre o una ruta de ejecutable. | El comando del tipo en el PATH; obligatorio en custom. |
| `args` | Matriz de cadenas de argumentos literales. | `[]` |
| `env` | Nombres de variables asignados a cadenas o a null. | `{}` |
| `model` | ID de modelo no vacío. | Lo decide la CLI. No se acepta en OpenCode ni en custom. |
| `effort` | Nivel de esfuerzo no vacío compatible con la CLI y el modelo. | Lo decide la CLI. No se acepta en OpenCode ni en custom. |
| `enabled` | Booleano que controla los próximos inicios y la restauración. | `true` |
| `icon` | ID de CLI integrada o icono de robot compatible. | El icono del tipo; `facade-pearl` en custom. |

Usa el ID exacto en minúsculas para configurar una entrada integrada, como `codex`. Una entrada nueva debe tener un nombre distinto de todos los IDs integrados y de los nombres visibles, aunque se ignoren las mayúsculas. Por ejemplo, usa `Codex · work` en lugar de `Codex`. Las entradas añadidas no heredan la configuración de la entrada integrada de su tipo.

`enabled: false` oculta una entrada válida y rechaza los próximos inicios o la restauración. No detiene un agente que ya está en ejecución.

## Valores de entorno

```json
{
  "clis": {
    "codex": {
      "env": {
        "WORK_API_KEY": "${env:WORK_API_KEY}",
        "OLD_TOKEN": null
      }
    }
  }
}
```

- Una cadena establece una variable. `null` la elimina. Una variable omitida se hereda.
- `${env:NAME}` lee el entorno del host del editor. No lee otra clave del mismo objeto.
- Una referencia que falta deja esa entrada no disponible. Las referencias se expanden una vez en los valores de `env`, no en `args`.
- Un valor literal permanece en facade.json. Una referencia de entorno mantiene ese valor fuera del archivo, pero la CLI sigue recibiendo el valor expandido.

Definir una variable en una terminal integrada que ya está abierta no actualiza el entorno del host del editor. Haz que esté disponible antes de iniciar el editor.

## Prioridad y opciones de inicio

Facade usa primero el modelo y el esfuerzo especificados para el agente nuevo y después los valores predeterminados de la entrada. Si una opción no tiene un valor definido en ninguno de esos dos niveles, decide la CLI. OpenCode guarda ambas elecciones en su propia configuración.

En los tipos integrados, usa los campos dedicados de modelo y esfuerzo. Facade también establece permisos, IDs de conversación, carpetas de trabajo y sus propias herramientas. Rechaza los argumentos que entran en conflicto con estas elecciones o que impiden que se inicie una sesión interactiva.

Facade busca facade.json en el directorio base de Facade: el ajuste **Facade: Home** de VS Code si está definido, después `FACADE_HOME` y por último `~/.facade`. Abre Open Settings desde el proyecto para encontrar su archivo activo.

## Errores de archivo y de entrada

Un error de archivo, como un JSON no válido, una clave duplicada o un campo de nivel superior desconocido, bloquea los nuevos inicios y la restauración. Un error dentro de una entrada de CLI solo deja esa entrada no disponible. Los agentes en ejecución siguen ejecutándose.

Sigue la ruta de ajuste indicada en el error y corrige ese valor. Facade no recurre silenciosamente a una configuración anterior. Consulta [Solución de problemas](https://facadecode.com/es/docs/troubleshooting/) para los errores de inicio y de proveedor más habituales.
