CLI · open source

Every client store,
from the terminal.

The same typed tools the operations center runs on, scoped per store, from the terminal. 200+ analytics and commerce tools — GA4, Search Console, Merchant Center, Google & Meta Ads, Shopify, WooCommerce, Shopware. Scriptable, pipeable, and agent-friendly.

terminal
npm i -g datavessel-cli

Requires Node.js 20+ · Apache-2.0 · sign in once with your browser

Why a CLI

The terminal is an interface too.

Same backend, same typed tools as the MCP server and the operations center — scoped per store, now in the place engineers already live.

01

Self-describing, always current

Commands and flags are generated from the live datavessel tool catalog. Add a source or ship a new tool — it appears in the CLI on the next sync, with no release to install.

02

Scriptable & pipeable

Every command takes --json for machine-readable output. Wire datavessel into cron jobs, CI pipelines, and shell scripts the way you already work.

03

Built for agents

Ships a SKILL.md plus a ready-made agent hierarchy for Claude Code — autonomous read agents, a write agent that asks first, and a verifier — all driving the same typed surface your MCP client uses.

04

Sign in once

Browser login yields a refreshable session stored at mode 0600 — the CLI silently refreshes the short-lived token. For CI, pass a token or API key instead.

In practice

Reads run free. Writes ask first.

Discover tools, pull data as JSON, and run writes — with a confirmation gate on anything that touches a client's store.

zsh — datavessel
datavessel login
✓ Logged in as you@company.com
datavessel tools list --provider google_analytics
ga4_run_report read Standard GA4 report
ga4_realtime read Realtime active users
datavessel --json run ga4_run_report \
--property-id 123 --metrics sessions --limit 7
{ "rows": [ { "sessions": "1842" }, … ] }
datavessel run shopify_create_discount --code SUMMER
⚠ write tool — confirm? (y/N)

Pass --yes to skip the prompt in automation, or --json anywhere for structured output you can pipe into jq.

Agent hierarchy

A team of agents, in the box.

The Claude Code plugin ships four purpose-built agents over the CLI. Reads run free — in parallel, unattended. Writes ask first, every time. A verifier confirms each change actually landed. The read agents are structurally limited to read tools, so “autonomous” never means “can refund an order.”

read · autonomous

dv-analytics

Pulls and summarizes GA4, Search Console, and Ads data. Fans out in parallel — one agent per property, site, or question.

read · autonomous

dv-commerce-reader

Looks up orders, products, customers, and refund history across Shopify, WooCommerce, and Shopware — and preps the data a change will need.

write · asks first

dv-commerce-ops

Executes refunds, fulfillments, cancellations, and product creation — one change at a time, each shown to you and approved before it runs.

read · autonomous

dv-verifier

Independently re-reads live data after a write and returns a confirmed-or-mismatch verdict. The loop isn't closed until it says so.

A typical store change flows reader → ops → verifier: gather the ids and amounts, show you the exact change and get a yes, then independently confirm the result. Nothing executes without your sign-off.

Skills · New

Whole playbooks, one ask.

Beyond single commands, the plugin ships interview-driven skills: each audits real data, proposes a plan you can veto line by line, and writes only after your explicit yes.

audit · fixes ask first

aeo-audit

Interviews you — shop, focus, competitors — derives the buying questions shoppers ask ChatGPT and Claude, runs real visibility checks, and scoreboards you against rivals per answer. Product-content fixes ship only behind your sign-off, and the setup hands off to tracked scans.

AI visibility, the product versionRead the skill on GitHub

one command · your model leads

operator-team

Runs a store's day from one ask: your model reads the live roster, picks the order desk, support, and revenue-protection specialists that fit the goal, dispatches them, and writes the one report. Every pick is visible in your session; every write still waits for your sign-off.

The order desk, the product versionRead the skill on GitHub

one command · your model leads

marketing-team

Growth in one ask: SEO growth and audits, AI-answer visibility, catalogue refresh, paid-search hygiene. Your model picks 2–3 specialists from the live roster per goal and synthesizes the report — content lands draft-by-default, ads work is optimization only.

The workflow libraryRead the skill on GitHub

one command · builds are drafts

builder-team

Expands an existing store: landing and campaign pages grounded in real demand data. On Shopware pages are actually created (never published without you); on Shopify and WooCommerce it delivers copy-ready build plans and says so.

Shopware, where builds executeRead the skill on GitHub

content · map needs your yes

topical-authority

Audits real Search Console demand, then proposes a pillar-and-cluster topical map — including an explicit do-not-chase list. Once you approve the map, it writes, publishes, interlinks, and verifies the content on your WordPress or Shopware, and baselines positions for monthly re-runs.

SEO growth, the product versionRead the skill on GitHub

In the team skills, your model is the lead: it reads the live team rosters, picks the specialists that fit the goal, and every decision — and every write approval — stays in front of you.

Use it with your agent

Add your key. It configures itself.

Interactive: datavessel setup signs you in, links you to the sources that still need connecting, and asks a few questions — which analytics property, which site, which client store — then saves the answers where your agents and teams look first. Headless (CI): datavessel init --api-key <key>. In Claude Code, run /datavessel:setup and answer in chat.

Claude Code

Install the plugin once at the user level — skill, agent hierarchy, and setup command in every project. Then: “compare last month's traffic, search clicks, and sales.”

/plugin marketplace add djr4/datavessel-cli
/plugin install datavessel@datavessel
/datavessel:setup

Cursor

Add the skill as a project rule. Cursor's agent picks it up and drives the CLI from the same typed catalog.

mkdir -p .cursor/rules
curl -sL https://raw.githubusercontent.com/djr4/datavessel-cli/main/skills/datavessel/SKILL.md \
  -o .cursor/rules/datavessel.mdc

Building on the Claude Agent SDK or the API instead? Give the model a shell tool, add SKILL.md to its context, and authenticate headless with DATAVESSEL_TOKEN. The CLI's stable --json output and exit codes are built for it.

One command away.

terminal
npm i -g datavessel-cli