Skip to main content

Seshat BI: agent-first Retail BI readiness checker (static retail check + live retail validate over the medallion warehouse and Power BI conventions).

Project description

Seshat BI logo: a gold compass star, Seshat writing, and a teal data lineage path on deep navy

Seshat BI

From messy retail data to trusted Power BI -- with evidence at every gate.

An agent-first readiness system that profiles sources, governs mappings, validates the medallion warehouse, binds metrics to contracts, and prepares Power BI delivery without skipping the human decisions that make analytics trustworthy.

PyPI CI Python License Sponsor PostgreSQL Power BI


Sponsor Seshat BI through GitHub Sponsors
Fund open-source work on validation, compatibility, documentation, and agent safety.



Run the demo  ·  Start contributing  ·  Sponsor a roadmap lane


Trust is a workflow, not a dashboard theme

A dashboard can look finished while its metrics are undefined, its source assumptions are unsafe, and its totals have never been reconciled. Seshat BI makes those gaps visible before they become executive decisions.

It answers one question:

Is this retail source ready to become trusted Power BI?

The answer is never a made-up score. Readiness is recorded as status + evidence + blocking_reasons, with named human approvals for judgment calls such as grain, PII, business rollups, and publish safety.

Named for the ancient Egyptian figure of writing, measurement, and record keeping, Seshat brings the same discipline to modern analytics: map meaning, record evidence, then build.

Seven gates between raw data and publication

Each stage can begin only after the prior stage passes. The sequence is the product.

flowchart LR
    S1[1. Source] --> S2[2. Mapping] --> S3[3. Silver] --> S4[4. Gold]
    S4 --> S5[5. Semantic Model] --> S6[6. Dashboard] --> S7[7. Publish]

    classDef stage fill:#001E35,stroke:#C69214,stroke-width:1.5px,color:#F7F1E7;
    class S1,S2,S3,S4,S5,S6,S7 stage;
Before Seshat allows... The evidence must show...
Silver transformation Mapping Ready passed and the source map is cleared.
Power BI over gold Live validation passed against the real data boundary.
Dashboard design Metric contracts exist and define business meaning.
Power BI execution Semantic Model Ready and the publish gates passed.

[!IMPORTANT] Seshat never self-grants an approval, invents source meaning, or turns a green static check into a claim of live semantic correctness.

See it work

Try the bundled synthetic retail fixture. It needs no database and no Power BI Desktop:

pipx install seshat-bi
seshat demo init
seshat demo run
seshat demo report --format html

Seshat BI readiness proof showing seven evidence-backed readiness stages

The self-contained report shows evidence, blockers, approvals, and the next allowed action across all seven stages. Offline proof stops honestly at Gold Ready; advancing farther requires a live database boundary and governed downstream artifacts.

Why teams choose Seshat BI

Principle What it changes
Evidence over scores Every pass cites evidence; every block names a concrete reason.
Human judgment stays human Agents surface decisions but cannot approve grain, PII, rollups, or publication.
Safe sequencing by construction The agent reads readiness state and performs only the next allowed action.
Power BI consumes governed truth Reports read gold; measures trace to approved metric contracts.

This makes Seshat useful to BI developers, analytics engineers, data engineers, analytics leaders, and teams building agents that must stay truthful around real business data.

How it works

flowchart LR
    RAW([Retail source]) --> B[(bronze)] --> S[(silver)] --> G[(gold)] --> PBI[Power BI PBIP]
    MAP{{Source map}} -. clears .-> S
    CHECK{{seshat check}} -. static gates .-> S
    CHECK -. static gates .-> G
    LIVE{{seshat validate}} -. live boundary .-> G
    CONTRACT{{Metric contracts}} -. govern measures .-> PBI
    HUMAN([Named human approvals]) -. authorize decisions .-> MAP
    HUMAN -. authorize publication .-> PBI

The agent is the interface. seshat check and seshat validate are gates the agent calls; they are helpers, not the product experience.

Choose your path

You want to... Start here
Evaluate Seshat in minutes Run the offline demo
Start a new BI workspace seshat init-project my-bi
Adopt an existing PBIP project seshat adopt-pbip assess --project <path>
Operate Seshat through an agent Agent Mode
Make your first contribution First-contribution path

What is built today

Seshat BI v0.2.0 is an active beta on PyPI. The shipped system includes:

  • Static and live governance gates over SQL, TMDL/PBIR, DAX, configuration, documentation, keys, date coverage, orphan relationships, and reconciliation.
  • Seven-stage agent control surfaces through seshat status and seshat next, grounded in committed evidence rather than a separate run-state engine.
  • Governed source mapping and metric contracts that stop transformation or dashboard work when business meaning is unresolved.
  • DAX governance and generation through static rules, contract-drift checks, live value proxies, and verified measure generation.
  • Portable proof surfaces including offline HTML, review JSON, SARIF, a GitHub Action, readiness passports, and an offline portfolio explorer.
  • A read-only MCP governor that exposes governance state while refusing execution and approval by construction.
  • Governed extension packs plus optional dbt and Dagster adapters that remain advisory and never create readiness truth.
  • Source-controlled Power BI workflows with deterministic PBIR authoring helpers and a read-only assessment path for existing PBIP projects.

Explore the capability inventory, release notes, and roadmap for the evidence behind each claim.

[!WARNING] The Power BI execution adapter is deliberately deferred and gated. Building the final approved page in Power BI Desktop remains a named human action. Neither is presented as an available automated capability.

Install

Python CLI

pipx install seshat-bi
seshat init-project my-bi

The seshat command is primary. retail is a deprecated compatibility alias kept for one deprecation cycle. Live database validation needs the optional db extra and a DSN stored only in a gitignored .env.

Claude Code plugin

/plugin marketplace add Kemetra/Seshat-BI
/plugin install seshat-bi@seshat-bi-marketplace

Codex plugin

codex plugin marketplace add https://github.com/Kemetra/Seshat-BI
codex plugin add seshat-bi@seshat-bi-repository

Detailed setup: user install | agent install | support matrix

Contributing

You do not need to learn the whole readiness system before making a useful first contribution. Seshat provides bounded lanes with owned files, forbidden scope, acceptance evidence, and exact verification commands.

Starter lane A useful contribution
KPI contract templates Clarify reusable business definitions without inventing policy.
Synthetic fixtures Add realistic, disclosure-safe test cases.
Dialect notes Document compatibility behavior across supported databases.
Accessibility checks Improve dashboard and documentation usability.
Blocker explanations Make governance findings clearer and more actionable.
  1. Read the first-contribution guide.
  2. Pick one lane from contribution-lanes.yaml.
  3. Claim a starter contribution.
  4. Follow the setup and pull-request checks in CONTRIBUTING.md.

Contributions are especially welcome in governance rules, database compatibility, synthetic fixtures, documentation, Power BI artifacts, and agent workflows.

Sponsor Seshat BI

Trusted BI infrastructure is public-interest work: the rules, examples, tests, and documentation should remain inspectable by the teams that depend on them. Sponsorship can accelerate public, evidence-backed roadmap lanes such as:

  • database compatibility and live-validation evidence,
  • reproducible demo fixtures and cross-engine coverage,
  • documentation, onboarding, accessibility, and contributor support,
  • agent-safety research around analytics approvals and disclosure boundaries.

The guardrail is simple: funding supports the work; it never buys a readiness approval, a rule exception, or an undisclosed product claim.

Sponsor Seshat BI through GitHub Sponsors  ·  Discuss a public roadmap sponsorship

For organization-level sponsorships or roadmap discussions, use the issue link only for non-confidential context. Do not post procurement, client, or payment information in a public issue.

Repository guide

Where the system lives
Path Responsibility
AGENTS.md Short operating contract and hard stops for agents.
.specify/ Constitution and feature specifications.
src/seshat/ CLI, governance rules, validation, and agent-facing surfaces.
mappings/ Per-table profiles, source maps, decisions, metrics, and readiness.
warehouse/ Tool-agnostic bronze, silver, and gold SQL artifacts.
powerbi/ Source-controlled PBIP semantic models and reports.
templates/ Generic readiness, mapping, metric, dashboard, and handoff blanks.
skills/ Canonical BI reasoning and workflow knowledge.
docs/ Architecture, readiness, operations, guides, and worked examples.
tests/ Unit, integration, contract, and optional live-database evidence.

Essential documentation

Topic Guide
Readiness model The seven-stage spine
Architecture Readiness pipeline
Agent operation Agent Mode
Existing PBIP adoption Read-only adoption workflow
Governance vocabulary Glossary and rule catalog
Frequently asked questions FAQ
Product direction Roadmap
Release history Changelog
Brand system Visual identity

Deliberate boundaries

Seshat BI is a governed Retail BI factory, not a one-click dashboard generator, a Fabric deployment platform, a universal ERP connector, or an automated approval engine. New automation is valuable only when it strengthens one readiness stage without taking a decision away from its accountable human owner.

License

Seshat BI is available under the Apache License 2.0.


Governed knowledge. Measured structure. Trusted BI.

Seshat BI -- built in public for analytics people who would rather stop a bad number than decorate it.

Project details


Download files

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

Source Distribution

seshat_bi-0.4.1.tar.gz (566.7 kB view details)

Uploaded Source

Built Distribution

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

seshat_bi-0.4.1-py3-none-any.whl (713.2 kB view details)

Uploaded Python 3

File details

Details for the file seshat_bi-0.4.1.tar.gz.

File metadata

  • Download URL: seshat_bi-0.4.1.tar.gz
  • Upload date:
  • Size: 566.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for seshat_bi-0.4.1.tar.gz
Algorithm Hash digest
SHA256 da4046a4890ebf009dbab346c233c8bda115df8c14489f3135c0dbab4c2301bc
MD5 20eb36099999a0b2cfb00ef80ae06cc4
BLAKE2b-256 423ef2f51f15fb1f5533b05824c56f0abd05b0dcb31ac61c8d5f8adf29322a78

See more details on using hashes here.

Provenance

The following attestation bundles were made for seshat_bi-0.4.1.tar.gz:

Publisher: release.yml on Kemetra/Seshat-BI

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

File details

Details for the file seshat_bi-0.4.1-py3-none-any.whl.

File metadata

  • Download URL: seshat_bi-0.4.1-py3-none-any.whl
  • Upload date:
  • Size: 713.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for seshat_bi-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ab4dd515939c036dc997892f8201813da48df6fd8a44221ddfae1f49056dbbb8
MD5 caecfad8ed60814f488b98bd711733fe
BLAKE2b-256 a693fc319a88f957e1f78ee62e62b824ddf47105b48aa000cb040cb5cf47eccf

See more details on using hashes here.

Provenance

The following attestation bundles were made for seshat_bi-0.4.1-py3-none-any.whl:

Publisher: release.yml on Kemetra/Seshat-BI

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

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page