Back to portfolio

Thor: Slack Data Analyst Agent

Caplia's in-house data analyst. Anyone on the team asks a plain-English question about the company's numbers in Slack and gets the answer, a chart or a report in seconds, with the exact definition and time window it used.

“We needed a data analyst. So we built one, and he lives in our Slack.”

Year2026
ServiceAI Agent Systems
ClientCaplia
Built withClaude, Slack, PostgreSQL, TypeScript

Problem

Answering something as simple as how many companies signed up each week since May meant someone stopping to write a query or build a dashboard, then pasting a screenshot. Every number went through an engineer.

Solution

You @-mention Thor and ask in plain English. It works out what you mean, runs the query and replies with the number plus the definition and time window behind it. Keep replying to narrow the window, split by segment or ask why. Ask for a chart and it renders a bar or line graph into the thread. Ask for a CSV or a PDF and it builds the file and posts it. Tell it to alert you whenever a new investor signs up and it sets up a recurring check and posts the moment it happens.

Overview

The hard problem is not answering questions, it is letting a language model near company data safely. Thor is read-only by construction. It runs as a dedicated database role with no write permission, enforced by Postgres rather than by the prompt, so it can read what it is permitted to and change nothing. Every figure it reports comes from a real query verified in code, never typed by the model, and every CSV or PDF it builds has its rows pulled straight from the data. It works through a bounded tool-use loop over 23 typed tools. Engineers and non-engineers use it exactly the same way, in the place they already work, with nobody stuck in the middle.

Thor: Slack Data Analyst Agent

Ask my agent about Thor

It knows the problem, the build and Daniel's part in it, and can book a call if you want to go deeper.

Ask the agent