These docs may be ahead of the current release (v0.10.1). See the changelog.
stetv0.10.1
Guides

Code intelligence

Read-only language-server navigation, go to definition, references, implementations, call hierarchy, hover, symbols, and problems.

stet navigates code through read-only language-server requests, the same servers that drive diagnostics. Every request here is a read: it never writes to the repo.

stet can use installed language servers or provision missing built-ins on first use. See how servers are found for the discovery order, cache paths, and download opt-out.

Go to definition

Put the caret on a symbol and press F12 to jump to its definition. A cross-file jump records your spot, so < returns to the call site. When more than one definition matches, the targets open in a results list to pick from.

Find references

Press Shift+F12 to list everywhere a symbol is used. The results open in an overlay grouped by file, each row showing path:line:col and its source line. / move, enter or a click jumps, esc closes.

Find implementations

Put the caret on an interface or abstract member and press Shift+I to jump past the abstraction to its concrete bodies. A single implementation jumps straight there; more than one opens the same overlay as find-references.

The find-implementations overlay listing an interface's concrete implementations

Call hierarchy

Put the caret on a function or method and press Shift+H to list its callers. Tab flips direction between incoming calls (who calls this) and outgoing calls (what this calls), with the footer showing which way you are looking.

The call hierarchy overlay listing the callers of a function, with a direction hint

Hover

Press K with the caret on a symbol to show its type and docs in a small card anchored at the caret. The type signature is syntax-highlighted with the same theme as the diff. The card clears as soon as you move the caret, scroll, switch files, or press esc.

A hover card anchored at the caret showing a syntax-highlighted type signature above its docs

Find symbols

Press S to list the open file's symbols, classes, functions, methods, and the rest, each with its kind icon and line:col, nested to mirror the file's structure. Unlike go-to-definition it needs no caret, only an open file.

The symbol outline overlay listing the open file's functions and methods

Problems

Diagnostics from the repo's language servers stream into a problems panel as checks finish. Each finding is tagged with its source and pinpointed to its line:col. Press p to open the panel and enter to jump to a finding. The languages reference lists what each language gets and how to add your own.

With the panel focused, y copies the selected entry and Y copies every one. A diagnostic copies as path:line:col: message [source], dropping a line or column it does not carry, with the message kept whole, so it pastes straight back to the agent; a checker's own failure output copies as its raw lines. A click selects an entry and a double-click jumps to it.

The problems panel docked below a diff, listing diagnostics with their file locations

On this page