Novedad ·
Claude Code 2.1.314: bloquea escrituras fuera de tu proyecto
Nuevo ajuste blockWritesOutsideWorkingDirectories: Write, Edit y NotebookEdit no tocan archivos fuera de tus carpetas de trabajo, en ningún modo.
Claude Code 2.1.314 · Fuente: github.com
Qué cambia
Claude Code 2.1.314 añade el ajuste permissions.blockWritesOutsideWorkingDirectories. Con él activado, las herramientas Write, Edit y NotebookEdit se niegan a escribir en rutas que estén fuera de las carpetas de trabajo, en todos los modos de permisos.
Hasta ahora, una regla de permiso o un modo permisivo podían dejar que Claude editara archivos fuera del proyecto (tu ~/.bashrc, otro repositorio, la configuración global). Con este ajuste, el límite lo pone la carpeta y no depende de lo que hayas aprobado.
Cómo usarlo
1. Activa el ajuste
En .claude/settings.json del proyecto (o en ~/.claude/settings.json para todos tus proyectos):
{
"permissions": {
"blockWritesOutsideWorkingDirectories": true
}
}
2. Compruébalo
Pídele a Claude que cree un archivo fuera de la carpeta del proyecto. La escritura falla con un mensaje como este:
/tmp/fuera.txt is outside /home/tu/proyecto; the permissions.blockWritesOutsideWorkingDirectories setting blocks writes outside the working directories. Ask the user to add the directory with /add-dir, or to remove that setting.
Dentro de la carpeta del proyecto todo sigue igual.
3. Si necesitas otra carpeta
Añádela como carpeta de trabajo con /add-dir <ruta> y Claude podrá escribir en ella.
Probado con 2.1.316: con una regla Edit(//tmp/…/**) que permite la escritura, el archivo se crea; con la misma regla y el ajuste activado, Write lo rechaza con el mensaje de arriba, y los archivos dentro del proyecto se siguen creando.
¿Te afecta?
- Sí, si dejas a Claude trabajar con permisos amplios (modo de aceptar ediciones, reglas
Editgenerosas): es una red de seguridad barata para que no toque nada fuera del proyecto. - Ojo: el ajuste cubre Write, Edit y NotebookEdit. Los comandos de shell (Bash) no aparecen en la nota de la versión; para limitarlos usa reglas de permiso o el sandbox.
- No cambia nada si no lo activas: viene apagado.