Skip to main content

Installation

Requirements

  • Python 3.11+
  • pip (or any Python package manager)

Optional, depending on your workflow:

  • Git — for cloning skill repositories
  • Node.js / npm — for installing skills via npx
  • An AI coding agent (Claude Code, Cursor, Windsurf, Cline, etc.) — for skill-driven workflows

Install the CLI

pip install "wren-engine[ui,memory]"

This installs:

  • wren CLI — query, plan, validate, build, profile, and memory commands
  • ui extra — browser-based profile configuration form
  • memory extra — LanceDB-backed schema indexing and NL-SQL recall

Verify the installation:

wren version

Data source extras

DuckDB is included by default. For other databases, add the corresponding extra:

# Single data source
pip install "wren-engine[postgres,ui,memory]"

# Multiple data sources
pip install "wren-engine[postgres,bigquery,ui,memory]"
Data sourceExtraNotes
DuckDB(included)No extra needed
PostgreSQLpostgres
MySQLmysql
BigQuerybigqueryRequires Google Cloud credentials
Snowflakesnowflake
ClickHouseclickhouse
Trinotrino
SQL Servermssql
Databricksdatabricks
Redshiftredshift
Oracleoracle
AthenaathenaRequires AWS credentials
Apache Sparkspark

Install skills

Skills are structured workflow guides that teach AI coding agents how to use the Wren CLI. They are optional but strongly recommended.

# Via npx
npx skills add Canner/wren-engine --skill '*'

# Or via install script
curl -fsSL https://raw.githubusercontent.com/Canner/wren-engine/main/skills/install.sh | bash

The installer auto-detects your AI agent. To target a specific one:

npx skills add Canner/wren-engine --skill '*' --agent claude-code

Two skills are installed:

SkillPurpose
wren-usageDay-to-day workflow — schema context, query recall, SQL execution, result storage
wren-generate-mdlOne-time setup — database introspection, type normalization, MDL generation

After installation, start a new agent session — skills are loaded at session start.

See Skills Reference for details on what each skill does.

Keep wren-engine and its dependencies isolated from your system Python:

python3 -m venv ~/.venvs/wren
source ~/.venvs/wren/bin/activate
pip install "wren-engine[postgres,ui,memory]"

Activate the environment in every new terminal session before running wren commands:

source ~/.venvs/wren/bin/activate

Upgrading

pip install --upgrade "wren-engine[ui,memory]"

To update skills:

curl -fsSL https://raw.githubusercontent.com/Canner/wren-engine/main/skills/install.sh | bash -s -- --force

What's next