Codex Skill 实战:通过 Rube MCP 自动化 Addresszen 地址服务操作 —— 从连接配置到工作流执行的完整指南
【免费下载链接】awesome-codex-skillsA curated list of practical Codex skills for automating workflows across the Codex CLI and API.项目地址: https://gitcode.com/GitHub_Trending/aw/awesome-codex-skills
本指南以 awesome-codex-skills 仓库中的 addresszen-automation Skill 为骨架,系统讲解如何让 Codex(CLI / API)通过 Composio 生态的 Rube MCP 网关,完成 Addresszen 地址服务的工具发现、OAuth 连接、schema 合规执行与分页取数等全链路自动化。读完本文,你将掌握一套"先搜工具、再查连接、最后执行"的可复用三层工作流模式,并能将其泛化到仓库中任意一个 composio-skills 自动化场景。
Skill 是什么:一份让 Codex 学会操作 Addresszen 的指令包
Codex Skill 本质上是存放在$CODEX_HOME/skills/<skill-name>/SKILL.md中的模块化指令包:YAML frontmatter 中的name与description决定 Codex 何时自动触发该 Skill,正文则告诉 Codex 具体怎么执行。仓库 README 中对此机制有明确说明:Codex 在会话中根据请求与description的匹配度自动加载 Skill 正文,从而保持上下文精简。
本 Skill 的 frontmatter 如下:
--- name: addresszen-automation description: "Automate Addresszen tasks via Rube MCP (Composio). Always search tools first for current schemas." requires: mcp: [rube] ---其中requires.mcp: [rube]是一个关键声明:它告诉 Codex,该 Skill 的运行依赖名为rube的 MCP 服务器(即 Rube MCP),description中"Always search tools first for current schemas"则点出了整份 Skill 的核心纪律——工具 schema 随时可能变化,任何执行前必须先搜索。该 Skill 与仓库中 composio-automation、zoho-automation 等数百个 composio-skills 遵循完全相同的模板化结构,本文的流程可以 1:1 迁移到任意 toolkit。
前置条件:三个缺一不可
在开始任何 Addresszen 工作流之前,请确认以下三项均已就绪:
- Rube MCP 已连接:
RUBE_SEARCH_TOOLS工具可用,说明网关已打通; - Addresszen 连接已激活:通过
RUBE_MANAGE_CONNECTIONS建立的addresszentoolkit 连接状态为ACTIVE; - 执行前先搜索:每次运行工作流前必须先调用
RUBE_SEARCH_TOOLS获取最新工具 schema,禁止依赖记忆中的旧 slug 或参数。
环境配置:一行 MCP endpoint 搞定,无需 API Key
Rube MCP 的接入方式极为轻量——不需要预先申请任何 API Key:
在客户端配置中添加 MCP 服务器地址:
https://rube.app/mcp,添加后即可直接使用。
接入后按以下四步完成连接引导:
- 确认
RUBE_SEARCH_TOOLS有响应,验证 Rube MCP 可用; - 调用
RUBE_MANAGE_CONNECTIONS,指定 toolkit 为addresszen; - 若返回的连接状态不是
ACTIVE,跟随返回的认证链接完成 OAuth 授权设置; - 在运行任何工作流之前,再次确认连接状态显示为
ACTIVE。
这一步的本质是"连接即认证":Rube MCP 通过内置的认证流程代替了你在代码里手写 token 的工作,OAuth 授权一次后连接长期有效,之后所有 Addresszen 调用都复用该连接。
工具发现:先看货再下单,永远不要硬编码
执行任何工作流之前,必须通过RUBE_SEARCH_TOOLS发现当前可用的工具。文档给出的首次发现示例:
RUBE_SEARCH_TOOLS queries: [{use_case: "Addresszen operations", known_fields: ""}] session: {generate_id: true}调用后会返回四类关键信息:
- 可用的工具 slug(tool slugs);
- 每个工具的输入 schema(input schemas);
- 推荐执行计划(recommended execution plans);
- 已知的坑(known pitfalls)。
为什么必须这样做:Addresszen 或其他任何 Composio toolkit 的接口都可能升级演进,硬编码 slug 或参数会让工作流在 schema 变更后静默失败。搜索是保证 schema 合规的前提,也是本 Skill 反复强调的第一纪律。
核心工作流:三层模式完整拆解
Step 1:发现可用工具
在已有会话中继续搜索具体任务对应的工具:
RUBE_SEARCH_TOOLS queries: [{use_case: "your specific Addresszen task"}] session: {id: "existing_session_id"}注意此处复用了已存在的session_id,而非生成新会话——这体现了"会话复用"的纪律:同一工作流内复用会话 ID,新工作流才生成新 ID。
Step 2:检查连接状态
RUBE_MANAGE_CONNECTIONS toolkits: ["addresszen"] session_id: "your_session_id"在执行任何工具前先确认连接为ACTIVE,避免在未授权状态下产生无效调用。
Step 3:执行工具
RUBE_MULTI_EXECUTE_TOOL tools: [{ tool_slug: "TOOL_SLUG_FROM_SEARCH", arguments: {/* schema-compliant args from search results */} }] memory: {} session_id: "your_session_id"执行阶段有三个要点:tool_slug必须来自 Step 1 的搜索结果;arguments必须严格遵循搜索结果返回的字段名与类型;memory参数必须始终携带,即使为空也要传{}。
已知陷阱:六条必须遵守的纪律
文档以清单形式列出了六个高频踩坑点,逐条展开如下:
| 陷阱 | 正确做法 | 原因 |
|---|---|---|
| 跳过工具搜索 | 每次执行前先调RUBE_SEARCH_TOOLS | 工具 schema 会变化,硬编码 slug/参数必然过时 |
| 忽略连接状态 | 执行前用RUBE_MANAGE_CONNECTIONS确认ACTIVE | 未激活连接会直接导致执行失败 |
| 参数不按 schema | 使用搜索结果中的精确字段名和类型 | 字段名拼写或类型不符会被网关拒绝 |
| 遗漏 memory 参数 | RUBE_MULTI_EXECUTE_TOOL调用中始终携带memory,即使为空{} | 该参数是协议必需项 |
| 会话混用 | 同一工作流内复用 session ID,新工作流生成新 ID | 会话上下文与状态一致性 |
| 忽略分页 | 检查响应中的分页 token,持续拉取直到数据完整 | 列表类接口默认只返回首页数据 |
快速参考:五个 Rube 操作一览
| 操作 | 方式 |
|---|---|
| 查找工具 | RUBE_SEARCH_TOOLS,传入 Addresszen 相关的 use_case |
| 建立连接 | RUBE_MANAGE_CONNECTIONS,toolkit 填addresszen |
| 执行工具 | RUBE_MULTI_EXECUTE_TOOL,使用搜索发现的 tool slugs |
| 批量操作 | RUBE_REMOTE_WORKBENCH,配合run_composio_tool() |
| 获取完整 schema | RUBE_GET_TOOL_SCHEMAS,适用于返回schemaRef的工具 |
其中RUBE_REMOTE_WORKBENCH适用于需要在远程沙箱中批量执行或编写复合逻辑的场景;当搜索返回的工具携带schemaRef引用(而非内联 schema)时,则用RUBE_GET_TOOL_SCHEMAS拉取完整定义后再构造参数。
模式复用:同一套流程驱动整个 composio-skills 家族
值得强调的是,这份 Skill 的价值不止于 Addresszen 本身。从仓库目录结构可以看出,composio-skills 下包含数百个按 toolkit 命名的同类 Skill(如 zoho-automation、openai-automation 等),它们的骨架完全一致:frontmatter 声明requires.mcp: [rube]→ 前置条件 → Rube MCP 配置 → 工具发现 → 三步工作流 → 陷阱清单 → 快速参考表。
因此,当你在 Codex 中为另一个服务(Zoho、Slack、Gmail 等)编写或触发自动化时,只需把本文中的addresszentoolkit 名称与 use_case 替换为目标服务,其余流程——先RUBE_SEARCH_TOOLS发现、再RUBE_MANAGE_CONNECTIONS确认激活、最后RUBE_MULTI_EXECUTE_TOOL按 schema 执行——可以原样套用。这种"一份 Skill 模板、全生态通用"的设计,正是该仓库作为 Codex 实用技能精选集的核心组织方式。
【免费下载链接】awesome-codex-skillsA curated list of practical Codex skills for automating workflows across the Codex CLI and API.项目地址: https://gitcode.com/GitHub_Trending/aw/awesome-codex-skills
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考