Skip to content

Getting Started With Agents

Claude can query your game data and build charts straight from a conversation. You describe what you want to see; Claude writes the fetch script, runs it, and renders the result as a styled HTML dashboard. No Python required.

One prompt takes you from an empty folder to this:

Annual sales dashboard built by Claude: KPI cards, a monthly chart, and a platform breakdown

About ten minutes, most of it waiting on downloads. The prompt is further down this page, ready to paste.

What to Prepare

  • The Claude desktop app, installed and signed in. Everything below works the same way in the claude terminal CLI if you prefer it, but the desktop app is the gentler route.
  • Your IndieBI credentials. A User ID that looks like u-xxxxxxx and a SAS token that starts with sp=rl&st=. If you don't have them yet, generate both in the IndieBI Partner Hub; see Getting Your Credentials.
  • An empty folder for the workspace. Make it before you start, somewhere you can find again: your analyses will live there.

That's the whole list. The SDK runs on Python and uv, but you don't have to set either up yourself. Claude checks for both, and if one is missing it asks your permission and installs it.

Have your credentials open before you begin

Partway through, Claude creates a .env file in your folder and opens it in Notepad (TextEdit on a Mac). Replace its two placeholder lines with the ones Copy Credentials gives you in the Partner Hub, or paste each value over the placeholder after its =. Save the file and type "done" in the chat. The token goes straight into the file and never has to pass through the conversation.

The credentials end up only in .env in your folder. That file is listed in .gitignore, stays on your machine, and is never touched by SDK updates. The SAS token is scoped to your user and grants read-only access to your own data.

Step 1: Point Claude at Your Folder

Open the Claude desktop app and start a new session in the empty folder you just made. Claude asks which folder to work in when you begin; pick that one. Everything it downloads, installs and builds stays inside.

First time in Claude? Set these three things

The three Claude controls, numbered: the Code tab, the mode selector on Auto, and the model selector on Opus 5.5, High

  1. Switch from Home to Code, at the top of the window. Home is the chat assistant. Code is the one that can read and write files in your folder, which is what the rest of this page needs.
  2. Set the mode to Auto, on the left of the message box. Setup runs a dozen or so commands, and Auto lets Claude work through them instead of stopping for approval at each one. The prompt below still tells it to ask you before it installs anything.
  3. Choose Opus 5.5 on High, at the bottom of the window. Opus writes better queries and better-looking charts, and High gives it room to think through your data before it answers.

Step 2: Paste This Prompt

The button in the corner of the block copies the whole thing. Paste it into Claude and send it.

Your first prompt
Set up an IndieBI DDA analysis workspace in this folder, then
build me a dashboard.

1. Download https://dda-sdk.indiebi.com/dda-sdk-workspace.zip
   and unzip it here. The archive has no top-level folder, so its
   contents land directly in this directory. Delete the zip
   afterwards.
2. Read the CLAUDE.md you just unzipped, along with
   .claude/skills/dda-analytics/SKILL.md and
   .claude/skills/indiebi-design-system/SKILL.md, and follow them
   for the rest of this session. They arrived after the session
   started, so they won't load on their own.
3. Check that Python 3.12 or newer and uv are both available. If
   either is missing, ask my permission and install it. Then run
   `uv sync`.
4. Set up my credentials the way the dda-analytics skill's
   "Credential handling" section describes: copy `.env.example` to
   `.env` with a shell command, open it for me in my system's text
   editor (Notepad on Windows, TextEdit on macOS), and ask me to
   paste in my IndieBI User ID and SAS token, save the file, and
   type "done" in this chat. Then run the skill's check. Never
   read `.env` or print the token.
5. Build me a dashboard of gross sales for 2025 across all
   platforms: the total for the year, the peak month, the monthly
   average, a month-by-month chart, and a breakdown by platform.
   Use the IndieBI design system, then open it in my browser.

If your data doesn't reach back to 2025, swap the year in the last step for one it does cover.

Claude works through the list, waits while you add your credentials, picks the right tables, fetches only the rows it needs, and opens the finished dashboard in your browser: your own numbers, laid out like the example at the top of this page.

What You Have Now

Your folder holds a working workspace:

  • the SDK and its dependencies, installed into .venv
  • your credentials in .env
  • .claude/, holding the skills that teach Claude your tables and the IndieBI design system
  • docs/, a local copy of this documentation
  • projects/, where every analysis lands in its own timestamped folder: the fetch script, the query results, and the HTML. Nothing is hidden, and you can rerun or edit any of it.

Keep going in the same conversation. Ask Claude to drill into one platform, change the date range, switch from revenue to units, or restyle the chart.

From here on, new sessions in this folder load CLAUDE.md and the skills by themselves. Step 2's reading instruction was only needed because the files arrived mid-session.

What to Ask Next

These all work out of the box:

  • Show me Steam revenue by month for the last year
  • Which countries drove the most units sold in Q1 2026?
  • How did our last Steam sale impact each product that was included?
  • Compare gross revenue across all platforms for 2025
  • What promotions ran on Steam last year, and what discounts did we offer?
  • Show me our top 5 selling products by units, broken down by platform

How It Works

Claude has the IndieBI DDA SDK and knows your tables and schemas. When you ask a data question it:

  1. Picks the right table and columns
  2. Fetches the data with DuckDBClient or PolarsClient
  3. Aggregates and shapes the result with Polars
  4. Renders an HTML chart using the IndieBI design system

That knowledge lives in a skill called dda-analytics, which loads automatically in every session after the first. If a session ever seems to be guessing at your schema, invoke it directly with /dda-analytics.

If Something Goes Wrong

Claude says credentials are missing, or the token is invalid or expired

Claude opens .env in Notepad (TextEdit on a Mac) and tells you what the SDK found: a value that's still the placeholder or was pasted into the wrong spot, a token that has expired, or a token that was rejected before its expiry date. Put the right two lines in, save the file, and type "done" in the chat.

A SAS token lasts one year, and once it has expired you can generate a new one in the IndieBI Partner Hub. If a token that hasn't expired is rejected, copy both lines again with Copy Credentials, or ask your IndieBI contact for a new token if the Partner Hub no longer shows them. See Getting Your Credentials.

A table you asked about isn't there

Not every table is provisioned for every account. Claude tells you which ones came back, and your IndieBI contact can say what your plan covers.

Claude doesn't seem to know about your data

Check that the session is running in the workspace folder. If it is, ask Claude to read CLAUDE.md and .claude/skills/dda-analytics/SKILL.md, or start a fresh session in that folder and it will pick them up on its own.

A new SDK version is available

Sessions start with a version check, and Claude asks before updating anything. See Updating the SDK.

Next Steps