Skip to main content

CLI reference

Core commands

CommandWhat it does
elephantShows the branded landing and next-step guidance.
elephant initRuns first-use onboarding, provider setup, creates the first elephant, and surfaces the Feishu IM handoff before wake opens.
elephant statusChecks whether the active local install is ready.
elephant providerConfigures or inspects the active provider, dialogue model, reasoning effort, context window, and embedding readiness.
elephant provider embeddings statusShows the active embedding provider selection, including local-default fallback versus a configured OpenAI-compatible override.
elephant provider embeddings localSwitches semantic retrieval back to the local Elephant Agent embedding default.
elephant provider embeddings openai-compatible --base-url <url> --model <id> --dimensions <n>Persists one active OpenAI-compatible embedding override with an encrypted local API key.
elephant herd new [name]Creates a named Elephant Agent elephant, prompting only for any missing name.
elephant herdLists known herd.
elephant herd currentShows which elephant wake will reopen by default.
elephant herd use <name>Selects one elephant as the current wake target.
elephant herd delete <name>Deletes one elephant.
elephant herd delete --allDeletes every elephant.
elephant wakeOpens the main conversational surface.
elephant wake --elephant-id <name>Opens one specific elephant directly.
elephant wake --message "..."Runs a single turn without staying in the TUI.
elephant skillsLists the visible skill catalog outside wake, with subcommands for active, search, view, enable, disable, and install.
elephant gateway setupOpens IM setup and writes the selected adapter's wiring. Elephant routing is bound later with /elephant create <name> from the messaging surface.
elephant gateway doctorRuns whole-surface readiness checks across configured IM providers and accounts.
elephant gateway describePrints the resolved IM provider and account wiring as JSON.
elephant gateway feishu start --transport long-connection --detachStarts the Feishu long-connection bridge in the background and returns immediately.
elephant gateway feishu statusShows the Feishu runtime status, account posture, PID activity, and runtime record paths.
elephant gateway feishu stop --forceGracefully stops the configured Feishu runtime, with --force available when needed.
elephant gateway feishu restartRestarts the configured Feishu runtime in the background.
elephant gateway feishu logs ops-feishu --followTails one Feishu account log and keeps streaming new output.
elephant gateway discord setup --account-id ops-discord --bot-token-env-var ELEPHANT_DISCORD_BOT_TOKENAdds or updates one Discord account configuration.
elephant daemon startStarts the unified local daemon that serves IM adapters, cron, learning, and the dashboard HTTP surface.
elephant dashboardOpens the daemon-served dashboard, building frontend assets from a checkout when needed and starting the daemon by default.
elephant upgradeBacks up state, stops managed gateway/cron runtimes, upgrades the package, bootstraps storage, and restarts prior runtimes.

Installers

CommandWhen to use it
`curl -fsSL https://elephant.agentic-in.ai/install.shbash`
`curl -fsSL https://elephant.agentic-in.ai/install.shbash -s -- --channel stable`
elephant upgrade --channel stableGraceful in-place upgrade to the stable package stream.
bash scripts/install.shRepo-local install from a checkout.
bash scripts/install.sh upgradeRewrites the checkout-bound launcher.
bash scripts/install.sh healthRuns health through the checkout-bound launcher.

In-session control surfaces

Inside wake, these slash commands stay available without leaving the conversation:

  • /status
  • /recall
  • /tools
  • /skills
  • /gateway
  • /cron
  • /providers
  • /models
  • /clear
  • /exit

/skills now fronts discoverable skill packages inside the conversation, and matching skill packages also register dynamic slash commands such as /apple-notes .... Outside wake, elephant skills mirrors the same skill inventory and install surface without opening the shell first.

Inside wake, /recall inspects understanding and recall, while the local Dashboard is the place to inspect Personal Model claims, provenance, questions, and corrections in one view. /providers and /models keep provider posture, dialogue model choice, and embedding readiness close at hand.

Embedding management stays under /providers, for example: /providers embeddings status, /providers embeddings local, and /providers embeddings openai-compatible <base_url> <model_id> <dimensions> [api_key].

The built-in runtime already exposes this curated tool catalog:

  • terminal: tool.terminal.exec
  • process: tool.process.manage
  • file: tool.file.read, tool.file.write, tool.file.patch, tool.file.search
  • web: tool.web.search, tool.web.read, tool.web.extract
  • browser: tool.browser.navigate, tool.browser.snapshot, tool.browser.click, tool.browser.type, tool.browser.scroll, tool.browser.back, tool.browser.press, tool.browser.images, tool.browser.vision, tool.browser.console
  • clarify: tool.clarify
  • cron: tool.cron.manage
  • code_execution: tool.code.execute
  • personal_model: tool.personal_model.search, tool.personal_model.update, tool.personal_model.questions
  • messaging: tool.message.send
  • todo: tool.todo.manage
  • skills: tool.skill.list, tool.skill.view, tool.skill.manage
  • sub_agents: tool.sub_agents

The wider extension surface still includes built-in skills, authored skills, and recurring scheduled jobs on top of the built-in tools. The personal_model family is the durable understanding surface: search returns active claims with match status, update changes one lens/topic claim, and questions manage useful future prompts.

Local dashboard

elephant dashboard is the private local web surface. It is served by the unified Elephant daemon and reads live elephant.sqlite3 state through page-specific internal dashboard routes such as /v1/internal/dashboard/overview, /v1/internal/dashboard/runtime, and /v1/internal/dashboard/tools.

That means:

  • PyPI installs launch from the prebuilt dashboard assets shipped in the wheel, without requiring Node.js or npm at runtime
  • repo checkouts can launch it directly after installing dashboard dependencies
  • repo checkouts run one frontend build check before launch so the checkout is current; use --skip-build only when you are iterating and already know the frontend assets exist
  • elephant dashboard starts the daemon by default when it is not already running; use --no-start when you only want to attach to an existing daemon
  • elephant dashboard opens the default browser automatically; use --no-open when you only want the URL printed in the terminal
  • use --rebuild after frontend code changes when you want to force a fresh dashboard asset build
  • installs that do not include apps/dashboard assets stay truthful by printing launch guidance instead of pretending the web surface exists

Runtime paths

By default, Elephant Agent uses:

  • ELEPHANT_HOME=$HOME/.elephant
  • ELEPHANT_HERD_DIR=$ELEPHANT_HOME/herd
  • ELEPHANT_CRON_DIR=$ELEPHANT_HOME/cron
  • ELEPHANT_PAIRING_DIR=$ELEPHANT_HOME/pairing
  • ELEPHANT_SKILLS_DIR=$ELEPHANT_HOME/skills
  • ELEPHANT_BUILTIN_SKILLS_DIR=$ELEPHANT_SKILLS_DIR/builtin
  • ELEPHANT_INSTALLED_SKILLS_DIR=$ELEPHANT_SKILLS_DIR/installed
  • ELEPHANT_AUTHORED_SKILLS_DIR=$ELEPHANT_SKILLS_DIR/authored

The messaging gateway shares ELEPHANT_HERD_DIR, so CLI and gateway state live in one runtime database.