CLI
Install the estelle CLI to index local repositories, configure MCP clients, capture sessions, and check code from a terminal.
View as MarkdownThe estelle CLI connects a local checkout to your Estelle account. Use it when you need to index uncommitted work, configure an editor without editing MCP files by hand, capture coding-agent sessions, or run repository checks from a terminal.
It runs natively on macOS and Linux on x86_64 and arm64. On Windows, install both the CLI and your coding agent inside WSL.
#Install and sign in
Install the CLI
With npm on Node.js 18 or later:
npm i -g @fatelabs/estelleOr use the release installer, which selects the build for your machine and verifies its checksum:
curl --proto '=https' --tlsv1.2 -fsSL \ https://github.com/uqeu/estelle-cli/releases/latest/download/install.sh | shAuthenticate
Create a key in Settings → API keys, then run:
estelle loginPaste the key when prompted. Commands use the stored key or
ESTELLE_API_KEYfrom the environment.initandsweepalso accept a one-time--keyoption.Configure and index
From the repository root:
estelle init estelle sweep --dry-run estelle sweepinitdetects supported editors, writes their MCP configuration, and checks the connection. The dry run lists files without sending them; the sweep indexes the checkout, including uncommitted content visible to git.
For the guided version of this workflow, run estelle setup. It configures the repository, sweeps it, and checks a real symbol from your code. Add --dry-run to preview the actions.
#Command reference
| Command | What it does |
|---|---|
estelle login | Store and verify your Estelle API key. With --provider, configure a model account instead. |
estelle setup | Run the guided configure, sweep, and verification workflow. |
estelle init | Detect editors, write MCP configuration, and check it. --client <name> targets cursor, vscode, windsurf, or jetbrains. |
estelle connect <client> | Print the setup command or configuration for one client. |
estelle remove | Remove Estelle entries from editor configurations. |
estelle sweep | Index the current repository. |
estelle reindex | Update the index for changed files. |
estelle github link | Link GitHub and connect an App installation from the terminal. |
estelle ask "<question>" | Ask about your codebase using the context available to your account. |
estelle recall "<query>" | Search memory and code together. Use --repo owner/name to scope a multi-repository account. |
estelle verify <file> | Check a file for references that cannot be resolved against the indexed repository. |
estelle install-hooks | Add Estelle's session hooks to Claude Code and Codex while preserving other hooks. |
estelle uninstall-hooks | Remove only Estelle's hooks. |
estelle mcp-server | Serve Estelle's MCP tools over stdio for a local client. |
estelle acp | Serve Estelle as an Agent Client Protocol agent over stdio. |
estelle leaked | Scan your own ~/.claude and ~/.codex for exposed credentials offline, printing rule, fingerprint, path, and line rather than the value. |
estelle doctor | Diagnose credential and setup problems without printing secrets. |
estelle upgrade | Report whether a newer release exists and print its install command. It does not install the release. |
estelle --version | Print the installed version. |
Run estelle <command> --help for the flags supported by your installed version.
#Keep an index current
cd path/to/your/repo
estelle reindexUse reindex after ordinary edits and sweep again after substantial changes. Navigation answers come from the last content you indexed; an older index can be reported as stale. To index code available through GitHub instead, use the GitHub connection.
Check one file before sharing or committing it:
estelle verify src/api/routes.pyFor a fuller review of a change, use /review in an Estelle session or open a pull request for Prism. Your own build and test commands still belong in CI.
#Capture Claude Code and Codex sessions
estelle install-hooksThis writes Estelle's hooks to ~/.claude/settings.json and ~/.codex/hooks.json, or $CODEX_HOME/hooks.json when CODEX_HOME is set. Restart Claude Code or open /hooks to activate them. In Codex, run /hooks and trust Estelle's hooks; untrusted hooks cannot record sessions.
Captured sessions appear under Sessions and can feed Memory.
#Configure a model for the terminal
Run estelle without a subcommand to open the terminal interface. Use /login to connect a model account and /model to select a model. You can also configure one from the shell:
estelle login --provider anthropic-apiOther supported provider names include openai-api, gemini, deepseek, openrouter, ollama, and lmstudio. For another OpenAI-compatible endpoint:
estelle login --provider openai-compatible \
--base-url "YOUR_PROVIDER_API_BASE" \
--model "YOUR_MODEL_ID"#What leaves your machine
sweepsends repository content; the dry run sends none.verifysends the file you name.askandrecallsend your question and relevant account context.init,connect, andremovechange local configuration, apart from the connection check performed byinit.leakedruns fully offline.
Use estelle doctor after changing credentials or client configuration. estelle upgrade only checks for a release; reinstall with npm or the installer to apply one.
#Limits
- There is no native Windows build. Use WSL for both the CLI and the coding agent so session hooks can find the executable.
- An index does not update itself after local edits. Reindex or sweep before relying on current code navigation.
- The hooks record sessions only after they are installed and, in Codex, trusted.