# explain

> Why we said this: the evidence behind one answer line.

Your agent asks it before relying on a line.

## What it takes

| Input | Type | What it is |
| --- | --- | --- |
| handle | text, required | a w-handle from this session, or path:line |
| format | text or json, optional | — |
| family | yes, no or unsure, optional | family: your answer to 'are all subclasses of these types inside this repository?' yes, no or unsure (default unsure). It sets the [a] assumption in answers. |

## Example

The handle `w4` is the within_these line of the who_calls example.

Your agent asks: `explain(handle: "w4")`

The engine's answer, captured on the example project:

```text
llmgraph · explain w4: app/service.py:4 s.save(item)
  within_these, one of 3 (closed: repo only) [a] w14
  why: s is typed Store; Store and its subclasses in this repo define save w15
  from: ty answered (settled) to a definition request · ty answered (settled) to a hover request · class Store at app/store.py:1 · definition Store.save at app/store.py:2 · definition PgStore.save at app/store.py:4 · definition MemStore.save at app/store.py:6 w16
  assumes [a]: all subclasses are in this repo (project setting)
```

## What it cannot tell you

- It explains one answer line, from a handle valid in this session only.
