Skip to main content

TableTalk

TableTalk is an evaluation and observability framework for natural-language agents built on existing dbt projects. manifest.json is the complete authority for what an agent may query; warehouse connections are read-only execution adapters for those dbt relations.

Start from a dbt project

cd my-dbt-project
dbt parse
dbt docs generate  # recommended: adds physical warehouse types
tabletalk init
tabletalk agent create
tabletalk eval create revenue
tabletalk eval run revenue
tabletalk ask revenue "What was recognized revenue last month?"

tabletalk init finds dbt_project.yml and target/manifest.json, resolves a supported SQLite, DuckDB, or Snowflake target from the dbt profile, and writes only non-secret TableTalk settings. Agent creation asks the user to choose a displayed dbt group, tag, model, path, package, or source and whether to include lineage. It previews the exact resolved models, descriptions, catalog types, tests, constraints, and lineage before writing a small selector-based resource. Raw selectors remain available for automation.

name: revenue
description: Answers questions about recognized revenue.
select:
  - group:finance
  - tag:revenue
exclude:
  - model:customer_sensitive
instructions:
  - Use recognized revenue unless the user explicitly requests bookings.
sample_questions:
  - What was recognized revenue last month?

Descriptions, columns, tests, constraints, ownership, access, tags, and lineage stay in dbt. They are never duplicated into an agent file.

Correctness and provenance

Live questions and eval cases call the exact same Runtime.answer path. Before execution, TableTalk parses generated SQL and requires one read-only query, in-scope manifest relations, known columns, explicit join conditions, row and timeout limits, and explicit sensitive-data permission. It derives used dbt nodes and columns from that parsed SQL—not from model output.

Every result includes the answer, interpretation, assumptions, generated and executed SQL, dbt nodes, columns, relevant test health, bounded evidence, evidence-linked claims, verification outcomes, manifest and agent fingerprints, model and warehouse identity, latency, and token usage. Terminal and web views expose “How this answer was formed” without separate flags.

Eval correctness is determined by execution, scope, model/column expectations, result equality, reference-query matching, shape/count assertions, tolerance, and claim evidence. Eval creation uses the reviewed SQL as the default changing-data reference, runs it immediately, and writes a verification record. A live answer is labeled VERIFIED only when its exact normalized question matches an approved eval case and all hard checks pass; otherwise it is visibly UNVERIFIED and exits nonzero.

See the dbt-generated reference project and the workflow guide.

Commands

  • tabletalk init
  • tabletalk agent create|list|show
  • tabletalk eval create|run
  • tabletalk ask
  • tabletalk doctor

There is no compile/plan/apply lifecycle or applied-artifact authorization state. Source changes are active immediately and reproducibility records live under .tabletalk/runs and .tabletalk/eval-results.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tabletalk-0.5.0.tar.gz (280.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tabletalk-0.5.0-py3-none-any.whl (52.1 kB view details)

Uploaded Python 3

File details

Details for the file tabletalk-0.5.0.tar.gz.

File metadata

  • Download URL: tabletalk-0.5.0.tar.gz
  • Upload date:
  • Size: 280.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for tabletalk-0.5.0.tar.gz
Algorithm Hash digest
SHA256 453c897e629c7f252717570f76501b1bd1fb1cbb4ddf7f01640a410cc3eafe8d
MD5 c464c6a38fda4f29612d3299937b027f
BLAKE2b-256 ca50906aa7573b74ae00d4a30f293a783451aaa67185e17cf4b87f3cbb0e60ad

See more details on using hashes here.

Provenance

The following attestation bundles were made for tabletalk-0.5.0.tar.gz:

Publisher: publish.yml on wtbates99/tabletalk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tabletalk-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: tabletalk-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 52.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for tabletalk-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 644aba4e8ee05f7c223a346f81ecdf2bf2996f288c870d745103e0693aa773bb
MD5 6a3a5c74f4bcf56ff0ef910e7c89e93b
BLAKE2b-256 bd9be94a4ab9aeb8c7e4b342c47bfd9d540ab3b4967b15d504d2d12ab211446f

See more details on using hashes here.

Provenance

The following attestation bundles were made for tabletalk-0.5.0-py3-none-any.whl:

Publisher: publish.yml on wtbates99/tabletalk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.6.0

2 files

This release

0.5.0 This release

2 files

0.4.0

2 files

0.2.1

2 files

0.2.0

2 files

0.1.99

2 files

0.1.9

2 files

0.1.8

2 files

0.1.7

2 files

0.1.6

2 files

0.1.5

2 files

0.1.4

2 files

0.1.2

2 files

0.1.1

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page