← ClaudeAtlas

snowflake-analystlisted

Explore, analyze, and load data in Snowflake the way you would local CSV files — list databases/schemas/tables like listing directories, inspect a table's columns, preview or sample rows, profile column statistics, and import generated/local data into a table. Use when a user wants to look at, understand, summarize, pull from, or write to a Snowflake table, warehouse, or database. Trigger on phrases like "what's in my Snowflake", "list the tables", "describe this table", "sample/preview a Snowflake table", "profile the columns", "run a query against Snowflake", "how big is this table", "export a Snowflake table to CSV", or "load/import/upload/write data into Snowflake". Built to stay cheap on large tables — computation is pushed to the warehouse and only small results cross the network.
Rockfish-Data/tacklebox · ★ 0 · Data & Documents · score 72
Install: claude install-skill Rockfish-Data/tacklebox
# Snowflake analyst Analyze Snowflake data like local CSV files, without dragging whole tables across the network. The bundled tool [`scripts/snowflake_analyst.py`](scripts/snowflake_analyst.py) wraps `snowflake-connector-python` with a small set of filesystem-flavored commands. ## The core principle: push work down, pull only small results Reading a CSV means loading the whole file. A Snowflake table can be terabytes, so **never** do that reflexively. Every command here answers from **metadata** or **server-side aggregates** — only `export` moves bulk data, and it refuses large tables unless you opt in. When you need an answer *about* the data (counts, distributions, aggregates), write SQL and let the warehouse compute it; bring back only the summary. ## Commands (filesystem analogy) | Command | Analogy | What it does | | --- | --- | --- | | `connections` | — | list connection names in `connections.toml` | | `databases` | `ls` | list databases | | `schemas [--database DB]` | `ls DB/` | list schemas | | `tables [--database DB] [--schema S]` | `ls -l` | list tables **with row counts and on-disk bytes** | | `describe TABLE` | inspect header | columns, types, nullability | | `head TABLE [-n N]` | `head` | first N rows (`LIMIT`) | | `sample TABLE [-n N]` | — | a random N-row `SAMPLE` (more representative than head) | | `profile TABLE` | `df.describe()` | per-column non-null/null%/distinct/min/max/mean/stddev, computed in the warehouse | | `query "SQL"` | — | run **read-only*