Configuration
CtxE works without a config file. The installer leaves global and workspace config absent, and most users only create a targeted override when local behavior needs to differ from the built-in defaults.
Config files
Settings are merged from lowest to highest priority:
- Defaults built into the installed client
- Global client config —
~/.ctxe/config.toml - Workspace override —
.ctxe/config.tomlunder the workspace root
Workspace values override global values. Arrays replace the inherited array rather than appending to it.
Server-managed capabilities
Model-backed capabilities are provided by the CTXE Server. Provider credentials, model selection, and internal search/index tuning are not part of the public client configuration contract.
ctxe login
ctxe whoami Authentication is stored separately from config.toml. Do not add third-party provider keys to client configuration.
Supported user settings
These are the settings most users may reasonably override. Use command flags for one-off changes and config only for persistent defaults.
| Setting | Use |
|---|---|
general.ignore_patterns | Exclude local files or directories from workspace indexing |
general.supported_extensions | Limit which local file extensions are discovered |
general.max_file_size_bytes | Skip unusually large local files |
ask_v4.effort | Default Ask effort: min, medium, or high |
mcp.exposed_tools | Optionally narrow the public MCP tools shown to clients |
serve.host / serve.port | Persistent defaults for the loopback HTTP API |
Config commands
# Show config paths and whether each file exists
ctxe config path
# Inspect effective user-facing values
ctxe config get ask_v4.effort
ctxe config list --section general
# Persist a workspace default
ctxe config set ask_v4.effort medium
# Persist a global client default
ctxe config set serve.port 4591 --global
# Remove an override and reveal the inherited value
ctxe config unset ask_v4.effort
# Inspect the merged config (secret-bearing fields are redacted)
ctxe config show --format json Workspace example
Keep workspace config small and focused on local behavior:
# .ctxe/config.toml
[general]
max_file_size_bytes = 2097152
[ask_v4]
effort = "medium" Daemon lifecycle is not config
Use lifecycle commands instead of adding an enable/disable key to config.toml:
ctxe daemon enable --now
ctxe daemon disable --now
ctxe daemon status For version-specific discovery, use ctxe config get, ctxe config list, and ctxe <command> --help. Internal defaults may change and should not be copied into workspace config.