# Dashies documentation > Dashies is the agentic BI platform for publishing, refreshing, and sharing > AI-built HTML dashboards. Your own AI tool authors the dashboard; Dashies > compiles and validates it, keeps it refreshing on a schedule with no AI in > the loop, versions it, and serves it at a shareable URL. Every page on this site is published twice: as HTML at the URL below without the `.md`, and as its markdown source at the URL as written. The markdown is the file the page was built from, byte for byte, so it carries the frontmatter (title, description, last-updated date) and every tabbed panel, including the ones the rendered page hides behind a tab. Links inside those files are root-relative, so `/guides/install` means `https://docs.dashies.xyz/guides/install`, and appending `.md` reaches that page's source. The site root is the one exception to the suffix rule: it is `https://docs.dashies.xyz/index.md`, not `https://docs.dashies.xyz/.md`. ## Start here - [Dashies documentation](https://docs.dashies.xyz/index.md): Dashies keeps an AI-built HTML dashboard alive - published, refreshing on a schedule, versioned, and shareable by link. - [What Dashies is](https://docs.dashies.xyz/start/what-dashies-is.md): The infrastructure that keeps an AI-built HTML dashboard alive - refreshing on a schedule, versioned, and shareable by link. - [How it works](https://docs.dashies.xyz/start/how-it-works.md): The path a dashboard takes from your AI tool through compile, validate and seed, to a scheduled refresh that rewrites only its data. - [Is Dashies right for you?](https://docs.dashies.xyz/start/is-dashies-right-for-you.md): Honest fit and anti-fit. What Dashies is good at, what it deliberately does not do, and the limits that decide it for you. - [Quickstart: your first dashboard](https://docs.dashies.xyz/start/quickstart.md): Install the plugin, ask your AI for a dashboard, and end at a live URL. No warehouse and no paid plan needed. - [Quickstart: a self-refreshing dashboard](https://docs.dashies.xyz/start/quickstart-refresh.md): Connect a warehouse, publish a dashboard against it, arm a schedule, and watch a real run land in the history. ## Core concepts - [Core concepts](https://docs.dashies.xyz/concepts.md): The mental model behind Dashies, in reading order - the artifact, how you author it, and what decides whether the numbers are right. - [The dashboard file](https://docs.dashies.xyz/concepts/dashboard-file.md): A published dashboard is one self-contained HTML file, and Dashies cares about exactly three things inside it. - [The data island](https://docs.dashies.xyz/concepts/data-island.md): Refresh rewrites exactly one block of JSON inside the file, which is why your design survives every refresh untouched. - [The runtime](https://docs.dashies.xyz/concepts/runtime.md): The code that draws a dashboard is injected on every request and never stored, so every dashboard always runs the current runtime. - [Spec vs hand-authored](https://docs.dashies.xyz/concepts/spec-vs-hand-authored.md): The YAML spec is the supported path. What the two escape hatches buy you, and what falling back to raw HTML costs. - [Datasets and the four modes](https://docs.dashies.xyz/concepts/dataset-modes.md): cube, lattice, hybrid, rows - what each one ships to the browser, what it is correct for, and what it costs you. - [Measure correctness](https://docs.dashies.xyz/concepts/measure-correctness.md): Additive and non-additive, flow and stock, ratios rather than stored averages - and the one check nothing can do for you. - [Designing the cube](https://docs.dashies.xyz/concepts/designing-the-cube.md): Grain, cardinality, timezones and ordering - the design decisions behind SQL that will run unattended for a year. - [Connections and scope](https://docs.dashies.xyz/concepts/connections-and-scope.md): A connection belongs permanently to one space, and binding the wrong one publishes fine and then never refreshes. - [Schedules](https://docs.dashies.xyz/concepts/schedules.md): Cadences and intervals, anchors and timezones, the precision you actually get, and what happens across a daylight-saving change. - [Plans and what is gated](https://docs.dashies.xyz/concepts/plans-and-gating.md): There is no publish quota and no visibility gate. What a paid plan buys, and what a lapsed one does to a live dashboard. ## Guides - [Install the connector](https://docs.dashies.xyz/guides/install.md): Add Dashies to Claude Code, Codex, Cursor, or Claude web and desktop, so your AI tool can publish dashboards and keep them refreshing. - [Sign in and authorize](https://docs.dashies.xyz/guides/authorize.md): Dashies uses OAuth 2.1 with PKCE, so your AI tool signs in through the browser once. There is no token to copy, paste, or rotate. - [Connect a warehouse](https://docs.dashies.xyz/guides/connect-warehouse.md): Connect Postgres, BigQuery, Snowflake, Redshift, Databricks, or SQL Server so your dashboards refresh from your own data on a schedule. - [Connect PostgreSQL](https://docs.dashies.xyz/guides/connect-warehouse/postgres.md): Create a read-only role, add the data source, and test it, so your dashboards can refresh from a Postgres or Postgres-compatible warehouse. - [Connect BigQuery](https://docs.dashies.xyz/guides/connect-warehouse/bigquery.md): Create a service account, paste its key into the Dashies form, and start refreshing dashboards from a Google BigQuery project on a schedule. - [Connect Snowflake](https://docs.dashies.xyz/guides/connect-warehouse/snowflake.md): Set up key-pair authentication for a read-only Snowflake user, add the data source, and keep the per-refresh credit cost predictable. - [Connect Amazon Redshift](https://docs.dashies.xyz/guides/connect-warehouse/redshift.md): Set up the two credentials Redshift needs, an IAM key pair and a Secrets Manager ARN, and control what a Serverless workgroup costs per refresh. - [Connect Databricks](https://docs.dashies.xyz/guides/connect-warehouse/databricks.md): Connect a Databricks SQL Warehouse with a read-only service principal, and keep a serverless warehouse's per-second billing predictable. - [Connect SQL Server](https://docs.dashies.xyz/guides/connect-warehouse/sqlserver.md): Connect Microsoft SQL Server or Azure SQL with the read-only login Dashies verifies, and understand where this engine differs from the other five. - [Author a dashboard with your AI](https://docs.dashies.xyz/guides/author-a-dashboard.md): The real publishing loop, from introspecting your schema to publishing by spec hash, and what to check at each step so you catch problems early. - [Verify your numbers](https://docs.dashies.xyz/guides/verify-your-numbers.md): Cross-check every published measure against an independent aggregate. A dashboard that validates and publishes cleanly can still ship a wrong number. - [Choose a dataset mode](https://docs.dashies.xyz/guides/choose-a-dataset-mode.md): A decision flow for picking cube, lattice, hybrid, or rows per dataset, plus how to tell when the server picked one you did not expect. - [Set and change a refresh schedule](https://docs.dashies.xyz/guides/refresh-schedule.md): Pick a cadence and an anchor time for a dashboard, understand when a run actually fires, and know what happens after a failed run. - [Brand and design a dashboard](https://docs.dashies.xyz/guides/brand-a-dashboard.md): Retint the runtime to your brand colors, embed your real logo and font, and elevate the chrome without breaking scheduled refresh. - [Share a dashboard](https://docs.dashies.xyz/guides/share-a-dashboard.md): Public and private visibility, what the canonical URL looks like, and how renaming keeps old links working with a redirect. - [Version history](https://docs.dashies.xyz/guides/version-history.md): Preview, restore, and label earlier versions of a dashboard, and know which retention rules decide what survives. - [Convert from Tableau or Power BI](https://docs.dashies.xyz/guides/convert-from-bi-tool.md): Turn an existing Tableau workbook or Power BI report into a Dashies dashboard, and read the report that says exactly what did and did not come across. - [Work as a team](https://docs.dashies.xyz/guides/work-as-a-team.md): Create a workspace, invite people, publish into it, and share one warehouse connection without hitting the scope trap that publishes a dead dashboard. ## Reference - [Reference](https://docs.dashies.xyz/reference.md): The Dashies contract: the spec schema, every tile type, runtime attributes, theme tokens, limits, SQL dialects, errors and the URL rules. - [Dashboard spec (v1)](https://docs.dashies.xyz/reference/spec.md): Every field of the Dashies spec v1 YAML document: types, bounds, defaults, and the combinations the schema refuses outright. - [Tile types](https://docs.dashies.xyz/reference/tiles.md): All eighteen Dashies tile types, the bindings each one requires, its ceilings, and what it does instead of drawing a misleading picture. - [Limits](https://docs.dashies.xyz/reference/limits.md): Every Dashies size ceiling by constant name, plus the per-engine row and byte caps a cube result is measured against. - [SQL dialect notes](https://docs.dashies.xyz/reference/sql-dialects.md): What changes about your cube SQL per warehouse engine: identifiers, date bucketing, percentiles, and the traps that mis-bucket silently. - [Runtime attributes](https://docs.dashies.xyz/reference/runtime-attributes.md): The data-dash roles and every data attribute the Dashies dashboard runtime reads, including the viewer controls and time intelligence. - [Theme tokens](https://docs.dashies.xyz/reference/theme-tokens.md): Every --drt- custom property the dashboard runtime defines, its default value, and the colours that are not tokenized. - [URLs, slugs and reserved names](https://docs.dashies.xyz/reference/urls-and-slugs.md): Where a published dashboard lives, what a slug and a handle may be, how renames redirect, and which names are already taken. - [Errors](https://docs.dashies.xyz/reference/errors.md): The publish finding envelope and its layers, every semantic check code, the refresh failure classes, and the named refusals you will meet. - [MCP tools](https://docs.dashies.xyz/reference/mcp-tools.md): All eighteen Dashies MCP tools, grouped by job, with the shared rules and the protocol facts every call depends on. - [Server and protocol](https://docs.dashies.xyz/reference/mcp-tools/protocol.md): The Dashies MCP endpoint, its JSON-RPC transport, version negotiation, the methods it handles, and the shape every result arrives in. - [Shared rules](https://docs.dashies.xyz/reference/mcp-tools/conventions.md): Paths, slugs, metadata semantics, connection resolution, scope, rate limits and retention. The rules every Dashies MCP tool shares. ### Publishing - [publish_dashboard](https://docs.dashies.xyz/reference/mcp-tools/publish-dashboard.md): Upload a dashboard file or compile a Dashies spec, and get a stable URL back. Parameters, return shape, errors and scope rules. - [update_dashboard](https://docs.dashies.xyz/reference/mcp-tools/update-dashboard.md): Rename a dashboard or edit its metadata without re-uploading the body. Parameters, the rename pipeline, errors and scope rules. - [get_dashboard](https://docs.dashies.xyz/reference/mcp-tools/get-dashboard.md): Read back one of your published dashboard files by path. Parameters, the base64 return shape, errors and workspace membership rules. - [delete_dashboard](https://docs.dashies.xyz/reference/mcp-tools/delete-dashboard.md): Retire a dashboard by its canonical slug. Parameters, the deletion ordering, the degraded return variants, errors and scope. - [list_dashboards](https://docs.dashies.xyz/reference/mcp-tools/list-dashboards.md): Enumerate your dashboards newest-updated first, with cursor pagination. Parameters, return shape, the degraded folder state and scope. ### Versions - [list_dashboard_versions](https://docs.dashies.xyz/reference/mcp-tools/list-dashboard-versions.md): List a dashboard's archived body snapshots, newest first. Parameters, return shape, the empty state that carries no JSON, and scope. - [restore_dashboard_version](https://docs.dashies.xyz/reference/mcp-tools/restore-dashboard-version.md): Roll a dashboard's body back to a prior snapshot. Parameters, the reversibility guarantee and when it does not hold, errors and scope. - [get_dashboard_version](https://docs.dashies.xyz/reference/mcp-tools/get-dashboard-version.md): Read back one archived snapshot's body without restoring it. Parameters, the base64 return shape, errors and scope rules. - [update_dashboard_version](https://docs.dashies.xyz/reference/mcp-tools/update-dashboard-version.md): Name a snapshot or clear its name, which also exempts it from the autosave prune. Parameters, limits, errors and scope rules. ### Authoring - [list_connections](https://docs.dashies.xyz/reference/mcp-tools/list-connections.md): List the warehouse connections you can author against. The ten fields it returns, why it takes no arguments, errors and scope. - [introspect_schema](https://docs.dashies.xyz/reference/mcp-tools/introspect-schema.md): List the tables and columns a cube SQL may read from a connection, with row estimates and semantic roles. Parameters, errors and scope. - [validate_cube_sql](https://docs.dashies.xyz/reference/mcp-tools/validate-cube-sql.md): Run candidate cube SQL once, read-only, and report columns, exact row count, advisories and a size recommendation. Parameters and errors. ### Refresh - [get_refresh_status](https://docs.dashies.xyz/reference/mcp-tools/get-refresh-status.md): Read a dashboard's refresh state and its last twenty runs. Parameters, return shape, the non-refreshable state, errors and scope. - [get_source_config](https://docs.dashies.xyz/reference/mcp-tools/get-source-config.md): Read back a dashboard's stored refresh manifest verbatim. Parameters, return shape, the not-refreshable state, errors and scope. - [set_refresh_schedule](https://docs.dashies.xyz/reference/mcp-tools/set-refresh-schedule.md): Set a dashboard's cadence, every-N interval and day/time anchor. Parameters, the per-cadence caps, every validation error and scope. - [trigger_refresh](https://docs.dashies.xyz/reference/mcp-tools/trigger-refresh.md): Refresh a dashboard now instead of waiting for its schedule. Parameters, the three success shapes, errors, and why it is personal only. ### Spec - [get_dashboard_spec](https://docs.dashies.xyz/reference/mcp-tools/get-dashboard-spec.md): Read back a spec-backed dashboard's spec verbatim plus its hash, for the edit-and-republish loop. Parameters, errors and scope. - [derive_dashboard_spec](https://docs.dashies.xyz/reference/mcp-tools/derive-dashboard-spec.md): Reconstruct a draft spec from an existing refreshable dashboard. A read-only migration aid that stores nothing. Parameters and refusals. ## Operate - [Monitor refreshes](https://docs.dashies.xyz/operate/monitor-refreshes.md): Read the Schedules page, the attention band, and the run history, so you can tell at a glance which dashboards are current and which are not. - [Failure alerts and retries](https://docs.dashies.xyz/operate/failure-alerts.md): The eight emails Dashies sends about a refresh, who receives each one, how a failed run backs off, and how to change the threshold or mute a dashboard. - [Troubleshooting](https://docs.dashies.xyz/operate/troubleshooting.md): Four questions people actually ask about a dashboard that stopped working, each answered as a procedure with the exact text Dashies puts on the screen. ## Administration - [Administration](https://docs.dashies.xyz/admin.md): Run a Dashies workspace day to day - members and roles, billing, SAML single sign-on, SCIM provisioning, domain verification, and the audit log. - [Members and roles](https://docs.dashies.xyz/admin/members.md): Change a workspace member's role, remove someone, and understand exactly what a removal revokes and what it deliberately leaves alone. - [Billing and plans](https://docs.dashies.xyz/admin/billing.md): Subscribe, manage or cancel a Pro plan, turn Enterprise on for a workspace, and see why there is no seat pool for an admin to allocate. - [Verify your email domain](https://docs.dashies.xyz/admin/domain-verification.md): Prove your organization owns its email domain with one DNS TXT record, and unlock SAML sign-in and SCIM provisioning for that domain. - [SAML single sign-on](https://docs.dashies.xyz/admin/sso.md): Connect your identity provider over SAML so your organization signs in to Dashies with the accounts it already has. - [SCIM directory sync](https://docs.dashies.xyz/admin/scim.md): Mirror joiners and leavers from your identity provider into a Dashies workspace, and know which parts of SCIM are deliberately not implemented. - [Audit log](https://docs.dashies.xyz/admin/audit-log.md): Read the workspace audit log, know exactly which administrative events it records, and know the two things it deliberately does not cover. ## Trust - [The security model](https://docs.dashies.xyz/trust.md): What Dashies can and cannot see, who can read a published dashboard, and the controls that keep one organization's identity separate from another's. - [Warehouse credentials](https://docs.dashies.xyz/trust/warehouse-credentials.md): Where the credential you enter is stored, what can read it, and exactly how much of read-only Dashies enforces on each warehouse engine. - [Dashboard isolation](https://docs.dashies.xyz/trust/dashboard-isolation.md): A published dashboard is arbitrary author-written HTML, so it is served in a sandbox that cannot reach your Dashies session. What that costs, precisely. - [Privacy and data handling](https://docs.dashies.xyz/trust/privacy.md): What Dashies stores, how analytics work for you and for people who open your dashboards, and what deletion actually removes. ## Changelog - [Changelog](https://docs.dashies.xyz/changelog.md): User-visible changes to Dashies, newest first, dated by the day each one shipped to production.