kilo-org/kilo-marketplace

adbc

>- Connect to and work with databases using Arrow Database Connectivity (ADBC). Use whenever the user needs to use a database.

First seen Jun 28, 2026

Installation

$ npx skills add kilo-org/kilo-marketplace --skill adbc

Also in this package

Other skills from kilo-org/kilo-marketplace · top by installs.

npx skills add kilo-org/kilo-marketplace

Browse all from kilo-org/kilo-marketplace

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 173
License LICENSE
Default branch main
Open issues 14
Status Active

Skill metadata

Parsed from SKILL.md frontmatter.

More metadata
category
data
source
{"repository":"https:\/\/github.com\/columnar-tech\/skills","path":"skills\/adbc","license_path":"LICENSE","commit":"8add65001dfb37b423e31124a0749d7879557723"}

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 4,399 B
  • docs SUMMARY.md 135 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 8 installs

SKILL.md

Find a driver for a database

Use the dbc command line tool to find available drivers for a database. It's possible no driver may exist for the user's database of choice as not all databases have ADBC drivers.

Install dbc

If the user does not have dbc available, try to install it for them.

Prefer installing it with these commands, in order of preference, if the tool is available:

  • If uv is available: uv tool install dbc
  • If pipx is available: pipx install dbc
  • If brew is available: brew install columnar-tech/tap/dbc
  • On Windows, if winget is available: winget install dbc
  • Otherwise, direct the user to the installation docs: https://docs.columnar.tech/dbc/getting_started/installation/

Search for a driver

dbc search

Install a driver

Install a driver by running dbc install <DRIVER>. This is idempotent — if the driver is already installed, it is a no-op that simply reports the existing installation — so there is no need to check first before running it. Prefer to install drivers using dbc over installing driver packages from PyPI or Conda Forge.

For anything beyond a one-shot dbc install <DRIVER> — reproducible dbc.toml / dbc sync workflows, version pinning, or any other dbc subcommand — invoke the dbc skill rather than guessing at commands. In particular, note that there is no dbc list command.

Referring to drivers

Refer to drivers by their dbc short name and avoid specifying drivers with absolute paths.

Example: After running dbc install sqlite, refer to that driver as sqlite. For example:

from adbc_driver_manager import dbapi
dbapi.connect(driver="sqlite", db_kwargs={"uri": "foo.db"})

Don't use dbc info to find where drivers are installed and find their absolute paths on disk.

Programming Language

See the resources below depending on which language or languages the user wants to use:

  • C++: resources/languages/cpp.md
  • Go: resources/languages/go.md
  • JavaScript: resources/languages/javascript.md
  • Python: resources/languages/python.md
  • R: resources/languages/r.md
  • Rust: resources/languages/rust.md

Prefer any language the user has already said they're using or can use. Each of these examples use the "sqlite" driver, connect to an in-memory database, and load a "penguins.parquet" file. This is done just for explanatory purposes and the code should be adapted to the user's problem.

Using a Driver

See the resources below depending on which database the user wants to use:

  • DuckDB: resources/drivers/duckdb.md
  • FlightSQL: resources/drivers/flightsql.md
  • MySQL: resources/drivers/mysql.md
  • PostgreSQL: resources/drivers/postgresql.md
  • Snowflake: resources/drivers/snowflake.md
  • SQLite: resources/drivers/sqlite.md

Connection Profiles

Connection profiles are TOML files that store a driver name and connection options, referenced by a profile://profile_name URI. They decouple credentials and environment-specific config from application code.

Suggest connection profiles when the user:

  • Has multiple environments (dev/staging/prod) to switch between
  • Wants to keep credentials out of source code
  • Wants a shared, reusable connection config

All language bindings that wrap the C++ or Rust driver manager support connection profiles, including Python, Go, R, Java, GLib/Ruby, C++, and Rust. JavaScript (@apache-arrow/adbc-driver-manager) also supports connection profiles via the profileSearchPaths option.

See resources/connection-profiles.md for the TOML format, file locations, and environment variable substitution syntax. See the relevant language resource for the binding-specific API.

More Resources