Configuration Reference

Boring, complete, searchable.

Config file location

~/.config/hash/config.toml

Create it if it doesn't exist. All fields are optional.

Shell

config.toml
[shell]
editor = "nvim" # External editor for complex edits
disable_builtins = ["cd"] # Disable builtins (e.g., to use zoxide)

init_commands = [ # Always run at startup
"source ~/.aliases"
]

[shell.startup_files]
login = ["/etc/profile", "~/.profile", "~/.hash_profile"]
interactive = ["~/.hashrc"]

Input

config.toml
[input]
mode = "editor" # "editor" or "readline"
gutter = true # Show mode indicator in multiline

Prompt

config.toml
[prompt]
mode = "starship" # "starship", "built-in", "none"
starship_path = "/opt/starship/starship" # Explicit path (optional)

Agent

Hash supports one agent at a time, configured via the [agent] section.

ACP/stdio transport

config.toml
[agent]
command = "claude-code-acp"

HTTP transport

config.toml
[agent]
timeout = "120s"
transport = "http"
url = "http://localhost:11434/api/generate"
model = "codellama:13b"

History

config.toml
[history]
enabled = true
path = "~/.local/share/hash/history.db"
max_entries = "unlimited" # or integer
max_age = "forever" # or "90d", "1y"

Completions

config.toml
[completions]
fuzzy = true # Enable fuzzy matching
file_icons = true # Show file type icons (requires nerd font)
cobra_enabled = true # Enable Cobra __complete support

Clipboard

config.toml
[clipboard]
max_output_size = "1MB" # Max output per command
buffer_size = 100 # Commands to keep in buffer
preserve_colors = false # Keep ANSI codes when copying

Prediction (adaptive learning)

config.toml
[prediction]
enabled = true
confidence_threshold = 0.6 # Minimum score to suggest
accept_keys = ["right", "tab"] # Keys to accept prediction
path_min_count = 2 # Uses before suggesting path
path_recency_boost_hours = 24 # Recency boost window

Environment variables

VariablePurpose
HASH_SHELL=1Set by Hash — detect you're in Hash
HASH_CONFIGOverride config path

Files

PathPurpose
~/.config/hash/config.tomlMain config
~/.hashrcInteractive shell startup (like .bashrc)
~/.hash_profileLogin shell startup (like .bash_profile)
~/.local/share/hash/history.dbCommand history (SQLite)
~/.local/share/hash/learning.dbLearned error fixes (SQLite)