- 补入库:server/internal/db/dump.go、redis 分页/扫描预算测试、opsxdb-mcp main_test、 packages/opsxdb-mcp package-lock、docs 审计与对比文档等 37 个新文件 - 含结构扁平化进行中的 80 处修改与 155 处旧结构删除(server/ src/ src-tauri/ 为当前有效源) - 构建产物(bin/target/dist)与签名私钥仍按规则排除
3.4 KiB
AI 面板的目标:让「写不出的 SQL」和「看不懂的 SQL」不再阻塞你。
Ask 的操作
| 动作 | 用途 |
|---|---|
| 自由提问 | 结合当前 SQL 与库结构回答问题 |
| 生成 SQL | 自然语言 → SQL(「查最近 7 天下单但未支付的用户」) |
| 解释 | 把一段复杂 SQL 翻译成中文说明 |
| 优化 | 分析慢查询,给出索引 / 改写建议 |
| 修复 | 报错信息 + SQL → 修正版本 |
| 样例 | 按表结构生成示例查询 |
Ask | Agent
侧栏输入框下方的下拉框切换模式,默认 Ask:
| 模式 | 行为 |
|---|---|
| Ask | 回答问题或建议 SQL;不执行数据库工具,也不自动改动 SQL 窗口。点击回复里的「复制到 SQL 窗口」后可自行执行 |
| Agent | 使用与 MCP 同源的工具查询、分析当前编辑器绑定的连接与库(Redis 为当前 DB);展示步骤与结果,可在结果区打开 |
Agent 支持 openai-chat(DeepSeek 等)、Anthropic messages、OpenAI responses。当前连接须在 ~/.opsxdb/mcp.json 白名单内;Agent 的工具调用限定在当前连接/库,外部 MCP 客户端仍按自己的白名单运行。数据库账号本身的跨库权限仍由数据库控制。
默认 只读。若将 mode 设为 read_write,写操作仍须在气泡确认条核对连接、库、语句后点「执行」(一次一刀);切库后原确认失效,模型不能自行带确认令牌。
MCP
把同一套工具暴露给 Cursor / Claude / Codex:
npm install -g @rlwj-lab/opsxdb-mcp@latest
# 另需 Go 二进制,见 MCP 接入文档
npx -y @rlwj-lab/opsxdb-mcp
在桌面 设置 → MCP 可检测安装、切换只读/危险 SQL、勾选连接白名单,并复制 Cursor / Claude Code / VS Code 等配置片段。完整说明见 MCP 接入。
白名单写在 ~/.opsxdb/mcp.json 的 allowed_connection_ids;空白名单拒绝全部连接。审计:~/.opsxdb/logs/mcp-audit.jsonl。
侧栏标题旁仅在外部 MCP 近期有调用时显示绿色「MCP」点;悬停/点击可看最近摘要。
使用方式
- 连接库后打开右侧 AI 面板;
- 选择动作,输入需求或粘贴 SQL(可附上对象树上下文);
- 核对生成结果,点击「复制到 SQL 窗口」,再按 ⌘/Ctrl + Enter 执行。
提示:生成的 SQL 依旧走危险语句确认流程 —— AI 产出与手写 SQL 同等对待,不放宽防护。
配置服务
点击桌面右上角「设置」,在「大模型 → AI 供应商」选择服务,填写模型、API 密钥和接口地址,再点击「保存」或「测试连接」(测试会先保存配置)。也可以从 AI 面板的设置入口配置。
支持离线演示和 OpenAI 兼容服务。已保存的 API Key 不回显,留空保存表示保留原密钥。配置加载失败时可重试。
数据流向承诺
接入模型服务时遵循三条原则:
- 默认只发送你明确提交的内容(不含连接凭据);
- 可完全关闭 AI 功能;
- 使用云端模型时在界面上明确标识。
AI 自动跟随 SQL 编辑器当前连接与数据库(Redis 显示 DB 编号,集群固定 DB0),输入框上方可核对目标。Ask 模式下选择自由提问、生成 SQL、解释、优化、修复或样例后发送;Shift+Enter 换行。切换标签时,晚到的建议只留在回复里,不会改写 SQL 窗口。