# Diagnostics

Source: https://athas.dev/docs/diagnostics

Inspect problems, jump to source, apply quick fixes, and filter diagnostics in the bottom pane.

Athas shows diagnostics in a dedicated bottom-pane Problems view.

## Open Diagnostics

You can open the diagnostics pane from any of these entry points:

- The diagnostics indicator in the footer
- `Cmd/Ctrl+Shift+J`
- Command Palette: **View: Show Diagnostics**

If you do not use diagnostics, you can disable the surface entirely in **Settings > Features**.

**Info:**

  The default shortcut is `Cmd/Ctrl+Shift+J`. If you switch to the VS Code keybinding preset,
  diagnostics move to `Cmd/Ctrl+Shift+M`.

## What You See

The pane summarizes all current problems and keeps a live count in the footer.

- Errors, warnings, and info diagnostics are shown together
- The footer badge turns into a warning-colored count when problems exist
- Clicking a problem jumps to its file and position
- Editor gutter markers reflect the highest-severity problem on each line

## Search, Filter, and Group

Athas lets you narrow the list without leaving the pane:

- Search by message, source, code, file path, or line and column
- Filter by severity
- Filter to only the current file
- Filter by diagnostic source from the context menu
- Group by file, severity, or not at all
- Sort by severity, file, or position

## Quick Fixes and Actions

Right-click any problem to open its action menu.

Available actions include:

- Quick fixes exposed by the active language tooling
- Go to Problem
- Copy Message
- Copy Location
- Copy Full Details
- Toggle wrapped messages

## Pane Controls

The diagnostics pane supports the same bottom-pane workflow as terminal and references:

- Resize it vertically from the top edge
- Open it full screen
- Switch between full-width and editor-width modes from the header context menu

**Tip:**

  Diagnostics preferences such as grouping, sorting, current-file filtering, and message wrapping
  are remembered locally.

## No problems appear

Confirm the relevant language server or linter is running. A clean list can mean either no reported problems or tooling that has not initialized. Check [Language servers](https://athas.dev/docs/language-servers) before treating an empty list as validation.
