# iris (https://github.com/versenilvis/iris): inline completion menu that wraps # the shell in its own pty. Started from fish and zsh (`iris init ` in # config.fish / .zshrc). `iris config show` prints the merged result; missing # keys fall back to iris's defaults. [core] version = 1 # config schema version shell = "" # auto-detect; `iris init ` exports IRIS_ACTIVE_SHELL, which wins anyway shell-login = false # run shell as a login shell (also: iris --shell-login) # Every shell opens in spec mode: Fig-style completions (subcommands, flags, # paths) pop up as you type. ctrl+r still flips to history for that session; # "last" would carry a stray ctrl+r into every later shell. mode = "spec" # "last", "spec", or "history" debug = false # verbose logging to iris.log (also: iris -d); logs every keystroke expand-alias = true # expand aliases before matching auto-execute = false # run suggestion immediately instead of inserting it atuin-history = 0 # shell history only: atuin is not used under iris atuin-db-path = "" # path to atuin's history.db, empty = use default cobra-probe-enabled = true # fall back to probing cobra binaries for completions # Menu closed: up/down browse iris's own history (Fig-style). No shell binds # up/down; handing them to the shell ran the old down -> pj picker inside # iris's pty, and the two fought over the screen. navigate-closed = "history" [ui] style = "modern" # "modern" or "classic" ghost-text = 1 # 0 = off, 1 = menu + ghost text, 2 = ghost text only hidden-files = false # include dotfiles in suggestions max-suggestions = 100 # max suggestions ranked before display max-height = 6 # max visible rows in the menu max-width = 0 # menu width: columns (80) or a share ("80%"), 0 = default nerd-fonts = true # use nerd-font icons (Victor Mono Nerd Font) # ctrl+r, tab, shift+tab, up and down never reach the shell while iris runs; # tv's own ctrl-r history binding (`tv init`) is shadowed by toggle-mode. [keybindings] toggle-mode = "ctrl+r" # switch spec/history mode toggle-menu = "shift+tab" # show or hide the suggestion menu select = "tab" # accept the selected suggestion navigate-up = "up" # select up (menu open) navigate-down = "down" # select down (menu open) navigate-right = "right" # accept ghost text [git] filter-active-branch = true # exclude current branch from suggestions deduplicate-branches = true # merge same-name local/remote branches # Installed from the AUR (iris-autocomplete): pacman/paru owns updates, so iris # neither checks nor installs on its own. [updater] check-on-startup = false channel = "stable" check-interval = "24h" auto-update = 0 [zoxide] extend-cd = true # complete `cd` from zoxide's database (conf.d/40-tools.fish runs `zoxide init fish`) [ai] enabled = false provider = "groq" # "groq" or "ollama" debounce_ms = 400 # ms to wait before querying the AI [ai.providers.groq] endpoint = "https://api.groq.com/openai/v1/chat/completions" api_key_env = "GROQ_API_KEY" # read from the environment, never stored here model = "llama-3.3-70b-versatile" timeout_ms = 3000 [ai.providers.ollama] endpoint = "http://localhost:11434/v1/chat/completions" model = "qwen2.5-coder" timeout_ms = 5000