@elnora-ai/cli
v2.0.0
Published
Elnora AI Platform CLI
Readme
Elnora CLI
Command-line interface for the Elnora AI Platform.
Elnora is an AI agent for biotech and pharma teams that generates, optimizes, and troubleshoots preclinical lab protocols. She learns from both successful and failed experiments, building knowledge that compounds with every project.
The CLI gives you full access to the platform from your terminal — collaborate with the agent, manage protocols and files, and integrate Elnora into your automation pipelines.
What You Can Do
- Generate and optimize protocols — from iPSC differentiation to assay development, with citations from 36M+ PubMed articles and preprint servers
- Access 2,100+ scientific tools — protein structure prediction (AlphaFold3), molecular cloning design, glycan analysis, drug-target databases (ChEMBL, UniProt, Open Targets), and more
- Stream agent responses in real-time — pipe structured output directly into your scripts and workflows
- Manage projects and files with version control — track protocol iterations, fork and promote versions, search across your entire knowledge base
- Run as an MCP server — plug Elnora into Claude Code, Cursor, or any MCP-compatible AI tool as a first-class integration
Requirements
- macOS, Linux, or Windows
- Node.js 20+ (npm install only — not required for curl/Homebrew)
- An Elnora API key — get one here
Install
# macOS / Linux
curl -fsSL https://cli.elnora.ai/install.sh | bash
# Windows (PowerShell)
irm https://cli.elnora.ai/install.ps1 | iex
# npm (requires Node.js 20+)
npm install -g @elnora-ai/cli
# Homebrew
brew install elnora-ai/cli/elnoraSkills & Setup
After installing the CLI, configure your AI coding tools:
elnora setupThis auto-detects which tools you have installed and configures them:
- Claude Code — registers the
elnora-pluginsmarketplace and enables 9 skills (elnora-tasks,elnora-projects,elnora-files, etc.) so you can use natural language. - Cursor / VS Code / Codex — writes an MCP server config pointing at
https://mcp.elnora.ai/mcpwith your API key.
Target a specific tool: elnora setup claude · elnora setup cursor · elnora setup vscode · elnora setup codex.
What You Get in Claude Code
Once configured, restart Claude Code and try any natural-language request:
"Use Elnora to generate a PCR protocol for BRCA1 exon 11" "Use Elnora to list my projects" "Use Elnora to optimize the protocol in task abc-123"
Claude will invoke the elnora CLI under the hood using the bundled skills. No need to memorize command syntax.
Where Everything Lives
| What | Where |
|------|-------|
| CLI binary (macOS/Linux) | ~/.local/bin/elnora |
| CLI binary (Windows) | %USERPROFILE%\.elnora\bin\elnora.exe |
| Auth / profiles | ~/.elnora/profiles.toml (mode 0600) |
| Claude Code skills | ~/.claude/plugins/marketplaces/elnora-plugins/elnora/skills/ (auto-updated) |
| Claude Code settings | ~/.claude/settings.json — look for elnora@elnora-plugins: true |
Manual Plugin Setup
If elnora setup claude doesn't work for some reason, you can install the plugin manually:
- In Claude Code, run
/plugin - Choose "Add marketplace"
- Enter:
Elnora-AI/elnora-plugins - Run
/pluginagain → Plugins → Enableelnora
Quick Start
elnora auth login
elnora projects list
elnora tasks create --project <id> --message "Analyze kinase inhibitors"
elnora tasks send <task-id> --message "Focus on selectivity" --streamCommands
| Group | Commands |
|-------|----------|
| auth | login, logout, status, profiles, validate |
| projects | list, get, create, update, archive, members, add-member, update-role, remove-member, leave |
| tasks | list, get, create, send (--stream, --wait), messages, update, archive |
| files | list, get, content, create, upload, download, update, archive, versions, fork, promote, working-copy, commit |
| orgs | list, get, create, update, members, billing, invite, invitations, resend-invite, cancel-invite, delete |
| folders | list, create, rename, move, delete |
| search | tasks, files, all, file-content |
| library | files, folders, create-folder, rename-folder, delete-folder |
| account | get, update, agreements, accept-terms, delete, users |
| api-keys | create, list, revoke, get-policy, set-policy |
| audit | list |
| feedback | submit |
| flags | list, get, set |
| health | check |
Utility Commands
elnora doctor # Check API, auth, version, config
elnora whoami # Show current profile and org
elnora open [page] # Open platform in browser (docs, keys, billing)
elnora completion <shell> # Generate shell completions (bash, zsh, fish)
elnora mcp serve # Start built-in MCP serverStreaming
Real-time agent responses directly in your terminal:
# Stream agent output as it generates
elnora tasks send <task-id> --message "Optimize this protocol" --stream
# Wait for the complete response (polling)
elnora tasks send <task-id> --message "Optimize this protocol" --waitStatus output (thinking, tool calls) goes to stderr. Content goes to stdout, so streaming is pipeable:
elnora tasks send <task-id> --message "Analyze this" --stream > response.txtMCP Server
The CLI includes a built-in MCP server that exposes all commands as tools:
# Start HTTP MCP server (for deployment)
elnora mcp serve --http
# Start stdio MCP server (for local MCP clients)
elnora mcp serve --stdioConfigure in Claude Code or Cursor:
{
"elnora": {
"type": "http",
"url": "https://mcp.elnora.ai/mcp"
}
}Authentication
# Login with API key
elnora auth login
# Multi-org profiles
elnora auth login --profile university
elnora --profile university projects list
# Check status
elnora doctorAPI keys are stored in ~/.elnora/profiles.toml with secure file permissions (0600).
Output Formats
elnora projects list # JSON (default)
elnora projects list --compact # Compact JSON
elnora projects list --output csv # CSV
elnora projects list --fields id,name # Field filtering
elnora projects list --json # Force JSON (even in TTY)Documentation
- Migration Guide — migrating from the Python CLI
- API Reference
- Platform
License
Apache-2.0
