Introduction

Viv is an AI agent for digital verification. Starting from a failing test case, Viv uses code, logs, waveform files, and specifications in order to find the root cause of the bug.

This diagram shows a simplified overview of how Viv works.

Screenshot 2025-11-18 at 7.54.29 AM.png

Instructions

Prerequisites

The starting point for Viv is always a failing test case.

In this document, we will assume you’re working in a Git repo at ~/project/, containing RTL, test benches, scripts, and any other code used during the test run. We’ll assume that the test failed on the version of the project corresponding to Git revision ba88f5a, and that any log files, waveform dumps, traces, and other artifacts from the test run are located in the directory ~/logs/run-0/.

The following must be accessible on the file system that Viv is running on:

  1. The code directory: The code that was used in the test case. For this example, this would be the project directory, with ba88f5a checked out. You don’t need to be running Git; any version control system is OK.

    Note: Viv assumes that your code is in a single repo. If this is not the case for you, let us know and we can help.

  2. The logs directory: All the logs, artifacts, etc for the failing test in a single directory or .tar.gz file. This can be inside or outside the code workspace from the previous step. In this example, this would be run-0.

Install

  1. Install CLI by running:

    	curl -fsSL install.silogy.io | bash
    

    This will:

    If you don’t want to run this script, you can also run these steps manually.

  2. Run viv version to verify installation. You should see 0.0.22.

Add your license

Depending on your setup, Viv will either use a per-machine license or a floating license. If you’re not sure which you’re using, it’s probably a per-machine license.

If you don’t have a license, please get in touch with your Silogy point of contact.

Per-machine licenses

A per-machine license is just a text file that lives on the same machine that Viv runs on. It will always start with the characters eyJhbGci. To load the license, run viv license add and provide the local path to the license. It will be copied to ~/.viv/license.

Viv debug will not work until a license is present.