# Resolve a question with ask

## Two routes to a bound function

Inspect the catalog with `inspect subject:functions`. For a known Function, inspect its `params` and `row` schemas and call `bind`. For a question in words, `ask` selects a catalog Function and binds its scope. The reviewed live 0.6.0 instructions also advertise selection of a declared binding: a named scope already supplied by the catalog. Inspect the Function to discover its declared bindings; do not invent addresses to resolve a brand name. It authors nothing. A question that no catalog Function answers returns `error` / `unsupported`, naming what it `needs`.

`bind_prompt` is no longer advertised. The older authoring fields `address`, `context`, `shape`, and `explain` are not accepted by `ask`. This page retains its historical URL so existing links still work.

## A deliberate ask

```json
{"tool":"ask","arguments":{"metric":"<PRECISE_METRIC_REQUEST>","chain_id":1,"function_slug":"<ADVERTISED_FUNCTION_SLUG>","params":{"<SCOPE_FIELD>":"<OPERATOR_VALUE>"},"from_block":100,"to_block":110}}
```

Only `metric` and `chain_id` are required by the wire schema. `function_slug`, `params`, and paired block ends are optional inputs. Replace placeholders with the selected Function's advertised scope fields. The question is limited to 500 characters. An address not supplied by the operator must not be invented.

## A suggestion is a question

A `suggested` outcome writes nothing. Its `kind` is `params` or `window`; show the returned `card`, chain facts, and missing parameters where provided. Merge the operator's answer into the original request under the field named by `resume`, then repeat. Never choose a period or economic tradeoff merely because it looks reasonable. Supply both block ends together.

## Examine the resolution

On success, preserve the returned card's bound-function identity and scope, `description`, `row`, `created`, `follow`, and retention disclosure. `name` is a debug label, not an identity accepted by data tools. `follow.already_indexed` and an optional checkpoint do not prove full coverage of your requested window.

Inspect coverage, materialize missing blocks, settle authorized quotes, inspect jobs, read values, and request provenance. Resolution does not deliver a paid read or bypass the usual execution path. Unsupported questions require an appropriate catalog capability; repeating the request cannot author one.
