Claude Code не видит файлы Windows в WSL2: фикс путей
WSL2 живёт в собственной файловой системе Linux, а диск C подключён внутрь как /mnt/c. Claude Code, запущенный внутри WSL, видит Linux-пути, а не C:\Users. Решение одно из двух, либо держать проект в домашней папке WSL, либо обращаться к файлам Windows через /mnt/c.
Две файловые системы рядом
Windows и WSL2 не делят один диск. У WSL2 свой ext4-образ, а ваши папки на C примонтированы в него точкой /mnt/c. Когда агент пишет или читает пути, он оперирует тем миром, в котором запущен, то есть Linux.
| Где файл | Путь внутри WSL2 |
|---|---|
| C:\Users\admin\project | /mnt/c/Users/admin/project |
| Домашняя папка WSL | /home/<user> или ~ |
| Проект (рекомендуется) | ~/projects/name |
Почему проект лучше держать в домашней папке
Файловая система Linux внутри WSL работает на полной скорости, файловые наблюдатели и git ходят в неё нативно. Папки на /mnt/c подключены через слой 9P, он медленный, и на нём часто ломаются вотчеры сборщиков и тест-раннеров. Поэтому проекты переносят в ~, а Windows используют только чтобы их редактировать.
Как запустить Claude Code в правильном месте
- Откройте терминал WSL, перейдите в домашнюю папку.
- Создайте папку для проектов, если её нет.
- Перейдите внутрь проекта и запустите claude.
cd ~/projects/myapp && claude
Частые вопросы
Почему Claude Code в WSL2 не видит мои файлы на диске C?
Потому что внутри WSL2 диск C доступен по пути /mnt/c, а не C:\. Либо обращайтесь к файлам через /mnt/c, либо держите проект в домашней папке WSL.
Где лучше держать проект, в Windows или в WSL2?
В домашней папке WSL2. Файловая система Linux там работает на полной скорости, а доступ к /mnt/c медленный и ломает вотчеры.