Install
openclaw skills install vx-commandsComplete vx CLI command reference. Use when looking up specific vx command syntax, flags, output formats, or token-efficient forwarding. vx-native commands support --json, --toon, --compact, and --output-format; forwarded tools keep native output unless compact mode is explicitly requested.
openclaw skills install vx-commandsQuick rule: Prefer semantic reduction first:
--jsonwith selected fields, then--jq/vx rgfiltering, then--compactfor broad logs. SetVX_OUTPUT=json,VX_OUTPUT=toon, orVX_OUTPUT=compactonly when you want that default for the whole invocation.
vx-native commands support --json, --toon, --compact, and
--output-format <text|json|toon|compact>. Forwarded tools such as vx git,
vx gh, vx cargo, or vx npm keep their native stdout by default; use the
tool's own structured flags first, or add vx --compact ... when broad
subprocess output must be filtered.
vx analyze --json # Analyze project structure
vx check --json # Verify tool constraints
vx ai context --json # Generate AI-friendly project context
Output fields (analyze):
ecosystems[] - Detected ecosystems (nodejs, python, rust, go)dependencies[] - Project dependenciesscripts[] - Available scriptsrequired_tools[] - Tools neededOutput fields (check):
requirements[] - Tool requirement statusall_satisfied - Whether all constraints are metmissing_tools[] - Tools that need installationOutput fields (ai context):
project - Project info (name, languages, frameworks)tools[] - Installed tools with versionsscripts[] - Available scriptsconstraints[] - Tool constraintsvx list --json # List installed tools
vx versions node --json # List available versions
vx which node --json # Find tool location
vx search <query> --json # Search for tools
Output fields (list):
runtimes[] - Available runtimestotal - Total countinstalled_count - Installed countOutput fields (versions):
versions[] - Available versions with metadatalatest - Latest versionlts - LTS version (if applicable)Output fields (which):
path - Executable pathversion - Resolved versionsource - Source (vx, system, global_package)vx install node@22 --json # Install tool
vx sync --json # Sync from vx.toml
Output fields (install):
runtime - Runtime nameversion - Installed versionpath - Installation pathduration_ms - Installation durationdependencies_installed[] - Dependencies also installedOutput fields (sync):
installed[] - Successfully installedskipped[] - Skipped (already installed)failed[] - Failed installationsduration_ms - Total durationvx ai context # Generate AI-friendly context (Markdown)
vx ai context --json # JSON format
vx ai context --minimal # Minimal output
vx ai session init # Initialize session state
vx ai session status # Show session status
vx ai session cleanup # Clean up session
vx env --json # Show environment variables
vx dev --export # Export shell environment
vx list --json
# Output: {"runtimes": [...], "total": 50, "installed_count": 5}
vx list --output-format toon
vx list --toon
# Output:
# runtimes[50]{name,installed,description}:
# node,true,Node.js runtime
# python,false,Python runtime
# ...
TOON format is recommended for AI agents - it saves 40-60% tokens compared to JSON.
# vx-native compact summary
vx --compact list node
vx list --output-format compact
# Forwarded subprocess filtering
vx --compact gh run view 789 --log
vx --compact --filter-level aggressive cargo test
Compact mode is RTK-inspired: it strips ANSI noise, collapses repeated lines,
keeps error-looking lines, and enforces a line budget for subprocess output.
Use it after semantic options like gh --json --jq or vx rg filters.
# Smallest useful status view
vx gh run view 789 --json status,conclusion,jobs --jq '.jobs[] | {name,conclusion}'
# Failure search with capped matches
vx gh run view 789 --log | vx rg -n -m 80 "error|failed|panic|Traceback|FAILED|warning"
# Broad fallback without raw-log token cost
vx --compact gh run view 789 --log
Do not rely on default vx gh or vx git output to save tokens. Their default
behavior is transparent forwarding; savings come from selected fields, --jq,
search filters, or explicit --compact.
export VX_OUTPUT=json # Default to JSON output
export VX_OUTPUT=toon # Default to TOON output
export VX_OUTPUT=compact # Default to compact output/filtering
export VX_FILTER_LEVEL=normal # light, normal, aggressive
vx <tool> [args...] # Run any tool
vx npm install # Run npm
vx cargo build # Run cargo
# Runtime with version
vx node@22 app.js # Use specific Node.js version
# Runtime executable override
vx msvc@14.42::cl main.cpp # Run cl from MSVC runtime
# Package execution (ecosystem:package pattern)
vx npm:vite # Run vite via npm
vx uv:ruff check . # Run ruff via uv
vx npm:typescript@5.0::tsc # Run tsc from specific typescript version
# Package aliases (shortcuts)
vx vite # Same as: vx npm:vite
vx meson # Same as: vx uv:meson
# Multi-runtime composition
vx --with bun@1.1 --with deno node app.js # Multiple runtimes in PATH
vx install <tool>@<version> # Install tool
vx uninstall <tool> # Uninstall tool
vx list # List tools
vx versions <tool> # Show versions
vx which <tool> # Find tool path
vx switch <tool>@<version> # Switch version
vx init # Initialize vx.toml
vx add <tool> # Add tool to project
vx remove <tool> # Remove tool from project
vx sync # Sync tools from vx.toml
vx lock # Generate vx.lock
vx check # Check constraints
vx run <script> # Run script from vx.toml
vx run --list # List available scripts
vx cache dir # Show cache directory
vx cache clean # Clean cache
--json # JSON output
--toon # TOON output
--compact, -u # Compact RTK-style output / subprocess filter
--output-format <text|json|toon|compact> # Output format
--fields <a,b,c> # Field mask for JSON-capable vx commands
--filter-level <light|normal|aggressive> # Compact subprocess filter level
--verbose # Verbose output
--debug # Debug output
--use-system-path # Use system PATH
--cache-mode <mode> # Cache mode (normal, refresh, offline, no-cache)
0 - Success1 - General error2 - Tool not found3 - Installation failed4 - Version not found5 - Network error6 - Permission error7 - Configuration error