# getDiagnostics

Забирает диагностику языкового сервера (ошибки, предупреждения, подсказки) из подключённой IDE для конкретного файла или для каждого файла, который IDE сейчас открыла. Используется, чтобы убедиться, что изменения кода чисто компилируются, прежде чем объявлять задачу выполненной.

## Когда использовать

- После `Edit` или `Write`, чтобы подтвердить, что изменение не внесло ошибку типов, синтаксическую ошибку или предупреждение линтера.
- Перед завершением задачи — прочесать каждый открытый файл на неразрешённые проблемы.
- При диагностике ошибки, о которой сообщает пользователь, — вытянуть точное сообщение компилятора или проверяльщика типов из IDE, избегая догадок.
- Как облегчённая альтернатива запуску полной сборки или команды тестов, когда нужно лишь проверить статическую корректность.

НЕ полагайтесь на `getDiagnostics` как на замену набору тестов. Он сообщает, что видит языковой сервер, а не что выполняется во время теста или в продакшене.

## Параметры

- `uri` (string, необязательный): URI файла (обычно `file:///absolute/path`) для получения диагностики. Если опущен, инструмент возвращает диагностику для каждого файла, который IDE сейчас открыла.

## Примеры

### Пример 1: проверка одного файла после правки

```
getDiagnostics(
  uri="file:///Users/sky/project/src/auth.ts"
)
```

Возвращает любые ошибки TypeScript, предупреждения ESLint или другие сообщения языкового сервера для `src/auth.ts`.

### Пример 2: прочёсывание всех открытых файлов

```
getDiagnostics()
```

Возвращает диагностику по всем текущим открытым редакторам. Полезно в конце многофайлового рефакторинга для уверенности, что в другом месте ничего не регрессировало.

## Примечания

- `getDiagnostics` — инструмент IDE-моста. Доступен только когда Claude Code подключён к поддерживающей IDE-интеграции (например, расширению VS Code). В обычной терминальной сессии инструмент не появится.
- Результаты отражают те языковые серверы, которые загрузила IDE, — TypeScript, Pyright, ESLint, rust-analyzer и т. д. Качество и покрытие зависят от настройки IDE у пользователя, а не от Claude Code.
- Диагностика живая. После правки дайте языковому серверу мгновение пере-проанализировать, прежде чем интерпретировать пустой результат как успех — перезапустите, если файл только что сохранён.
- Уровни серьёзности обычно включают `error`, `warning`, `information` и `hint`. Сначала фокусируйтесь на `error`; предупреждения могут быть намеренным стилем проекта.
- Для файлов, не открытых в IDE в данный момент, у языкового сервера может не быть диагностики, даже если файл содержит реальные проблемы. Откройте файл или запустите сборку для авторитетного покрытия.
