Устранение неполадок терминала
Решение проблем с интеграцией оболочки, PowerShell и выполнением команд
Интеграция оболочки
Skycode использует Shell Integration — встроенную функцию VS Code, которая позволяет отслеживать вывод команд и их код завершения. Без неё AI не сможет понять результат выполнения команды.
Признаки проблемы
- Предупреждение «Shell integration unavailable» в чате
- Команды выполняются, но Skycode не видит результат
- Таймаут при запуске первой команды
Быстрые исправления
- Обновите Skycode —
Ctrl+Shift+P→ «Update» - Переключите профиль терминала —
Ctrl+Shift+P→ «Terminal: Select Default Profile» → выберите PowerShell 7 или bash - Увеличьте тайм-аут — Настройки → Терминал → «Тайм-аут интеграции оболочки» (по умолчанию 15 сек)
- Используйте фоновый режим — Настройки → Терминал → Режим выполнения → «Фоновое выполнение»
Проблемы с PowerShell
Windows PowerShell 5.1 (встроенный в Windows) имеет ограниченную поддержку Shell Integration.
Решение
Установите PowerShell 7+:
winget install Microsoft.PowerShell
После установки переключите профиль по умолчанию:
Ctrl+Shift+P → «Terminal: Select Default Profile» → PowerShell (не Windows PowerShell)
Проверка версии
$PSVersionTable.PSVersion
Если Major равен 5 — это устаревшая версия. Нужна 7+.
Команды не выполняются
| Симптом | Причина | Решение |
|---|---|---|
| Таймаут при первой команде | Медленная инициализация оболочки | Увеличьте тайм-аут до 30+ сек |
| «Busy» терминал | Предыдущая команда не завершилась | Включите «Агрессивное переиспользование терминала» или перезапустите терминал |
| Нет вывода | Shell Integration не активна | Переключитесь на фоновый режим |
| Ошибка прав доступа | Политика выполнения PowerShell | Set-ExecutionPolicy RemoteSigned -Scope CurrentUser |
Фоновый режим выполнения
Если проблемы с терминалом не решаются — используйте фоновое выполнение. Команды запускаются в отдельном процессе, минуя терминал VS Code.
Настройки → Терминал → Режим выполнения → Фоновое выполнение
Ограничения фонового режима:
- Вывод доступен только после завершения команды
- Интерактивные команды (ssh, vim) не поддерживаются
- Переменные окружения терминала не наследуются
Лимит вывода терминала
Skycode обрезает вывод команд до заданного лимита строк. Если AI теряет важную часть вывода:
- Настройки → Терминал → Лимит вывода терминала — увеличьте значение
- Для подзадач (sub-agents) есть отдельный лимит