duckdb

duckdb is a skill for Claude Code, Codex from fmind/dot. It costs 20 tokens per session (1,238 once invoked), scanned A, original, MIT.

A command-line workflow for querying and converting CSV, Parquet, JSON, SQLite, and DuckDB files. DuckDB is a small database engine designed for analysis directly on local files.

In plain words
What is it for?
Use it to run SQL over files, inspect columns and statistics, convert CSV to Parquet, attach SQLite databases, and check an application's embedded database.
Why use it?
It avoids writing one-off scripts for common data inspection, filtering, summaries, conversions, and integrity checks.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Good fit Use it to run SQL over files, inspect columns and statistics, convert CSV to Parquet, attach SQLite databases, and check an application's embedded database.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/fmind/dot/duckdb
Install

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.

Any agent
npx skills add fmind/dot --skill duckdb
Clone the repo
git clone --depth 1 https://github.com/fmind/dot

Made for: Claude Code, Codex.

Wrote 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.

agentmods badge for duckdb

README.md
[![agentmods](https://agentmods.dev/badge/skills/fmind/dot/duckdb/github.svg)](https://agentmods.dev/skills/fmind/dot/duckdb)
Your own site
<a href="https://agentmods.dev/skills/fmind/dot/duckdb"><img src="https://agentmods.dev/badge/skills/fmind/dot/duckdb/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.

agentmods 80×15 button for duckdb

Your own site · 80×15
<a href="https://agentmods.dev/skills/fmind/dot/duckdb"><img src="https://agentmods.dev/badge/skills/fmind/dot/duckdb.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 20 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,238 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00020 $0.01238
Opus 5.5 $0.00008 $0.00495
Sonnet 5.5 $0.00004 $0.00248
Haiku 4.5 $0.00002 $0.00124

Measured 12d ago against content hash 804b2c50c4b6, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

duckdb 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 12d 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.

skills/duckdb/SKILL.md · 65 lines

How it starts

The opening of the file, as written. The whole thing — 65 lines — stays where its author put it; the contents beside it link to each section on GitHub.

DuckDB and SQLite

DuckDB is the default engine for local analysis: it reads CSV, Parquet, and JSON directly, attaches SQLite files, and writes any of them back. SQLite stays the embedded store for applications; DuckDB is the tool you point at data.

Commands

duckdb -init /dev/null -batch -bail -c "SELECT name, score FROM 'people.csv' WHERE score > 80 ORDER BY score DESC, name LIMIT 20"
duckdb -init /dev/null -batch -bail -json -c "SELECT count(*) AS event_count FROM 'events/*.json'" # aggregate before displaying
duckdb -init /dev/null -batch -bail lab.duckdb -c "CREATE OR REPLACE TABLE people AS FROM 'people.csv'"
duckdb -init /dev/null -batch -bail -c "COPY (FROM 'people.csv') TO 'people.parquet'"        # durable derived data
duckdb -init /dev/null -batch -bail -c "ATTACH 'app.sqlite' AS s (TYPE sqlite, READ_ONLY); SELECT count(*) FROM s.users"
duckdb -init /dev/null -batch -bail -c "SUMMARIZE FROM 'people.parquet'"                   # column statistics
sqlite3 -init /dev/null -batch -bail -readonly app.sqlite '.schema'
sqlite3 -init /dev/null -batch -bail -noheader -list -readonly app.sqlite 'PRAGMA integrity_check'

Both interactive and batch invocations can load ~/.duckdbrc or ~/.sqliterc, including executable SQL and dot commands; this workstation ships neither, but other machines may. For reproducible scripts, skip those files with -init /dev/null, stop on errors with -batch -bail, and select output explicitly with -json, -csv, or -markdown; an output-mode flag alone does not suppress initialization. SQLite integrity checks return rows: require ok, because a successful process exit alone does not establish integrity.

Workflow

  1. Look before querying: DESCRIBE FROM '<file>' and SUMMARIZE reveal types, nulls, and ranges; fix a wrong inference with read_csv('<file>', types={'id': 'BIGINT'}).
  2. Bound displayed results: project needed columns, filter rows, and aggregate before returning data. Use an ordered LIMIT for a preview and label it as partial; calculate totals over the full filtered set. Export complete results with COPY when needed instead of printing every row.
  3. Keep queries in files: duckdb -init /dev/null -batch -bail -f analysis.sql for anything longer than one line, committed next to the data description.
  4. Persist derived data as Parquet: keep rebuildable .duckdb files out of Git and commit the SQL that produces them; use -readonly for inspection of an existing database.
  5. Export for the reader: -markdown for a report, -json for another tool, COPY ... TO 'out.csv' (HEADER) for a spreadsheet.

Read the full file on GitHub · 65 lines

Files

What ships with it

1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

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.

  1. 12d ago Changed · -1 lines 804b2c50c4b6
  2. 14d ago Changed 03ac214b55ee
  3. 15d ago Changed · +6 lines · +2 tokens per session db143d0535b2
  4. 23d ago Changed · +2 lines 8939cccdc755
  5. 26d ago Changed 46bd6bd91675
  6. 29d ago Changed b2afa2a83ea7
  7. 1mo ago Changed · +1 lines · -29 tokens per session 1dbc5308d315
  8. 1mo ago Changed · +1 lines 9c9d3249f252
  9. 1mo ago Changed · +2 lines 3f43f5e9d2b1
  10. 1mo ago First seen · 54 lines · 47 tokens per session scan A 8f77e2278e6d

Subscribe to this mod's changes

duckdb is a skill published in the GitHub repository fmind/dot (12 stars, last pushed today), licensed MIT. It adds 20 tokens to every session and 1,238 once invoked, about $0.0001 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.

Related

Other skills, from other repositories

dotfiles-bootstrap

Bootstrap a workstation with the dotfiles framework. Takes a GitHub user / owner+repo / explicit clone URL and runs dot init (which shells out to chezmoi) with the right safety prompts. Honors the active agent profile (ask / plan / apply / audit) so it defaults to dry-run in safer modes and full apply in apply.

sebastienrousseau/dotfiles · 88 tokens

vibe

Delegate a coding task to a cheap AI model (Mistral Vibe by default, but any provider Vibe knows about — DeepSeek, Gemini Flash, etc.) and supervise the result via git diff. Claude orchestrates, the cheap model codes. Claude consumes 500-1500 tokens per delegation regardless of how many file reads the delegate does…

sebastienrousseau/dotfiles · 137 tokens

go-stack

Build Go projects, libraries, CLIs, TUIs, web apps, or ADK agents with the standard package layout and pinned tooling.

fmind/dotfiles · 31 tokens

python-stack

Build typed Python projects with uv, Ruff, ty, pytest, Litestar, and Typer. Use for packages, CLIs, web apps, tests, typing, or API verification.

fmind/dotfiles · 41 tokens

hugo

Canonical Hugo static-site stack with the Hextra docs theme — Hugo Modules, mise tasks, dprint, lefthook, and GitHub Pages deploy. Use for documentation sites, project docs, and static websites.

fmind/dotfiles · 46 tokens

k8s-local

Create and manage local Kubernetes clusters (k3d or kind) and deploy to them with kubectl, helm, helmfile, and skaffold. Use for local k8s cluster setup, dev loops, and debugging.

fmind/dotfiles · 50 tokens