dank-data is AgentDank's public dataset repository. We take public cannabis datasets, openly clean them, and publish them for public benefit.
This is the one of the data sources for AgentDank. You can connect with it yourself using the AgentDank MCP server named dank-mcp].
The data is sourced and cleaned using dank-extract, our CLI tool for fetching, cleaning, and exporting cannabis data.
Currently the following datasets are snapshotted:
- US CT Medical Marijuana and Adult Use Cannabis Brand Registry
- US CT Cannabis Credentials
- US CT Cannabis Applications
- US CT Cannabis Weekly Sales
- US CT Cannabis Tax Revenue
Data snapshots are stored in snapshots/. CSV and JSON files are stored uncompressed for efficient Git delta compression. Only DuckDB files are compressed with ZStandard (.zst).
Snapshots are updated weekly at 4:20 PM Pacific via GitHub Actions. Git history provides access to previous snapshots.
# Download current data
curl -LO "https://github.com/AgentDank/dank-data/raw/main/snapshots/us/ct/dank-data.duckdb.zst"
zstd -d dank-data.duckdb.zst
# Or get CSV directly (no decompression needed)
curl -LO "https://github.com/AgentDank/dank-data/raw/main/snapshots/us/ct/us_ct_brands.csv"curl -LO "https://github.com/AgentDank/dank-data/raw/main/snapshots/us/ct/us_ct_brands.json"
### Historical Data
Git history is your time machine:
```bash
git clone https://github.com/AgentDank/dank-data.git
cd dank-data
# View snapshot history
git log --oneline -- snapshots/
# Get data from a specific date
git checkout $(git rev-list -n1 --before="2026-01-01" main) -- snapshots/
Because the upstream datasets are not perfect, we have to "clean" them. Such practices are opinionated, but since this is Open Source, you can inspect how we clean the data by examining dank-extract.
Generally, we simply remove weird characters. We treat detected "trace" amounts as 0 -- and even with that, there's a decision about what field entry actually means "trace".
We also remove rows with ridiculous data -- as much as I'd love a 90,385% THC product, I don't think it really exists. In that case, it was an incorrect decimal point (by looking at the label picture), but not every picture validates every error. It's also a pain -- but maybe a multi-modal vision LLM can help with that?
As AgentDank curates these datasets, pull requests are generally not welcome here. If you want to contribute, please create an issue.
Either way, obey our Code of Conduct.
Copyright (c) 2026 Neomantra Corp. Authored by Evan Wies for AgentDank.
Released under the MIT License, see LICENSE.txt.
Made with 🌿 and 🔥 by the team behind AgentDank.