Who This Guide Is For
Use this guide if you installed the legacyvijil PyPI package with pip install vijil. That package targets a previous API contract.
This guide gets you onto vijil-sdk, the current SDK and CLI distribution.
Why Migrate
The legacyvijil package cannot reach current platform endpoints. If a recent legacy install returns authentication failures or 404 responses, the package is likely using the old API contract.
Key changes:
- Authentication moved from a username and token flow against
/tokens/verifyto bearer API keys. - The current CLI replaces generic CRUD commands such as
vijil create,vijil list, andvijil describewith workflow verbs and resource commands. - The current SDK includes generated models for stronger type checking and IDE completion.
- Red Team now runs as a Diamond evaluation, alongside behavioral evaluations, and uses an evaluation ID for status and results.
Install
Uninstall the legacy package, then install the current SDK:vijil-sdk package installs both the vijil Python SDK and the vijil CLI under one distribution. It requires Python 3.12 or later.
Authentication Changes
The legacy package prompted for a username and token:You can also set
VIJIL_API_KEY in your environment. The environment variable takes precedence over the token stored by vijil auth login.Command Map
The legacy package exposed top-level commands for generic operations. The current CLI splits those commands into:- Porcelain commands for the high-level agent trust workflow
- Plumbing commands for low-level CRUD operations on platform resources (scripting, automation, and direct resource management)
See the CLI evaluation reference for evaluation options.
Former Red Team Workflow
If you used the former standalone Red Team workflow, create a Red Team evaluation instead. The evaluation ID identifies the run and its results across the SDK, CLI, and REST API.
Red Team evaluations do not use
baseline, Harness, sample_size, or local mode settings. See the Red Team CLI guide and SDK evaluation resources for the status, artifact, and report methods.
Python SDK Changes
The legacy package did not expose a stable Python API beyond CLI invocation. The current package provides theVijil client:
Vijil() reads VIJIL_API_KEY or the credentials saved by vijil auth login.
See lifecycle methods for the full client.evaluate() workflow.
When to Use MCP Instead
Usevijil-mcp when you need to run Vijil capabilities inside MCP-aware agent framework such as Claude Desktop, Cursor, LangGraph, ADK, or Strands.
The vijil-mcp package runs as a separate stdio MCP server that exposes Vijil platform capabilities as tools an agent can call.
You can install both vijil-sdk and vijil-mcp in the same environment. They are independent and do not share runtime state.