Install
openclaw skills install @xiaoba-dev/rotifer-guideUnified user-facing entry point for Rotifer Protocol: interactive onboarding, natural-language scaffolding, diagnostics, ecosystem search, and fidelity upgrade. Use when the user mentions "how to use Rotifer", "getting started", "tutorial", "beginner", "create gene", "make a", "init", "score is 0", "publish failed", "diagnose", "check", "find a gene", "recommend", "search", "upgrade", "Wrapped to Native", "fidelity", "evolve".
openclaw skills install @xiaoba-dev/rotifer-guideThis Skill handles intent recognition and workflow routing. Deep technical details are delegated to specialized Skills.
Before using this Skill, ensure the Rotifer CLI is available:
npx @rotifer/playground --version
If you prefer MCP integration instead of CLI, add this to your MCP config:
{
"mcpServers": {
"rotifer": {
"command": "npx",
"args": ["@rotifer/mcp-server"]
}
}
}
No version pinning needed — both packages resolve to the latest release automatically.
| User signal | Sub-capability | Action |
|---|---|---|
| How to / getting started / tutorial / beginner / what is a Gene | onboarding | Interactive walkthrough |
| Create / make a XX / new / init / I want a | scaffold | Natural-language scaffolding |
| Score is 0 / publish failed / something's wrong / why / diagnose / check | doctor | Diagnostics & repair |
| Any gene for / recommend / search / find one that does XX | explorer | Ecosystem search |
| Upgrade / Wrapped to Native / fidelity / evolve / rewrite | upgrade | Fidelity evolution |
When intent is unclear, list all five sub-capabilities and let the user choose.
| Skill | Relationship | When to route |
|---|---|---|
gene-dev/SKILL.md | Deep technical manual for scaffold / onboarding | User needs full development workflow details |
gene-migration/SKILL.md | Deep migration manual for upgrade | After user confirms migration plan |
rotifer-arena/SKILL.md | Comparison & evaluation entry | User wants to compare Genes / run Arena |
genome/SKILL.md | Gene composition | User wants to combine multiple Genes into an Agent |
cd rotifer-playground
node dist/index.js --version
node dist/index.js list
If not installed, guide: git clone → npm install → npm run build.
| Concept | One-liner | Analogy |
|---|---|---|
| Gene | Self-contained logic unit: express(input) → output | Function |
| Fidelity | Native > Hybrid > Wrapped — higher = more secure | Compiler optimization level |
| Arena | Genes compete for ranking via F(g) fitness score | Leaderboard |
| Domain | Two-level category like content.grammar | Namespace |
| phenotype.json | Gene metadata | package.json |
| R(g) / V(g) | Reputation score / Security score | Credit rating |
Walk the user through a Gene's complete lifecycle:
rotifer init hello-world --domain content.greeting --fidelity Wrapped
rotifer test hello-world
rotifer compile hello-world
rotifer arena submit hello-world
rotifer arena list --domain content.greeting
After each step, explain the output and confirm the user understands before proceeding.
Recommend based on user background:
rotifer wrap)gene-dev/SKILL.mdExtract from the user's natural-language description:
| Parameter | Extraction method | Default |
|---|---|---|
| name | Generate kebab-case from description | Must confirm |
| domain | Infer two-level domain from functionality | Must confirm |
| fidelity | Needs external API → Hybrid, pure computation → Native, quick prototype → Wrapped | Wrapped |
Present inferred results to the user, wait for confirmation before executing.
From scratch:
rotifer init <name> --domain <domain> --fidelity <fidelity>
From an existing SKILL.md:
rotifer scan --skills
rotifer wrap <name> --from-skill <path>
From ClawHub:
rotifer wrap <name> --from-clawhub <slug>
rotifer test <name>
rotifer compile <name>
After compilation passes, prompt: publish to Cloud (rotifer publish) or submit to Arena (rotifer arena submit).
For deeper development details (inputSchema design, express function implementation) → route to gene-dev/SKILL.md.
User reports a problem
|
+-- F(g) = 0 or abnormally low score
| +-- Does rotifer test <name> pass?
| | +-- Fails → Check if express() return value matches outputSchema
| | +-- Passes → Check if phenotype.json domain is reasonable
| +-- Are there competitors in the same domain?
| +-- Yes → Analyze competitor strengths, suggest optimizations
|
+-- Publish failed
| +-- Does rotifer compile <name> succeed?
| | +-- Fails → Check for syntax errors, missing dependencies
| | +-- Succeeds → Check network connection, Cloud credentials
| +-- Is phenotype.json format valid?
|
+-- Compilation failed
| +-- Check the exported express function signature in index.ts
| +-- Check inputSchema / outputSchema in phenotype.json
| +-- Check if fidelity declaration matches actual code
| +-- Declared Native but has fetch calls → Change to Hybrid or remove network calls
|
+-- Runtime error
+-- rotifer test <name> --verbose
+-- Check if input conforms to inputSchema
+-- Check if express() handles edge cases correctly
rotifer test <name>
rotifer list
rotifer arena list --domain <domain>
| Symptom | Root cause | Fix |
|---|---|---|
| F(g) = 0 | express() returns empty or format mismatch | Fix return value to match outputSchema |
| Compilation failed | TypeScript type error | Check express function signature |
| Publish timeout | Cloud credentials expired | Refresh Cloud credentials |
| Arena ranking dropped | Stronger competitor appeared in same domain | Optimize algorithm or upgrade fidelity |
| Fidelity mismatch | Native declared but has fetch calls | Remove network calls or change declaration to Hybrid |
Extract from user description: functionality keywords, target domain, fidelity preference.
rotifer arena list
rotifer arena list --domain <domain>
rotifer list
Display search results in a table:
| Field | Description |
|---|---|
| name | Gene name |
| domain | Category |
| fidelity | Native / Hybrid / Wrapped |
| F(g) | Fitness score |
| R(g) | Reputation score |
rotifer install <name>rotifer-arena/SKILL.md)rotifer list
Check the target Gene's phenotype.json — confirm current fidelity and express() implementation.
| Current | Target | Condition | Path |
|---|---|---|---|
| Wrapped | Native | Functionality can be implemented as pure computation | Rewrite express(), remove all external calls |
| Wrapped | Hybrid | Must call external APIs | Add WASM shell + allowedDomains whitelist |
| Hybrid | Native | Can internalize API dependencies | Replace API calls with local algorithms |
After confirming the migration plan, route to gene-migration/SKILL.md for the full migration workflow.
rotifer test <name>
rotifer compile <name>
rotifer arena submit <name>
Compare F(g) scores before and after migration to confirm ranking continuity.