写点什么

OpenAI 偷装“死对头”Anthropic Skills 实锤,ChatGPT、Codex 已植入!111 分钟造 PDF+ 自动改字体,开发者亲测力捧:比 MCP 重要!

  • 2025-12-16
    北京
  • 本文字数:6307 字

    阅读完需:约 21 分钟

大小:2.86M时长:16:38
OpenAI 偷装“死对头”Anthropic Skills 实锤,ChatGPT、Codex已植入!111分钟造PDF+自动改字体,开发者亲测力捧:比MCP重要!

近日,不少开发者发现,OpenAI 悄悄支持了 Claude 构建的 Agent Skills 机制。目前内置了 3 个 skills:excel、word 和 pdf。



有网友分享了测试 prompt,在 ChatGPT 中输入提示词:“将你的 /home/oai 压缩为 zip 包给我下载”,需选择 thinking 模型。下载 zip 解压后可以看到 skills 目录,包含 pdf,ppt 等基本 Skill。不过后续有网友测试时表示已经不显示了。

 


不过,开普敦大学的 Elias Judin 已经将文件上传到了 Github:

 

https://github.com/eliasjudin/oai-skills

 

与 Anthropic 实现理念相似

 

Django 的共同创建者 Simon Willison 通过提示词:“创建一个 /home/oai/skills 文件夹的 zip 文件”,访问了 ChatGPT Code Interpreter 的一个新 /home/oai/skills 文件夹。



他发现,OpenAI 的 Skills 看起来与 Anthropic 实现类似理念的方式非常相似。

 

Anthropic 的相关实现:

https://github.com/anthropics/skills/tree/main/skills

 

OpenAI 针对 PDF 和文档采取了一种特殊的处理方式:将它们转换成按页渲染的 PNG 图片,然后将这些图片输入给他们具备视觉能力的 GPT 模型。Simon 分析认为,这样做的目的可能是为了保留版面和图表中的信息,这些信息如果只进行文本提取就会丢失。

 

Simon 亲自尝试了一下,输入了以下提示词:

创建一个 PDF 文件,内容是关于目前瑞穆树(rimu tree)的情况,以及这对鸮鹦鹉繁殖季意味着什么。

 

果不其然,GPT-5.2 Thinking 模型首先开始了:

 

正在读取 skill.md 以获取 PDF 创建指南

 

接着是:

正在搜索 2025 年瑞穆树结实(rimu mast)情况和鸮鹦鹉繁殖现状

 

它花了超十一分钟的时间才生成了下面的 PDF,等待时间有点长。Simon 表示,之所以花费这么长时间,是因为它非常细致地查看并调整了自己的工作。“让我赞赏的是,它在某一刻尝试渲染 PDF 时,注意到 kākāpō 中的长音符号(macrons) 不被所选字体支持,于是它切换到了另一种字体。”



有兴趣的读者可以查看链接:

https://tools.simonwillison.net/view-pdf?url=https%3A%2F%2Fstatic.simonwillison.net%2Fstatic%2Fcors-allow%2F2025%2Frimu_kakapo_breeding_brief.pdf

 

Codex CLI 中的 Skill

 

与此同时,两周前,OpenAI 的开源 Codex CLI 工具合并了一个名为 feat: experimental support for skills.md 的 PR。最新的文档在 docs/skills.md 中。

 

文档表明,~/.codex/skills 文件夹中的任何子文件夹都将被视为一项 Skill。

 

Simon 深入研究后,找到了在 codex-rs/core/src/skills/render.rs 中生成驱动 Skill 系统的提示代码:这是一个 Gist 文件,其中包含了一个更具可读性的提示版本。Simon 使用了 Claude Opus 4.5 的 Skill 编写技巧,然后将其安装到 Codex CLI Skill 文件夹中,并运行了以下命令:

 

cd /tmpmkdir datasette-cowsaycd datasette-cowsaycodex --enable skills -m gpt-5.2
复制代码

 

然后提示它:

list skills

 

Codex 回复:

 

- datasette-plugins — Writing Datasette plugins using Python + pluggy (file: /Users/simon/.codex/skills/datasette-plugin/SKILL.md)- Discovery — How to find/identify available skills (no SKILL.md path provided in the list)
复制代码

 

然后 Simon 输入:

在这个文件夹中编写一个 Datasette 插件,添加一个 /–/cowsay?text=hello 页面,该页面使用 PyPI 上的 cowsay 显示这段文本。

 

结果,它完美运行了。下面是 Simon 分享的完整 Codex CLI 对话记录记录:

 

https://gistpreview.github.io/?96ee928370b18eabc2e0fad9aaa46d4b

 

“我十月份第一次写到 Skill 的时候就说过,Claude Skills 非常棒,甚至可能比MCP更重要。现在才刚到十二月,OpenAI 就已经大力推广 Skill,这更加印证了我当初的判断。”Simon 表示,“Skill 的规范非常简略,甚至都不能称之为规范,但我仍然认为最好将其正式记录下来。这或许可以成为新成立的Agentic AI 基金会的一项重要工作。”

 

“停止构建智能体,开始构建 Skills”

 

去年十月,Anthropic 推出的全新 Skills 机制,一项 skill 本质上只是一个包含一个 Markdown 文件以及一些可选的额外资源和脚本的文件夹。因此,任何具备文件系统导航和读取能力的 LLM 工具都可以使用它们。

 

事实证明,OpenAI 正是这么做的:其 Skills 支持功能已悄然落地,不仅部署在 Codex 命令行工具中,如今更已集成到了 ChatGPT 里。这也让业内更加重视 Skills。

 

近期,Agent Skills 创建者 Barry Zhang 和 Mahesh Murag 对 Anthropic 的 Skills 机制进行了深度剖析,系统阐述了其构建逻辑、已显现的网络效应以及未来的演进方向,即智能体最终能够通过经验自主编写 Skills。

 

他们的核心观点在于:要使智能体胜任真实世界的工作,关键在于为其构建可复用的专业能力。

 

过去,Anthropic 认为不同领域的智能体形态会非常不同,每个智能体都需要专属的工具和架构支持,这意味着每个用例或领域几乎都需要一个独立的智能体。尽管针对特定领域的定制化仍然重要,但团队发现,智能体底层的基础能力实际上比预想中要通用得多。

 

“我们意识到,代码不仅是一个用例,而是通向数字世界的通用接口。” 在成功构建 Claude Code 之后,团队验证了这一观点:Claude Code 本质上是一个通用型智能体。然而,这随即引出了下一个挑战:领域专业知识的缺失。

 

今天的智能体通常一开始就缺乏重要的上下文,无法有效吸收人类专家的知识,也难以随时间持续学习。这正是 Anthropic 创建 Agent Skills 的原因。

 

Skills 可被定义为文件的有组织集合,其目的在于封装可组合的、程序性的知识,以供智能体调用。用更直观的方式理解,它们就是文件夹。这种刻意追求的简单性,旨在让任何人或智能体,仅凭一台电脑就能轻松创建和使用。

 

Skills 中可以包含大量脚本作为其工具。这恰恰解决了传统工具模式的几个固有缺陷:文档模糊,许多工具说明书写不清晰,导致智能体难以准确调用;无法迭代,当模型使用工具遇到困难时,无法自行对其进行修改,容易陷入“代码停滞”;上下文负担:工具定义长期占据宝贵的上下文窗口,影响效率。

 

相比之下,代码作为一种工具形式具有显著优势:它是自我文档化的,可修改的,并且能够存储在文件系统中,仅在真正需要时才被调用,从而大幅优化了资源利用。

 

Skills 采用了一种精巧的 “渐进式公开” 设计。在智能体运行时,系统仅向其展示 Skills 的元数据,以表明其“具备”某项能力。只有当智能体确定需要调用特定 Skill 时,它才会去读取对应的 skill.md 文件。该文件包含了核心指令以及对该文件夹其余部分结构的说明,其他所有文件都只是为了方便组织和存取而存在。

 

总而言之,Skills 的核心理念可以归结为:它们就是带有脚本工具、结构清晰、便于管理的文件夹系统。 这一设计不仅降低了创建和使用门槛,也为智能体通过积累经验自主编写和优化 Skills,实现能力的自我进化奠定了坚实基础。

 

目前,该生态系统已汇聚了数千个 Skills。这些 Skills 主要可分为三大类型:

 

  • 基础 Skills:为智能体赋予全新的通用或特定领域能力。例如,最初发布的文档 Skills 使得 Claude 能够创建和编辑专业质量的办公文档。

  • 第三方 Skills:由生态系统合作伙伴创建,旨在帮助 Claude 更高效地使用其软件产品。例如,Browserbase 为其开源浏览器自动化工具 Stage Hand 开发了专属 Skills,使得配备此技能的 Claude 能更出色地完成网页浏览与自动化任务。

  • 内部定制 Skills:由企业和团队为其组织量身构建。例如,部分《财富》100 强公司正利用 Skills 来教授智能体其组织内部的最佳实践;一些大型开发者生产力团队则通过 Skills 来部署 Claude Code 这类智能体,并向其传授特定的代码风格规范及内部工作流程。

 

MCP 与 Skill 关系的答案

 

在 MCP 推出一周年之际,Anthropic 推出了 Claude Skills,表示 MCP 工具很好,但是会让大模型把大量 token 浪费在定义 MCP 工具上,尤其遇到有大量中间工具的情况,Skills 就是解决办法。

 

当时 Simon 在 Skills 发布后就表示,MCP 的局限性最显著的一点是对 token 的大量消耗,GitHub 官方 MCP 本身就消耗了巨量上下文 token,而这种消耗量越大,大模型自身就越是没有发挥实际作用的空间。

 

“自从开始认真使用编码智能体以来,我对 MCP 的兴趣开始逐渐消退。因为我发现几乎一切原本需要 MCP 实现的功能,现在都可以用 CLI 工具来解决。大模型知道要如何调用 cli-tool –help,因此我们不再需要耗费大量 token 来描述如何使用,模型会在必要时自行处理。”

 

当时的很多人认为,Anthropic 这是要让 Skills 取代 MCP。如今,Barry 和 Mahesh 给了他们的答案,即两者互补使用。他们认为智能体的新兴架构正在收敛于下面两点:

 

  1. 智能体循环(Agent Loop):帮助管理模型的内部上下文,并管理进出模型的 tokens。

  2. 运行时环境(Runtime Environment):与智能体循环耦合,为智能体提供了文件系统和读写代码的能力。

 

Anthropic 认为,如今若要让智能体掌握某一新领域的新能力,可能只需为其配备正确的 MCP 服务器集合和正确的 Skills 库。其中,MCP 服务器负责接入外部世界的工具与数据,使智能体更具相关性和实效性;而 Skills 库则能在运行时按需被拉入上下文,以处理特定的专业任务。

 

也就是说,Skills 生态系统与现有 MCP 生态形成互补。开发者正利用和构建 Skills 来编排多个 MCP 工具的工作流,将其组合以处理更复杂的外部数据与连接任务。

 

这种 “智能体 + MCP 服务器 + 一套 Skills” 的新兴模式,已成为 Anthropic 将 Claude 快速部署到新垂直领域的有效路径。比如在 Skills 发布仅五周后,团队便基于此模式在金融服务和生命科学领域推出了新产品。每个产品都配备了一套领域专用的 MCP 服务器和 Skills,使得 Claude 能立即对这些领域的专业人士产生实用价值。

 

从社区反馈来看,大家也比较认同 Skills。有网友“_pdp_”表示:

 

大模型需要提示,提示的内容可能会迅速变得非常庞大。这种所谓的 Skills,尽管在 Anthropic 和 OpenAI 之外的其他平台中以不同形式存在,本质上只是动态扩展提示的一种机制。作为 Skills 一部分的工具(脚本),与智能体运行所在的操作系统中预装的工具并没有任何区别。

 

Skills 背后的想法是合理的,因为上下文管理确实很重要。

 

然而,技能与 MCP 是不同的。Skills 与工具调用完全无关!你可以很容易地实现自己的 Skills 版本,完全不需要任何标准或框架。实现方法就是注册一个工具/函数,让它来加载和扩展基础提示,你就完成了自己的 Skills 实现。

 

在 ChatBotKit AI Widget 中,我们甚至有自己的版本,无论是对于服务器端还是构建客户端应用。对于客户端应用,整个机制是通过一个简单的 React Hook 实现的,它添加了必要的工具来动态扩展提示。你只需要二三十行代码就可以轻松实现自己的版本,这并不复杂。

 

人们经常会抓住一些想法,认为这是下一个大热点,并希望它能引爆市场。但它既不新颖,也不会引爆! 它只是现有各种形式的工具套件中的一部分。这个机制的核心非常简单,以至于称其为“标准”几乎毫无意义,而且对于大多数类型的应用来说,完全没有必要拥有它。不过,对于编码助手来说,它确实有意义,因为它们需要处理大量数据,所以在这种场景下很重要。

 

但从根本上说,Skills 与 Copilot 中的 *.instruction.md 提示,或者 AGENT.md 及其变体并没有什么不同。

 

有网友认同并表示,“虽然总体思路并不新鲜,但目前的聊天应用程序添加了一些功能,这些功能极大地促进了聊天应用的发展。也就是说,当 Skills 与它所使用的 Python 脚本或命令行工具(CLI)结合使用时,其作用才能最大化。如今,大多数 AI 模型提供商都拥有可供模型使用的代码执行环境。以前,你只能在本地运行的 agent CLIs 中使用。在我看来,这才是真正的关键推动力,这很可能意味着 Skills 将会大火。而且,在我实现了多个 MCP 服务器之后,我认为对于大多数用例来说,Skills 是一种更好的方法。”

 

“Anthropic 不断推出看似简单却极具吸引力的产品创新,OpenAI 只能勉强追赶,这真是令人匪夷所思。MCP 几乎算不上一个协议,Skills 也只是 md 文件而已。但他们似乎有一种天赋,能把事情包装得通俗易懂。”有网友感叹。

 

Skills,智能体持续学习的关键

 

“Skills 的核心价值之一将来自于共享与分发。”Barry 和 Mahesh 强调。

 

他们对未来大规模部署智能体的公司所展现的愿景感到兴奋:那将是一个由组织内的人与智能体共同策划、维护,并能够持续收集与集体演进的知识库。

 

他们认为,Skills 正是迈向这一愿景的关键一步。它们为智能体提供了完成有用工作所需的程序性知识。当你与智能体互动,并向其提供反馈及更多的机构知识时,它不仅自身会变得更好,团队和组织内的所有智能体也将同步获益。当新成员加入团队并首次使用 Claude 时,Claude 已经了解团队的关注重点、日常工作方式,并知道如何最有效地协助新成员开展工作。

 

随着生态系统的发展,这种复合价值将不仅局限于单一组织,还会扩展到更广阔的社区。正如全球开发者构建的 MCP 服务器能让你的智能体更有用一样,社区中其他人构建的 Skills 也将帮助你的智能体变得更有能力、更可靠、更具实用性。

 

而当 Claude 开始自主创建这些 Skills 时,这一关于演进型知识库的愿景将变得更加强大。

 

团队在设计 Skills 之初,就将其视为实现持续学习的具体载体。当你初次使用 Claude 时,这种标准化格式提供了一个重要保证:Claude 所记录的任何有价值信息,未来都能被高效复用,这使得学习成果真正具有可迁移性。Skills 让智能体的“记忆”概念更加具体化:它们并非捕捉所有信息,而是专注于捕捉那些可在特定任务中调用的程序性知识。

 

随着你与 Claude 的长期协作,Skills 的灵活性优势将愈发凸显。Claude 能够瞬间获取新能力、根据需要动态演进它们,并适时淘汰过时的部分。这种基于上下文的学习方式,对于处理日常变化的信息而言,也显得更为高效和更具成本效益。

 

Anthropic 对 Skills 的未来规划

 

随着生态系统的蓬勃生长,当前 Skills 正变得越来越复杂。 一个最基本的 Skills 可能仍只是一个包含提示和简单说明的 skill.md 文件。然而,Skills 已开始封装软件、可执行文件、二进制代码、脚本、资产等多种元素。如今构建许多复杂的 Skills 可能需要数分钟乃至数小时。

 

Anthropic 团队认为,正如我们今天使用的许多软件一样,未来开发与维护一个成熟的 Skills 或将需要数周甚至数月的时间。

 

Skills 的构建者也更加多元化。越来越多的非技术人员,包括来自财务、招聘、会计、法律等职能领域的从业者,开始参与创建 Skills。这初步验证了其核心理念:Skills 能够帮助非编程背景的人员扩展通用智能体的能力,使其更无缝地融入日常专业工作,真正成为个性化的效率助手。

 

随着 Skills 日益复杂,Barry 和 Mahesh 表示,Anthropic 正在思考未来几个关键的开放性问题和重点发展方向。

 

首先,是“将 Skills 视为软件”进行系统化支持。团队计划通过构建更完善的开发者工具来支持 Skills 的构建与维护。这包括探索测试与评估机制,开发能确保智能体在正确时间、为正确任务加载并触发特定 Skills 的工具,以及建立衡量智能体输出质量的标准,确保其行为符合预期。

 

其次,重点关注版本控制。随着 Skills 的持续迭代和智能体行为的相应变化,清晰追踪这一演变过程、明确其版本谱系变得至关重要。

 

最后,是探索 Skills 之间的依赖与组合。Anthropic 希望未来能构建可明确依赖和引用其他 Skills、MCP 服务器乃至软件包的 Skills。他们认为,这将使智能体在不同运行环境中的行为更具可预测性,而多个 Skills 的可组合性,将能催生出更复杂、更智能、更贴近实际需求的智能体行为。

 

参考链接:

https://simonwillison.net/2025/Dec/12/openai-skills/

https://www.youtube.com/watch?v=CEvIs9y1uog

2025-12-16 10:002

评论

发布
暂无评论

【高阶知识】用户态协议栈之Epoll实现原理

C++后台开发

后端开发 epoll Linux服务器开发 C++后台开发 户态协议栈

企业为什么要部署专属的IM即时通讯软件?

BeeWorks

模块三

Geek_2ce415

物联网低代码平台权限管理,保障平台安全!

AIRIOT

物联网 低代码开发 低代码开发平台 快速开发平台

NFT链游系统开发|DeFi+NFT技术搭建

薇電13242772558

NFT 链游

去中心化NFT交易平台开发

开发微hkkf5566

Linux系统环境搭建

开发微hkkf5566

〖Docker指南⑧〗Docker私有镜像仓库|阿里云|Registry|Harbor

步尔斯特

Docker

从云服务器 SSRF 漏洞到接管你的阿里云控制台

火线安全

云安全

印尼Widya Robotics携手华为云,让建筑工地安全看得见

华为云开发者联盟

人工智能 安全 华为云 modelarts 机器视觉

一对一直播源码部署,是系统上线运行的开始

开源直播系统源码

软件开发 一对一直播 一对一直播源码 直播系统源码

C++ Workflow异步调度框架 - 基本介绍篇

1412

c++ 开源 workflow 异步调度 网络框架

告警消息何去何从?在飞书中飞起来

Rancher

Kubernetes k8s rancher

去中心化DEFI质押流动性挖矿项目开发案例(逻辑分析)

开发微hkkf5566

〖Docker指南⑥〗快速入门Docker的五种网络模式

步尔斯特

Docker

什么是基于安全标记的访问控制机制?有什么特性?

行云管家

网络安全 等级保护 安全标志 访问控制机制

数据湖基本架构

五分钟学大数据

数据湖 6月月更

Substrate技术及生态5月大事记 | Square One计划启动,波卡上线XCM!

One Block Community

区块链 技术 波卡生态

实时监控,智能预警,疾控中心的战疫“速度”

博睿数据

智能运维 博睿数据

波场TRX链DAPP智能合约系统开发技术搭建

开发微hkkf5566

InfoQ 极客传媒 15 周年庆征文|实战 MySQL 高可用架构

悟空聊架构

架构 运维 悟空聊架构 热门活动 InfoQ极客传媒15周年庆

BI 如何让SaaS产品具有 “安全感”和“敏锐感”(上)

葡萄城技术团队

SaaS BI 数据可视化

融云 IMKit Web 端上线,带你感受开发效率的参差

融云 RongCloud

C++ Workflow异步调度框架 - 架构设计篇

1412

c++ 开源 workflow 异步调度 网络框架

集成底座流程测试总结

agileai

测试流程 集成底座 企业服务总线 主数据平台 统一身份管理平台

〖Docker指南⑦〗docker-compose快速入门

步尔斯特

Docker

哈尔滨等保测评公司有哪几家?叫什么名字?

行云管家

网络安全 等保 等保测评 等级测评 哈尔滨

〖Docker指南⑨〗本地一键部署微服务项目到阿里云服务器

步尔斯特

Docker

〖Docker指南⑩〗轻量级监控及管理工具Portainer

步尔斯特

Docker

InfoQ 极客传媒 15 周年庆征文|PassJava网站生产级事故复盘

悟空聊架构

运维 前端 passjava 悟空聊架构 InfoQ极客传媒15周年庆

企业数字化转型加速,选对在线协作工具事半功倍

小炮

OpenAI 偷装“死对头”Anthropic Skills 实锤,ChatGPT、Codex已植入!111分钟造PDF+自动改字体,开发者亲测力捧:比MCP重要!_AI&大模型_褚向阳_InfoQ精选文章