Skip to content

Pages

  • Getting started
  • Install
  • Sessions
  • Automation
  • Channels
  • Sandboxing
  • Command line
  • Models & providers
  • Settings
  • Instructions
  • Prompt templates
  • Skills
  • Themes
  • Keybindings
  • Layout
  • Extensions
  • Packages
  • SDK
  • Compatibility

Settings

~/.e/settings.json holds your preferences. /settings edits the same file from inside a session. After you edit the file by hand, run /reload to apply it without restarting e.

Settings

KeyValuesDefaultWhat it changes
themeauto, or a theme nameautoThe palette. auto follows the system.
tui_modeinline, fullscreeninlineinline keeps the conversation in the terminal's scrollback. fullscreen pins the composer and e scrolls the conversation itself.
show_thinkingon, offoffExpand reasoning, or retain it behind a one-line hint. Ctrl+O reveals thinking received during this session.
auto_updateon, offonThe launch-time update check.
effortthe model's levelshighThe reasoning effort a session starts at.
editora command$VISUAL, $EDITOR, then viWhere ctrl+g opens the draft.
tool_label_rows1 to 202The height of a tool command's label.
tool_preview_rowsup to 205How many live output lines a running tool shows.
tool_history_limit0 to 100010Recent successful tools shown per group. Failures and running tools stay visible, and Ctrl+O shows every call.
scroll_lines1 to 1003Rows per wheel event in chat and the detail reader.
scroll_hinttextScrolled · End to followStatus text while reading earlier chat.
thinking_hinttextThinking · ctrl o to viewThe collapsed reasoning row.
tool_history_hinta template{count} earlier successful tools · ctrl o to viewSummary of folded successful tools.
no_answer_messagetextThe model finished without an answer. Retry or ask it to continue.Warning when a completed turn contains reasoning but no answer.
paste_placeholdercodepoints1000The size at which a paste collapses to a token. 0 keeps pastes raw.
paste_labela template[Pasted text #{id}, {chars} chars]The collapsed paste token.

A missing or invalid value keeps the default. /settings writes the same keys, so a preference set there means the same as one typed in the file.

The wheel and PageUp/PageDown scroll chat in both TUI modes without changing the draft. Scrolling upward pauses following output. End, scrolling to the bottom, or submitting a prompt resumes following. Inline mode keeps native terminal history at the tail and temporarily uses the alternate screen while reading earlier rows. Fullscreen uses the alternate screen throughout. Hold your terminal's selection modifier, commonly Shift, for native mouse selection while e captures mouse events.

Existing show_thinking: "off" settings now collapse reasoning instead of discarding it from the live display. Changing it to on reveals thinking already received in the current session. Settings files need no migration.

Keys e maintains

Two keys are records, not preferences. A command owns each one, so change them through that command:

  • packages lists the package sources you installed and where each came from. e install and e remove write it. See packages.
  • scoped_models lists the models ctrl+p cycles. /scoped-models writes it.

The home directory

Everything e remembers lives under ~/.e:

PathWhat it holds
settings.jsonThe preferences above.
auth.jsonProvider credentials stored by /login. See models.
models.jsonModels you added or corrected. See models.
models-dev.jsonCached model facts read from models.dev.
sessions/One JSONL file per conversation. See sessions.
history.jsonlThe prompts Up recalls on an empty composer.
extensions/Programs e starts at launch. See extensions.
skills/SKILL.md folders. See skills.
prompts//name templates. See prompt templates.
themes/Palettes. See themes.
keybindings.jsonComposer chords. See keybindings.
layout.jsonSide panes and status rows. See layout.
packages/Package clones. See packages.
AGENTS.mdInstructions that apply in every workspace.
trust.jsonWhich directories you trusted.

Move the home with `E_HOME`

E_HOME moves the whole directory. This keeps a PR preview and a local ./x dev build out of each other's way. Production uses ~/.e, a PR preview uses ~/.e-pr, and a local build uses ~/.e-dev. See install.