> For AI agents: the complete documentation index is available at /llms.txt, the full documentation bundle is available at /llms-full.txt.

# Review pattern mining

:::info

**Goal:** Stop reviewers repeating the same comment by turning it into a rule.

:::

## What it does

Weekly, a schedule reads the last 50 code reviews and looks for feedback that keeps coming up. If reviewers keep saying the same thing, the plugin proposes a lint rule, an automated check, or a documented convention to address it. Reviewers spend less time repeating the same comment and more time on the decisions that need their judgment.

## The plugin

[`tessl/review-miner`](https://tessl.io/registry/tessl/review-miner) reads recent review comments, groups the recurring ones, and proposes a rule, check, or convention for each. Install it with:

```bash
tessl install tessl/review-miner
```

## Define the schedule

Run it every Monday at 9:00 UTC. Add this entry to the `schedules` block in your project's `tessl.json`, and keep any other entries already in that block. Replace `production` with the name of your environment (see the [Schedules overview](/schedules/overview.md) for the prerequisites).

<div class="gb-stepper">

<div class="gb-step">

**Add the schedule entry**

```json
{
  "schedules": {
    "review-miner": {
      "action": {
        "skill": "tessl/review-miner",
        "environment": "production"
      },
      "schedule": "weekly on monday at 09:00"
    }
  }
}
```

</div>

<div class="gb-step">

**Validate and push**

Signed out, validation checks the local file only. Signed in, with a `name` that identifies your project, it also runs the checks Tessl applies when the file syncs and when a run starts. Commit and push the change, then confirm Tessl applied the schedule in your workspace before checking its run history.

```bash
tessl schedule validate
git add tessl.json
git commit -m "chore(docs): add review miner schedule"
git push
```

</div>

<div class="gb-step">

**Check the runs**

Open the schedule in the web app, or run `tessl schedule runs <id>` to see its run history.

</div>

</div>

## Customize with instructions

Focus the search on one area by adding `instructions` inside the same entry's `action`. Keep all other entries in the `schedules` block:

```json
{
  "schedules": {
    "review-miner": {
      "action": {
        "skill": "tessl/review-miner",
        "environment": "production",
        "instructions": "Only look for repeated feedback about error handling and logging"
      },
      "schedule": "weekly on monday at 09:00"
    }
  }
}
```

## Create your own

Want a different behavior? [Create your own plugin](/creating-skills-and-plugins/create-a-plugin.md) that reads recent review comments and proposes a rule your way.
