duckdb/duckdb-skills

install-duckdb

Install or update DuckDB extensions.

Zobacz źródło

Jak używać

  1. Skopiuj polecenie instalacji i sprawdź źródła przed instalacją we własnym środowisku agenta.
  2. W oryginale sprawdź wymagane narzędzia, dane dostępowe i obsługiwane środowiska.
  3. Opisz dane wejściowe i oczekiwany rezultat; porównaj wynik ze źródłami.
npx skills add https://github.com/duckdb/duckdb-skills --skill install-duckdb

Przed rozpoczęciem

  • Instalacja nie obejmuje subskrypcji modelu, limitu API ani uprawnień do plików.
  • Gwiazdki i instalacje pokazują aktywność, a nie niezależny test jakości lub bezpieczeństwa.
Oryginalny dokument Skill

Treść z repozytorium z zachowaniem nagłówków, przykładów, kodu, tabel, linków i obrazów.

Arguments: $@

Each extension argument has the form name or name@repo.

  • name → INSTALL name;
  • name@repo → INSTALL name FROM repo;

Step 1 — Locate DuckDB

bash
DUCKDB=$(command -v duckdb)

If not found, tell the user:

DuckDB is not installed. Install it first with one of: - macOS: brew install duckdb - Linux: curl -fsSL https://install.duckdb.org | sh - Windows: winget install DuckDB.cli Then re-run /duckdb-skills:install-duckdb.

Stop if DuckDB is not found.

Step 2 — Check for --update flag

If --update is present in $@, remove it from the argument list and set mode to update. Otherwise mode is install.

Step 3 — Build and run statements

Install mode:

Parse each remaining argument:

  • If it contains @, split on @ → INSTALL <name> FROM <repo>;
  • Otherwise → INSTALL <name>;

Run all in a single DuckDB call:

bash
"$DUCKDB" :memory: -c "INSTALL <ext1>; INSTALL <ext2> FROM <repo2>; ..."

Update mode:

First, check if the DuckDB CLI itself is up to date:

bash
CURRENT=$(duckdb --version | grep -oE '[0-9]+\.[0-9]+\.[0-9]+')
LATEST=$(curl -fsSL https://duckdb.org/data/latest_stable_version.txt)
  • If CURRENT == LATEST → report DuckDB CLI is up to date.
  • If CURRENT != LATEST → ask the user:
DuckDB CLI is outdated (installed: CURRENT, latest: LATEST). Upgrade now?

If the user agrees, detect the platform and run the appropriate upgrade command:

  • macOS (brew available): brew upgrade duckdb
  • Linux: curl -fsSL https://install.duckdb.org | sh
  • Windows: winget upgrade DuckDB.cli

Then update extensions:

  • No extension names → update all: UPDATE EXTENSIONS;
  • With extension names → update in a single call (ignore @repo):

UPDATE EXTENSIONS (<name1>, <name2>, ...);

bash
"$DUCKDB" :memory: -c "UPDATE EXTENSIONS;"
# or
"$DUCKDB" :memory: -c "UPDATE EXTENSIONS (<ext1>, <ext2>, ...);"

Report success or failure after the call completes.

Powiązane zadania

z tego samego repozytorium

Więcej Skills

Wszystkie Skills
duckdb
Społeczność

query

Run SQL queries against the attached DuckDB database or ad-hoc against files. Accepts raw SQL or natural language questions. Uses DuckDB Friendly SQL idioms.

Instalacje / 1h
2
GitHub Stars
610
Aktualizacja
23 kwi
duckdb
Społeczność

s3-explore

Explore and query data on S3, Cloudflare R2, GCS, MinIO, or any S3-compatible storage. Use when the user mentions an s3://, r2://, gs://, or gcs:// URL, asks "what's in this bucket", wants to list remote files, preview remote Parquet/CSV/JSON, or query data on object storage without downloading it. Also triggers when the user wants to know the size, schema, or row count of remote datasets.

Instalacje / 1h
1
GitHub Stars
609
Aktualizacja
23 kwi
duckdb
Społeczność

attach-db

Attach a DuckDB database file for use with /duckdb-skills:query. Explores the schema (tables, columns, row counts) and writes a SQL state file so subsequent queries can restore this session automatically via duckdb -init.

Instalacje / 1h
1
GitHub Stars
609
Aktualizacja
23 kwi
duckdb
Społeczność

convert-file

Convert any data file to another format: CSV, Parquet, JSON, Excel, GeoJSON, and more. Use when the user says "convert to parquet", "save as xlsx", "export as JSON", "make this a CSV", "turn into parquet", or any variation of format-to-format conversion for data files. Also triggers when the user wants to write Parquet, Excel, or other binary formats that Claude cannot produce natively.

Instalacje / 1h
1
GitHub Stars
609
Aktualizacja
23 kwi