
1. DataGrip 2026.1 查询文件重构后AI 代理接 PostgreSQL 卡在哪DataGrip 2026.1 把查询文件和控制台拆成了两条并行工作流查询文件现在默认落在当前项目目录还会在数据库资源管理器的 Query Files 文件夹里按数据源归类。这个改动本身很舒服但真正让不少人卡住的是 AI 代理这一块DataGrip 2026.1 的 AI Chat 已经支持 Claude Agent 和 CodexMCP 服务器也加了数据库特定能力可一旦你同时开着 PostgreSQL 数据源、多个查询文件、还想让 AI 代理稳定读写就会撞上三个现实问题。第一AI 代理的 Key 和通道是分散的。Claude Agent 一套、Codex 一套、MCP 工具又一套每换一个入口就要重新填一次地址和密钥查询文件里跑通的上下文切到 AI Chat 就断了。第二数据源模板虽然能存到 JetBrains 账户里复用 General 和 Advanced 设置但它明确不包含数据库凭据所以模板解决的是连接参数复用解决不了AI 侧统一鉴权。第三PostgreSQL 18 支持进来之后RETURNING 里的 OLD/NEW、WITHOUT OVERLAPS 这些新语法AI 代理如果拿不到正确的方言和 schema 上下文生成的 SQL 经常在查询文件里直接报解析错。我试过的组合思路是把 AI 代理的出口收敛到一个统一的 Key/API 通道上让 DataGrip 里的 AI 代理、MCP 工具、以及你自己写的脚本都走同一个入口再用数据源模板固定 PostgreSQL 的连接骨架。这样查询文件重构带来的按数据源归类才真正有意义——文件、数据源、AI 上下文三者能对上号。下面这套配置就是围绕这个目标来的适合已经在用 DataGrip 2026.1、手里有 PostgreSQL 数据源、想让 AI 代理别再到处填 Key 的人。2. 前置准备TaoToken 统一 Key 与 DataGrip 侧要动的东西TaoToken 在这里扮演的角色是统一出口你只维护一份 KeyAI 代理、MCP、脚本都指向同一个 API 地址换模型或换代理时不用改 DataGrip 里一堆地方。官网入口在 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content API 基址是 https://taotoken.net/api 注意 API 这条不带 UTM 参数配置里要写干净。动手前先确认三件事。一是 DataGrip 版本确实是 2026.1查询文件的显示设置路径在 Settings → Database → Query Execution → Query Files能在这里看到选项就说明版本对了。二是 PostgreSQL 数据源已经能连上建议先在 Data Sources and Drivers 里把连接测通再去做模板。三是准备好 TaoToken 的 API Key去控制台生成地址是 https://taotoken.net/console?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content Key 列表页在 https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 。DataGrip 侧要动的地方分两层。第一层是数据源模板在 Data Sources and Drivers 对话框切到 Data Source Templates 标签页把 PostgreSQL 的 General 和 Advanced 设置存成模板凭据不进去这样同一账户下其他 IDE 也能复用。第二层是 AI 代理的接入配置DataGrip 2026.1 的 AI Chat 里选 Claude Agent 或 Codex 时需要给它一个可用的 API 通道这里就填 TaoToken 的地址和 Key。如果你还要用 MCP 那套数据库特定功能MCP 服务端同样指向这个统一入口避免出现AI Chat 能跑、MCP 跑不通的割裂。注意数据源模板只存 General 和 Advanced不存凭据这是设计如此。别指望模板帮你带密码凭据要么手填要么走环境变量要么交给统一 Key 通道去管 AI 侧那部分。3. 可复制配置settings.json 骨架与 TaoToken 接入DataGrip 本身是 IDEAI 代理和 MCP 的配置更多落在项目级或工具级的配置文件里。下面这份 settings.json 骨架是给 AI 代理/MCP 侧用的放在你项目根目录或工具约定的配置位置字段按需删改。核心是把 base_url 指向 TaoToken把 api_key 用环境变量注入别硬编码。{ ai_proxy: { provider: taotoken, base_url: https://taotoken.net/api, api_key_env: TAOTOKEN_API_KEY, default_model: claude-sonnet, timeout_ms: 60000, retry: { max_attempts: 3, backoff_ms: 800 } }, mcp: { enabled: true, server: { transport: stdio, command: your-mcp-server, env: { TAOTOKEN_BASE_URL: https://taotoken.net/api, TAOTOKEN_API_KEY: ${TAOTOKEN_API_KEY} } }, database: { dialect: postgresql, require_consent_level: 4 } }, datagrip: { query_files: { attach_datasource_on_ai_create: true, default_dialect: postgresql }, datasource_template: { name: pg-template, host: 127.0.0.1, port: 5432, database: appdb, user: appuser, sslmode: prefer } } }几个字段说明一下。base_url 固定写 https://taotoken.net/api 不要带查询参数。api_key_env 指向环境变量名实际值在 shell 里 export这样配置文件可以进版本库而不泄露密钥。mcp.database.require_consent_level 对应 DataGrip 2026.1 里 MCP 访问数据和架构的同意级别默认四级别为了省事调低。datagrip.query_files.attach_datasource_on_ai_create 对应从 AI 聊天创建文件时自动附加数据源这个新行为设成 true 后你在 AI Chat 里提到某个数据源新建的查询文件会自动挂上它并设好 PostgreSQL 方言。环境变量这样设Linux/macOS 用export TAOTOKEN_API_KEYsk-你的Key export TAOTOKEN_BASE_URLhttps://taotoken.net/apiWindows PowerShell 用$env:TAOTOKEN_API_KEY sk-你的Key $env:TAOTOKEN_BASE_URL https://taotoken.net/api数据源模板那边在 DataGrip 里打开 Data Sources and Drivers切到 Data Source Templates新建一个 PostgreSQL 模板General 里填 host/port/databaseAdvanced 里按需加参数比如ApplicationNamedatagrip-ai。存好之后以后新建数据源直接从模板创建凭据单独填。这样模板管连接骨架TaoToken 管 AI 鉴权两边不打架。4. 验证请求从 AI 代理调用到查询文件跑通配置写完要验证分三步走每步都有明确的成功标志。第一步验证 TaoToken 通道本身通不通。用 curl 打一下模型对话接口确认 Key 和地址没问题curl -s https://taotoken.net/api/v1/chat/completions \ -H Authorization: Bearer $TAOTOKEN_API_KEY \ -H Content-Type: application/json \ -d { model: claude-sonnet, messages: [{role: user, content: ping}] }返回里带 choices 字段就说明通道通了。如果返回 401检查 Key 有没有 export 成功返回 404检查 base_url 是不是多写了斜杠或路径。第二步在 DataGrip 2026.1 的 AI Chat 里选 Claude Agent 或 Codex把上面这份 settings.json 的 ai_proxy 段对应的地址和 Key 填进去。然后问一个跟 PostgreSQL 相关的问题比如给 appdb 的 orders 表写一个带 RETURNING OLD/NEW 的更新语句。成功标志有两个AI 回复里给出的 SQL 方言是 PostgreSQL且你点从代码片段创建文件时新查询文件自动附加了 appdb 数据源、方言自动设成 PostgreSQL。这正是 2026.1 里从 AI 聊天创建文件时自动附加数据源的行为如果没生效回去检查 attach_datasource_on_ai_create 和你在提问里有没有提到数据源名。第三步在新建的查询文件里跑一条真实 SQL验证端到端。PostgreSQL 18 支持 RETURNING 里的 OLD/NEW可以这样测UPDATE orders SET status shipped WHERE id 1001 RETURNING OLD.status AS old_status, NEW.status AS new_status;在查询文件里选中这段右键选 Execute Selection as Single Statement——这是 2026.1 里更轻松的代码块执行的用法即使解析器没完全认全也能按单语句执行。返回 old_status 和 new_status 两列就说明查询文件、数据源、方言、AI 上下文全对上了。如果还想验证 MCP 那条路让 AI 代理通过 MCP 执行一次查询注意它会按四级同意弹确认点同意后能拿到结果就说明 MCP 的数据库特定功能也通了。5. 本篇常见错排查Key、方言、模板、同意级别配这套东西踩的坑比较集中列几个高频的。报 401 或 invalid api key九成是环境变量没生效。DataGrip 从桌面图标启动时可能读不到你在终端里 export 的变量。解决办法是在启动 DataGrip 的同一个 shell 里 export或者把变量写进系统级环境配置后重启 IDE。别把 Key 直接写进 settings.json 提交到仓库。AI 生成的 SQL 方言不对比如把 PostgreSQL 的 RETURNING 写成了别的库的语法。检查两点数据源模板里 dialect 是不是 postgresql以及 AI Chat 提问时有没有明确说PostgreSQL 18。2026.1 的自动附加数据源依赖你提供数据库上下文你不提它就可能按默认方言来。数据源模板创建出来的连接缺参数。记住模板只存 General 和 Advanced凭据、以及某些驱动级设置不在里面。从模板建完数据源后手动补 user/password再测连接。如果模板里 Advanced 加了参数但没生效检查是不是写在了 Driver 级别而不是 Data Source 级别。MCP 访问被拦。2026.1 的 MCP 数据库功能默认要四级用户同意这是安全设计。如果你在自动化脚本里调 MCP要么在交互环境里手动同意要么按官方文档配置受信任场景别想着绕过同意级别。另外 MCP 服务端的 env 里也要带 TAOTOKEN_API_KEY否则它连不上统一通道。查询文件没出现在 Query Files 文件夹下。2026.1 里只有附加到数据源的查询文件才会归到数据库资源管理器的 Query Files 下。如果你新建文件时没关联数据源它就是个普通文件。用 AI Chat 创建时确保 attach_datasource_on_ai_create 为 true或者手动在文件上附加数据源。6. 后续怎么走按场景分流这套配置跑通之后日常用法可以按场景分。只是偶尔问模型、验证 SQL 写法用模型对话入口就够了地址在 https://taotoken.net/models?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 配合 DataGrip 的 AI Chat 做轻量验证。如果是长期在 DataGrip 里做编码、让 AI 代理持续参与查询文件重构和 schema 变更建议走 Coding Plan入口在 https://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 这样 Key 和额度管理更省心。接入过程中遇到鉴权或通道问题先看接入文档 https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content Key 的生成和轮换在 https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 。Claude Code 相关的代理配置参考 https://taotoken.net/claude-code-anthropic?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 。最后留一个实用习惯每次改完 settings.json 或数据源模板先用第 4 节那条 curl 验通道再在查询文件里跑一条带 RETURNING 的语句验端到端。两步都过再去动 AI 代理的复杂任务。这样出问题时你能立刻分清是通道挂了、方言错了、还是模板没生效不用在一堆配置里瞎猜。