摘要
安装与升级
- any OS,目前只能安装 0.x 版本,而我只在macos上通过brew进行安装 1.x 版本,故以下内容都是基于 1.x 版本
npmi-greasonix# any OS; pulls the prebuilt native binary
# 安装brewinstallesengine/reasonix/reasonix# 升级brew upgrade esengine/reasonix/reasonix# 或brew upgrade reasonix# 卸载brew uninstall esengine/reasonix/reasonix
使用
# deepseek 的 aip_keyexportDEEPSEEK_API_KEY=sk-...# 或写入 .env(见 .env.example)# 新版本也支持 小米的 mimo 模型,如果希望启用,需要配置 MIMO_API_KEY
cdyour-project# 交互式会话reasonix# 这里 reasonis == reasonis chat# 执行单次任务后退出reasonix run<prompt>
| 快捷键 | 描述 | 注释 |
|---|
/(在开始) | 命令或 skill | 请参阅内置命令和 skills |
@ | 文件路径提及 | 触发文件路径自动完成 |
exit | 退出 | 等同于Ctrl + D |
配置文件
优先级:flag>./reasonix.toml>~/.config/reasonix/config.toml>内置默认值。
在这里的 flag 指的是 命令行参数,比如reasonix --model mimo-pro,也就是说,当你启动 Reasonix 时,如果通过命令行传入了配置相关的参数,这些参数 优先级最高,会覆盖配置文件里的同名设置。
⚠️ 重点:这里的 “flag” 并不是环境变量,也不是配置文件,而是 运行时命令行指定的参数。
内置默认值:是指写死在代码中的配置
⚠️ 重点:macos 下的配置文件在~/Library/Application Support/reasonix/config.toml而不是~/.config/reasonix/config.toml
可以通过如下命令创建配置文件
# 创建 `~/.config/reasonix/config.toml`,注意 macos 的不同reasonix setup# 指定配置文件路径reasonix setup ./reasonix.toml
▌ Language · 语言 (↑/↓ · Enter · q to cancel) English ❯ 中文 (简体) ╭─────────────────────────────────╮ │ ◆ 欢迎使用 reasonix │ │ │ │ 还没有配置 — 现在来设置一下吧。 │ ╰─────────────────────────────────╯ ▌ 选择要启用的 provider (↑/↓ · Space · Enter · q) ❯ [x] DeepSeek fast & cheap, plus a stronger Pro SKU [ ] MiMo (Xiaomi) long-horizon agentic [ ] 自定义模型 添加第三方 OpenAI 兼容模型 [ ] 自定义模型2 添加第三方 Anthropic 兼容模型 发现 2 个 DeepSeek 模型 ▌ 选择要启用的 DeepSeek 模型 (↑/↓ · Space · Enter · q) [x] deepseek-v4-flash ❯ [x] deepseek-v4-pro 输入 API key(回车跳过、稍后再设): ✓ 复用已设置的 DEEPSEEK_API_KEY ✓ 已写入 ./reasonix.toml ✓ 已写入 ~/Library/Application Support/reasonix/credentials ◆ 设置完成。 试试: reasonix chat
default_model = "deepseek-flash" # 执行器;设 [agent].planner_model 可加规划器 # language = "zh" # 界面语言;为空则按 $LANG / $REASONIX_LANG 自动检测 [agent] # planner_model = "mimo-pro" # 可选的低频规划器 # subagent_model = "deepseek-pro" # runAs=subagent skill 的默认模型 # subagent_models = { review = "deepseek-pro", security_review = "deepseek-pro" } auto_plan = "ask" # off|ask|on;复杂聊天任务自动进入计划模式 # auto_plan_classifier = "deepseek-flash" # 可选;只在边界任务上调用 [[providers]] name = "deepseek-flash" kind = "openai" # 接口类型,支持 openai 和 anthropic base_url = "https://api.deepseek.com" # anthropic 时要配置为 https://api.deepseek.com/anthropic model = "deepseek-v4-flash" api_key_env = "DEEPSEEK_API_KEY" # 还有预设:deepseek-pro、mimo-pro(mimo-v2.5-pro)、mimo-flash(mimo-v2-flash) @ api.xiaomimimo.com/v1 [tools] enabled = [] # 省略/为空 = 全部内置工具 [skills] # paths = ["~/my-skills", "../shared/skills"] # 额外的自定义技能目录 # disabled_skills = ["review"] # 隐藏技能,直到 /skill enable <name> [permissions] mode = "ask" # 无规则命中时 writer 的兜底:ask|allow|deny deny = ["bash(rm -rf*)", "bash(git push*)"] # 任何模式下都硬阻断 allow = ["bash(go test*)"] # 从不询问 [sandbox] # workspace_root = "" # 文件写工具被限制在此目录;留空 = 当前目录 # allow_write = ["/tmp"] # write_file/edit_file/multi_edit 额外可写的目录 [[plugins]] name = "example" command = "reasonix-plugin-example"
这里可以配置多个[[providers]],也可以配置为第三方模型
Commands
| 命令 | 中文说明 | 使用场景 |
|---|
/compact | 压缩当前会话上下文,减少上下文长度,节省 Token 消耗 | 会话过长、上下文接近限制时 |
/new | 创建一个全新的会话,不继承当前对话上下文 | 开始新的任务或主题 |
/rewind | 回退到之前的某个对话节点 | 需要撤销后续对话内容时 |
/tree | 查看当前会话的分支树结构 | 查看历史分支和对话演化过程 |
/branch | 从当前节点创建一个新的会话分支 | 希望尝试不同方案而不影响主线 |
/switch | 切换到其他会话分支 | 在多个方案之间切换 |
/todo | 关闭或隐藏当前任务列表 | 不再需要查看 Todo 时 |
/model | 切换当前使用的大模型 | 更换 Claude、GPT、Gemini 等模型 |
/mcp | 管理 MCP(Model Context Protocol)服务器 | 配置外部工具和服务 |
/skills | 管理 Skills(技能) | 查看、安装或启用技能 |
/hooks | 管理 Hooks(钩子) | 配置命令执行前后自动触发的动作 |
/memory | 查看 Memory 文件 | 查看 Claude 保存的项目记忆 |
/output-style | 查看可用输出风格 | 切换回答风格 |
/language | 切换 CLI 界面语言 | 中英文切换 |
/help | 显示所有可用命令 | 查询帮助信息 |
Skills
| 命令 | 中文说明 | 使用场景 |
|---|
/init | 自动分析项目结构,生成或更新AGENTS.md项目记忆文件 | 新接手项目或更新项目信息 |
/explore | 启动只读子代理,对整个代码库进行广泛分析,并返回总结结果 | 查找某个功能实现位置、分析代码结构 |
/research | 启动研究型子代理,结合 Web 搜索和代码分析回答问题 | 调研框架特性、最佳实践、兼容性问题 |
/review | 对当前代码变更进行代码审查 | 提交 PR 前检查代码质量 |
/security-review | 对当前代码变更进行安全审查 | 检查安全漏洞和风险 |
/test | 自动运行测试、分析失败原因、尝试修复并重新执行 | 修复测试失败问题 |
- reasonix 会自动加载
claude code全局配置下安装的 skill(/.claude/skills)
MCP
# 查看已经安装的mcp列表reasonix mcp list# 添加mcpreasonix mcpadd<name><command>[args...]# stdio serverreasonix mcpadd<name>--http<url>[--headerK=V]# remote (Streamable HTTP)reasonix mcpadd<name>--sse<url># remote (legacy SSE)# 删除mcpreasonix mcp remove<name>
mcpaddamap--httphttps://mcp.amap.com/mcp?key=${AMAP_KEY}
支持环境变量
${VAR}- 扩展为环境变量 VAR 的值${VAR:-default}- 如果设置了 VAR,则扩展为 VAR,否则使用 default
内置Tool
| Tool | 功能 | 使用时机 | 关键约束 |
|---|
| ask | 向用户发起多选问题 | 遇到用户必须决定的分支方案时 | 不要询问有明显默认值的问题 |
| bash | 执行 Shell 命令 | 编译、测试、Git、包管理等 | 查找/编辑文件优先使用专用工具 |
| task | 创建子 Agent 执行任务 | 大型分析、长流程任务 | 子 Agent 不共享上下文 |
| wait(隐含) | 等待后台任务 | bash/task 后台运行时 | 配合后台任务使用 |
| run_skill | 执行 Skill | 复用已有工作流 | Skill 必须已安装 |
| slash_command | 执行 Slash 命令 | 调用项目预设命令 | 仅执行已注册命令 |
| Tool | 功能 | 使用时机 | 关键约束 |
|---|
| read_file | 读取文件 | 查看源码、配置文件 | 大文件需分页读取 |
| write_file | 写入整个文件 | 创建或重写文件 | 覆盖原文件 |
| edit_file | 精确替换文本 | 小范围修改文件 | old_string 必须唯一 |
| multi_edit | 批量编辑同一文件 | 多处修改同一文件 | 所有修改原子提交 |
| delete_range | 删除指定文本范围 | 删除大段内容 | 锚点必须唯一 |
| delete_symbol | 删除 Go 符号 | 删除函数、结构体等 | 仅支持 Go AST |
| ls | 列目录 | 查看目录结构 | 可递归 |
| glob | 文件匹配 | 查找特定文件 | 支持 ** 递归匹配 |
| Tool | 功能 | 使用时机 | 关键约束 |
|---|
| grep | 全局搜索正则 | 查找代码引用 | 基于 ripgrep |
| explore | 代码库调查 | 需要跨文件分析 | 子 Agent 执行 |
| research | 代码+外部资料研究 | 需要同时查代码和文档 | 子 Agent 执行 |
| review | Code Review | 提交前检查变更 | 只读 |
| security_review | 安全审查 | 安全相关代码修改 | 只读 |
| lsp_definition | 跳转定义 | 查找符号定义 | 依赖 LSP |
| lsp_references | 查找引用 | 分析调用链 | 依赖 LSP |
| lsp_hover | 查看类型与文档 | 理解符号含义 | 依赖 LSP |
| lsp_diagnostics | 获取诊断信息 | 修改代码后检查错误 | 依赖语言服务器 |
| Tool | 功能 | 使用时机 | 关键约束 |
|---|
| remember | 保存长期记忆 | 用户偏好、项目约束 | 不保存临时信息 |
| forget | 删除记忆 | 记忆失效时 | 使用 Memory Slug |
| Tool | 功能 | 使用时机 | 关键约束 |
|---|
| install_skill | 创建 Skill | 希望复用工作流 | 可项目级或全局 |
| run_skill | 运行 Skill | 执行预定义流程 | 需已安装 |
| Tool | 功能 | 使用时机 | 关键约束 |
|---|
| web_fetch | 获取网页内容 | 阅读文档、API说明 | 必须是 http/https URL |
如果mcp的Connect mode设置为connect when this mcp is used,这也是默认值。
| Tool | 功能 | 使用时机 | 关键约束 |
|---|
| mcp__amap__connect | 连接高德地图 MCP | 使用地图能力前 | 先建立连接 |
| mcp__codegraph__connect | 连接 CodeGraph MCP | 使用 CodeGraph 前 | 先建立连接 |
如果mcp的Connect mode设置为Connect in background after session starts或Connect before chat starts时,会显示对应mcp的tool,比如:
| Tool | 功能 | 使用时机 | 关键约束 |
|---|
| mcp__amap__maps_around_search | 周边 POI 搜索 | 查找某坐标附近的餐厅、酒店、加油站、停车场、景点等 | 必须提供keywords和location |
| mcp__amap__maps_direction_bicycling | 骑行路线规划 | 规划骑行通勤、骑游路线 | 必须提供起点和终点经纬度,最大支持 500km |