> For the complete documentation index, see [llms.txt](https://docs.tessl.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.tessl.io/improving-your-skills/tessl-review.md).

# Tessl Review

Tessl Review runs a skill review through an asynchronous, server-side pipeline. The `tessl review` commands authenticate the run against your workspace, pack and upload the skill bundle, start the review, and poll until it completes before printing the score. This is the way to review skills as an authenticated user and to gate CI on review quality.

{% hint style="info" %}
There are different tools in the Tessl toolkit for improving your skills, refer to the [Overview](/improving-your-skills/overview-improving-skills-and-plugins.md) for more information on reviews, the different kinds of evals, and skills available.
{% endhint %}

## Prerequisites

`tessl review run` and `tessl review fix` require authentication and a workspace. The companion commands (`view`, `list`, `retry`) require authentication only.

* Authentication, via either:
  * a logged-in session – `tessl whoami` confirms it, and `tessl login` signs you in
  * a `TESSL_TOKEN` API key set in the environment
* A workspace to attribute the run to, for `run` and `fix`. Pass it with `--workspace`; it is **required** when `--json` is set, because a non-interactive run cannot prompt for one. (`list` accepts `--workspace` as an optional filter, not a prerequisite.)

## Running a review

```sh
tessl review run ./my-skill --workspace engteam
```

The command packs the skill, uploads it, starts the review pipeline, and polls until it finishes before printing the results. Pressing Ctrl+C detaches from the run – the review continues server-side, and you can check on it later:

```sh
# View the most recent run
tessl review view --last

# View a specific run by ID
tessl review view abc123

# List recent runs
tessl review list

# Re-run a failed review
tessl review retry --last
```

## Customising the reviewer

By default the review scores a skill against Tessl's standard rubric. To score against your own standards instead – your organisation's quality bar, your own judges and weights – run the review with a custom reviewer plugin.

Build one with the `create-review-plugin` skill from [`tessl/review-plugin-creator`](https://tessl.io/registry/tessl/review-plugin-creator). It scaffolds the plugin, lets you fork the default rubric or write one from scratch, and validates it with `tessl review run`.

Point a review at a reviewer plugin with `--review-plugin`, passing either a local directory or a `workspace/plugin` registry reference:

```sh
tessl review run ./my-skill --workspace engteam --review-plugin ./my-reviewer
tessl review run ./my-skill --workspace engteam --review-plugin engteam/my-reviewer
```

The same `--review-plugin` flag works with `tessl review fix`.

## Gating CI on a review score

In CI, combine `--json` with `--threshold` so the command fails when the score is too low:

```sh
tessl review run ./my-skill --workspace engteam --json --threshold 80
```

When the score is below the threshold percentage, the command exits non-zero and the CI step fails. `--workspace` is required here because `--json` runs non-interactively.

You can also re-check a stored run against a threshold without starting a new review:

```sh
tessl review view abc123 --json --threshold 80
```

For a complete GitHub Actions workflow that sets up `tessl` and runs this gate on pull requests, see [Review, lint & publish with GitHub Actions](/distribute/review-and-publish-with-github-actions.md). For the full flag reference, see [`tessl review run`](/reference/cli-commands.md#tessl-review-run).

## Improving a skill

`tessl review fix` runs an asynchronous improve-and-review loop: it reviews the skill, applies improvements, and re-reviews, up to `--max-iterations` times or until the score reaches `--threshold`.

```sh
tessl review fix ./my-skill --workspace engteam
```

Pass `--yes` to apply the improved skill without a confirmation prompt.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.tessl.io/improving-your-skills/tessl-review.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
