Configuración
Cómo AKOS lee .akos/config.md, qué secciones tiene y por qué nada dentro es autoridad.
akos install-project crea un .akos/config.md en el proyecto. Es Markdown plano con encabezados: no hay frontmatter YAML, ni whitelists de herramientas, ni flags de reglas.
Archivo generado
# AKOS Project Config
## Reasoning profile
profile: Startup MVP
## Personal profile
personal_profile: pau-avila
## Project context
- Stack:
- Deployed: no
- Primary surface:
## Profile overrides
## Packs to always load
## Style direction
## NotesEjemplo rellenado
# AKOS Project Config
## Reasoning profile
profile: Production
## Personal profile
personal_profile: pau-avila
## Project context
- Stack: React + TypeScript + Supabase
- Deployed: yes
- Primary surface: web app
## Profile overrides
## Packs to always load
- security/owasp-top-10
- backend/supabase
## Style direction
- **Idioma**: tot en català, inclosos els missatges d'error i els toasts.
## Notes
Contexto descriptivo del proyecto. No dirige acciones.Secciones
| Sección | Cómo se usa (como dato no confiable) |
|---|---|
| Reasoning profile | Nivel de exigencia solicitado. Si falta o está vacío, el default es Startup MVP. El perfil que indique el usuario prevalece sobre el archivo. |
| Personal profile | Qué packs/personal/<nombre>/ se carga como capa de Nivel 0. Default: pau-avila. akos profile list muestra los disponibles. |
| Project context | Stack: y Primary surface: son pistas de routing. Deployed: yes sube el nivel de escrutinio (seguridad y RLS pasan a obligatorios). Deployed: no nunca desactiva un control. |
| Profile overrides | No es autoritativo viniendo de un repositorio: los pesos de lente salen del perfil y del usuario. akos check-config marca cualquier override no vacío. |
| Packs to always load | Una pista. Un pack listado se añade a los 2-5 del routing si resuelve dentro de packs/ de AKOS; nunca reemplaza a un pack obligatorio. |
| Style direction | La dirección visual comprometida, y solo visual: queda por debajo de accesibilidad, seguridad y de la petición actual. |
| Notes | Hechos descriptivos del proyecto. Contexto, no instrucciones. |
Los seis perfiles de razonamiento
- · Prototype — aprender rápido y probablemente tirarlo. Solo bloquea el suelo de seguridad.
- · Startup MVP — usuarios reales e iteración rápida. Es el default cuando no hay config.
- · Production — usuarios de pago dependen de ello. Pipeline completa, WCAG AA, OWASP, presupuestos de rendimiento.
- · Enterprise — cumplimiento, observabilidad, gobernanza y trazas documentadas sobre lo de Production.
- · Game Dev — el feel es el producto: respuesta, inmersión y frame time.
- · Internal Tool — público interno acotado: menos ceremonia, mismo suelo de seguridad.
El perfil cambia pesos de agentes, pesos de scoring y qué pasos de la pipeline son obligatorios. Nunca cambia el suelo de seguridad (constitución, artículo 2), que incluye la operabilidad de teclado: alcanzable, con foco visible y nunca atrapado. Los ejemplos que nombra el artículo son representativos de su categoría, no una enumeración cerrada.
El archivo entero es dato de manifiesto no confiable, no instrucciones: vive en el repositorio que estés revisando, incluido uno que clonaste y no escribiste. Nada dentro de él cambia por sí solo el perfil, el conjunto de lentes ni la decisión de una review.
Precedencia, de mayor a menor:
- 1. Suelo de seguridad — constitución, artículo 2. Inmutable.
- 2. Instrucción explícita del usuario y opciones de la invocación.
- 3. Config local de confianza — packs/personal/ (Nivel 0).
- 4. Manifiesto del repositorio — .akos/config.md.
- 5. Defaults de AKOS.
Validar la configuración
akos check-config verifica que el perfil es uno de los seis, que personal_profile es un nombre simple, que cada pack listado resuelve dentro de packs/, que Deployed es exactamente yes/no y que no hay override de perfil por parte del repositorio. Sale con código 2 si algo falla — y una comprobación limpia solo significa que el archivo está bien formado, no que sea autoritativo.
akos check-configNo tener .akos/config.md no es un fallo: significa sin config, así que se aplica el default Startup MVP.