DeepSeek Harness plugin

rotifer-playground

The Rotifer Protocol plugin for OpenClaw — three Skills plus the Rotifer MCP server. Create your first Agent from a template (hello), route yourself to the right capability (assistant), and rank an

Jump to install

Source facts

Repository
rotifer-protocol/rotifer-playground
Latest update
Aug 22, 2026
Category
Workflow & Automation
GitHub stars
6
Format
plugin
Package path
plugins/rotifer
Catalog evidence
Upstream dsh.bundle evidence
Evidence path
plugins/rotifer/package.json#dsh.bundle
Checked against
0.1.0-rc.8
Upstream check date
2026-08-20

This evidence comes from the upstream catalog. This site has not installed, run, or security-reviewed the plugin.

Install

Start with a prompt that asks an agent to review the GitHub repository and source. Switch to the command if you want to install it yourself.

Copy this prompt into DSH, Codex, or another agent and ask it to review the GitHub repository and source first.

Do not install or run any commands yet. Read this plugin's GitHub repository, README, and relevant source code. Then answer the questions below clearly and directly so I can decide whether it fits my needs:

1. What is this plugin, and what problem does it solve?
2. Who is it for, and what are its typical use cases?
3. How is it used after installation? Include one minimal example.
4. What known limitations or privacy, security, compatibility, or maintenance risks does it have?
5. Give a clear recommendation: recommend, conditionally recommend, or do not recommend, with reasons.

Distinguish statements documented by the repository, inferences from source code, and unknowns. If evidence is insufficient, say so explicitly. Do not guess or simply repeat the README.

GitHub: https://github.com/rotifer-protocol/rotifer-playground/tree/HEAD/plugins/rotifer
Plugin: rotifer-playground
Author: rotifer-protocol

Check the source files

Read the README and other files from this plugin directory before installing.

File explorer2 files
README.mdSource · read only

<div align="center"> <img src="assets/icon.png" alt="Rotifer Protocol" width="96" height="96"> <h1>Rotifer Protocol — Agent Plugin</h1> <p><strong>Self-evolving AI agent capabilities.</strong> Scan what your agent can do, benchmark it against public rankings, and swap in something better.</p> <p> <a href="https://github.com/rotifer-protocol/rotifer-playground/blob/main/LICENSE"><img src="https://img.shields.io/badge/License-Apache--2.0-blue.svg" alt="License: Apache-2.0"></a> <a href="https://www.npmjs.com/package/@rotifer/playground"><img src="https://img.shields.io/npm/v/@rotifer/playground?label=CLI" alt="npm"></a> <a href="https://www.npmjs.com/package/@rotifer/mcp-server"><img src="https://img.shields.io/npm/v/@rotifer/mcp-server?label=MCP%20server" alt="npm"></a> </p> </div>

---

What this is

Most agent capabilities are written once and never measured again. Rotifer treats a capability as a Gene — a versioned, testable unit with a declared input/output schema, compiled to WASM, and scored by a fitness function F(g) in a public Arena.

Because Genes are portable and comparable, an agent can do something ordinary code cannot: find out that a better implementation of its own capability exists, and adopt it.

This plugin brings that loop into your agent.

Install

One folder, one version, one set of skills — five hosts read it through their own manifest, so nothing drifts between them.

HostHow it loads
Cursor.cursor-plugin/plugin.json
CodeBuddy.codebuddy-plugin/plugin.json
OpenClaw / ClawHubopenclaw.plugin.json + package.json#openclaw
Claude Code.claude-plugin/plugin.json
DeepSeek Harnesspackage.json#dsh + cordis.patch.yml

On DeepSeek Harness, install it into whichever profile you boot:

dsh plugin --profile web add "github:rotifer-protocol/rotifer-playground#path:/plugins/rotifer"

It installs from this repository rather than from npm on purpose. The unscoped npm name rotifer is already held by a pointer package whose only job is to stop that name being used to impersonate the toolchain — publishing this plugin over it would replace a working redirect with a package that has no bin at all.

That adds two rows, and both mount plugins DSH already ships — this bundle carries no runtime code of its own:

  • rotifer-skills — a dsh-skill-filesystem provider scoped to this package's

own skills/ directory. It sets includeDefaultRoots: false, so it contributes only the four Rotifer skills and never rescans your project or user skill roots. It cannot shadow a skill you wrote.

  • rotifer-mcp — the dsh-mcp-client bridge on the pinned, narrowed launch line

below. Its 10 tool schemas are paid on every request while mounted (6,736 bytes of JSON, measured on dsh 0.1.0-rc.7). Drop this row from your profile's own cordis.patch.yml and the four skills still work; they cost only their catalog rows.

Where to find it once installed. Settings → Plugins lists rows by id, so look for rotifer-skills and rotifer-mcp — there is no single entry named "Rotifer". A bundle that mounts the host's own plugins contributes configured rows, not a package of its own name. Searching rotifer in that list returns both.

DSH is in developer preview and says it will make breaking changes. This bundle is declarative on purpose: it mounts DSH's own plugins rather than shipping a Cordis plugin of ours, so an API change has nothing here to break.

What it does

ScanWalk the workspace and identify functions that are already Gene-shaped
WrapTurn a plain function into a Gene with a phenotype.json contract
CompareCheck a local Gene against Arena rankings for the same capability
UpgradeInstall a higher-scoring Gene and run it in a sandbox before trusting it
PublishShare a Gene, with an automatic V(g) safety-scan badge

Every Gene runs inside a WASM sandbox with fuel metering and memory limits, so trying someone else's capability does not mean trusting their code with your machine.

What ships in this plugin

Skills — the agent picks these up automatically when relevant:

SkillPurpose
rotiferBrowse, install, and compete Genes in the live Arena
rotifer-helloInteractive agent creation from curated templates — quality diagnosis, security scanning, content analysis, Web3 auditing, document Q&A
rotifer-evolveThe full loop: scan capabilities, benchmark against live Arena rankings, and replace weaker Genes. Ranking is the automatic part — every replacement waits for your approval and can be rolled back
rotifer-assistantUnified entry point — guide, architect, and challenge your agents

Rulerotifer-gene-dev keeps generated Genes inside the project's conventions: naming, structure, fidelity declaration, and phenotype schema. It activates on /genes/ and **/phenotype.json.

MCP server@rotifer/mcp-server, launched on demand via npx, nothing to install ahead of time.

Left undeclared, the server offers 31 tools and 7 resources covering the whole lifecycle, including compiling, publishing, Arena submission and login. This plugin launches it with --tools=evolve, which offers 10 tools and 4 resources — enough to search, compare, install and roll back Genes and to create and run Agents, and nothing more. The rest are not listed and are refused if called, so nothing here can publish on your behalf or sign you in. The launch line also omits --allow, so the sandbox escape hatches stay off.

Resources are narrowed alongside the tools they duplicate, because a restriction with an unlisted way around it is not a restriction.

The version is pinned rather than floating, so what you install is what you reviewed:

npx -y @rotifer/mcp-server@0.16.1 --tools=evolve

You can run that yourself and ask it to list its tools.

Fidelity: what a Gene honestly is

Every Gene declares how it actually works. This is a hard requirement, not a label:

  • Native — real executable WASM, runs fully inside the sandbox
  • Wrapped — a wrapper around an external API, and says so
  • Hybrid — declares its external dependencies, how it degrades when they are

unavailable, and a simulation spec for that case

A Gene that misrepresents its fidelity is a broken Gene. Rankings are only meaningful if you know what you are comparing.

Requirements

  • Node.js ≥ 20
  • No account needed to scan, wrap, test, or run Genes locally
  • An account is only required to publish or to submit to the Cloud Arena

Try it without the plugin

Everything here is public and works standalone, so you can verify it end to end first:

# CLI
npx @rotifer/playground@latest init my-agent
npx @rotifer/playground@latest scan
npx @rotifer/playground@latest doctor

# MCP server
npx @rotifer/mcp-server@latest

Status

The protocol is pre-1.0 and under active development; APIs may change between minor versions. Arena, Cloud publishing, the WASM sandbox, and the safety-badge pipeline are live. P2P gene propagation is experimental and off by default — the CLI never joins a network unless you ask it to.

See the changelog for full release history.

Links

  • Docs — https://rotifer.dev/docs/
  • Repository — https://github.com/rotifer-protocol/rotifer-playground
  • Protocol spec — https://github.com/rotifer-protocol/rotifer-spec
  • Issues — https://github.com/rotifer-protocol/rotifer-playground/issues

License

Apache-2.0. See LICENSE.