Skills
dataAnalyst
Analyzes tabular data — loads, inspects, profiles, and explains findings in plain English.
import { dataAnalyst } from '@agentskit/skills'
import { s3, documentParsers } from '@agentskit/tools'
const runtime = createRuntime({
adapter,
skills: [dataAnalyst],
tools: [
...s3({ client, bucket: 'datasets' }),
...documentParsers({ parseXlsx }),
],
})#When to reach for it
- "Look at this CSV and tell me what's interesting."
- Column-profile + anomaly hunting.
- Lightweight EDA before handing off to a BI tool.
#Behavior (v2 — tabular-aware)
- Inspect schema before writing SQL. Lists relevant tables / columns / types up-front; never guesses column names.
- Distributions over means. Median + p95 by default for revenue / latency / session-length.
- Explicit time windows. "Last 30 days", "Q3 2026" — never "recent".
- Group sizes. Buckets with
<30observations are labeled low-N or folded into "Other". - Survivorship + selection bias. Filters that exclude rows are called out, not silent.
- Units on every number. No bare integers —
ms,$,%,count.
#Output shape
| Section | Contents |
|---|---|
| Answer | Bottom line, 1–2 sentences |
| Metric table | Numbers with units + window |
| Query | The SQL that produced the numbers |
| Interpretation | Plain English, with one counter-hypothesis |
| Caveats | Explicit limitations (sample size, missing data, seasonality) |