cuvette Install

Adapters from others

Community adapters

An adapter connects Cuvette to one science program. The catalog holds the adapters that come with Cuvette. Other people can write adapters and share them. This page shows how to install one, what Cuvette checks, and how to submit your own.

1 Install an adapter

Type one of these commands in a terminal:

cuvette adapter add <name | git address | folder | .zip>
cuvette adapter update [name]
cuvette adapter remove <name>
cuvette adapter list --installed

In the app, open the Programs page and click “Add an adapter”. In the terminal, press a in the /programs panel.

Cuvette pins each install. A git source is pinned to a commit. Add #ref to the address to choose a branch, a tag or a commit. A registry source is pinned to a version. Cuvette saves the source and the SHA-256 checksum of all files. list --installed marks an adapter whose files changed after the install.

2 What you see before an install

Before each install or update, Cuvette runs cuvette adapter check --static. This check imports no code and starts no program. Then Cuvette shows a card and asks [y/N]. Bypass permissions does not skip this question. Cuvette does not install an adapter that has an error.

Fig. 1 | The install card. The fields are the ones that Cuvette shows. The values are an example. An update also lists the files added, removed and changed.

The known-answer tests do not run unless you add --run-tests. They do not run for an adapter that ships code.

3 Trust labels

Each adapter has one label. The label shows in cuvette adapters, on the Programs page, in list_adapters, in the choice of program and in the session record.

Reviewed
The adapter is in the built-in catalog. The owner read every file. Only the catalog has this label.
Checked
The adapter came from the registry. The registry index says that it passed the automatic checks and its tests, and a person approved it. An installed adapter loses this label if its files change after the install.
Unlisted
The adapter came from a git address, a folder or a .zip file. Nobody reviewed or checked it. Cuvette shows a warning.

An Unlisted adapter that ships code needs one more confirmation the first time it runs. The session asks “Run the code of NAME?”. In a run without a window, type cuvette adapter allow-code NAME. The Programs page has the action “Allow its code to run”. The confirmation ends when the files change.

4 Submit an adapter

  1. Write the adapter. Read the adapter specification and the adapter checklist. Add known-answer tests that use public data. Add a LICENSE file.
  2. Check it. This command runs the checklist rules and the tests:
    cuvette adapter check <folder> --run-tests
  3. Ask Claude to review it. The command asks first, because it sends the files to the Anthropic application programming interface (API) and costs tokens. It shows the estimate before and the cost after.
    cuvette adapter audit <folder>
  4. Open a pull request to the registry repository. The pull request adds a folder adapters/<name>/. The folder name is the adapter name.

Two jobs start on each pull request:

  1. The automatic checks run first, without secrets. They run the lint and the known-answer tests that need no window and no external program.
  2. A Claude review reads every file of the adapter and posts one comment. The first line is the verdict: pass, needs-changes or reject. Each reason names a file and a line.

A maintainer reads the code and the review, and approves the merge. Claude merges nothing. Claude reads the files as data and runs no code from the pull request.

The review is advice. Claude can make a mistake. Claude reads at most about 300,000 characters of an adapter, so a person must read the rest of a large adapter.

5 Status

The public registry does not exist yet. It opens after the launch. Until then, share an adapter as a git repository or a .zip file. Users install it with a git address or a folder, and it gets the label Unlisted.

6 Licenses