Arreglar «command not found: claude» tras instalar Claude Code
Ejecutaste el instalador, dijo que había terminado y la terminal responde command not found: claude. Casi siempre el programa está en tu disco, pero su carpeta no está en el PATH, la lista de sitios donde tu terminal busca comandos. Aquí tienes cómo comprobarlo, arreglarlo una sola vez y descartar las otras causas habituales.
Cómo se ve el error
- macOS (zsh):
zsh: command not found: claude - Linux (bash):
bash: claude: command not found - Windows CMD:
'claude' is not recognized as an internal or external command - PowerShell:
claude : The term 'claude' is not recognized as the name of a cmdlet
Es la misma causa con distinto texto. Si empezó justo después de que Claude Code se actualizara solo en Windows, ve a la sección del claude.exe desaparecido.
Dónde lo deja el instalador
Según la documentación, tal como la leemos, el instalador nativo coloca el programa en ~/.local/bin/claude en macOS y Linux, y en %USERPROFILE%\.local\bin\claude.exe en Windows. Si esa carpeta no está en el PATH, el instalador lo avisa bajo Setup notes: al final de su salida. Ahí imprime el arreglo, pero no cambia tu PATH, así que es fácil que se te pase.
Una trampa: la extensión de VS Code guarda su propia copia privada del programa para su panel de chat y no pone claude en tu PATH. Si solo instalaste la extensión, en esa ruta no hay nada. Haz la instalación independiente para usar claude en una terminal.
Paso 1: ¿está el archivo?
macOS o Linux:
ls -la ~/.local/bin/claude
Windows PowerShell:
Test-Path "$env:USERPROFILE\.local\bin\claude.exe"
Windows CMD:
dir "%USERPROFILE%\.local\bin\claude.exe"
- «No such file»,
Falseo «File Not Found»: no hay instalación nativa. Si instalaste de otra forma (npm, Homebrew, WinGet, un paquete de Linux), salta a instalaciones duplicadas. Si no has instalado nada, ejecuta primero el instalador de la página oficial de instalación. - Ves el archivo: el programa está. Pasa al paso 2.
Paso 2: ¿está su carpeta en el PATH?
macOS o Linux:
echo $PATH | tr ':' '\n' | grep -Fx "$HOME/.local/bin"
Windows PowerShell:
$env:PATH -split ';' | Select-String '\.local\\bin'
Windows CMD:
echo %PATH% | findstr /i "local\bin"
Si imprime la carpeta, el PATH está bien y puedes saltar a instalaciones duplicadas. Si no imprime nada, añade la carpeta. Se hace una sola vez.
Paso 3: añadir la carpeta
zsh, el de serie en macOS. La primera línea guarda el ajuste para todas las terminales nuevas; la segunda lo aplica a la ventana en la que estás:
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc
bash en Linux:
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
bash en macOS lee ~/.bash_profile, porque Terminal lo arranca como shell de inicio de sesión. Según la documentación, tal como la leemos, si ya tienes un ~/.bash_login o un ~/.profile y ningún ~/.bash_profile, pon la línea en ese archivo existente en vez de crear uno nuevo.
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bash_profile
source ~/.bash_profile
Con fish, Nushell y otras shells, añade ~/.local/bin con la sintaxis propia de tu shell y reinicia la terminal.
Windows PowerShell (lo añade a tu PATH de usuario; después reinicia la terminal):
$currentPath = [Environment]::GetEnvironmentVariable('PATH', 'User')
[Environment]::SetEnvironmentVariable('PATH', "$currentPath;$env:USERPROFILE\.local\bin", 'User')
Windows CMD: abre los ajustes del sistema, ve a Variables de entorno, añade %USERPROFILE%\.local\bin a la variable PATH de usuario y reinicia la terminal.
Comprueba que funciona:
claude --version
¿Sigue sin encontrarlo? Cuatro motivos habituales
- La ventana es anterior al cambio. Una terminal abierta conserva el PATH con el que arrancó. Abre una ventana nueva. Una terminal dentro de un editor toma el PATH del editor, así que cierra el editor del todo y ábrelo otra vez.
- La línea nunca se guardó. Ejecuta
grep -n '.local/bin' ~/.zshrc(con el archivo de tu shell). Si no imprime nada, vuelve a ejecutar los dos comandos. - Fue al archivo de otra shell. Ejecuta
echo $0para ver en qué shell estás y usa el archivo de esa shell. - Windows: el cambio no se guardó. Ejecuta
[Environment]::GetEnvironmentVariable('PATH', 'User')y busca.local\binen lo que imprime. Si falta, repite las dos líneas.
«Permission denied» al añadir la línea
Si el comando echo responde permission denied sobre tu .zshrc o .bashrc, no se guardó nada porque tu usuario no puede escribir en ese archivo. Mira quién es el dueño:
ls -l ~/.zshrc
La tercera columna es el dueño. Si es otro usuario, como root, hazte con el archivo con sudo chown $(whoami) ~/.zshrc (necesita permisos de administrador). Si eres tú, el archivo es de solo lectura: chmod u+w ~/.zshrc. Después repite los dos comandos del PATH.
Instalaciones duplicadas
Dos copias de Claude Code en el mismo equipo pueden dar la versión equivocada o comportamientos raros. Mira qué encuentra tu shell:
which -a claude
En Windows usa where.exe claude. Después revisa los sitios de los que puede venir una copia: la nativa en ~/.local/bin/claude (en una instalación nativa es un enlace simbólico a ~/.local/share/claude/versions/), una instalación local antigua de npm en ~/.claude/local/ y un paquete global de npm (npm -g ls @anthropic-ai/claude-code). Un «No such file» ahí no es un error: solo significa que en ese sitio no hay nada instalado.
Según la documentación, la instalación nativa es la recomendada, así que quédate con ella y quita las demás:
- npm global:
npm uninstall -g @anthropic-ai/claude-code - Homebrew en macOS:
brew uninstall --cask claude-code(usaclaude-code@latestsi ese es el cask que instalaste) - WinGet en Windows:
winget uninstall Anthropic.ClaudeCode - Instalación local antigua de npm: borra solo la carpeta
localdentro de~/.claude. Mira antes qué hay dentro y no borres~/.claudeentera, porque ahí viven tus ajustes y tu historial.
Windows: claude.exe desapareció tras una actualización
En Windows, una actualización renombra el claude.exe actual a una copia de seguridad y mueve el nuevo a su sitio. Si el movimiento falla y la copia no se puede renombrar de vuelta, la carpeta se queda con la copia pero sin claude.exe. Primero confirma que la carpeta está en el PATH (paso 2); si lo está, busca en %USERPROFILE%\.local\bin un archivo que empiece por claude.exe.old. seguido de un número. Esta línea de PowerShell renombra la más reciente de vuelta:
Get-ChildItem "$env:USERPROFILE\.local\bin\claude.exe.old.*" | Sort-Object Name | Select-Object -Last 1 | Rename-Item -NewName claude.exe
Luego ejecuta claude --version. Si no hay copia de seguridad, o sigue fallando, vuelve a ejecutar el instalador de la página oficial de instalación. La documentación añade que las versiones antiguas también podían borrar la copia mientras faltaba claude.exe.
Mapa rápido
- Falta el archivo → instalar, o buscar el otro método de instalación.
- Está el archivo, su carpeta no está en el PATH → paso 3 y una terminal nueva.
- Lo añadiste y sigue igual → ventana vieja, archivo de otra shell o no se guardó.
- Dos copias → quédate con la nativa.
- Windows, justo tras una actualización → recupera la copia de seguridad.
Todas las guías están en el índice de guías. Si tu terminal se porta raro después de esto, mira la guía de la terminal y cómo depurar tu configuración. Esta página sigue la documentación de solución de problemas de instalación de Anthropic tal como la leemos en octubre de 2026. No tenemos relación con Anthropic. La escribimos a partir de la documentación y no hemos probado todos los sistemas. Las rutas, el comportamiento del instalador y los detalles de versión pueden cambiar, y donde esta página y la documentación no coincidan, manda la documentación.
La skill gratis loop-stop da a las tareas largas un límite y una regla de parada, cuando el comando ya funciona. Si quieres una segunda mirada a tu CLAUDE.md y a tus ajustes, el Tune-Up Kit es una lista de comprobación para eso (la ficha está en inglés).