Run VeridexCore from your terminal

The vdx CLI wraps the POST /cli/run endpoint into a single command. Install it, set your API key, and invoke any published capability.

Install

One-line install via curl:

bash
curl -sSL https://veridexcore.com/install | bash

This downloads the vdx wrapper to ~/.local/bin/vdx and adds it to your PATH. Restart your terminal or run source ~/.bashrc.

Or install manually:

bash
curl -sSL https://veridexcore.com/vdx -o ~/.local/bin/vdx
chmod +x ~/.local/bin/vdx

Set your API key

Get your API key from the Dashboard (sign in with GitHub), then export it:

bash
export VERIDEX_API_KEY="vdx_xxxxxxxxxxxxxxxxx"

Add it to your ~/.bashrc or ~/.zshrc to persist across sessions.

Basic usage

bash
vdx <skill_id> "<instruction>"

Example:

bash
vdx company-resolver "Google, Microsoft, Waymo"

Expected output includes:

json
{
  "status": "success",
  "receipt_id": "rcpt_a1b2c3d4e5f6g7h8",
  "skill_id": "company-resolver",
  "version": "1.0.0",
  "output": "Skill company-resolver (v1.0.0): 2/5 rules matched, coverage 0.4",
  "verify_url": "https://veridexcore.com/api/public/verify/company-resolver",
  "tokens_used": 0,
  "duration_ms": 12,
  "error": null
}

Pipe input from stdin

Use - to read input from stdin:

bash
cat companies.txt | vdx company-resolver -

Or combine an instruction with piped input:

bash
echo "Google LLC" | vdx company-resolver "resolve this" -

Output formats

Control the output shape with --format:

bash
# Structured JSON (for jq / scripting)
vdx company-resolver "Google" --format json

# Line-oriented (for grep / awk)
vdx company-resolver "Google" --format lines

# Receipt only (no output body, fastest)
vdx company-resolver "Google" --receipt-only

Receipt verification

Every invocation returns a verify_url. Extract it with jq:

bash
vdx company-resolver "Google" --format json | jq -r '.verify_url'

Then verify the receipt:

bash
curl -s "$(vdx company-resolver "Google" --format json | jq -r '.verify_url')" | jq .

Idempotent retries

Pass an --idem key to make requests retry-safe. Repeated calls with the same key return the same receipt without re-executing.

bash
vdx company-resolver "Google" --idem "run-001"

Or via the raw API:

bash
curl -X POST https://veridexcore.com/api/cli/run \
  -H "Authorization: Bearer $VERIDEX_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
        "skill_id": "company-resolver",
        "instruction": "Google",
        "idempotency_key": "example-123"
      }'

Raw API usage

If you prefer curl directly instead of the vdx wrapper:

bash
curl -X POST https://veridexcore.com/api/cli/run \
  -H "Authorization: Bearer $VERIDEX_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"skill_id":"company-resolver","instruction":"Google"}'

Request contract

json
POST /cli/run
Authorization: Bearer <api-key>
Content-Type: application/json

{
  "skill_id": "string",           // required
  "instruction": "string | null",  // at least one of instruction/input
  "input": "string | null",        // at least one of instruction/input
  "timeout_seconds": 30,           // 10-300 (default 30)
  "output_format": "text",         // text | json | lines | receipt-only
  "context": {},                   // optional metadata
  "idempotency_key": "string"      // optional, max 256 chars
}

Response contract

json
{
  "status": "success",
  "receipt_id": "rcpt_...",
  "skill_id": "company-resolver",
  "version": "1.0.0",
  "output": "string | object | array | null",
  "verify_url": "https://.../public/verify/...",
  "tokens_used": 0,
  "duration_ms": 12,
  "error": null
}

In receipt-only mode, only status, receipt_id, skill_id, version, and verify_url are returned.

Quick success test

After install, verify everything works:

bash
vdx company-resolver "Google"

You should see a JSON response with receipt_id and verify_url.

Environment variables

VariableRequiredDescription
VERIDEX_API_KEYYesYour API key
VERIDEX_API_URLNoOverride API base URL