Installation
Marivo requires Python 3.10 or newer.
Choose an installation path
Section titled “Choose an installation path”Choose one path. Use the installer for the shortest setup; use manual installation when the project must control its Python environment and datasource dependencies.
Option 1: Use the installer
Section titled “Option 1: Use the installer”Enter the directory that will contain the Marivo project, then run:
curl -fsSL https://marivo.io/install.sh | bashThe installer creates or reuses .venv, installs marivo[all], and runs
marivo init in the current directory. Continue directly to
Verify the installation;
do not also follow the manual steps below.
Option 2: Install manually
Section titled “Option 2: Install manually”To control the environment and datasource backends, complete these steps in order.
- Create and activate a Python 3.10 or newer virtual environment:
python3.10 -m venv .venvsource .venv/bin/activate- Install the extra for the datasource backend the project will use:
| Backend | Install command |
|---|---|
| DuckDB | pip install "marivo[duckdb]" |
| SQLite | pip install "marivo[sqlite]" |
| MySQL | pip install "marivo[mysql]" |
| Postgres | pip install "marivo[postgres]" |
| ClickHouse | pip install "marivo[clickhouse]" |
| Trino | pip install "marivo[trino]" |
| All packaged backends | pip install "marivo[all]" |
- Verify the installed version:
marivo --version- Initialize the current project directory once:
marivo initRun marivo init separately only for manual installation.
marivo init is idempotent: it leaves existing files untouched and reports them as
skipped, so it is safe to re-run after an upgrade. Re-running adds only what is
missing. Use marivo init --force to delete the generated artifacts and recreate
them from scratch.
What the agent can use
Section titled “What the agent can use”| Path | Purpose |
|---|---|
marivo.toml | Project manifest. The project name defaults to the directory name; local telemetry defaults to enabled = "on". |
models/ | Datasource and semantic declarations. |
.marivo/ | Project-local sessions, evidence, and cached metadata. |
.agents/skills/ | Links to the marivo-semantic and marivo-analysis skills for compatible agents. |
.claude/skills/ | Links to the same skills for Claude Code. |
.codex/skills/ | Links to the same skills for Codex. |
your-project/ marivo.toml models/ .marivo/ .agents/skills/ .claude/skills/ .codex/skills/Verify the installation
Section titled “Verify the installation”After initialization, give the agent this bounded preparation request:
Check whether this Marivo project is initialized correctly and tell me what is missing before I use its existing semantic layer or create a new one. For credentials, check only environment-variable names and configuration status. Do not request, display, or commit credential values.
This separates project setup from access to business data and from decisions about business meaning.
What to review before continuing
Section titled “What to review before continuing”Before choosing a project path, confirm that:
marivo.toml,models/, and.marivo/are present;- the expected skill paths under
.agents/skills/,.claude/skills/, and.codex/skills/are present, or the initialization warning explains why a symlink could not be created; - the required datasource backend extra is installed; and
- credentials are supplied through approved environment-backed fields, not committed as plaintext in project files.
When those checks pass, continue to Quick Start and choose whether to reuse an existing semantic layer or create one. After the selected project path is ready and its business meaning is approved, continue to the first analysis.