skills/elnora-admin/SKILL.md
This skill should be used when the user asks to "log in", "logout", "check auth", "create API key", "revoke API key", "list API keys", "check health", "submit feedback", "view audit log", "shell completions", "get account", "update account", "account details", "view agreements", "accept terms", "validate token", "elnora setup", "api key policy", "delete account", "list users", "feature flags", "legal documents", "set feature flag", "manage legal docs", "list profiles", "show profiles", "whoami", "run diagnostics", "open platform", or any task involving Elnora Platform authentication, administration, or diagnostics.
npx skillsauth add elnora-ai/elnora-cli elnora-adminInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Authentication, API key management, account settings, health checks, audit logs, feedback, and shell completions.
Elnora is available via two methods. Use whichever is configured.
Option A — CLI via Bash (preferred)
Run commands via your Bash/Shell tool as elnora <group> <action> .... Verify with elnora --version. CLI uses ~5× fewer tokens than MCP.
Option B — MCP tools (when CLI isn't installed)
Look for tools prefixed mcp__elnora__ in your available tools. Call them with structured parameters (camelCase — e.g. projectId, not project-id). See the "MCP Tool Names" table below for the mapping.
If neither is available, tell the user to install one:
curl -fsSL https://cli.elnora.ai/install.sh | bash (macOS/Linux)
or irm https://cli.elnora.ai/install.ps1 | iex (Windows)claude mcp add elnora --transport http --scope user https://mcp.elnora.ai/mcp
then /mcp to authenticate.Never fabricate tool names. Valid commands are in the Commands section; their MCP equivalents are in the MCP Tool Names table.
CLI="elnora"
$CLI --compact auth login --api-key <KEY>
$CLI --compact auth login --api-key <KEY> --profile university
--api-key is required — there is no interactive prompt. Keys must start with elnora_live_ and be 20+ characters. Saves to ~/.elnora/profiles.toml.
Response: {"profile":"default","verified":true,"configPath":"/Users/<you>/.elnora/profiles.toml"}
$CLI --compact auth status
# -> {"profile":"default","authenticated":true,"projectCount":N}
$CLI --compact auth logout
$CLI --compact auth logout --all
Without --all, removes the current profile. With --all, removes all saved profiles from profiles.toml.
$CLI --compact auth profiles
# -> {"profiles":[{"name":"default","apiKey":"elnora_live_...abcd"}]}
Shows all configured profiles with masked API keys.
$CLI --compact auth validate
$CLI --compact auth validate --token <TOKEN>
Validates the current API key (or a specific token).
$CLI whoami
$CLI --json whoami
Shows current profile, masked API key, and organization name.
$CLI --compact api-keys create --name "CI Pipeline"
$CLI --compact api-keys create --name "Agent Key" --scopes "read,write"
IMPORTANT: The key value is only shown once in the response. Store it securely.
$CLI --compact api-keys list
$CLI --compact api-keys revoke <KEY_ID>
# -> {"revoked":true,"keyId":"..."}
Destructive — confirm with user first.
$CLI --compact api-keys get-policy
# -> {"policy":"all_members"}
$CLI --compact api-keys set-policy --policy admins_only
$CLI --compact api-keys set-policy --policy all_members
Org admin/owner only. Values: all_members or admins_only.
$CLI --compact account get <USER_ID>
<USER_ID> is positional. Get user IDs from account users.
$CLI --compact account update <USER_ID> --first-name Jane --last-name Doe
Must provide at least one of --first-name or --last-name.
$CLI --compact account agreements
$CLI --compact account accept-terms <DOCUMENT_VERSION_ID>
<DOCUMENT_VERSION_ID> is positional.
$CLI --compact account delete
$CLI --compact account delete --yes
DANGEROUS: Permanently deletes the user's account. Irreversible.
Requires typing "DELETE" to confirm. Use --yes to skip (non-interactive/CI only).
$CLI --compact account users
$CLI --compact account users --state Active
$CLI --compact account users --state Deleted --ref-code ABC123
Optional filters: --state (Active, Pending, Deleted), --ref-code.
$CLI --compact account add-legal-doc --document-type TermsOfService --version "2.0" --content "Terms text..." --effective-date 2026-04-01
| Flag | Required | Notes |
|------|----------|-------|
| --document-type | Yes | e.g. TermsOfService, PrivacyPolicy |
| --version | Yes | Version string |
| --content | Yes | Document content |
| --effective-date | No | ISO 8601 date |
$CLI --compact account update-legal-doc <VERSION_ID> --content "Updated terms..."
$CLI --compact account update-legal-doc <VERSION_ID> --effective-date 2026-05-01
<VERSION_ID> is positional. Must provide at least one of --content or --effective-date.
$CLI --compact account delete-legal-doc <VERSION_ID> --yes
<VERSION_ID> is positional. Requires confirmation unless --yes.
$CLI --compact flags list
$CLI --compact flags get --key enable-new-editor
--key is a required flag (not positional).
$CLI --compact flags set --key enable-new-editor --value true --yes
| Flag | Required | Notes |
|------|----------|-------|
| --key | Yes | Flag key name |
| --value | Yes | true or false |
| --yes | No | Skip confirmation prompt |
WARNING: Affects ALL users on the platform. Always use --yes in agent context.
$CLI health
No auth required. Returns {"status":"ok","timestamp":"..."} on success. Exits 1 if unreachable (network error).
$CLI doctor
Runs 10 diagnostic checks across three sections: CLI (API reachability, authentication, version currency, config permissions, AI server reachability, PATH configured), Claude Code (plugin enabled, skills installed, plugin version match), and MCP (server reachable). Each check reports pass / fail / warn / skip; the summary line shows the tally.
elnora open # Opens platform (default)
elnora open docs # Opens documentation
elnora open keys # Opens API keys page
elnora open billing # Opens billing page
elnora open github # Opens GitHub repo
$CLI --compact audit list --org <ORG_ID>
$CLI --compact audit list --org <ORG_ID> --action "project.created" --user-id <USER_ID>
$CLI --compact audit list --org <ORG_ID> --page 2 --page-size 50
--org is a required flag. Optional filters: --action, --user-id.
$CLI --compact feedback submit --title "Feature request" --description "Add batch export"
Both --title and --description are required.
elnora completion bash >> ~/.bashrc
elnora completion zsh >> ~/.zshrc
elnora completion fish > ~/.config/fish/completions/elnora.fish
All commands in this skill are auto-registered as MCP tools. The mapping is elnora <group> <action> → elnora_<group>_<action> (camelCase preserved; only dots are replaced with underscores).
| CLI command | MCP tool name |
|-------------|---------------|
| auth login | CLI only — writes to local ~/.elnora/profiles.toml |
| auth logout | CLI only — removes from local profile store |
| auth status | CLI only — reports local profile state |
| auth profiles | CLI only — reads local profile store |
| auth validate | CLI only — uses local profile fallback |
| api-keys create | elnora_api-keys_create |
| api-keys list | elnora_api-keys_list |
| api-keys revoke | elnora_api-keys_revoke |
| api-keys get-policy | elnora_api-keys_getPolicy |
| api-keys set-policy | elnora_api-keys_setPolicy |
| account get | elnora_account_get |
| account update | elnora_account_update |
| account agreements | elnora_account_agreements |
| account accept-terms | elnora_account_acceptTerms |
| account add-legal-doc | elnora_account_addLegalDoc |
| account update-legal-doc | elnora_account_updateLegalDoc |
| account delete-legal-doc | elnora_account_deleteLegalDoc |
| account delete | elnora_account_delete |
| account users | elnora_account_users |
| flags list | elnora_flags_list |
| flags get | elnora_flags_get |
| flags set | elnora_flags_set |
| audit list | elnora_audit_list |
| feedback submit | elnora_feedback_submit |
| health check | elnora_health_check |
Note: whoami, doctor, open, completion, update, setup, and all auth sub-commands are CLI-only — no MCP equivalents. Auth commands manage local profile storage and interactive prompts, which don't translate to a remote MCP server.
Verify setup:
$CLI health && $CLI --compact auth status
Rotate an API key:
$CLI --compact api-keys create --name "Replacement Key"
# Update .env with the new key, then:
$CLI --compact api-keys revoke <OLD_KEY_ID>
data-ai
This skill should be used when the user asks to "create a task", "send a message", "generate a protocol", "list tasks", "get task", "view task details", "read task messages", "update task status", "archive a task", "talk to Elnora", "ask Elnora to generate", "protocol conversation", or any task involving Elnora Platform task management and protocol generation.
development
This skill should be used when the user asks to "search tasks", "find a protocol", "search files", "search file content", "search inside files", "find tasks about", "query Elnora", "search Elnora platform", "full text search", "search all", "search everything", "find", or any task involving searching the Elnora Platform for tasks, files, or all resources by keyword. NOT for web search — use elnora-agent for that.
data-ai
This skill should be used when the user asks to "list projects", "create a project", "get project details", "show my Elnora projects", "new project", "project members", "update project", "archive project", "add member", "remove member", "leave project", or any task involving Elnora Platform project management.
tools
Use when the user asks about "Elnora platform", "elnora CLI", "platform API", "platform overview", "what commands are available", "elnora help", "how to use Elnora", or any general question about the Elnora AI Platform that doesn't fit a specific domain. Routes to domain-specific sub-skills for token-efficient guidance.