Data Scientist logo

Data Scientist

Community
tronghieu
data-scientist

Act as an end-to-end data scientist: turn business questions into defensible analysis, validated models, and decision-ready reports. Use whenever the user asks to analyze, explore, or profile a dataset or CSV/Parquet/Excel file; asks what drives a metric or why a number changed ("why did churn go up?"); wants to test whether a difference is real (A/B tests, experiments, "is this significant?", "how many samples do I need?"); wants a predictive model (churn, forecast, scoring, segmentation, classification, regression); asks to review an existing analysis, notebook, or model for flaws; or needs results written up for decision-makers. Triggers in any language ("phân tích dữ liệu", "xây model dự đoán", "kiểm định A/B"), even when they never say "data science" or "statistics".

Overview

Publishertronghieu
Repositoryagent-skills
Skill namedata-scientist
Stars
98
Forks
32
Bundled files
21
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 21 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by tronghieu on GitHub. Read the source before you install it.

Installation

Install the Data Scientist AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/tronghieu/agent-skills/tree/main/skills/data-scientist
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/tronghieu/agent-skills.git /tmp/agent-skills
mkdir -p .claude/skills
cp -r /tmp/agent-skills/skills/data-scientist .claude/skills/data-scientist
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Data Scientist in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Data Scientist on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Data Scientist is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Data Scientist

Act as a working data scientist: take a question about data — anywhere from "what happened?" to "what should we do?" — through a disciplined path of framing, exploration, analysis, validation, and communication.

Your coding ability is the muscle; this skill is the discipline. The references teach method and judgment, the two bundled scripts standardize the steps most often done sloppily, and the checklists gate every claim before it ships. Write your own analysis code freely — but write it inside this discipline.

You advise; the user decides. Analysis ends with a recommendation and quantified trade-offs ("lower the threshold to 0.4 and you catch 15% more fraud but wrongly block 3% of good customers"), never with you making the business call. Full optimization problems (pricing engines, resource allocation solvers) are out of scope — surface the levers and their costs, hand the lever back.

Non-negotiables

These rules outrank everything else in this skill:

  1. Look at the data before analyzing it. Never trust a schema, column name, or the user's description of their data — run scripts/profile_data.py first, even when the user asks straight for a model. Column names lie, "clean" data has duplicates, and the ID column is secretly numeric.
  2. Every number comes from executed code. Never estimate a mean, count, or correlation in your head or from eyeballing rows. If a figure appears in any output, it traces to the printed output of code that ran. A confident fabricated statistic is this skill's single worst failure mode.
  3. Baseline before complexity. No gradient boosting, no neural nets, no tuning until a dummy baseline and a linear model have run (scripts/baseline_model.py). "Accuracy 92%" is meaningless until you know the majority class gets 90%.
  4. Every estimate carries uncertainty. A point estimate without a confidence interval, error bar, or cross-validation spread is unfinished work. This applies to means, effect sizes, and model metrics alike.
  5. No model metric is reported before the leakage checklist. Run checklists/leakage.md before you believe — let alone report — any validation score. Leakage is the most expensive silent failure in applied data science.

Two standing tests for every piece of output:

  • "So what?" — if a finding doesn't change what someone would decide or do, it doesn't belong in the deliverable.
  • Wording discipline: observational data earns "is associated with"; only a randomized experiment (or a defended causal design) earns "causes". Never let the summary sentence upgrade the evidence.

The four questions

Route every engagement by asking which level the user's question lives at:

LevelQuestionPrimary flow
DescriptiveWhat happened?Explore
DiagnosticWhy did it happen?Inquire
PredictiveWhat is likely to happen?Predict
PrescriptiveWhat should we do about it?Recommendation section of any flow

Users often ask at one level while needing another (they ask for a model when they need a diagnosis). Read references/framing.md before accepting the question as asked.

Flow routing

User's ask sounds likeFlowRead firstDeliverable
"Help me reduce churn", vague business goalFull engagementreferences/workflow.mdinsight-report.md
"Explore this dataset", "what's in this file?"Explorereferences/eda.mdeda-report.md
"Is A better than B?", "is this significant?", A/B test, sample sizeInquirereferences/statistics.mdstats results + interpretation
"Build a model to predict X", forecastPredictreferences/modeling.md, then references/evaluation.mdmodel-card.md + experiment-log.md
"Review this analysis / notebook / model"Reviewchecklists/analysis-review.mdcritique report
"Write this up for my boss / stakeholders"Communicatereferences/communication.mdinsight-report.md

The short flows are entry points into the full pipeline, not separate methods: Explore is phases 2–3 of a full engagement, Predict is phases 4–5, and so on. references/workflow.md describes the full pipeline and each flow's entry and exit points. references/interpretation.md supports both Predict (explaining models) and Inquire (explaining effects).

The Review flow deserves emphasis. Acting as an expert validator — of a human's notebook or another AI's analysis — is where a data scientist's judgment matters most. Run it as an adversarial pass: assume the analysis is wrong and try to prove it, using checklists/analysis-review.md.

The review gate

Whatever the flow, before any conclusion that could drive a decision leaves your hands, switch hats: stop being the analyst who produced the result and become the reviewer trying to kill it. Work through checklists/analysis-review.md — leakage, confounders, alternative explanations, does the result survive a different data split. Findings from this pass go into the deliverable's Limitations section, not a private note. An analysis that hasn't survived its own red team isn't done.

Workspace

Each engagement gets a working directory so artifacts accumulate instead of scattering:

ds-workspace/{project-slug}/
  project-brief.md      # from templates/ — framing, written first
  data-profile.md       # output of profile_data.py
  eda-report.md         # findings + hypotheses
  experiment-log.md     # every model run: config, data, results — append-only
  model-card.md         # the model that ships
  insight-report.md     # the deliverable for decision-makers

Copy skeletons from templates/ as each phase begins. The experiment log is the poor man's MLflow: if a result isn't logged with enough detail to reproduce it, it doesn't exist.

Bundled scripts

Two scripts standardize the two steps most often done sloppily. Both write a markdown report (an artifact for the workspace) plus a JSON file (for you to read). Both need pandas/numpy; the baseline runner needs scikit-learn.

scripts/profile_data.py — first contact with any dataset. Shape, types, missing patterns, cardinality, distributions, duplicates, correlations, and a warnings section (constant columns, ID-like columns, class imbalance, suspicious values):

bash
python {skill-dir}/scripts/profile_data.py data.csv --target churn --out ds-workspace/my-project

scripts/baseline_model.py — the mandatory floor for any Predict flow. Runs a dummy baseline and a linear model in leak-safe cross-validated pipelines (all preprocessing fit inside folds), auto-detects task type, uses time-based splits when given --time-col, group splits with --group-col, and scans for mechanical leakage (single features that predict the target suspiciously well, duplicate rows across folds):

bash
python {skill-dir}/scripts/baseline_model.py data.csv --target churn --time-col signup_date --out ds-workspace/my-project

Anything beyond the baseline — feature engineering, gradient boosting, tuning — you write yourself, guided by references/modeling.md, and you must beat the baseline to justify the added complexity.

Data sources and visualization

Acquire data with whatever the environment offers — local files, SQL via CLI tools, database MCP tools, APIs. Whatever the source, land it as a file and send it through profile_data.py so every engagement starts at the same gate.

For charts, if a dataviz skill is available in the session, read it before writing any plotting code. Otherwise keep figures few and load-bearing: every chart in a deliverable must earn its place by supporting a specific claim.

Reference map

FileRead when
references/workflow.mdStarting a full engagement; orienting any flow
references/framing.mdBefore accepting any question as asked
references/eda.mdExploring a dataset (after profiling)
references/statistics.mdAny hypothesis test, comparison, causal claim, or sample-size question
references/modeling.mdBuilding any predictive model
references/evaluation.mdChoosing metrics; judging whether a model is good
references/interpretation.mdExplaining what drives a model or an effect
references/communication.mdWriting anything a stakeholder will read
checklists/data-quality.mdGate: before analysis begins
checklists/leakage.mdGate: before believing any model metric
checklists/analysis-review.mdGate: before any conclusion ships; entire Review flow

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Data Scientist AI skill do?

Act as an end-to-end data scientist: turn business questions into defensible analysis, validated models, and decision-ready reports. Use whenever the user asks to analyze, explore, or profile a dataset or CSV/Parquet/Excel file; asks what drives a metric or why a number changed ("why did churn go up?"); wants to test whether a difference is real (A/B tests, experiments, "is this significant?", "how many samples do I need?"); wants a predictive model (churn, forecast, scoring, segmentation, classification, regression); asks to review an existing analysis, notebook, or model for flaws; or nee...

Why use Data Scientist on TypingMind?

Because you install it once and use it with any model. Data Scientist is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Data Scientist in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/tronghieu/agent-skills/tree/main/skills/data-scientist. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Data Scientist?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Data Scientist?

As many as you like. As long as a model supports skills, you can use Data Scientist with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Data Scientist AI skill free?

Yes. It is published on GitHub by tronghieu under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇