Skip to main content
While Vijil has a variety of pre-configured Harnesses that you can select from, you can also create your own Harnesses in order to obtain a Trust Score specific to your organization and agent.

View Custom Harnesses

You can view previously created custom Harnesses by navigating to Harnesses in the left sidebar. To view the prompts, Personas and Policies in a custom Harness, click on its row in the Harnesses table.

Create a Custom Harness

  1. In the left sidebar, navigate to Harnesses and press Create Harness.
  2. Enter a Harness name and a description.
  3. Select an Agent
  4. Optional Select one or more Persona(s).
  5. Optional Select one or more Policies

Create a Custom Harness Programmatically

Create Personas and Policies

Personas define who interacts with your Agent, and Policies define the rules it must follow. Both are optional inputs to custom Harness creation: pass their IDs (persona_ids and policy_ids) in the next step, and Vijil generates Probes that combine each Persona’s behavior with each Policy’s constraints. Create them first, then reference their IDs when you create the Harness.
Each command prints the new id. Save the Persona and Policy IDs for the next step. List built-in options with vijil persona preset-list and vijil policy preset-list.
Personas and Policies are reusable across Harnesses. For balanced coverage, combine a benign and an adversarial Persona with the Policies that matter most to your Agent. See Define Personas and Define Policies for design guidance.

Create a Harness

Pass the Persona and Policy IDs from the previous step as persona_ids and policy_ids. Both are optional — omit them to generate a Harness from the Agent description alone.
Custom Harnesses are immutable once created. To change the configuration, delete the Harness and create a new one.

Check Generation Status

Harness generation is asynchronous. Poll until status is active.

Get Harness Prompts

Retrieve the generated Probes for a completed Harness.
Returns an empty list if the Harness is still in draft status. The SDK has no dedicated prompts method yet, so the example above calls the endpoint through client._http, the same transport the high-level methods use.

List Custom Harnesses

Both support filtering by agent_id and status, with limit and offset for pagination. The SDK’s client.harnesses.list() returns standard and custom Harnesses together.

Cancel Generation

Stop a Harness that is still generating.
The SDK has no dedicated cancel method yet, so the example above calls the endpoint through client._http, the same transport the high-level methods use.

Delete a Harness

Next Steps

Run Evaluations

Execute custom Harness evaluations

Understand Results

Analyze custom Harness results

Personas

Learn more about personas

Policies

Learn more about policies
Last modified on July 9, 2026