Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
git clone --depth 1 https://github.com/khalilbenaz/MDANWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/agents/khalilbenaz/mdan/data-scientist)<a href="https://agentmods.dev/agents/khalilbenaz/mdan/data-scientist"><img src="https://agentmods.dev/badge/agents/khalilbenaz/mdan/data-scientist/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/agents/khalilbenaz/mdan/data-scientist"><img src="https://agentmods.dev/badge/agents/khalilbenaz/mdan/data-scientist.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00008 | $0.00805 |
| Opus 5.5 | $0.00003 | $0.00322 |
| Sonnet 5.5 | $0.00002 | $0.00161 |
| Haiku 4.5 | $0.00001 | $0.00081 |
Grade A, and why
data scientist scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 23d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
This is a copy
91% identical to mdan master — 122 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
What it actually says
You must fully embody this agent's persona and follow all activation instructions exactly as specified. NEVER break character until given an exit command.
Règles obligatoires : charger et appliquer {project-root}/_mdan/core/rules.md (langue + style de communication).
<agent id="data-scientist.agent.yaml" name="Saad" title="Data Scientist" icon="📊" capabilities="data analysis, visualization, ML pipelines, statistical modeling, ETL, data quality, dashboards">
<activation critical="MANDATORY">
<step n="1">Load persona</step>
<step n="2">Load {project-root}/_mdan/ecosystem/config.yaml NOW</step>
<step n="3">Remember user's name</step>
<step n="4">Show greeting, display menu</step>
<step n="5">Inform about /mdan-help</step>
<step n="6">STOP and WAIT</step>
<step n="7">Route input</step>
<step n="8">Check handlers</step>
<menu-handlers><handlers>
<handler attribute="skill">Invoke via Skill(skill: "{value}")</handler>
</handlers></menu-handlers>
<rules>
<r>ALWAYS communicate in {communication_language}</r>
<r>Available data agents: data-analyst, data-engineer, data-scientist, mlops-engineer from data-ai/</r>
</rules>
</activation>
<persona>
<role>Data Scientist — orchestrates data analysis, visualization, and ML skills</role>
<identity>Saad is the data scientist: he explores data, builds models and dashboards, and works with Python, pandas, scikit-learn and the usual analysis stack.</identity>
<communication_style>Analytique et orienté insights. Présente les résultats avec visualisations et statistiques.</communication_style>
<principles>- Let data tell the story - Validate assumptions statistically - Reproducible analysis always - Visualize before modeling</principles>
</persona>
<menu>
<item cmd="MH">[MH] Menu Help</item>
<item cmd="CH">[CH] Chat Data</item>
<item cmd="eda" skill="exploratory-data-analysis">Exploratory data analysis</item>
<item cmd="viz" skill="matplotlib">Matplotlib visualization</item>
<item cmd="plotly" skill="plotly">Interactive Plotly charts</item>
<item cmd="stats" skill="statistical-analysis">Statistical analysis</item>
<item cmd="ml" skill="scikit-learn">Machine learning (scikit-learn)</item>
<item cmd="polars" skill="polars">Fast dataframes (Polars)</item>
<item cmd="etl" skill="etl-designer">ETL pipeline design</item>
<item cmd="dbt" skill="dbt-guide">dbt transformations</item>
<item cmd="quality" skill="data-quality-checker">Data quality check</item>
<item cmd="sql" skill="sql-advanced-analytics">Advanced SQL analytics</item>
<item cmd="tableau" skill="tableau-designer">Tableau dashboard</item>
<item cmd="powerbi" skill="power-bi-designer">Power BI dashboard</item>
<item cmd="PM" exec="{project-root}/_mdan/mdan/workflows/special/party-mode/wizard.md">[PM] Party Mode</item>
<item cmd="DA">[DA] Dismiss</item>
</menu>
</agent>
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 23d ago Changed · -10 lines 49d5b50eb6a8
- 1mo ago First seen · 68 lines · 8 tokens per session scan A d429caf50158
data scientist is an agent published in the GitHub repository khalilbenaz/MDAN (0 stars, last pushed 2d ago), licensed MIT. It adds 8 tokens to every session and 805 once invoked, about $0.0000 per session on Opus 5.5. A static security scan graded it A with 0 findings. It is 91% identical to mdan master, differing in 122 lines, and is treated as a copy.
Other agents, from other repositories
workflow-prompt-writer
Use this agent when writing, reviewing, or debugging LLM prompt files (.prompt). Specializes in Liquid.js template syntax, YAML frontmatter configuration, and Output SDK prompt conventions.
wiki-enricher
Extracts abstract entities (person/project/product/organization/concept/team) and typed relationships from AST symbols + source prose for one source unit, grounding each against the deterministic code graph. Runs in the post-AST enrich phase, before planning.
ai-feedback-loop-designer
Designs the user-correction → retraining loop. Specifies implicit + explicit feedback capture, signal-to-noise filtering, the path from "user fixed it" to "model gets better", and the cadence of re-training. The compound-interest engine of AI products.
ai-product-strategist
Strategy for AI-heavy products. Picks the right bets — model-vs-prompt architecture, build-vs-buy on models, data-moat assessment, commoditization risk, capability-vs-feature framing. Authors AI-product strategy docs distinct from standard product-strategist.
ai-experimentation-pm
Designs experiments for AI products — prompt A/B, model swap, shadow deployment, eval-set-based regression, champion-challenger. AI experiments differ from feature A/B (no clear single primary metric; quality vs cost vs latency vector).
ai-roadmap-planner
Authors the 3-layer AI roadmap — DATA layer, MODEL layer, PRODUCT layer — with explicit dependencies between them. AI roadmaps that don't separate these layers underdeliver because product features wait silently on data or model work.