wp-abilities-api – WordPress 能力注册与暴露 Skill

3周前更新 9 0 0 0

wp-abilities-api 是指导 AI Agent 在 WordPress 中通过 Abilities API 注册、暴露和调用可复用能力的开发型 Skill,适合把主题或插件功能接入 Agent 工具调用流程的开发者。

Skill 安装

多 Agent 安装
npx skills add https://github.com/automattic/agent-skills --skill wp-abilities-api

使用 npx skills 快速安装,支持将 Skill 添加到多个兼容的 AI Agent。

Skill 调研报告

Skill 详细介绍

automattic/agent-skills#wp-abilities-api 是 Automattic 官方 agent-skills 仓库中的一个 Skill,围绕 WordPress 的 Abilities API 展开。它本身不是独立运行的软件,而是一套面向 AI Agent 的指令与知识集合,用来帮助 Agent 正确地理解、调用和围绕 WordPress Abilities API 开展工作。

它主要解决什么问题

WordPress 在持续推进「能力(Abilities)」这一抽象层,目的是让插件、主题和外部系统用统一的方式对外暴露可执行能力。Abilities API 就是这套机制的编程接口。对于不熟悉 WordPress 内部约定的人来说,直接上手这套 API 有几个门槛:能力如何注册、如何声明输入输出、如何做权限校验、如何暴露给 Agent 或 REST 层。这个 Skill 的作用,就是把这些约定整理成 Agent 可直接使用的操作指南。

核心能力

– 帮助 Agent 理解 WordPress Abilities API 的概念模型与使用方式
– 指导编写、注册、暴露 WordPress 能力(Abilities)
– 在 WordPress 插件 / 主题开发场景中,生成符合 Abilities API 约定的代码
– 辅助将已有功能改造成可被 Abilities 机制调用的形式

它不是什么

– 不是 WordPress 核心的一部分,也不替代 WordPress 本体
– 不是 Abilities API 的运行时库
– 不是安装即生效的插件
– 不会自动修改你的站点,除非 Agent 在你授权下执行了代码

工作方式

它本质上属于「开发指南 + 指令集」类型的 Skill。Agent 加载后,在处理 WordPress 相关开发任务时,会依据这个 Skill 提供的约定来生成代码、解释概念、给出结构建议。真正的执行仍然由 WordPress、PHP 运行环境和 Agent 的工具调用完成。

适合谁

– 正在开发 WordPress 插件、主题,并希望接入 Abilities API 的开发者
– 想让自己的 WordPress 功能被 AI Agent 调用的团队
– 需要快速理解 Abilities API 设计意图的人

不适合什么需求

– 只想普通建站、发文、装插件的用户
– 与 WordPress 无关的通用 PHP 开发
– 期望安装后自动获得某个线上服务能力的需求

Skill 安全评估

总体判断:来源为 Automattic 官方仓库,可信度较高。它本身是一个指令型 Skill,不携带独立可执行程序,主要风险来自「Agent 按它的指导去修改 WordPress 代码」这一过程,而不是 Skill 文件本身。

来源可信度

– 组织为 Automattic(WordPress.com 与 WordPress 核心的重要参与方),属于一手官方来源
– 仓库为 agent-skills,属于官方维护的 Skill 集合
– 相比第三方同名或转载版本,优先信任该来源

真正需要关注的风险

– 文件写入与代码修改:Agent 可能按 Skill 指导直接改写你的插件或主题 PHP 文件。请确保在版本控制(如 Git)下操作,改动可回退
– Shell 执行:如果 Agent 被允许执行 `wp` 命令或 PHP 测试,可能影响本地或线上环境。建议在与生产环境隔离的站点上先验证
– 权限校验逻辑:Abilities API 涉及「谁能调用哪个能力」。若生成的权限校验代码有误,可能造成能力被过度暴露。上线前应人工复核权限判断部分
– 网络访问:如果 Agent 需要抓取 WordPress 官方文档辅助编写,会涉及联网;这一步通常风险低,但要留意不要把站点凭证一起发出
– Prompt Injection:若把不可信的外部内容(用户提交、第三方页面)直接喂给 Agent,可能诱导其生成非预期代码。处理外部内容时保持警惕

降低风险的做法

– 在开发环境或临时站点先试用,而不是直接对生产站点
– 关闭 Agent 的自动 Shell 执行权限,让它只生成代码,命令由你手动运行
– 关键改动前先提交或备份
– 上线前人工检查所有与用户权限、能力暴露相关的代码

不建议把它描述成「绝对安全」或「完全无风险」。任何会改写代码的 Skill,安全性都同时取决于 Skill 本身和你的使用方式。

Skill 使用要求

一、Agent / 客户端

该 Skill 来自 Automattic 官方 agent-skills 仓库,面向支持 Agent Skills 机制的客户端。官方没有公布一份完整的第三方 Agent 兼容列表。

– Claude Code:Skill 机制成熟,可以优先尝试
– Codex、Cursor、Trae、OpenClaw、WorkBuddy 等:在支持 Skills、自定义指令或类似加载机制的环境中,通常也可以尝试加载。不同客户端的加载方式与兼容程度可能不同,具体以对应客户端当前版本为准
– 如果当前客户端没有 Skill 加载能力,可以手动把 Skill 内容作为上下文提供给 Agent

二、运行环境 / 依赖

| 项目 | 要求 |
|—|—|
| Agent | 支持 Skills 或可加载自定义指令的客户端 |
| 目标环境 | 一个可运行的 WordPress 站点(本地或远程) |
| PHP | 需与你的 WordPress 版本匹配,未在此 Skill 中另行规定 |
| Git | 可选,推荐用于回退代码改动 |
| 网络 | 仅在需要查阅官方文档或让 Agent 联网时涉及 |

Skill 本身没有硬性规定 Node.js / Python 版本,也没有规定必须使用 Docker。是否需要 `wp-cli` 取决于你实际执行的操作,官方未把它列为硬性依赖。

三、权限

– 文件读取:需要,用于读取现有插件 / 主题代码
– 文件写入:通常需要,用于生成或修改 PHP 文件
– Shell:可选。若希望 Agent 自动运行测试或 `wp` 命令则需要;若只想要代码建议,可以关闭
– 网络:可选,取决于是否让 Agent 查阅在线资料
– WordPress 站点访问权限:如果你希望 Agent 直接验证改动,需要相应访问方式

四、账号 / API Key

– Skill 本身不需要账号、API Key 或 Token
– 但如果你要把生成的 Abilities 对接到第三方服务,或让 Agent 访问线上 WordPress,可能需要在对应环境配置凭证
– 这两件事要分开看:Skill 不需要凭证,不代表你实际项目不需要

最小使用条件

– 一个支持 Skills 或自定义指令的 Agent 客户端
– 一个可运行的 WordPress 站点用于验证
– 代码在版本控制或可备份状态下操作
– 对 Abilities API 涉及的功能有明确范围

Skill 安装、使用与卸载教程

一、安装

LemonAIKit 本页面已经提供该 Skill 的安装指令,直接复制并粘贴到对应 Agent 或终端执行即可,无需在此重复长篇安装步骤。

如果不确定自己的 Agent 怎么装,可以直接问当前 Agent:

如何安装 automattic/agent-skills#wp-abilities-api?

如何在 Claude Code 中安装 automattic/agent-skills#wp-abilities-api?

如何在 Cursor 中安装 automattic/agent-skills#wp-abilities-api?

让 Agent 根据自己的 Skill 加载与管理机制给出对应步骤,通常比照搬通用命令更稳妥。

二、安装后如何使用

安装后通过自然语言描述任务即可触发,不需要记特殊命令。适合交给它的任务包括:编写或改造 WordPress 能力、解释 Abilities API 用法、生成符合约定的插件代码等。

使用 wp-abilities-api,帮我在这个 WordPress 插件里注册一个新的能力,并说明需要哪些权限校验。

使用 wp-abilities-api,把现有的这段 PHP 功能改造成通过 Abilities API 暴露的形式。

使用 wp-abilities-api,解释一下 WordPress Abilities API 的注册流程和常见注意事项。

描述需求时尽量说明:目标 WordPress 版本、插件结构、能力要对谁开放、是否需要权限限制。信息越具体,生成结果越可用。

三、卸载

不同 Agent 的 Skill 存放位置和管理方式不同,通常没有统一的卸载命令。稳妥方式有两种:

– 用对应 Agent 或 Skill 管理器提供的删除功能,移除这个 Skill
– 直接问当前 Agent:

如何卸载 automattic/agent-skills#wp-abilities-api?

如果官方在文档中提供了明确的卸载方式,以官方说明为准。

常见问题

1. 这个 Skill 会自己修改我的 WordPress 站点吗?

不会自动修改。它是指令型 Skill,是否真正改动代码取决于 Agent 的行为和你授予的权限。关闭自动写文件或 Shell 权限后,它只会给出建议。

2. 我可以只让它生成代码,不让它动我的文件吗?

可以。你可以要求 Agent 只输出代码片段和修改说明,由你自己粘贴到项目中。这是降低风险、也便于人工复核的常用做法。

3. 同一个 Skill 能同时装到多个 Agent 里吗?

通常可以。Skill 一般以文本或配置文件形式存在,装到不同客户端互不冲突,但各客户端的加载路径和命名方式可能不同,建议各自按该客户端的方式安装。

4. Skill 更新后需要重新安装吗?

取决于你使用的 Agent 如何管理 Skill。部分客户端会在更新时重新拉取,部分需要手动更新。具体以对应客户端的机制为准。

5. 装完 Agent 却没反应,可能是什么原因?

常见原因包括:Skill 未放在 Agent 识别的目录、客户端版本不支持 Skills、需要重启会话才生效、或任务描述里没有明确用到 WordPress / Abilities 相关上下文。可以先重启会话,再用明确包含「WordPress Abilities API」的提问测试。

6. 它和直接用 WordPress 官方文档有什么区别?

官方文档适合人阅读,这个 Skill 把相关约定整理成 Agent 可直接遵循的指令,让 Agent 在生成代码时更贴近 Abilities API 的使用方式。两者是互补关系,工程上仍建议对照官方文档核对关键实现。

7. 中国大陆使用是否有额外要求?

Skill 本身没有针对特定地区的网络限制。实际是否顺畅取决于你访问 GitHub、WordPress 官方文档等资源时的网络状况,以及在本地还是远程站点上验证。

Skill 更新日志

版本列表
无版本号
更新 wp-abilities-api 技能,加入正确的注册模式 Abilities API 需要特定的钩子顺序,并且有一些重要参数 未被完整记录。 变更: - 记录关键钩子顺序(分类先于能力) - 警告因注册时机不当而触发 _doing_it_wrong() - 添加完整的注册 PHP 代码示例 - 记录 input_schema、output_schema、permission_callback 参数 - 添加参数参考表 - 链接到官方 Abilities API 文档
无版本号
修复 YAML frontmatter 引号以兼容 strictyaml 在所有 SKILL.md 文件中为 description 和 compatibility 字段加引号, 以防止 strictyaml 将冒号误解析为映射键。 将 wp-playground 添加到 CI 验证列表。
无版本号
添加 skillpack 构建/安装以及 WP 6.9 兼容性契约
无版本号
添加 Interactivity 和 Abilities API 技能

暂无评论

none
暂无评论...