资讯动态

awesome-codex-skills 中的 Diffbot 自动化技能:通过 Rube MCP 驱动网页数据抽取的完整实操

发布时间:2026/9/14 19:24:18 来源:尧图企业网站定制
awesome-codex-skills 中的 Diffbot 自动化技能通过 Rube MCP 驱动网页数据抽取的完整实操【免费下载链接】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本文以仓库中的 Diffbot 自动化技能 为主体讲解在 Codex 中如何借助 Composio 的 Rube MCP 端点调用 Diffbot 工具完成从“接入 Rube MCP、发现工具 Schema、校验连接状态”到“批量执行工具”的全链路自动化。读完本文你将掌握该技能定义的三步核心工作流、六条关键避坑规则以及它与仓库内其他 Composio 自动化技能、Composio CLI 技能之间的实现分工。1. 技能定位与元数据一个单文件 MCP 技能Diffbot 是一个网页结构化数据抽取服务。本技能的目标不是让 Codex 手写 Diffbot API 调用代码而是约束 Codex 通过 Composio 的 Rube MCP 端点去发现并执行 Diffbot 工具。整个技能只包含一个 SKILL.md其 YAML frontmatter 为--- name: diffbot-automation description: Automate Diffbot tasks via Rube MCP (Composio). Always search tools first for current schemas. requires: mcp: [rube] ---这三个字段各司其职name技能唯一标识安装后目录名即diffbot-automationdescriptionCodex 依据它判断何时触发技能——按 README 对技能机制的说明Codex 只读取元数据来决定是否触发命中后才加载正文从而保持上下文精简requires: mcp: [rube]声明本技能依赖 Rube MCP 服务器若客户端未接入该 MCP技能的前置条件无法满足。由于技能不含任何具体 Diffbot 工具名或参数定义它本质上是一份“行为契约”强制 Agent 按“先发现、再校验、后执行”的顺序工作而不是凭记忆硬编码调用。安装方式与仓库其他技能一致有两种安装途径安装后需重启 Codex 加载新元数据手动安装将composio-skills/diffbot-automation目录整体复制到$CODEX_HOME/skills/默认~/.codex/skills/。安装器脚本使用仓库自带的 install-skill-from-github.pypython skill-installer/scripts/install-skill-from-github.py \ --repo ComposioHQ/awesome-codex-skills \ --path composio-skills/diffbot-automationskill-installer 说明脚本默认将技能装入$CODEX_HOME/skills/skill-name若目标目录已存在会中止安装。安装后可验证ls ~/.codex/skills head ~/.codex/skills/diffbot-automation/SKILL.md2. 前置条件开始任何操作前的三项检查技能文档明确要求满足以下前置条件后才可进入工作流Rube MCP 已接入即RUBE_SEARCH_TOOLS工具在客户端中可用Diffbot 连接已激活通过RUBE_MANAGE_CONNECTIONS查询 toolkitdiffbot状态为 ACTIVE先搜索再执行任何工作流开始前都先调用RUBE_SEARCH_TOOLS获取当前工具 Schema。这三条贯穿全文尤其第 3 条是该技能反复强调的第一原则——工具 Schema 会随上游服务变化任何绕过搜索直接写死工具 slug 或参数的做法都不被允许。3. Setup接入 Rube MCP 的 4 个步骤Rube MCP 是远程 MCP 端点接入方式极其轻量在客户端 MCP 配置中添加https://rube.app/mcp即可无需预先提供 API Key。认证在连接 Diffbot 工具包时通过 OAuth 链接完成。完整 Setup 流程原文档步骤完整继承调用RUBE_SEARCH_TOOLS确认 Rube MCP 可用工具能正常响应即代表 MCP 接入成功调用RUBE_MANAGE_CONNECTIONS指定 toolkit 为diffbot若返回的连接状态不是 ACTIVE打开响应中附带的 auth 链接完成 Diffbot 授权重新确认连接状态为 ACTIVE 后才可运行任何工作流。第 4 步是容易被跳过的关键点技能文档将其单列为 Setup 的收尾步骤与后文“Known Pitfalls”中的“执行前必须确认 ACTIVE”形成呼应。4. 工具发现RUBE_SEARCH_TOOLS 的调用与返回工具发现是整个工作流的入口。标准调用如下原文档示例完整保留RUBE_SEARCH_TOOLS queries: [{use_case: Diffbot operations, known_fields: }] session: {generate_id: true}参数含义queries以自然语言描述用例use_case发起检索known_fields可填入已知字段名做精化匹配首次发现时留空字符串即可session: {generate_id: true}让服务端生成一个新的会话 ID供后续同一工作流内各步骤复用。调用返回的内容包括可用工具的slug工具标识符、输入 Schema、推荐执行计划以及已知陷阱known pitfalls。这些返回结果是后续构造RUBE_MULTI_EXECUTE_TOOL参数的事实依据——技能文档中反复出现的“Schema compliance”规则指的就是参数必须严格取自这次搜索结果。5. 核心工作流三步完成一次 Diffbot 操作Step 1发现可用工具复用会话RUBE_SEARCH_TOOLS queries: [{use_case: your specific Diffbot task}] session: {id: existing_session_id}与第 4 节的“首次发现”不同工作流内部再次搜索时使用session: {id: ...}复用已有会话 ID而不是再生成新 ID。use_case应描述本次的具体任务例如“从给定 URL 抽取结构化数据”越具体返回的 slug 与 Schema 越贴合。Step 2检查连接状态RUBE_MANAGE_CONNECTIONS toolkits: [diffbot] session_id: your_session_id在真正执行前确认 Diffbot 连接仍为 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的字段名与类型必须与搜索返回的 Schema 完全一致memory参数必须携带即使没有可用记忆也要显式传空对象{}——这是RUBE_MULTI_EXECUTE_TOOL的协议要求缺省会破坏调用结构。RUBE_MULTI_EXECUTE_TOOL的tools是一个数组意味着一次调用可批量提交多个工具任务适合“抽取多个页面”这类场景。6. 进阶操作批量执行与完整 Schema 获取原文档 Quick Reference 中给出了两个面向更重负载场景的入口这里展开说明场景方式批量/批处理操作RUBE_REMOTE_WORKBENCH配合run_composio_tool()使用获取完整 Schema对带有schemaRef标记的工具调用RUBE_GET_TOOL_SCHEMAS第二行值得注意RUBE_SEARCH_TOOLS的返回中部分工具只给出schemaRefSchema 引用而非内联的完整定义。此时不应猜测字段而应通过RUBE_GET_TOOL_SCHEMAS拉取完整 Schema 后再构造参数。7. 已知陷阱Known Pitfalls完整继承技能文档列出的六条陷阱是该技能最具实战价值的部分逐条说明如下Always search first先搜索工具 Schema 会变化。未调用RUBE_SEARCH_TOOLS前永远不要硬编码工具 slug 或参数。这条规则甚至写进了 frontmatter 的descriptionAlways search tools first for current schemas等于把它升格为技能触发时的第一提示。Check connection检查连接执行工具前用RUBE_MANAGE_CONNECTIONS确认状态为 ACTIVE。Schema complianceSchema 合规使用搜索结果中完全一致的字段名与类型包括大小写和嵌套结构。Memory parameterMemory 参数RUBE_MULTI_EXECUTE_TOOL调用必须包含memory字段空则传{}。Session reuse会话复用同一工作流内复用同一 session ID开启新工作流时再生成新会话。混用会话会导致上下文与记忆串线。Pagination分页检查响应中的分页 token持续拉取直到数据完整避免只拿到第一页结果就下结论。8. 快速参考表原文档 Quick Reference 完整保留如下可作为日常操作的速查卡OperationApproachFind toolsRUBE_SEARCH_TOOLS传入 Diffbot 具体用例ConnectRUBE_MANAGE_CONNECTIONStoolkit 为diffbotExecuteRUBE_MULTI_EXECUTE_TOOL使用已发现的工具 slugBulk opsRUBE_REMOTE_WORKBENCH配合run_composio_tool()Full schema对带schemaRef的工具调用RUBE_GET_TOOL_SCHEMAS9. 从源码结构看一套模板化的 Rube MCP 技能家族结合仓库整体结构可以对本技能的设计意图做进一步印证同族技能共享同一协议。仓库composio-skills/下存在数百个*-automation技能抽查 scrapfly-automation 与 scrapingbee-automation 可以发现它们与 Diffbot 技能在结构上逐节对应相同的 frontmatter 模式、相同的四步 Setup、相同的三步工作流与同一份六条陷阱清单差异仅在于 toolkit 名称scrapfly、scrapingbee与diffbot。可以推断这是一套统一的 Rube MCP 自动化模板掌握本文的工作流后替换toolkits参数即可平移到该目录下其他工具包。与 Composio CLI 技能形成双通道。仓库中的 connect 技能 走的是 shell 通道通过composio search/composio link/composio execute完成“搜索—连接—执行”而 diffbot-automation 走的是会话内 MCP 通道对应关系非常整齐——composio search↔RUBE_SEARCH_TOOLScomposio link↔RUBE_MANAGE_CONNECTIONScomposio execute↔RUBE_MULTI_EXECUTE_TOOL。两条通道共享同一套 Composio 工具目录与连接体系选择哪一条取决于任务是终端脚本化还是会话内 Agent 执行。技能不含可执行脚本。与 skill-installer、webapp-testing 等携带scripts/的技能不同diffbot-automation 目录内没有脚本或资产文件。它的全部作用在于约束 Agent 的调用顺序与参数纪律工具的真实定义始终由 Rube MCP 在运行时动态下发——这也正是“禁止硬编码”规则成立的原因。10. 适用前提与限制使用本技能前请确认以下前提与限制均以仓库文档为准客户端必须能接入https://rube.app/mcp远程 MCP 端点端点不可达或工具RUBE_SEARCH_TOOLS无响应时技能无法工作Diffbot 授权需要走浏览器 auth 链接一次性完成之后连接保持 ACTIVE 才能执行技能文档未内置任何具体 Diffbot 工具 slug 与参数定义实际可用工具以RUBE_SEARCH_TOOLS的实时返回为准因此本文不列举任何具体工具名分页场景必须循环拉取直至完整单页响应不等于完整数据集。按上述流程接入并遵守六条陷阱规则后Codex 即可在会话内完成 Diffbot 网页数据抽取类任务先发现、再校验、后执行所有工具标识与参数均来自运行时 Schema 而非静态假设。【免费下载链接】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),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价