# AI use cases for Proteus (proteus-evolve/Proteus)

Repo: [proteus-evolve/Proteus](https://github.com/proteus-evolve/Proteus) | Use cases: 4 | Page: https://dedupedai.com/use-cases/proteus-evolve-proteus/

Proteus is a Python framework that lets any agent harness rewrite its own files over many fresh episodes, then measures how the harness changes.

This file holds every use case of this repo. Each one starts with a "## " heading and ends with its URL.

- Compare evolution arms offline in one afternoon: https://dedupedai.com/use-cases/proteus-evolve-proteus/compare-evolution-arms-offline/
- Test whether a starting preference leaves a lasting mark: https://dedupedai.com/use-cases/proteus-evolve-proteus/check-if-a-preference-sticks/
- Evolve a pi coding agent inside a Docker sandbox: https://dedupedai.com/use-cases/proteus-evolve-proteus/evolve-coding-agent-in-docker/
- Score a harness against a hidden benchmark: https://dedupedai.com/use-cases/proteus-evolve-proteus/score-evolution-against-hidden-benchmark/

## How to compare evolution arms offline in one afternoon with Proteus

Repo: [proteus-evolve/Proteus](https://github.com/proteus-evolve/Proteus) | Difficulty: Intermediate | Time: 15 minutes | Basis: From the README

Run the bundled offline harness under neutral and review arms and read the shift in what it builds.

**Who it is for:** A researcher or developer who wants to see how an action preference changes a self-evolving harness, without an API key or Docker.

**The problem:** Reading a self-evolving harness by hand is slow, and it is hard to tell whether a change came from the preference or from noise.

**The outcome:** A per-arm table of notes and tools built, a behavioural R and p value, and a local visual replay of the runs.

### Steps

1. `pip install proteus-evolve==0.4.0`
2. `proteus run --harness minimal --arm neutral --arm review:notes --arm review:tools --seeds 4 --episodes 8 --out runs/<target>` (inferred, check the README)
3. `proteus measure --harness minimal --out runs/<target>` (inferred, check the README)
4. `proteus visualize --out runs/<target>` then open http://127.0.0.1:8301 in a browser (inferred, check the README)

### Prompt to paste into your agent

```text
In the Proteus repo (proteus-evolve/Proteus), install proteus-evolve==0.4.0 and run the minimal harness with the neutral, review:notes and review:tools arms, writing output to runs/<target>. Expected output: a per-arm table of notes and tools counts plus a behavioural R and p value from proteus measure. Verify that the measure output includes a p value and that the review arms show a different notes or tools count than neutral.
```

### Caveat

The minimal harness uses a mock policy, so the numbers show the pipeline working offline, not how a real model behaves.

Disclaimer: Third-party repos we don't own or vouch for. AI-generated use cases can be wrong: review everything and run at your own risk. Full text: https://dedupedai.com/disclaimer/

URL: https://dedupedai.com/use-cases/proteus-evolve-proteus/compare-evolution-arms-offline/

## How to test whether a starting preference leaves a lasting mark with Proteus

Repo: [proteus-evolve/Proteus](https://github.com/proteus-evolve/Proteus) | Difficulty: Intermediate | Time: 30 minutes | Basis: From the README

Install a removable preference, then read the harness with structural distance and the crystallization test.

**Who it is for:** A researcher asking whether an initial condition still shapes a self-evolving harness after the preference is removed.

**The problem:** A preference can seem to persist just because the prompt still carries it, so it is unclear what the harness built on its own.

**The outcome:** A structural distance report per surface and a crystallization reading, which shows the harness state with the disposition taken away.

### Steps

1. `pip install proteus-evolve==0.4.0`
2. `proteus run --harness minimal --arm neutral --arm review:notes --arm review:tools --seeds 4 --episodes 8 --out runs/<target>` (inferred, check the README)
3. `proteus measure --harness minimal --out runs/<target>` (inferred, check the README)
4. `proteus measure --travel`

### Prompt to paste into your agent

```text
In the Proteus repo (proteus-evolve/Proteus), run the minimal harness with a neutral arm and a review:notes arm into runs/<target>, then run proteus measure --travel. Expected output: per-surface structural distance (added, dropped, revised) and path length for each arm. Verify that the neutral arm's path length is reported alongside the review arm's, so the two can be compared.
```

### Caveat

The crystallization test reads the harness state, so its meaning depends on the surfaces the harness declares, and the offline minimal harness has fewer surfaces than a real agent.

Disclaimer: Third-party repos we don't own or vouch for. AI-generated use cases can be wrong: review everything and run at your own risk. Full text: https://dedupedai.com/disclaimer/

URL: https://dedupedai.com/use-cases/proteus-evolve-proteus/check-if-a-preference-sticks/

## How to evolve a pi coding agent inside a Docker sandbox with Proteus

Repo: [proteus-evolve/Proteus](https://github.com/proteus-evolve/Proteus) | Difficulty: Advanced | Time: 2 hours | Basis: From the README

Run the pi harness with a DeepSeek key so it rewrites its own source inside an isolated container.

**Who it is for:** A developer who wants a real coding harness to evolve its own instructions, tools and source under container isolation.

**The problem:** Letting a self-editing agent run its own code on a host machine is risky, and an application-level file sandbox does not contain it.

**The outcome:** A run folder with the snapshotted pi harness across episodes, native session logs, and a visual replay of the changes.

### Steps

1. Install Docker and get a DeepSeek API key, then set it in your shell environment (inferred)
2. `pip install proteus-evolve==0.4.0`
3. Build the prepared pi-src image by following environments/README.md in the repo (inferred)
4. `proteus run --harness pi --arm neutral --seeds 1 --episodes 4 --out runs/<target>` (inferred flags) (inferred, check the README)
5. `proteus visualize --out runs/<target>` (inferred, check the README)

### Prompt to paste into your agent

```text
In the Proteus repo (proteus-evolve/Proteus), prepare the pi-src environment, then run the pi harness with the neutral arm for 4 episodes into runs/<target>. Expected output: episode records and a snapshot per episode, with the pi source extracted into harness/src/. Verify that each episode snapshot contains a passing candidate or a restored repair candidate.
```

### Caveat

The pi integration needs Docker and a DeepSeek key, and the exact build and run flags beyond the README examples must be checked in the environments and adapter docs.

Risk, credentials: The DeepSeek key is passed into the container through environment passthrough, so keep run folders and logs free of the key before sharing them.

Disclaimer: Third-party repos we don't own or vouch for. AI-generated use cases can be wrong: review everything and run at your own risk. Full text: https://dedupedai.com/disclaimer/

URL: https://dedupedai.com/use-cases/proteus-evolve-proteus/evolve-coding-agent-in-docker/

## How to score a harness against a hidden benchmark with Proteus

Repo: [proteus-evolve/Proteus](https://github.com/proteus-evolve/Proteus) | Difficulty: Advanced | Time: 2 hours | Basis: From the README

Attach a verifier as a hidden evaluator and keep only the harness changes that do not regress.

**Who it is for:** An ML engineer with a benchmark verifier who wants a harness to improve on it without the agent seeing the score.

**The problem:** When the agent can see the benchmark score, it may tune to the metric, and regressions can slip into the harness unnoticed.

**The outcome:** A goal configuration with a hidden evaluator and accept_reject selection, plus run output that measures each condition with the same ruler.

### Steps

1. `pip install proteus-evolve==0.4.0`
2. Write your verifier as a callable (trace, ctx) -> EvalResult and wrap it in EvaluatorSpec with Visibility.HIDDEN
3. Pass the spec to GoalConfig.of with selection="accept_reject"
4. `proteus check --harness mypkg.theirs_adapter:TheirsHarness --episode`
5. `proteus run --harness mypkg.theirs_adapter:TheirsHarness --arm neutral ...` (inferred, check the README)

### Prompt to paste into your agent

```text
In the Proteus repo (proteus-evolve/Proteus), write a verifier callable that returns an EvalResult, wrap it in EvaluatorSpec with Visibility.HIDDEN, and run GoalConfig.of with selection="accept_reject" against the adapter at <harness path>. Expected output: a run folder with per-episode evaluator results and accepted or rejected snapshots. Verify that the hidden evaluator's score does not appear in any observe-phase prompt.
```

### Caveat

This assumes you already have a working HarnessAdapter, and the README only shows the adapter path as a placeholder, so the check step must pass on your own adapter first.

Disclaimer: Third-party repos we don't own or vouch for. AI-generated use cases can be wrong: review everything and run at your own risk. Full text: https://dedupedai.com/disclaimer/

URL: https://dedupedai.com/use-cases/proteus-evolve-proteus/score-evolution-against-hidden-benchmark/
