Skip to content
FunCoding

Search

Search docs, agents, posts, Skills and MCP servers

crushrc 与环境变量

Crush 用 crushrc(带内置命令的 Bash)配置,文件位置与优先级、安全注意、环境变量与主题、署名设置。

Crush 不配置也能良好运行;需要定制时用 crushrc:它就是带有 Crush 专用内置命令的 Bash,很像 .bashrc。Crush 自带原生内置 Bash 解释器,所以基于 Bash 的配置在包括 Windows 在内的所有平台上行为一致。

provider add ollama --type ollama --base-url "http://localhost:11434/v1"
model add ollama/llama3.3 --name "Llama 3.3" --context-window 128000
permissions allow view edit
if [[ $HOSTNAME == "babysquid" ]]; then source ~/my-stuff/babysquid.sh; fi
mcp add github --type http --url "https://api.github.com/mcp/" --header Authorization "Bearer $(op read 'op://my-secret-key')"

位置与优先级(Unix 类):1 ./.crushrc;2 ./crushrc;3 ~/.config/crush/crushrc(Windows 为 %USERPROFILE%\.config\crush\crushrc;遵循 XDG 规范,可能因 XDG_CONFIG_HOME 而不同)。~/.local/share/crush 和 %LOCALAPPDATA%\crush 里只放 JSON 状态,Crush 不会执行那里的 crushrc。旧的 JSON 格式(crush.json)仍被支持,但已弃用。可用 CRUSH_GLOBAL_CONFIG 和 CRUSH_GLOBAL_DATA 覆盖用户和数据配置位置;临时状态保存在 $HOME/.local/share/crush/crush.json,不要手动编辑,也不是配置。

安全:crushrc 和 crush.json 都是受信代码——crushrc 在完整 shell 里运行,crush.json 里的任何 $(...) 在加载时运行。不要在没审查过配置的目录里启动 Crush,也不要随意 source 来自互联网的文件。

环境变量:顶层 env 字段在启动时、配置服务商之前设置环境变量,适合影响服务商认证的变量(如 AWS SDK 凭证链),值支持 $VAR 与 $(command) 展开。主题:用命令面板(ctrl+p)选 Themes,导航时实时预览,enter 确认、esc 取消;ctrl+e 编辑选中的主题,用户主题存放在配置目录的 themes/ 下,也可在配置里设 options.tui.active_theme;内置主题含默认的 charmtone-panther 和 gruvbox-dark。署名:默认在 Crush 创建的 Git 提交和 PR 里加署名信息,option attribution-trailer-style 取 assisted-by(默认,加 Assisted-by: Crush:[ModelID])、co-authored-by(加 Co-Authored-By: Crush <crush@charm.land>)、none;option attribution-generated-with 控制是否加「Generated with Crush」行。