@rotifer/playground 0.5.0-alpha.2 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +159 -15
- package/LICENSE +1 -1
- package/README.md +51 -23
- package/README.zh.md +54 -25
- package/dist/cloud/auth.d.ts +7 -1
- package/dist/cloud/auth.d.ts.map +1 -1
- package/dist/cloud/auth.js +65 -1
- package/dist/cloud/auth.js.map +1 -1
- package/dist/cloud/client.d.ts +4 -1
- package/dist/cloud/client.d.ts.map +1 -1
- package/dist/cloud/client.js +9 -2
- package/dist/cloud/client.js.map +1 -1
- package/dist/cloud/types.d.ts +3 -1
- package/dist/cloud/types.d.ts.map +1 -1
- package/dist/cloud/types.js.map +1 -1
- package/dist/commands/agent-create.d.ts.map +1 -1
- package/dist/commands/agent-create.js +66 -3
- package/dist/commands/agent-create.js.map +1 -1
- package/dist/commands/agent-run.d.ts.map +1 -1
- package/dist/commands/agent-run.js +296 -32
- package/dist/commands/agent-run.js.map +1 -1
- package/dist/commands/arena-submit.d.ts.map +1 -1
- package/dist/commands/arena-submit.js +45 -17
- package/dist/commands/arena-submit.js.map +1 -1
- package/dist/commands/compile.d.ts.map +1 -1
- package/dist/commands/compile.js +9 -3
- package/dist/commands/compile.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +13 -3
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/login.d.ts.map +1 -1
- package/dist/commands/login.js +23 -16
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/network.js +4 -4
- package/dist/commands/network.js.map +1 -1
- package/dist/commands/publish.d.ts.map +1 -1
- package/dist/commands/publish.js +162 -44
- package/dist/commands/publish.js.map +1 -1
- package/dist/commands/test.d.ts.map +1 -1
- package/dist/commands/test.js +209 -23
- package/dist/commands/test.js.map +1 -1
- package/dist/commands/wrap.d.ts.map +1 -1
- package/dist/commands/wrap.js +17 -1
- package/dist/commands/wrap.js.map +1 -1
- package/dist/index.js +0 -0
- package/dist/runtime/network-gateway.d.ts +53 -0
- package/dist/runtime/network-gateway.d.ts.map +1 -0
- package/dist/runtime/network-gateway.js +147 -0
- package/dist/runtime/network-gateway.js.map +1 -0
- package/dist/utils/binding.d.ts +25 -0
- package/dist/utils/binding.d.ts.map +1 -1
- package/dist/utils/binding.js.map +1 -1
- package/dist/utils/open-browser.d.ts +10 -0
- package/dist/utils/open-browser.d.ts.map +1 -0
- package/dist/utils/open-browser.js +23 -0
- package/dist/utils/open-browser.js.map +1 -0
- package/genes/academic-writer/.cloud-manifest.json +6 -0
- package/genes/academic-writer/.gene-manifest.json +8 -0
- package/genes/academic-writer/SKILL.md +274 -0
- package/genes/academic-writer/phenotype.json +28 -0
- package/genes/ai-components/.cloud-manifest.json +6 -0
- package/genes/ai-components/.gene-manifest.json +8 -0
- package/genes/ai-components/SKILL.md +381 -0
- package/genes/ai-components/phenotype.json +28 -0
- package/genes/algorithmic-art/.cloud-manifest.json +6 -0
- package/genes/algorithmic-art/.gene-manifest.json +8 -0
- package/genes/algorithmic-art/SKILL.md +405 -0
- package/genes/algorithmic-art/phenotype.json +28 -0
- package/genes/answer-synthesizer/.cloud-manifest.json +6 -0
- package/genes/answer-synthesizer/index.ts +194 -0
- package/genes/answer-synthesizer/phenotype.json +61 -0
- package/genes/api-designer/.cloud-manifest.json +6 -0
- package/genes/api-designer/.gene-manifest.json +8 -0
- package/genes/api-designer/SKILL.md +456 -0
- package/genes/api-designer/phenotype.json +28 -0
- package/genes/auto-coder/.cloud-manifest.json +6 -0
- package/genes/auto-coder/.gene-manifest.json +8 -0
- package/genes/auto-coder/SKILL.md +400 -0
- package/genes/auto-coder/phenotype.json +28 -0
- package/genes/auto-writer/.cloud-manifest.json +6 -0
- package/genes/auto-writer/.gene-manifest.json +8 -0
- package/genes/auto-writer/SKILL.md +361 -0
- package/genes/auto-writer/phenotype.json +28 -0
- package/genes/brand-personality/.cloud-manifest.json +6 -0
- package/genes/brand-personality/.gene-manifest.json +8 -0
- package/genes/brand-personality/SKILL.md +549 -0
- package/genes/brand-personality/phenotype.json +28 -0
- package/genes/business-writer/.cloud-manifest.json +6 -0
- package/genes/business-writer/.gene-manifest.json +8 -0
- package/genes/business-writer/SKILL.md +448 -0
- package/genes/business-writer/phenotype.json +28 -0
- package/genes/citation-manager/.cloud-manifest.json +6 -0
- package/genes/citation-manager/.gene-manifest.json +8 -0
- package/genes/citation-manager/SKILL.md +279 -0
- package/genes/citation-manager/index.ts +162 -0
- package/genes/citation-manager/package.json +1 -0
- package/genes/citation-manager/phenotype.json +50 -0
- package/genes/code-complexity/.cloud-manifest.json +6 -0
- package/genes/code-complexity/README.md +35 -0
- package/genes/code-complexity/index.ts +101 -0
- package/genes/code-complexity/phenotype.json +34 -0
- package/genes/copywriter/.cloud-manifest.json +6 -0
- package/genes/copywriter/.gene-manifest.json +8 -0
- package/genes/copywriter/SKILL.md +329 -0
- package/genes/copywriter/phenotype.json +28 -0
- package/genes/creative-writer/.cloud-manifest.json +6 -0
- package/genes/creative-writer/.gene-manifest.json +8 -0
- package/genes/creative-writer/SKILL.md +356 -0
- package/genes/creative-writer/phenotype.json +28 -0
- package/genes/data-modeler/.cloud-manifest.json +6 -0
- package/genes/data-modeler/.gene-manifest.json +8 -0
- package/genes/data-modeler/SKILL.md +486 -0
- package/genes/data-modeler/phenotype.json +28 -0
- package/genes/debugger/.cloud-manifest.json +6 -0
- package/genes/debugger/.gene-manifest.json +8 -0
- package/genes/debugger/SKILL.md +416 -0
- package/genes/debugger/phenotype.json +28 -0
- package/genes/design-tokens/.cloud-manifest.json +6 -0
- package/genes/design-tokens/.gene-manifest.json +8 -0
- package/genes/design-tokens/SKILL.md +222 -0
- package/genes/design-tokens/index.ts +128 -0
- package/genes/design-tokens/package.json +1 -0
- package/genes/design-tokens/phenotype.json +1 -0
- package/genes/devops-automator/.cloud-manifest.json +6 -0
- package/genes/devops-automator/.gene-manifest.json +8 -0
- package/genes/devops-automator/SKILL.md +490 -0
- package/genes/devops-automator/phenotype.json +28 -0
- package/genes/doc-coauthoring/.cloud-manifest.json +6 -0
- package/genes/doc-coauthoring/.gene-manifest.json +8 -0
- package/genes/doc-coauthoring/SKILL.md +375 -0
- package/genes/doc-coauthoring/phenotype.json +28 -0
- package/genes/doc-retrieval/.cloud-manifest.json +6 -0
- package/genes/doc-retrieval/index.ts +134 -0
- package/genes/doc-retrieval/phenotype.json +54 -0
- package/genes/docs-writer/.cloud-manifest.json +6 -0
- package/genes/docs-writer/.gene-manifest.json +8 -0
- package/genes/docs-writer/SKILL.md +492 -0
- package/genes/docs-writer/phenotype.json +28 -0
- package/genes/evolve-life/.cloud-manifest.json +6 -0
- package/genes/evolve-life/.compile-result.json +12 -0
- package/genes/evolve-life/README.md +52 -0
- package/genes/evolve-life/gene.ir.wasm +0 -0
- package/genes/evolve-life/gene.wasm +0 -0
- package/genes/evolve-life/index.ts +255 -0
- package/genes/evolve-life/phenotype.json +129 -0
- package/genes/evolve-life-bitwise/.cloud-manifest.json +6 -0
- package/genes/evolve-life-bitwise/.compile-result.json +12 -0
- package/genes/evolve-life-bitwise/gene.ir.wasm +0 -0
- package/genes/evolve-life-bitwise/gene.wasm +0 -0
- package/genes/evolve-life-bitwise/index.ts +273 -0
- package/genes/evolve-life-bitwise/phenotype.json +129 -0
- package/genes/evolve-life-sparse/.cloud-manifest.json +6 -0
- package/genes/evolve-life-sparse/.compile-result.json +12 -0
- package/genes/evolve-life-sparse/gene.ir.wasm +0 -0
- package/genes/evolve-life-sparse/gene.wasm +0 -0
- package/genes/evolve-life-sparse/index.ts +236 -0
- package/genes/evolve-life-sparse/phenotype.json +129 -0
- package/genes/fact-checker/.cloud-manifest.json +6 -0
- package/genes/fact-checker/.gene-manifest.json +8 -0
- package/genes/fact-checker/SKILL.md +373 -0
- package/genes/fact-checker/phenotype.json +28 -0
- package/genes/genesis-code-format/.cloud-manifest.json +6 -0
- package/genes/genesis-code-format/package.json +1 -0
- package/genes/genesis-code-format/phenotype.json +1 -0
- package/genes/genesis-file-read/.cloud-manifest.json +6 -0
- package/genes/genesis-file-read/index.ts +11 -1
- package/genes/genesis-file-read/package.json +1 -0
- package/genes/genesis-file-read/phenotype.json +1 -0
- package/genes/genesis-l0-constraint/.cloud-manifest.json +6 -0
- package/genes/genesis-l0-constraint/package.json +1 -0
- package/genes/genesis-l0-constraint/phenotype.json +1 -0
- package/genes/genesis-web-search/.cloud-manifest.json +2 -2
- package/genes/genesis-web-search/package.json +1 -0
- package/genes/genesis-web-search/phenotype.json +1 -0
- package/genes/genesis-web-search-lite/.cloud-manifest.json +6 -0
- package/genes/genesis-web-search-lite/package.json +1 -0
- package/genes/genesis-web-search-lite/phenotype.json +1 -0
- package/genes/git-workflow/.cloud-manifest.json +6 -0
- package/genes/git-workflow/.gene-manifest.json +8 -0
- package/genes/git-workflow/SKILL.md +407 -0
- package/genes/git-workflow/phenotype.json +28 -0
- package/genes/grammar-checker/.cloud-manifest.json +6 -0
- package/genes/grammar-checker/.gene-manifest.json +8 -0
- package/genes/grammar-checker/SKILL.md +194 -0
- package/genes/grammar-checker/index.ts +168 -0
- package/genes/grammar-checker/package.json +1 -0
- package/genes/grammar-checker/phenotype.json +52 -0
- package/genes/json-validator/.cloud-manifest.json +6 -0
- package/genes/json-validator/README.md +42 -0
- package/genes/json-validator/index.ts +112 -0
- package/genes/json-validator/phenotype.json +42 -0
- package/genes/license-advisor/.cloud-manifest.json +6 -0
- package/genes/license-advisor/.gene-manifest.json +8 -0
- package/genes/license-advisor/SKILL.md +117 -0
- package/genes/license-advisor/phenotype.json +28 -0
- package/genes/logic-architect/.cloud-manifest.json +6 -0
- package/genes/logic-architect/.gene-manifest.json +8 -0
- package/genes/logic-architect/SKILL.md +451 -0
- package/genes/logic-architect/phenotype.json +28 -0
- package/genes/markdown-formatter/.cloud-manifest.json +6 -0
- package/genes/markdown-formatter/README.md +34 -0
- package/genes/markdown-formatter/index.ts +86 -0
- package/genes/markdown-formatter/phenotype.json +32 -0
- package/genes/orch/.cloud-manifest.json +6 -0
- package/genes/orch/.gene-manifest.json +8 -0
- package/genes/orch/SKILL.md +504 -0
- package/genes/orch/phenotype.json +28 -0
- package/genes/particle-barneshut/.cloud-manifest.json +6 -0
- package/genes/particle-barneshut/.compile-result.json +12 -0
- package/genes/particle-barneshut/README.md +55 -0
- package/genes/particle-barneshut/gene.ir.wasm +0 -0
- package/genes/particle-barneshut/gene.wasm +0 -0
- package/genes/particle-barneshut/index.ts +486 -0
- package/genes/particle-barneshut/phenotype.json +137 -0
- package/genes/particle-brute/.cloud-manifest.json +6 -0
- package/genes/particle-brute/.compile-result.json +12 -0
- package/genes/particle-brute/README.md +55 -0
- package/genes/particle-brute/gene.ir.wasm +0 -0
- package/genes/particle-brute/gene.wasm +0 -0
- package/genes/particle-brute/index.ts +277 -0
- package/genes/particle-brute/phenotype.json +137 -0
- package/genes/particle-spatial/.cloud-manifest.json +6 -0
- package/genes/particle-spatial/.compile-result.json +12 -0
- package/genes/particle-spatial/README.md +53 -0
- package/genes/particle-spatial/gene.ir.wasm +0 -0
- package/genes/particle-spatial/gene.wasm +0 -0
- package/genes/particle-spatial/index.ts +352 -0
- package/genes/particle-spatial/phenotype.json +137 -0
- package/genes/performance-optimizer/.cloud-manifest.json +6 -0
- package/genes/performance-optimizer/.gene-manifest.json +8 -0
- package/genes/performance-optimizer/SKILL.md +480 -0
- package/genes/performance-optimizer/phenotype.json +28 -0
- package/genes/plagiarism-checker/.cloud-manifest.json +6 -0
- package/genes/plagiarism-checker/.gene-manifest.json +8 -0
- package/genes/plagiarism-checker/SKILL.md +342 -0
- package/genes/plagiarism-checker/phenotype.json +28 -0
- package/genes/product-manager/.cloud-manifest.json +6 -0
- package/genes/product-manager/.gene-manifest.json +8 -0
- package/genes/product-manager/SKILL.md +249 -0
- package/genes/product-manager/phenotype.json +28 -0
- package/genes/project-reviewer/.cloud-manifest.json +6 -0
- package/genes/project-reviewer/.gene-manifest.json +8 -0
- package/genes/project-reviewer/SKILL.md +312 -0
- package/genes/project-reviewer/phenotype.json +28 -0
- package/genes/prompt-engineer/.cloud-manifest.json +6 -0
- package/genes/prompt-engineer/.gene-manifest.json +8 -0
- package/genes/prompt-engineer/SKILL.md +411 -0
- package/genes/prompt-engineer/phenotype.json +28 -0
- package/genes/readability-analyzer/.cloud-manifest.json +6 -0
- package/genes/readability-analyzer/.gene-manifest.json +8 -0
- package/genes/readability-analyzer/SKILL.md +357 -0
- package/genes/readability-analyzer/index.ts +123 -0
- package/genes/readability-analyzer/package.json +1 -0
- package/genes/readability-analyzer/phenotype.json +35 -0
- package/genes/rotifer-protocol/SKILL.md +121 -0
- package/genes/security-auditor/.cloud-manifest.json +6 -0
- package/genes/security-auditor/.gene-manifest.json +8 -0
- package/genes/security-auditor/SKILL.md +494 -0
- package/genes/security-auditor/phenotype.json +28 -0
- package/genes/seo-optimizer/.cloud-manifest.json +6 -0
- package/genes/seo-optimizer/.gene-manifest.json +8 -0
- package/genes/seo-optimizer/SKILL.md +327 -0
- package/genes/seo-optimizer/index.ts +206 -0
- package/genes/seo-optimizer/package.json +1 -0
- package/genes/seo-optimizer/phenotype.json +1 -0
- package/genes/source-linker/.cloud-manifest.json +6 -0
- package/genes/source-linker/index.ts +88 -0
- package/genes/source-linker/phenotype.json +45 -0
- package/genes/style-optimizer/.cloud-manifest.json +6 -0
- package/genes/style-optimizer/.gene-manifest.json +8 -0
- package/genes/style-optimizer/SKILL.md +285 -0
- package/genes/style-optimizer/phenotype.json +28 -0
- package/genes/tech-lead/.cloud-manifest.json +6 -0
- package/genes/tech-lead/.gene-manifest.json +8 -0
- package/genes/tech-lead/SKILL.md +451 -0
- package/genes/tech-lead/phenotype.json +28 -0
- package/genes/test-wrap/.cloud-manifest.json +6 -0
- package/genes/test-wrap/.gene-manifest.json +8 -0
- package/genes/test-wrap/phenotype.json +28 -0
- package/genes/testing-strategist/.cloud-manifest.json +6 -0
- package/genes/testing-strategist/.gene-manifest.json +8 -0
- package/genes/testing-strategist/SKILL.md +500 -0
- package/genes/testing-strategist/phenotype.json +28 -0
- package/genes/text-summarizer/.cloud-manifest.json +6 -0
- package/genes/text-summarizer/README.md +34 -0
- package/genes/text-summarizer/index.ts +122 -0
- package/genes/text-summarizer/phenotype.json +32 -0
- package/genes/tone-analyzer/.cloud-manifest.json +6 -0
- package/genes/tone-analyzer/.gene-manifest.json +8 -0
- package/genes/tone-analyzer/SKILL.md +410 -0
- package/genes/tone-analyzer/phenotype.json +28 -0
- package/genes/translator/.cloud-manifest.json +6 -0
- package/genes/translator/.gene-manifest.json +8 -0
- package/genes/translator/SKILL.md +355 -0
- package/genes/translator/phenotype.json +28 -0
- package/genes/ui-components/.cloud-manifest.json +6 -0
- package/genes/ui-components/.gene-manifest.json +8 -0
- package/genes/ui-components/SKILL.md +467 -0
- package/genes/ui-components/phenotype.json +28 -0
- package/genes/uiux-designer/.cloud-manifest.json +6 -0
- package/genes/uiux-designer/.gene-manifest.json +8 -0
- package/genes/uiux-designer/SKILL.md +353 -0
- package/genes/uiux-designer/phenotype.json +28 -0
- package/genes/url-extractor/.cloud-manifest.json +6 -0
- package/genes/url-extractor/README.md +37 -0
- package/genes/url-extractor/index.ts +86 -0
- package/genes/url-extractor/phenotype.json +48 -0
- package/genes/ux-patterns/.cloud-manifest.json +6 -0
- package/genes/ux-patterns/.gene-manifest.json +8 -0
- package/genes/ux-patterns/SKILL.md +872 -0
- package/genes/ux-patterns/phenotype.json +28 -0
- package/genes/web3-components/.cloud-manifest.json +6 -0
- package/genes/web3-components/.gene-manifest.json +8 -0
- package/genes/web3-components/SKILL.md +390 -0
- package/genes/web3-components/phenotype.json +28 -0
- package/package.json +6 -5
|
@@ -0,0 +1,357 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: readability-analyzer
|
|
3
|
+
description: Analyze and improve content readability. Evaluate sentence complexity, word choice, and overall accessibility. Use when ensuring content is appropriate for target audience reading level.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Readability Analyzer
|
|
7
|
+
|
|
8
|
+
**Goal**: Analyze and improve content readability, ensuring text is easy to understand for the target audience.
|
|
9
|
+
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
## 1. Readability Metrics
|
|
13
|
+
|
|
14
|
+
### Flesch Reading Ease
|
|
15
|
+
|
|
16
|
+
```markdown
|
|
17
|
+
## Formula
|
|
18
|
+
|
|
19
|
+
FRE = 206.835 - 1.015 × (total words / total sentences) - 84.6 × (total syllables / total words)
|
|
20
|
+
|
|
21
|
+
## Score Interpretation
|
|
22
|
+
|
|
23
|
+
| Score | Difficulty | Grade Level | Example |
|
|
24
|
+
|-------|-----------|-------------|---------|
|
|
25
|
+
| 90-100 | Very easy | 5th grade | Children's books |
|
|
26
|
+
| 80-90 | Easy | 6th grade | Conversational |
|
|
27
|
+
| 70-80 | Fairly easy | 7th grade | Popular media |
|
|
28
|
+
| 60-70 | Standard | 8th-9th grade | Newspapers |
|
|
29
|
+
| 50-60 | Fairly difficult | 10th-12th grade | Academic |
|
|
30
|
+
| 30-50 | Difficult | College | Professional literature |
|
|
31
|
+
| 0-30 | Very difficult | Graduate+ | Legal documents |
|
|
32
|
+
|
|
33
|
+
## Target Scores
|
|
34
|
+
|
|
35
|
+
- General audience: 60-70
|
|
36
|
+
- Business documents: 50-60
|
|
37
|
+
- Academic papers: 30-50
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
### Flesch-Kincaid Grade Level
|
|
41
|
+
|
|
42
|
+
```markdown
|
|
43
|
+
## Formula
|
|
44
|
+
|
|
45
|
+
FKGL = 0.39 × (total words / total sentences) + 11.8 × (total syllables / total words) - 15.59
|
|
46
|
+
|
|
47
|
+
## Interpretation
|
|
48
|
+
|
|
49
|
+
The result represents the US grade level required to read the text.
|
|
50
|
+
Example: FKGL = 8.0 means 8th grade reading ability is needed.
|
|
51
|
+
|
|
52
|
+
## Recommendations
|
|
53
|
+
|
|
54
|
+
- General audience: Grade 6-8
|
|
55
|
+
- Professional content: Grade 10-12
|
|
56
|
+
- Academic articles: Grade 12+
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
61
|
+
## 2. Assessment Methods
|
|
62
|
+
|
|
63
|
+
### Automated Analysis Tools
|
|
64
|
+
|
|
65
|
+
```markdown
|
|
66
|
+
## English Tools
|
|
67
|
+
|
|
68
|
+
| Tool | Features | Link |
|
|
69
|
+
|------|----------|------|
|
|
70
|
+
| Hemingway Editor | Simplicity analysis | hemingwayapp.com |
|
|
71
|
+
| Grammarly | Comprehensive analysis | grammarly.com |
|
|
72
|
+
| Readable | Detailed reports | readable.com |
|
|
73
|
+
| Yoast SEO | WordPress plugin | |
|
|
74
|
+
|
|
75
|
+
## Manual Assessment
|
|
76
|
+
|
|
77
|
+
1. Calculate average sentence length
|
|
78
|
+
2. Count technical terms
|
|
79
|
+
3. Evaluate structural clarity
|
|
80
|
+
4. Have target readers review the text
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
### Assessment Report Template
|
|
84
|
+
|
|
85
|
+
```markdown
|
|
86
|
+
## Readability Analysis Report
|
|
87
|
+
|
|
88
|
+
### Basic Statistics
|
|
89
|
+
- Total word count:
|
|
90
|
+
- Total sentence count:
|
|
91
|
+
- Total paragraph count:
|
|
92
|
+
- Average sentence length:
|
|
93
|
+
- Average paragraph length:
|
|
94
|
+
|
|
95
|
+
### Metric Scores
|
|
96
|
+
- Flesch Reading Ease: /100
|
|
97
|
+
- Estimated grade level:
|
|
98
|
+
- Reading time: approx. X minutes
|
|
99
|
+
|
|
100
|
+
### Issues Found
|
|
101
|
+
- Overly long sentences: X instances
|
|
102
|
+
- Complex vocabulary: X words
|
|
103
|
+
- Passive voice: X instances
|
|
104
|
+
- Long paragraphs: X instances
|
|
105
|
+
|
|
106
|
+
### Recommendations
|
|
107
|
+
1.
|
|
108
|
+
2.
|
|
109
|
+
3.
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
---
|
|
113
|
+
|
|
114
|
+
## 3. Optimization Strategies
|
|
115
|
+
|
|
116
|
+
### Sentence Optimization
|
|
117
|
+
|
|
118
|
+
```markdown
|
|
119
|
+
## Break Up Long Sentences
|
|
120
|
+
|
|
121
|
+
Before: Due to the rapid development of artificial intelligence technology in recent years, particularly the breakthrough progress in deep learning and natural language processing, machines have become increasingly capable of accurately understanding and generating human language, which has had a profound impact on traditional industries such as translation, customer service, and content creation.
|
|
122
|
+
|
|
123
|
+
After: Artificial intelligence has developed rapidly in recent years. Deep learning and NLP have achieved breakthrough progress. Machines can now understand and generate human language with increasing accuracy. This has profoundly impacted translation, customer service, and content creation.
|
|
124
|
+
|
|
125
|
+
## Principles
|
|
126
|
+
|
|
127
|
+
- One idea per sentence
|
|
128
|
+
- Aim for 15-20 words per sentence in English
|
|
129
|
+
- Use short sentences for rhythm variation
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
### Vocabulary Simplification
|
|
133
|
+
|
|
134
|
+
```markdown
|
|
135
|
+
## Replace Complex Words
|
|
136
|
+
|
|
137
|
+
| Complex | Simple |
|
|
138
|
+
|---------|--------|
|
|
139
|
+
| utilize | use |
|
|
140
|
+
| implement | do / carry out |
|
|
141
|
+
| commence | start / begin |
|
|
142
|
+
| facilitate | help |
|
|
143
|
+
| demonstrate | show |
|
|
144
|
+
|
|
145
|
+
## Explain Technical Terms
|
|
146
|
+
|
|
147
|
+
Bad: The system uses a RAG architecture.
|
|
148
|
+
|
|
149
|
+
Good: The system uses Retrieval-Augmented Generation (RAG) — it first retrieves relevant information, then generates answers based on those results.
|
|
150
|
+
|
|
151
|
+
## Avoid Jargon Overload
|
|
152
|
+
|
|
153
|
+
Bad: Leverage AI-powered SaaS platform for B2B digital transformation...
|
|
154
|
+
|
|
155
|
+
Good: Use intelligent online software to help businesses go digital...
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
### Structure Optimization
|
|
159
|
+
|
|
160
|
+
```markdown
|
|
161
|
+
## Use Subheadings
|
|
162
|
+
|
|
163
|
+
Bad: Large blocks of plain text
|
|
164
|
+
|
|
165
|
+
Good:
|
|
166
|
+
### Problem Background
|
|
167
|
+
[Short paragraph]
|
|
168
|
+
|
|
169
|
+
### Solution
|
|
170
|
+
[Short paragraph]
|
|
171
|
+
|
|
172
|
+
### Implementation Steps
|
|
173
|
+
[List]
|
|
174
|
+
|
|
175
|
+
## Use Lists
|
|
176
|
+
|
|
177
|
+
Bad: We need to consider cost, time, quality, and risk factors.
|
|
178
|
+
|
|
179
|
+
Good: Consider the following factors:
|
|
180
|
+
- Cost
|
|
181
|
+
- Time
|
|
182
|
+
- Quality
|
|
183
|
+
- Risk
|
|
184
|
+
|
|
185
|
+
## Use Transition Words
|
|
186
|
+
|
|
187
|
+
First... Next... Finally...
|
|
188
|
+
Therefore... However... Additionally...
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
---
|
|
192
|
+
|
|
193
|
+
## 4. Audience Adaptation
|
|
194
|
+
|
|
195
|
+
### Adjust by Audience
|
|
196
|
+
|
|
197
|
+
```markdown
|
|
198
|
+
## General Public
|
|
199
|
+
|
|
200
|
+
- Sentence length: < 20 words
|
|
201
|
+
- Technical terms: minimal
|
|
202
|
+
- Structure: simple and direct
|
|
203
|
+
- Examples: use frequently
|
|
204
|
+
|
|
205
|
+
## Professionals
|
|
206
|
+
|
|
207
|
+
- Sentence length: moderate
|
|
208
|
+
- Technical terms: industry standard
|
|
209
|
+
- Structure: logical and rigorous
|
|
210
|
+
- Examples: precise
|
|
211
|
+
|
|
212
|
+
## Academic Readers
|
|
213
|
+
|
|
214
|
+
- Sentence length: can be longer
|
|
215
|
+
- Technical terms: specialized and formal
|
|
216
|
+
- Structure: well-argued
|
|
217
|
+
- Citations: complete and proper
|
|
218
|
+
```
|
|
219
|
+
|
|
220
|
+
### Genre Adaptation
|
|
221
|
+
|
|
222
|
+
```markdown
|
|
223
|
+
## News/Media
|
|
224
|
+
- Flesch: 60-70
|
|
225
|
+
- Sentence length: 15-20 words
|
|
226
|
+
- Style: concise and objective
|
|
227
|
+
|
|
228
|
+
## Business Documents
|
|
229
|
+
- Flesch: 50-60
|
|
230
|
+
- Sentence length: 18-22 words
|
|
231
|
+
- Style: professional and clear
|
|
232
|
+
|
|
233
|
+
## Technical Documentation
|
|
234
|
+
- Flesch: 40-50
|
|
235
|
+
- Sentence length: 20-25 words
|
|
236
|
+
- Style: accurate and detailed
|
|
237
|
+
|
|
238
|
+
## Academic Papers
|
|
239
|
+
- Flesch: 30-40
|
|
240
|
+
- Sentence length: 25-30 words
|
|
241
|
+
- Style: rigorous and formal
|
|
242
|
+
```
|
|
243
|
+
|
|
244
|
+
---
|
|
245
|
+
|
|
246
|
+
## 5. Visual Readability
|
|
247
|
+
|
|
248
|
+
### Typography Recommendations
|
|
249
|
+
|
|
250
|
+
```markdown
|
|
251
|
+
## Line Length
|
|
252
|
+
|
|
253
|
+
- Optimal: 45-75 characters per line
|
|
254
|
+
- Too long causes reading fatigue
|
|
255
|
+
|
|
256
|
+
## Line Height
|
|
257
|
+
|
|
258
|
+
- Recommended: 1.5-2x line spacing
|
|
259
|
+
- Body text: 1.5x
|
|
260
|
+
- Headings: 1.2x
|
|
261
|
+
|
|
262
|
+
## Paragraph Spacing
|
|
263
|
+
|
|
264
|
+
- Leave one blank line between paragraphs
|
|
265
|
+
- More space before subheadings
|
|
266
|
+
|
|
267
|
+
## Font
|
|
268
|
+
|
|
269
|
+
- Body: sans-serif font
|
|
270
|
+
- Size: 14-16px
|
|
271
|
+
- Contrast: sufficient clarity
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
### Formatting Elements
|
|
275
|
+
|
|
276
|
+
```markdown
|
|
277
|
+
## Effective Use
|
|
278
|
+
|
|
279
|
+
- Bullet lists
|
|
280
|
+
- Numbered steps
|
|
281
|
+
- Comparison tables
|
|
282
|
+
- Code blocks
|
|
283
|
+
- Blockquotes
|
|
284
|
+
- Selective bold text
|
|
285
|
+
|
|
286
|
+
## Avoid
|
|
287
|
+
|
|
288
|
+
- Bold everywhere
|
|
289
|
+
- Too many colors
|
|
290
|
+
- Mixed fonts
|
|
291
|
+
- Lack of whitespace
|
|
292
|
+
```
|
|
293
|
+
|
|
294
|
+
---
|
|
295
|
+
|
|
296
|
+
## 6. Checklist
|
|
297
|
+
|
|
298
|
+
```markdown
|
|
299
|
+
## Readability Checklist
|
|
300
|
+
|
|
301
|
+
### Sentence Level
|
|
302
|
+
- [ ] Average sentence length is moderate
|
|
303
|
+
- [ ] No overly long sentences (>40 words)
|
|
304
|
+
- [ ] Varied sentence structures
|
|
305
|
+
- [ ] Clear logic
|
|
306
|
+
|
|
307
|
+
### Vocabulary Level
|
|
308
|
+
- [ ] Technical terms are explained
|
|
309
|
+
- [ ] Word choice is concise
|
|
310
|
+
- [ ] No obscure expressions
|
|
311
|
+
- [ ] Vocabulary suits the audience
|
|
312
|
+
|
|
313
|
+
### Structure Level
|
|
314
|
+
- [ ] Subheadings used
|
|
315
|
+
- [ ] Paragraph length is moderate
|
|
316
|
+
- [ ] Logical hierarchy is clear
|
|
317
|
+
- [ ] Transitions connect ideas
|
|
318
|
+
|
|
319
|
+
### Visual Level
|
|
320
|
+
- [ ] Clean layout
|
|
321
|
+
- [ ] Sufficient whitespace
|
|
322
|
+
- [ ] Consistent formatting
|
|
323
|
+
- [ ] Lists and tables used where appropriate
|
|
324
|
+
```
|
|
325
|
+
|
|
326
|
+
---
|
|
327
|
+
|
|
328
|
+
## Quick Reference
|
|
329
|
+
|
|
330
|
+
### Readability Quick Check
|
|
331
|
+
|
|
332
|
+
```markdown
|
|
333
|
+
1. Sentence > 40 words? → Split it
|
|
334
|
+
2. Paragraph > 5 sentences? → Break it up
|
|
335
|
+
3. Unexplained jargon? → Add explanation
|
|
336
|
+
4. Long text wall? → Add subheadings
|
|
337
|
+
5. Can content be listed? → Convert to list
|
|
338
|
+
```
|
|
339
|
+
|
|
340
|
+
### Target Scores by Context
|
|
341
|
+
|
|
342
|
+
| Context | Flesch Score | Avg Sentence Length |
|
|
343
|
+
|---------|-------------|---------------------|
|
|
344
|
+
| Social media | 70-80 | 10-15 words |
|
|
345
|
+
| Blog posts | 60-70 | 15-20 words |
|
|
346
|
+
| Business emails | 55-65 | 18-22 words |
|
|
347
|
+
| Technical docs | 45-55 | 20-25 words |
|
|
348
|
+
| Academic papers | 30-45 | 25-30 words |
|
|
349
|
+
|
|
350
|
+
### Reading Time Estimation
|
|
351
|
+
|
|
352
|
+
```markdown
|
|
353
|
+
English: approx. 200-250 words/minute
|
|
354
|
+
|
|
355
|
+
Formula:
|
|
356
|
+
Reading time = Total words / Reading speed
|
|
357
|
+
```
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
interface ReadabilityInput {
|
|
2
|
+
text: string;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
interface ReadabilityOutput {
|
|
6
|
+
fleschKincaid: number;
|
|
7
|
+
gradeLevel: number;
|
|
8
|
+
avgSentenceLength: number;
|
|
9
|
+
avgSyllablesPerWord: number;
|
|
10
|
+
wordCount: number;
|
|
11
|
+
sentenceCount: number;
|
|
12
|
+
complexWordRatio: number;
|
|
13
|
+
verdict: string;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
function countSyllables(word: string): number {
|
|
17
|
+
word = word.toLowerCase().replace(/[^a-z]/g, "");
|
|
18
|
+
if (word.length <= 2) return 1;
|
|
19
|
+
|
|
20
|
+
const vowelGroups = word.match(/[aeiouy]+/g);
|
|
21
|
+
let count = vowelGroups ? vowelGroups.length : 1;
|
|
22
|
+
|
|
23
|
+
if (word.endsWith("e") && !word.endsWith("le") && count > 1) count--;
|
|
24
|
+
if (word.endsWith("ed") && count > 1) count--;
|
|
25
|
+
if (word.endsWith("es") && !word.endsWith("ses") && !word.endsWith("zes") && count > 1) count--;
|
|
26
|
+
|
|
27
|
+
return Math.max(count, 1);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
function splitSentences(text: string): string[] {
|
|
31
|
+
return text
|
|
32
|
+
.split(/[.!?]+/)
|
|
33
|
+
.map((s) => s.trim())
|
|
34
|
+
.filter((s) => s.length > 0);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
function splitWords(text: string): string[] {
|
|
38
|
+
return text
|
|
39
|
+
.split(/\s+/)
|
|
40
|
+
.map((w) => w.replace(/[^a-zA-Z'-]/g, ""))
|
|
41
|
+
.filter((w) => w.length > 0);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
function getVerdict(score: number): string {
|
|
45
|
+
if (score >= 90) return "Very easy to read (5th grade)";
|
|
46
|
+
if (score >= 80) return "Easy to read (6th grade)";
|
|
47
|
+
if (score >= 70) return "Fairly easy to read (7th grade)";
|
|
48
|
+
if (score >= 60) return "Standard (8th-9th grade)";
|
|
49
|
+
if (score >= 50) return "Fairly difficult (10th-12th grade)";
|
|
50
|
+
if (score >= 30) return "Difficult (college level)";
|
|
51
|
+
return "Very difficult (graduate level)";
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
/**
|
|
55
|
+
* Readability Analyzer Gene
|
|
56
|
+
*
|
|
57
|
+
* Computes Flesch-Kincaid readability metrics for English text.
|
|
58
|
+
* Pure algorithmic implementation with no external dependencies.
|
|
59
|
+
*/
|
|
60
|
+
export async function express(input: ReadabilityInput): Promise<ReadabilityOutput> {
|
|
61
|
+
const text = (input.text || "").trim();
|
|
62
|
+
if (!text) {
|
|
63
|
+
return {
|
|
64
|
+
fleschKincaid: 0,
|
|
65
|
+
gradeLevel: 0,
|
|
66
|
+
avgSentenceLength: 0,
|
|
67
|
+
avgSyllablesPerWord: 0,
|
|
68
|
+
wordCount: 0,
|
|
69
|
+
sentenceCount: 0,
|
|
70
|
+
complexWordRatio: 0,
|
|
71
|
+
verdict: "No text provided",
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
const sentences = splitSentences(text);
|
|
76
|
+
const words = splitWords(text);
|
|
77
|
+
const sentenceCount = Math.max(sentences.length, 1);
|
|
78
|
+
const wordCount = words.length;
|
|
79
|
+
|
|
80
|
+
if (wordCount === 0) {
|
|
81
|
+
return {
|
|
82
|
+
fleschKincaid: 0,
|
|
83
|
+
gradeLevel: 0,
|
|
84
|
+
avgSentenceLength: 0,
|
|
85
|
+
avgSyllablesPerWord: 0,
|
|
86
|
+
wordCount: 0,
|
|
87
|
+
sentenceCount: 0,
|
|
88
|
+
complexWordRatio: 0,
|
|
89
|
+
verdict: "No words found",
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
const syllableCounts = words.map(countSyllables);
|
|
94
|
+
const totalSyllables = syllableCounts.reduce((a, b) => a + b, 0);
|
|
95
|
+
const complexWords = syllableCounts.filter((s) => s >= 3).length;
|
|
96
|
+
|
|
97
|
+
const avgSentenceLength = wordCount / sentenceCount;
|
|
98
|
+
const avgSyllablesPerWord = totalSyllables / wordCount;
|
|
99
|
+
const complexWordRatio = complexWords / wordCount;
|
|
100
|
+
|
|
101
|
+
// Flesch-Kincaid Reading Ease: 206.835 - 1.015*(words/sentences) - 84.6*(syllables/words)
|
|
102
|
+
const fleschKincaid = Math.max(
|
|
103
|
+
0,
|
|
104
|
+
Math.min(100, 206.835 - 1.015 * avgSentenceLength - 84.6 * avgSyllablesPerWord)
|
|
105
|
+
);
|
|
106
|
+
|
|
107
|
+
// Flesch-Kincaid Grade Level: 0.39*(words/sentences) + 11.8*(syllables/words) - 15.59
|
|
108
|
+
const gradeLevel = Math.max(
|
|
109
|
+
0,
|
|
110
|
+
0.39 * avgSentenceLength + 11.8 * avgSyllablesPerWord - 15.59
|
|
111
|
+
);
|
|
112
|
+
|
|
113
|
+
return {
|
|
114
|
+
fleschKincaid: Math.round(fleschKincaid * 100) / 100,
|
|
115
|
+
gradeLevel: Math.round(gradeLevel * 10) / 10,
|
|
116
|
+
avgSentenceLength: Math.round(avgSentenceLength * 10) / 10,
|
|
117
|
+
avgSyllablesPerWord: Math.round(avgSyllablesPerWord * 100) / 100,
|
|
118
|
+
wordCount,
|
|
119
|
+
sentenceCount,
|
|
120
|
+
complexWordRatio: Math.round(complexWordRatio * 1000) / 1000,
|
|
121
|
+
verdict: getVerdict(fleschKincaid),
|
|
122
|
+
};
|
|
123
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"type":"module"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
{
|
|
2
|
+
"domain": "content.readability",
|
|
3
|
+
"description": "Analyze and improve content readability. Evaluate sentence complexity, word choice, and overall accessibility. Use when ensuring content is appropriate for target audience reading level.",
|
|
4
|
+
"inputSchema": {
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"text": {
|
|
8
|
+
"type": "string",
|
|
9
|
+
"description": "English text to analyze for readability"
|
|
10
|
+
}
|
|
11
|
+
},
|
|
12
|
+
"required": ["text"]
|
|
13
|
+
},
|
|
14
|
+
"outputSchema": {
|
|
15
|
+
"type": "object",
|
|
16
|
+
"properties": {
|
|
17
|
+
"fleschKincaid": { "type": "number", "description": "Flesch-Kincaid reading ease score (0-100)" },
|
|
18
|
+
"gradeLevel": { "type": "number", "description": "US grade level" },
|
|
19
|
+
"avgSentenceLength": { "type": "number", "description": "Average words per sentence" },
|
|
20
|
+
"avgSyllablesPerWord": { "type": "number", "description": "Average syllables per word" },
|
|
21
|
+
"wordCount": { "type": "number", "description": "Total word count" },
|
|
22
|
+
"sentenceCount": { "type": "number", "description": "Total sentence count" },
|
|
23
|
+
"complexWordRatio": { "type": "number", "description": "Ratio of words with 3+ syllables" },
|
|
24
|
+
"verdict": { "type": "string", "description": "Readability verdict (e.g. Easy to read, College level)" }
|
|
25
|
+
},
|
|
26
|
+
"required": ["fleschKincaid", "gradeLevel", "avgSentenceLength", "avgSyllablesPerWord", "wordCount", "sentenceCount", "complexWordRatio", "verdict"]
|
|
27
|
+
},
|
|
28
|
+
"dependencies": [],
|
|
29
|
+
"version": "0.2.0",
|
|
30
|
+
"author": "rotifer-team",
|
|
31
|
+
"createdAt": 1771939401147,
|
|
32
|
+
"fidelity": "Native",
|
|
33
|
+
"transparency": "Open",
|
|
34
|
+
"source": "skill"
|
|
35
|
+
}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: skill-to-gene
|
|
3
|
+
description: Turn your static AI skills into evolving Genes that compete, improve, and self-select in a live Arena. Use when the user wants smarter skills, self-improving agents, or mentions evolution, fitness, arena, gene, or rotifer.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Skill-to-Gene
|
|
7
|
+
|
|
8
|
+
Your skills are static. Genes evolve.
|
|
9
|
+
|
|
10
|
+
**Rotifer Protocol** upgrades AI agent capabilities from fixed skill files into **Genes** — executable units that compete in an Arena, rank by fitness, and get replaced when a better one appears. No manual maintenance. No stale tools.
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## Why upgrade from Skills to Genes?
|
|
15
|
+
|
|
16
|
+
| | Skill | Gene |
|
|
17
|
+
|---|---|---|
|
|
18
|
+
| **Updates** | Manual — you edit, you push | Autonomous — Genes mutate and compete |
|
|
19
|
+
| **Quality** | Trust the author | Proven in Arena — fitness-ranked |
|
|
20
|
+
| **Redundancy** | Multiple skills doing the same thing | Arena selects the best, eliminates the rest |
|
|
21
|
+
| **Safety** | Hope for the best | L0 immutable constraint layer — cannot be bypassed |
|
|
22
|
+
| **Composition** | Copy-paste between skills | Algebraic: Seq / Par / Cond / Try operators |
|
|
23
|
+
| **Isolation** | Runs in your process | WASM sandbox — zero trust execution |
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## Get started (30 seconds)
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
npm install -g @rotifer/playground
|
|
31
|
+
rotifer init my-project && cd my-project
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
You'll see a live Arena with 5 Genesis Genes ranked by fitness. No configuration needed.
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## Convert any function into a Gene
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
rotifer scan genes/ # Find candidate functions
|
|
42
|
+
rotifer wrap my-function # Wrap as a Gene
|
|
43
|
+
rotifer test my-function # Validate in WASM sandbox
|
|
44
|
+
rotifer arena submit my-function # Submit to Arena — let it compete
|
|
45
|
+
rotifer arena list # Watch the rankings
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## Write a Gene in TypeScript
|
|
51
|
+
|
|
52
|
+
```typescript
|
|
53
|
+
// genes/my-search/index.ts
|
|
54
|
+
export function express(input: { query: string }) {
|
|
55
|
+
return { results: [`Found: ${input.query}`], total: 1 };
|
|
56
|
+
}
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
```bash
|
|
60
|
+
rotifer wrap my-search --domain search
|
|
61
|
+
rotifer compile my-search # TS → WASM automatically
|
|
62
|
+
rotifer arena submit my-search # Compete against existing search Genes
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
67
|
+
## Browse & install community Genes
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
rotifer search "code format" # Find Genes on Cloud
|
|
71
|
+
rotifer install <gene-id> # Install to your project
|
|
72
|
+
rotifer arena list # See how it ranks locally
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
Browse: [rotifer.dev/genes](https://rotifer.dev/genes/)
|
|
76
|
+
|
|
77
|
+
---
|
|
78
|
+
|
|
79
|
+
## Compose Genes into Agents
|
|
80
|
+
|
|
81
|
+
```bash
|
|
82
|
+
rotifer agent create search-bot --genes web-search formatter --composition Seq
|
|
83
|
+
rotifer agent create resilient --genes primary backup --composition Try
|
|
84
|
+
rotifer agent run search-bot --input '{"query":"hello"}'
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
| Operator | What it does |
|
|
88
|
+
|----------|-------------|
|
|
89
|
+
| **Seq** | Pipeline: A → B → C |
|
|
90
|
+
| **Par** | Parallel: run all, merge results |
|
|
91
|
+
| **Cond** | Branch: pick Gene based on input |
|
|
92
|
+
| **Try** | Fallback: primary with recovery |
|
|
93
|
+
|
|
94
|
+
---
|
|
95
|
+
|
|
96
|
+
## Full CLI
|
|
97
|
+
|
|
98
|
+
| Command | Description |
|
|
99
|
+
|---------|-------------|
|
|
100
|
+
| `rotifer init` | Initialize project with Genesis Genes |
|
|
101
|
+
| `rotifer scan` | Find gene candidates in source code |
|
|
102
|
+
| `rotifer wrap` | Convert function to Gene |
|
|
103
|
+
| `rotifer test` | Test in WASM sandbox |
|
|
104
|
+
| `rotifer compile` | Compile TS → WASM → Rotifer IR |
|
|
105
|
+
| `rotifer arena submit` | Submit to Arena |
|
|
106
|
+
| `rotifer arena list` | View rankings |
|
|
107
|
+
| `rotifer publish` | Publish Gene to Cloud |
|
|
108
|
+
| `rotifer search` | Search Cloud registry |
|
|
109
|
+
| `rotifer install` | Install from Cloud |
|
|
110
|
+
| `rotifer agent create` | Build Agent from Genes |
|
|
111
|
+
| `rotifer agent run` | Execute Agent pipeline |
|
|
112
|
+
|
|
113
|
+
---
|
|
114
|
+
|
|
115
|
+
## Links
|
|
116
|
+
|
|
117
|
+
- [rotifer.dev](https://rotifer.dev) — Website
|
|
118
|
+
- [rotifer.dev/genes](https://rotifer.dev/genes/) — Gene Store
|
|
119
|
+
- [rotifer.dev/docs](https://rotifer.dev/docs/) — Documentation
|
|
120
|
+
- [GitLab](https://gitlab.com/rotifer-protocol/rotifer-playground) — Source
|
|
121
|
+
- [Discord](https://discord.gg/6d4JrfMr) — Community
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
{
|
|
2
|
+
"geneId": "e884a901d023c20d5693dec5005280d5376cafddb6213a94fc91f452239550ca",
|
|
3
|
+
"name": "security-auditor",
|
|
4
|
+
"domain": "code.security",
|
|
5
|
+
"fidelity": "Wrapped",
|
|
6
|
+
"wrappedAt": "2026-02-24T13:23:31.218Z",
|
|
7
|
+
"fromSkill": "../.cursor/skills/security-auditor/SKILL.md"
|
|
8
|
+
}
|