
使用 OpenAI Codex CLI 安装与配置 Wren AI技能发现、环境检查与首次查询完整指南【免费下载链接】WrenAIGenBI (Generative BI) for AI agents, an open-source, governed text-to-SQL through an open context layer that turns natural-language questions into trusted dashboards, charts, and SQL across 20 data sources, such as BigQuery, Snowflake, PostgreSQL, ClickHouse, Amazon Redshift, Databricks and more.项目地址: https://gitcode.com/GitHub_Trending/wr/WrenAI本指南介绍如何通过 OpenAI Codex CLI 安装 Wren AI先借助npx skills add Canner/WrenAI --agent codex安装wren技能发现桩再在 Codex 中通过自然语言触发 onboarding 工作流由 Agent 自动完成环境检查、profile 创建、项目脚手架与首次查询。读完本文你将掌握 Codex 与 Wren AI 的完整对接流程以及 Wren 技能分发机制与 onboarding 每一步背后的 CLI 原理。适用前提Prerequisites在开始之前需要满足两个条件Codex CLI 已安装并完成身份认证OpenAI Codex CLI 是本文使用的 AI 编码终端需要保证codex命令可用并且已登录 OpenAI 账户。OpenAI 账户登录Codex 的认证依赖 OpenAI 账户未登录时无法正常驱动 Agent 执行多步工作流。此外从仓库的 installation.md 与 quickstart.md 可以确认Wren AI 的通用安装还隐含另外两个前提Python 3.11onboarding 技能在环境检查阶段会用python3 --version校验以及Node.js / npmnpx命令依赖 npm。如果这些尚未就绪建议先补齐再继续。第一步为 Codex 安装 wren 技能执行下面的命令将 Wren AI 的技能发现桩安装到 Codex 中npx skills add Canner/WrenAI --agent codex这里的关键词是技能发现桩discovery stub。仓库的 skills/SKILLS.md 明确说明了这一设计This directory ships a single discovery stub (wren/SKILL.md) that an AI client can install. Once the agent reads the stub, it learns to fetch everything else from the CLI on demand.也就是说npx skills add只会安装一个名为wren的轻量技能而不是把全部工作流指南都塞进客户端。真正的流程指南、参考文档和提示词辅助全部内置于wrenCLI 本身即pip install wrenai安装的 Python 包因此技能内容始终与已安装的 wrenai 版本一致不存在技能缓存或版本漂移问题。这一点在 skills/wren/SKILL.md 的 frontmatter 中也能看到它声明了allowed-tools: Bash(wren:*)即只允许 Agent 调用wren前缀的命令。安装时指定--agent codex的作用是让安装器把技能注册到 Codex 的配置目录如果希望同一份技能对机器上所有 AI 编码客户端Claude Code、Cursor、Windsurf、Cline 等都生效可以改用--agent *见 installation.md。仓库的 skills/install.sh 展示了技能安装的另一种等价方式curl 管道脚本其逻辑与npx skills add一致默认安装到$HOME/.claude/skills/支持--force覆盖并且优先使用本地克隆目录中的skills/wren/否则从远端仓库下载。若技能已存在会跳过安装重复执行时需要--force才会覆盖更新。第二步启动 Codex 并触发 onboarding技能安装完成后在项目目录中启动 Codexcodex然后向 Codex 提出如下请求Use the /wren skill to install and set up Wren AI.这句话会命中wren技能 frontmatter 中声明的触发器之一install wren、set up wren engine、wren onboarding等见 skills/wren/SKILL.md从而让 Agent 拉取并执行onboarding工作流。文档明确说明该技能会引导 Agent 依次完成环境检查、profile 创建、项目脚手架和首次查询。注意installation.md 特别提醒技能在会话启动时加载因此安装技能后应新开一个 Codex 会话再输入上述请求。第三步onboarding 工作流实际会做什么onboarding 技能的主体位于 core/wren/src/wren/skills_content/onboarding/SKILL.md它并不内嵌完整的操作手册而是规定 Agent 侧的执行纪律one step per turn每次对话只推进一个步骤绝不在聊天中索要凭证并在每一步把 Agent 派发到正确的文档或兄弟技能。核心流程如下1. 环境预检PreflightAgent 先执行一组只读检查不询问任何项目信息python3 --version—— 要求 Python 3.11版本过低则请用户升级后停止检查是否处于虚拟环境sys.prefix ! sys.base_prefixPEP 668 系统上需要python3 -m venvwren --version—— 若已安装则确认版本避免重复安装pwd—— 记录当前目录。2. 分支选择demo 还是自己的数据库Agent 会询问你是先用内置的jaffle_shop示例约 30 秒、无需数据库还是连接自有数据库。选 demo 则直接跳转到 quickstart.md选自有库则继续。3. 收集项目名与数据库类型只问两件事项目名将创建~/name/并进入和数据库类型如postgres、mysql、bigquery、snowflake、clickhouse、trino、duckdb等。此时仍不询问任何凭证。4. 创建工作区与.env模板这一批操作会创建~/project/、安装wrenai[ds,main]并生成一份空.env模板。关键命令是wren docs connection-info ds --format md该命令通过内省数据源连接器的 Pydantic schema 实时输出真实的连接字段列表因此永远不会与实际实现脱节onboarding 技能明确禁止 Agent 凭空发明字段名。以 PostgreSQL 为例生成的.env骨架为POSTGRES_HOST POSTGRES_PORT5432 POSTGRES_DATABASE POSTGRES_USER POSTGRES_PASSWORD凭证只通过.env传递用户在自己的编辑器中填写Agent 全程看不到任何密钥值。5. 创建连接 profileAgent 会把/tmp/conn.yml中的每个字段写成${VAR}占位符与上一步.env的键一一对应然后执行wren profile add project --from-file /tmp/conn.ymlprofile 是 Wren AI 对数据库连接信息的封装类似 dbt profiles见 quickstart.md 的 Step 4它还支持--ui浏览器表单与--interactive交互式两种创建方式。校验自动执行CLI 会静默覆盖已存在的 profile。6. 脚手架项目并绑定 profilewren context init --empty # 拒绝覆盖已存在的 wren_project.yml wren context set-profile projectwren context init会生成项目目录结构models/、views/、relationships.yml、knowledge/等wren context set-profile则把profile: project和data_source: ds写进wren_project.yml将项目与连接确定性绑定——此后无论全局激活哪个 profile该项目含 SDK 调用都不会被wren profile switch意外改道。7. 生成 MDL 并完成首次查询Agent 会先拉取generate-mdl技能完成 MDL建模定义语言生成再运行wren context validate与wren context build最后根据发现的数据表给出 23 个自然语言示例问题作为首次查询建议。onboarding 就此收尾日后的日常查询由usage技能接管。技能分发机制wren skills命令是怎么工作的整个 Codex 对接体验依赖wren skills子命令族其实现位于 core/wren/src/wren/skills_cli.py 与 core/wren/src/wren/skills_delivery.pywren skills list—— 枚举全部可用工作流指南。实现通过resources.files(wren) / skills_content遍历包内目录从每个技能的SKILL.mdfrontmatter 读取description作为摘要并列出其references/与scripts/下的资源wren skills get name—— 打印指定技能的SKILL.md主指南到 stdout加--full会按文件名排序追加所有references/*.md加--script s则输出随技能打包的脚本源码例如dlt-connector的introspect_dlt未命中的技能名会抛出SkillNotFoundError并以退出码 1 提示可用名称。技能内容作为 wheel 内的包数据分发位于core/wren/src/wren/skills_content/name/如onboarding/、usage/、generate-mdl/、dlt-connector/、enrich-context/、genbi/这正是“指南永远匹配已安装 CLI 版本”这一承诺的代码级实现。仓库根目录的 skills/index.json 则是对外发布清单其中将wren标记为discovery-stub。技能安装后的一线命令速查技能发现桩安装完成后Codex或任何支持技能调用的 AI 客户端即可在会话中按需驱动以下命令完整清单见 skills/SKILLS.md 与 skills/wren/SKILL.md用途命令列出全部工作流指南wren skills list拉取某指南含参考文档wren skills get name [--full]拉取随技能打包的脚本wren skills get name --script s查询数据源连接字段wren docs connection-info ds弱模型增强提问wren ask question --guided强模型直接提问wren ask question --direct直接执行 SQL过 MDL 层wren --sql ...只做 SQL 转译、不触库wren dry-plan --sql ...项目/MDL 生命周期wren context show / build / validate命名连接 profilewren profile add / list / switch下一步Quickstart使用示例数据 —— 用内置jaffle_shop数据集完整走一遍安装wrenai[memory,main]、创建 DuckDB profile、生成 MDL、查询与 GenBI 部署连接你的数据库 —— 将 Wren AI 指向真实数据库含各数据源的连接字段说明与完整故障排查手册若你想了解技能从“安装”到“按需取用”的完整交付模型与每个指南的职责可阅读 Skills 参考。【免费下载链接】WrenAIGenBI (Generative BI) for AI agents, an open-source, governed text-to-SQL through an open context layer that turns natural-language questions into trusted dashboards, charts, and SQL across 20 data sources, such as BigQuery, Snowflake, PostgreSQL, ClickHouse, Amazon Redshift, Databricks and more.项目地址: https://gitcode.com/GitHub_Trending/wr/WrenAI创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考