AI 面板的目标:让「写不出的 SQL」和「看不懂的 SQL」不再阻塞你。 ## 六种动作 | 动作 | 用途 | | --- | --- | | 生成 | 自然语言 → SQL(「查最近 7 天下单但未支付的用户」) | | 解释 | 把一段复杂 SQL 翻译成中文说明 | | 优化 | 分析慢查询,给出索引 / 改写建议 | | 修复 | 报错信息 + SQL → 修正版本 | | 方言 | MySQL ↔ PostgreSQL 等跨方言转换 | | 样例 | 按表结构生成示例查询 | ## Ask | Agent 侧栏输入框上方可切换模式: | 模式 | 行为 | | --- | --- | | **Ask** | 只生成/解释/优化 SQL,**不执行**数据库工具 | | **Agent** | 多轮调用与 MCP 同源工具;步骤时间线边跑边推(SSE);可「插入编辑器」「在结果区打开」 | Agent 支持 openai-chat(DeepSeek 等)、Anthropic messages、OpenAI responses。连接须在 `~/.opsxdb/mcp.json` 白名单内。 默认 **只读**。若将 `mode` 设为 `read_write`,写操作仍须在气泡确认条点「执行」(一次一刀),模型不能自行带确认令牌。 ## MCP 把同一套工具暴露给 Cursor / Claude / Codex: ```bash npm install -g @rlwj-lab/opsxdb-mcp@latest # 另需 Go 二进制,见 MCP 接入文档 npx -y @rlwj-lab/opsxdb-mcp ``` 在桌面 **设置 → MCP** 可检测安装、切换只读/危险 SQL、勾选连接白名单,并复制 Cursor / Claude Code / VS Code 等配置片段。完整说明见 [MCP 接入](/docs/mcp)。 白名单写在 `~/.opsxdb/mcp.json` 的 `allowed_connection_ids`;空白名单拒绝全部连接。审计:`~/.opsxdb/logs/mcp-audit.jsonl`。 侧栏标题旁仅在外部 MCP **近期有调用**时显示绿色「MCP」点;悬停/点击可看最近摘要。 ## 使用方式 1. 连接库后打开右侧 AI 面板; 2. 选择动作,输入需求或粘贴 SQL(可附上对象树上下文); 3. 生成结果一键放回编辑器,⌘/Ctrl + Enter 执行。 > **提示**:生成的 SQL 依旧走危险语句确认流程 —— AI 产出与手写 SQL 同等对待,不放宽防护。 ## 配置服务 点击桌面右上角的设置按钮,在「AI 助手」中选择服务类型,填写服务地址、模型和 API Key,点击「保存」或「测试」(测试会先保存配置)。也可以从 AI 面板的设置入口配置。 支持离线演示和 OpenAI 兼容服务。已保存的 API Key 不回显,留空保存表示保留原密钥。配置加载失败时可重试。 ## 数据流向承诺 接入模型服务时遵循三条原则: - 默认只发送你明确提交的内容(不含连接凭据); - 可完全关闭 AI 功能; - 使用云端模型时在界面上明确标识。 AI 自动跟随 SQL 编辑器当前连接与数据库(Redis 显示 DB 编号,集群固定 DB0),输入框上方可核对目标。直接点选生成 SQL、解释、优化、修复或样例后发送;Shift+Enter 换行。切换标签不会把晚到的生成结果写入新标签,等待期间修改过的 SQL 也不会被自动覆盖。