A presentation is a curated collection of key results drawn from across sessions and projects. Presentations let users assemble findings into a coherent narrative without duplicating data — each key result in a presentation references the original source, and any updates to the source are automatically reflected.
Creating a Presentation
From the Presentations list (accessible via the sidebar), click New Presentation. Provide:
- Name — A descriptive title for the presentation.
- Description — Optional context about what the presentation covers.
- Tags — Optional tags for categorization. Users can select from existing tags or create new ones. Tags are displayed as pills on the presentation list and detail views.
- Editors — Reviewer-level (or higher) users granted full edit access to the presentation, with the same rights as the owner.
- Viewers — Users granted read-only access to the presentation.
Adding Key Results
Key results can be added to presentations in two ways:
- From the key result menu — Each key result has a menu button that includes an Add to Presentation option. This lets you quickly add the key result to a presentation without navigating to the edit page.
- From the key result edit panel — When editing a key result, a Presentations section lists all presentations you own or can edit. Check a presentation to add the key result; uncheck to remove it.
A single key result can belong to multiple presentations.
Adding a key result to a presentation creates a lightweight reference — the presentation stores only the link, not a copy of the data. When the presentation is viewed, each key result's title, description, SQL, results, chart configuration, and display type are pulled from the source record.
Viewing a Presentation
The presentation detail page displays key results organized into slides. Navigation controls (Prev / Next) let you step through slides one at a time, with a counter showing the current position (e.g., "Slide 2 of 5").
Each slide renders its key results according to the slide's layout (see Slide Layouts below). If no layout has been set, the slide falls back to a simple list of result titles.
If a presentation has no slides yet, an empty state message is shown with a link to the builder for the presentation owner.
Data Coalescing
Presentations use a coalescing strategy for key result data. Each presentation-to-key-result link can optionally store overrides for any field (SQL, results, title, description, display type, chart instructions). When rendering, the presentation uses the override if present, falling back to the source key result's value. Currently, overrides are not set through the UI — all fields coalesce to the source — but the architecture supports per-presentation customization in the future.
If a source key result is removed from its session (via the session's key result edit panel), the presentation link is retained but the key result will no longer appear in the presentation detail view, since all coalesced fields will be null.
Sharing
Presentations are private by default — only the owner can see them. To share a presentation, add users as editors or viewers on the presentation form.
- Editors have the same rights as the owner: they can edit the presentation, use the builder, manage key results, and manage who else has access. Only Reviewer-level users (or higher) can be added as editors.
- Viewers have read-only access to the presentation and all of its key results. Any authenticated user can be added as a viewer.
Removing all editors and viewers makes the presentation private again.
Slide Layouts
Each slide has a layout that controls how its key results are rendered. All layouts render each key result's description as annotation text below its content.
The supported layouts are:
chart— A single result displayed as a chart. Best used with one result per slide.chart-plus-single-values— The slide is split into two areas. Non-single-value results (bar, column, timeseries, or scatter charts) appear in the main chart area. Results withsingleValuechart type appear in a side column as key metrics.data-table— Each result on the slide is rendered as a data table.chart-with-associated-table— A single result is displayed as both a chart and a data table below it. Best used with one result per slide.side-by-side-charts— Two charts rendered side by side. Expects exactly 2 results, both chart types (bar, column, timeseries, or scatter). By default each chart gets 50% of the width, but per-resultwidthin chart instructions controls proportional sizing (e.g., one chart at 70% and another at 30%).single-value-grid— A grid of single-value KPIs. Expects 2–6 results, all withsingleValuechart type. Automatically arranges into 2 or 3 columns based on the number of results.stacked-charts— Two charts stacked vertically (top/bottom). Expects exactly 2 results, both chart types (bar, column, timeseries, or scatter).
If a slide has no layout set, it falls back to displaying result titles only.
Presentation Builder
Presentation owners and editors can use the Build button on the presentation detail page to open an AI-powered workspace for organizing slides. The builder helps arrange key results into slides with appropriate layouts.
How It Works
The builder interface has two panels:
- Left panel — A conversation with the AI, focused on presentation layout rather than database queries.
- Right panel — A live preview of the current slide layout, updated in real time as the AI makes changes. Each slide is shown with a skeleton rendering of its layout so you can see the structure before viewing the full presentation.
Available Tools
The AI has access to the following presentation-specific tools:
-
LIST_RESULTS — Lists key results available for the presentation. By default shows all results with their UUID, title, chart type, and whether they are assigned or unused. Accepts an optional
--unused-onlyflag to show only results not yet assigned to a slide. -
GET_RESULT_DETAILS — Returns the full details of a specific key result given its UUID, including its description, SQL query, and all data rows.
-
ADD_RESULTS_TO_SLIDE — Assigns key results to a slide by number (1-based). If a result is already on a different slide, it is automatically moved. Moving a result that leaves its previous slide empty causes that empty slide to be automatically removed and remaining slides to be renumbered. Supports a
--insertflag to insert a new slide at a given index (pushing existing slides down) instead of replacing the slide at that index. -
DELETE_SLIDE — Removes a slide by number (1-based). The key results on the deleted slide are moved back to the unused results pool. Remaining slides are renumbered.
-
SET_SLIDE_LAYOUT — Sets the layout type for a slide. See Slide Layouts above for the supported options. The tool validates that the assigned results are a good fit for the chosen layout and returns warnings if the result chart types don't match what the layout expects (e.g., non-single-value results in the metrics column of
chart-plus-single-values). -
STYLE_RESULT — Updates the title, description, or chart rendering instructions for a specific result within the presentation. Uses CLI-style flags:
--uuid(required),--title,--description,--chart_instructions(at least one of the latter three must be provided). Pass an empty string to clear a field (e.g.--description ""). Supported chart types:bar— requires non-emptycategoryFieldsand 1–4 numericmeasureFields. Supportsstacked(boolean),altMeasureFields(numeric columns shown as dots on a secondary axis), anddataLabels(boolean).column— same options asbar, rendered as vertical bars.timeseries— requirescategoryFieldswhere the first field is a date, and 1–4 numericmeasureFields. Additional category fields beyond the date act as dimension fields for grouping into multiple lines. Multiple measure fields cannot be combined with dimension fields.scatter—categoryFieldsoptional (used for point labels), exactly 2 numericmeasureFields. SupportsdenominatorField(a numeric column that controls bubble size, rendering as a bubble chart).singleValue—categoryFieldsomitted or empty, exactly 1measureFields, query must return exactly 1 row. Supportscolor(one of:red,green,gold,blue,grey; defaults toblue).
All chart types support these additional options in
chart_instructions:fieldFormat— Per-column formatting. An object keyed by column name, where each value has optionalunit("number","percent", or"dollar"),precision(integer 0–6), andlabel(display name override). Applied to axis labels, tooltips, data labels, and table headers.height— Integer 10–100, percentage of available content height. Not supported forsingleValue. When set, the chart is scaled vertically within its allocated space.width— Integer 10–100, percentage of available content width. When set, the chart is scaled horizontally and centered. Inside-by-side-chartslayout,widthcontrols proportional sizing between the two charts rather than internal scaling.
-
PROMPT_USER — Communicates findings or asks for clarification.
Interrupting the Builder
While the AI is working (making tool calls and updating slides), the owner or an editor can click the Interrupt button to stop the AI mid-build. The button appears next to the "Thinking..." indicator whenever the builder is actively running.
When interrupted, the AI stops at its next tool call boundary, acknowledges the interruption, and asks how you would like to proceed. Any layout changes already made before the interruption are preserved.
Persistence
Conversation history is persisted automatically. If you leave the builder and return later, the conversation resumes where you left off. Layout changes made by the AI are saved to the presentation immediately.
Export to PowerPoint
Users with Allow PHI Download rights can export a presentation as a PowerPoint (.pptx) file. The export button is available on the presentation detail page.
The exported file contains native PowerPoint charts and tables built from the underlying data — not screenshots or images. This means charts can be further customized directly in PowerPoint: changing colors, adjusting axis ranges, editing labels, or modifying the data series.
The PPTX is intentionally stripped of styling so that a PowerPoint theme can be easily applied. Charts use theme accent color references (accent1 through accent6) rather than hardcoded colors, so applying a corporate theme will automatically recolor all charts to match. Single-value KPIs are the exception — they use semantically meaningful colors (red, green, gold, blue, grey) that are preserved regardless of theme.
All slide layouts, chart types, and styling options (field formatting, height, width, annotations) are faithfully reproduced in the export.
Editing and Deleting
Owners and editors can edit the name, description, tags, editors, and viewers from the presentation detail page via the Edit Presentation button. The edit form also provides a Delete Presentation option, which soft-deletes the presentation. Deleting a presentation does not affect the source key results.
Access Control
- Viewers can view presentation lists and details for presentations shared with them. Access to a presentation grants visibility to all key results it contains, regardless of whether the viewer has access to the source projects.
- Editors and owners can create, edit, and delete presentations, add or remove key results, use the builder, and manage sharing.