Cloud Commands
Cloud commands enable cross-developer gene sharing via the Rotifer Cloud Registry. Genes published to the cloud can be discovered, installed, and competed against by developers worldwide.
rotifer login
Section titled “rotifer login”Authenticate with Rotifer Cloud using GitHub OAuth.
rotifer loginAuthentication flow:
- Opens browser to GitHub OAuth consent page
- User authorizes Rotifer Protocol
- PKCE flow exchanges code for tokens
- Credentials saved to
~/.rotifer/credentials.json
Example:
$ rotifer login Opening browser for GitHub authentication... Waiting for authorization... ✓ Logged in as @yournamerotifer logout
Section titled “rotifer logout”Clear cloud authentication credentials.
rotifer logoutExample:
$ rotifer logout ✓ Logged out successfullyrotifer publish
Section titled “rotifer publish”Upload a gene to the Rotifer Cloud Registry.
rotifer publish <name> [options]Arguments:
| Argument | Required | Description |
|---|---|---|
name | Yes | Gene name to publish |
Options:
| Flag | Description |
|---|---|
--description <text> | Override gene description |
Prerequisites:
- Must be logged in (
rotifer login) - Gene must have a valid
phenotype.json - Compiled WASM (
gene.ir.wasm) is recommended but optional
What gets uploaded:
- Phenotype metadata (domain, schemas, version, fidelity)
- WASM binary (if compiled)
- Description and author info
After publish:
- A
.cloud-manifest.jsonis saved in the gene directory, linking the local gene to its cloud ID - The gene becomes searchable and installable by others
Example:
$ rotifer publish my-search --description "Fast web search gene" Publishing as @yourname... Uploading to cloud registry...
✓ Gene 'my-search' published to cloud!
ID: a1b2c3d4-... Owner: yourname Domain: search.web Version: 0.1.0 Fidelity: Wrapped WASM Size: 142.3KB
Others can install it: rotifer install a1b2c3d4-... Submit to cloud Arena: rotifer arena submit --cloud my-searchrotifer search
Section titled “rotifer search”Search the Cloud Registry for genes by keyword, domain, or fidelity.
rotifer search [query] [options]Arguments:
| Argument | Required | Description |
|---|---|---|
query | No | Search keywords (matches name and description) |
Options:
| Flag | Description |
|---|---|
-d, --domain <domain> | Filter by functional domain |
--fidelity <type> | Filter by Native or Wrapped |
--sort <order> | Sort: newest, popular, fitness |
--page <n> | Page number (20 results per page) |
Example:
$ rotifer search "web search" ┌──────────────────────┬──────────┬────────────┬─────────┬──────────┬───────────┐ │ Name │ Owner │ Domain │ Version │ Fidelity │ Downloads │ ├──────────────────────┼──────────┼────────────┼─────────┼──────────┼───────────┤ │ fast-web-search │ alice │ search.web │ 0.2.0 │ Native │ 142 │ │ my-web-search │ bob │ search.web │ 0.1.0 │ Wrapped │ 38 │ └──────────────────────┴──────────┴────────────┴─────────┴──────────┴───────────┘
Page 1 — 2 of 2 total Install a gene: rotifer install <gene-id>rotifer install
Section titled “rotifer install”Download and install a gene from the Cloud Registry into your local project.
rotifer install <gene-id>Arguments:
| Argument | Required | Description |
|---|---|---|
gene-id | Yes | UUID of the gene to install |
What it does:
- Fetches gene metadata from cloud
- Downloads WASM binary (if available)
- Creates gene directory in your project’s
genes/folder - Saves phenotype.json and gene.ir.wasm
Example:
$ rotifer install a1b2c3d4-e5f6-7890-abcd-ef1234567890 Downloading 'fast-web-search' from cloud... ✓ Installed to genes/fast-web-search/
Domain: search.web Fidelity: Native Version: 0.2.0
Test it: rotifer test fast-web-search Submit to Arena: rotifer arena submit fast-web-searchCustom Endpoints
Section titled “Custom Endpoints”By default, cloud commands connect to https://rotifer-cloud.supabase.co. You can configure a custom endpoint for alternative deployments:
Via environment variable:
export ROTIFER_CLOUD_ENDPOINT=https://your-instance.supabase.coVia config file (~/.rotifer/cloud.json):
{ "endpoint": "https://your-instance.supabase.co", "anonKey": "your-anon-key"}Via CLI flag:
rotifer publish my-gene --endpoint https://your-instance.supabase.co