Referencia
Archivos, rutas y configuración
Qué archivos crea canvappen, qué puede leer y escribir el MCP y cómo se configura.
Ubicaciones
| Ubicación | Contenido |
|---|---|
<carpeta del .pen>/images/ | Imágenes importadas. No se duplican si el contenido es igual |
<carpeta del .pen>/fonts/ | Fuentes importadas |
<carpeta del .pen>/exports/<nombre>/ | Exportaciones |
~/.canvappen/backups/ | Copia del .pen antes de cada escritura (las últimas 20 por archivo) |
~/.canvappen/config.json | Configuración del usuario |
/etc/canvappen/config.json | Configuración del sistema. Tiene prioridad y no se puede redirigir con variables de entorno |
Rutas permitidas en el MCP
- Cualquier archivo dentro de tu carpeta de usuario, excepto carpetas ocultas (
~/.ssh,~/.config…) y~/Library. - La carpeta desde la que se inició el cliente MCP.
- Carpetas extra en
allowedRootsde~/.canvappen/config.jsono enCANVAPPEN_ROOTS. - Con
"homeAccess": falsesolo se permiten la carpeta del cliente yallowedRoots.
Los documentos deben ser .pen; las imágenes, .png, .jpg, .jpeg, .webp o .gif; y las fuentes, .ttf u .otf. La CLI no tiene estas restricciones.
config.json
~/.canvappen/config.json
{
"allowedRoots": ["/srv/disenos"],
"homeAccess": true,
"maxBackups": 20,
"strict": false,
"allowedHosts": ["fonts.googleapis.com", "*.unsplash.com"],
"lockAllowedHosts": false
}| Clave | Efecto |
|---|---|
allowedRoots | Carpetas extra que el MCP puede usar |
homeAccess | Permite la carpeta del usuario (por defecto true) |
maxBackups | Respaldos por archivo; 0 los desactiva |
strict | Modo estricto por defecto en export y preview |
allowedHosts | Dominios de los que se pueden descargar fuentes e imágenes; *.dominio.com incluye subdominios |
lockAllowedHosts | Solo vale allowedHosts de ese archivo: se ignoran la variable de entorno y los permisos por documento |
Fuentes e imágenes de internet
canvappen solo descarga recursos de dominios permitidos: allowedHosts, CANVAPPEN_ALLOWED_HOSTS o los dominios que una persona permitió para ese documento desde la app. Si un documento tiene un dominio bloqueado, gana el bloqueo. Cada redirección se valida con la misma política.
Variables de entorno
| Variable | Uso |
|---|---|
CANVAPPEN_HOME | Cambia la ruta de ~/.canvappen |
CANVAPPEN_ROOTS | Carpetas extra permitidas para el MCP |
CANVAPPEN_ALLOWED_HOSTS | Dominios permitidos extra, separados por comas |
CANVAPPEN_STRICT | 1 activa el modo estricto |
CANVAPPEN_IMAGE_CACHE_MB | Memoria máxima de imágenes decodificadas (384 en CLI y MCP) |
CANVAPPEN_NO_UPDATES | 1 desactiva la búsqueda de actualizaciones de la app |
Librerías
Una librería es un .pen con extensión .lib.pen. Se adjunta con set_imports y sus componentes se usan con el prefijo alias:. convert_to_library convierte un .pen en librería.