# Ask in the web app

Open a project's Chat and ask in plain language. Cassis answers from the published ontology and shows the reasoning and SQL behind the result.

Sign in at [app.getcassis.com](https://app.getcassis.com/), choose a project, and open **Chat**.

1\. Question with no judgment call

Runs automatically, with the plan shown for transparency plus the SQL and result so anyone downstream can verify.

2\. Plan, then execution

A question with a genuine fork pauses on the plan first. Review or switch the assumptions and objects, then run it.

3\. Follow-up in the same chat

The chat holds its context, so follow-ups reference earlier results without restating the scope.

## Read the answer

- **Plan** Cassis shows how it interpreted the question. If there is a genuine choice, it waits for you to confirm or change the assumptions before running SQL.

- **SQL** **Show SQL** expands the exact statement behind the answer.

- **Provenance** The answer names the ontology objects it used, so you can spot an unexpected table, metric, or join.

- **Feedback** Rate the answer and explain what was wrong. Corrections become evidence for the [review queue](/curate/issues/).

Use **Add as test case** only after someone validates the SQL and its business interpretation. That turns a useful answer into a regression case; see [Build and run evals](/curate/evals/).

## Keep corrections in the conversation

A chat belongs to the person who started it. Writing a correction in the thread—“active means billed this month”—gives Cassis evidence it can turn into a reviewed context improvement.

On a schema-only project, Cassis returns grounded SQL without executing it, so `results` is `null`. That is different from a query that ran and returned zero rows. See [Connect a warehouse or upload DDL](/setup/warehouse/).

For a deeper explanation of plans and provenance, see [Understand an answer](/ask/answers/).
