摘要
安装与升级
bash
# 安装
brew install esengine/reasonix/reasonix
# 升级
brew upgrade esengine/reasonix/reasonix
# 或
brew upgrade reasonix
# 卸载
brew uninstall esengine/reasonix/reasonix
使用
- 配置环境变量
bash
export DEEPSEEK_API_KEY=sk-... # 或写入 .env(见 .env.example)
- 启动
bash
cd your-project
# 交互式会话
reasonix
# 这里 reasonis == reasonis chat
# 执行单次任务后退出
reasonix run <prompt>
- 快速命令
| 快捷键 | 描述 | 注释 |
|---|---|---|
/(在开始) |
命令或 skill | 请参阅内置命令和 skills |
@ |
文件路径提及 | 触发文件路径自动完成 |
exit |
退出 | 等同于 Ctrl + D |
配置文件
- 优先级:
flag>./reasonix.toml>~/.config/reasonix/config.toml>内置默认值。 - macos 下其
内置默认值在~/Library/Application Support/reasonix/config.toml - 配置文件示例说明
toml
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"
- 可以通过如下命令创建配置文件
bash
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
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
- 内置 skills
| 命令 | 中文说明 | 使用场景 |
|---|---|---|
/init |
自动分析项目结构,生成或更新 AGENTS.md 项目记忆文件 |
新接手项目或更新项目信息 |
/explore |
启动只读子代理,对整个代码库进行广泛分析,并返回总结结果 | 查找某个功能实现位置、分析代码结构 |
/research |
启动研究型子代理,结合 Web 搜索和代码分析回答问题 | 调研框架特性、最佳实践、兼容性问题 |
/review |
对当前代码变更进行代码审查 | 提交 PR 前检查代码质量 |
/security-review |
对当前代码变更进行安全审查 | 检查安全漏洞和风险 |
/test |
自动运行测试、分析失败原因、尝试修复并重新执行 | 修复测试失败问题 |
- reasonix 会自动加载
claude code全局配置下安装的 skill(/.claude/skills)
MCP
- 管理mcp
bash
# 查看已经安装的mcp列表
reasonix mcp list
# 添加mcp
reasonix mcp add <name> <command> [args...] # stdio server
reasonix mcp add <name> --http <url> [--header K=V] # remote (Streamable HTTP)
reasonix mcp add <name> --sse <url> # remote (legacy SSE)
# 删除mcp
reasonix mcp remove <name>
- 示例:添加高德mcp
bash
mcp add amap --http https://mcp.amap.com/mcp?key=${AMAP_KEY}
支持环境变量
bash
${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 集成类
如果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 |