Rivian Ls

v1.1.0

Access Rivian vehicle telemetry (battery, range, charge state, locks, doors, tires, cabin temp, location) using the rivian-ls CLI tool. Use when the user ask...

1· 225·0 current·0 all-time
byPaul Frederiksen@pfrederiksen

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for pfrederiksen/rivian-ls.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "Rivian Ls" (pfrederiksen/rivian-ls) from ClawHub.
Skill page: https://clawhub.ai/pfrederiksen/rivian-ls
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Bare skill slug

openclaw skills install rivian-ls

ClawHub CLI

Package manager switcher

npx clawhub@latest install rivian-ls
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
Name/description match behavior: the skill simply runs the rivian-ls CLI to fetch vehicle telemetry and formats the output. Bundled script and documentation align with that purpose; nothing in the files attempts to access unrelated services.
Instruction Scope
Runtime instructions and the script call only the rivian-ls CLI and operate on its JSON output. The SKILL.md recommends installing rivian-ls, authenticating (including providing email/password/OTP), using cron to refresh caches, and optionally exposing data via a server-side exec example; these are within the scope of providing telemetry but do recommend actions (storing cached credentials, adding cron jobs, exposing API endpoints) that have privacy implications.
Install Mechanism
The skill itself has no install spec and includes only a small Python script; it instructs users to install the rivian-ls CLI from its GitHub repo or via Homebrew (both reasonable). No downloads from obscure URLs or archive extraction are performed by the skill bundle.
Credentials
The skill metadata declares no required environment variables, which is reasonable because authentication is handled by the external rivian-ls CLI. SKILL.md does reference optional environment variables (RIVIAN_EMAIL, RIVIAN_PASSWORD) and filesystem cache (~/.config/rivian-ls/credentials.json); this is expected but means users must trust the rivian-ls credential cache. No unrelated credentials are requested.
Persistence & Privilege
The skill is not always-on and does not modify other skills or system-wide agent settings. The README suggests creating a cron job to refresh the rivian-ls cache, which is a user-level operational recommendation rather than the skill asserting elevated privileges.
Assessment
This skill is a thin wrapper around the third-party rivian-ls CLI and appears to do what it claims. Before installing: (1) Confirm you trust the upstream rivian-ls project (the SKILL.md links to github.com/pfrederiksen/rivian-ls). (2) Be aware that authenticating requires your Rivian credentials and an OTP; rivian-ls caches tokens at ~/.config/rivian-ls/credentials.json — treat that file as sensitive. (3) If you expose data via a web endpoint or add the suggested cron job, you may unintentionally publish live vehicle location/status to others; secure any server endpoints and cron outputs. (4) Note the tool uses an unofficial API and may break. If you want tighter control, avoid placing credentials in environment variables or public cron jobs and prefer manual or local-only usage.

Like a lobster shell, security has layers — review code before you run it.

latestvk9737br1xtc2qc5m4catzgnsn583ewg9
225downloads
1stars
2versions
Updated 1mo ago
v1.1.0
MIT-0

rivian-ls

Fetch and work with Rivian vehicle telemetry via the rivian-ls CLI.

⚠️ Uses an unofficial Rivian API. May break without notice. Not affiliated with Rivian.

Installation

# From source (requires Go 1.21+)
git clone https://github.com/pfrederiksen/rivian-ls.git
cd rivian-ls && make build
cp rivian-ls /usr/local/bin/

# Or via Homebrew
brew install pfrederiksen/tap/rivian-ls

Authentication (Two-Phase MFA)

Rivian requires MFA. Use the two-phase flow for non-interactive / scripted login:

# Phase 1: Send credentials, triggers SMS code
rivian-ls login --email user@example.com --password secret

# Phase 2: Complete with OTP after receiving SMS (within ~60 seconds)
rivian-ls login --otp 123456

Credentials cache to ~/.config/rivian-ls/credentials.json and auto-refresh. After initial auth, subsequent runs use the cache automatically.

Non-interactive (single command, if OTP is known in advance):

rivian-ls --email user@example.com --password secret --otp 123456 login

Via environment variables:

export RIVIAN_EMAIL="user@example.com"
export RIVIAN_PASSWORD="secret"
rivian-ls login  # then provide OTP when prompted

Key Commands

# Snapshot from cache (fast, no API call)
rivian-ls status --offline --format json

# Live fetch from Rivian API
rivian-ls status --format json

# Stream live updates (WebSocket, auto-falls back to polling)
rivian-ls watch --format json

# Export historical snapshots
rivian-ls export --format json --since 24h

# Multi-vehicle: select by index
rivian-ls status --vehicle 1 --format json

Bundled Script

Use scripts/rivian_status.py for clean text or JSON output:

# Human-readable summary
python3 scripts/rivian_status.py

# JSON (pipe to jq, dashboard APIs, etc.)
python3 scripts/rivian_status.py --format json

# Force live fetch
python3 scripts/rivian_status.py --live

Common Patterns

Status summary: Run python3 scripts/rivian_status.py — covers all key fields.

Check if locked: Parse IsLocked from JSON output. Alert if false and parked overnight.

Battery alert: Check BatteryLevel and RangeStatus. Alert if below threshold.

Dashboard API endpoint: Call rivian-ls status --offline --format json from a server-side handler. Use a cron job (0 * * * *) to keep the cache fresh.

Keep cache fresh (cron):

0 * * * * /usr/local/bin/rivian-ls status --format json > /dev/null 2>&1

Field Reference

See references/api-fields.md for the full JSON schema, all field descriptions, and known limitations.

Comments

Loading comments...