> ## Documentation Index
> Fetch the complete documentation index at: https://docs.nodaldata.io/llms.txt
> Use this file to discover all available pages before exploring further.

# The skills

> Seven small, composable agent workflows — build context, then plan, verify, and challenge answers.

The open-source repo installs **seven skills** into your agent. They're small and composable —
invoke one directly, or just ask a question and let the agent route to the right workflow. Three
build and maintain your context; four govern how questions get answered against it.

## Build and maintain context

<CardGroup cols={1}>
  <Card title="setup-nodal" icon="wrench">
    Configures the project once: probes your read-only warehouse connection (read-query, metadata,
    query-history), discovers nearby dbt and context sources, and optionally binds a local browser
    for dashboard verification. Writes only sanitized paths and capability classifications to a
    gitignored `.nodal.local.json` — never credentials. Runs only when explicitly requested.
  </Card>

  <Card title="context-interview" icon="comments">
    The core workflow — interviews your analyst to [build or improve](/open-source/build-your-context)
    an ACF context repo, one domain at a time. Every confirmed disambiguation also becomes an eval
    seed.
  </Card>

  <Card title="analyst-handoff" icon="right-left">
    Captures critical domain knowledge when an analyst changes roles or leaves. Instead of an
    unstructured exit-interview transcript, it orchestrates the governed interview — so the
    departing analyst's knowledge lands as reviewable context and eval seeds.
  </Card>
</CardGroup>

## Ask and verify

The question-answering path is deliberately reviewable:

```text theme={null}
business question → analytics plan → read-only query → result verification → answer
                                                                     ↓ if challenged
                                              independent challenge → uphold or replan
```

<CardGroup cols={1}>
  <Card title="analytics-plan" icon="clipboard-list">
    Translates a business question into a reviewable plan *before any SQL runs* — the
    interpretation, grain, filters, time semantics, and query plan, grounded in your ACF, dbt,
    docs, and warehouse evidence. Missing definitions produce a clarification or an
    expert-escalation recommendation, not a falsely confident answer.
  </Card>

  <Card title="verify-result" icon="check-double">
    After the read-only SQL runs, checks the executed query and result against the approved plan —
    metric, filter, grain, join, and time fidelity — then assesses plausibility and whether
    escalation is needed.
  </Card>

  <Card title="challenge-result" icon="scale-balanced">
    A skeptical second review when an answer looks wrong or you want another take. It reconstructs
    the intended analysis, tests alternative interpretations and failure modes, and returns
    **upheld**, **inconclusive**, or **replan** — a replan goes back through `analytics-plan` for
    fresh approval.
  </Card>

  <Card title="dashboard-verify" icon="gauge">
    Reads a named BI dashboard in your own local, already-authenticated browser — capturing both
    the visible values and the active filters — so answers reconcile against your source of truth.
    It never handles credentials and is configured only with your consent.
  </Card>
</CardGroup>

## Why plan-then-verify

SQL can execute successfully at the wrong grain, omit a mandatory filter, use a noncanonical
metric, or fan out through a join. `analytics-plan` makes intent explicit before execution;
`verify-result` checks whether the query and result actually satisfied that intent afterward.

Plans and verified results carry an explicitly *uncalibrated* uncertainty estimate — it records
unresolved semantics and evidence gaps and recommends expert escalation when a reliable answer
can't be supported. It's a decision aid, not a statistical confidence score.

## Next

<CardGroup cols={2}>
  <Card title="Build your context" icon="comments" href="/open-source/build-your-context">
    Install the plugin and run the interview.
  </Card>

  <Card title="See the eval delta" icon="chart-line" href="/open-source/evaluation">
    Measure accuracy with vs. without your context.
  </Card>
</CardGroup>
