写点什么

Angular 官方的智能体 Skills 助力 AI 编程工具生成现代化的 Angular 代码

作者:Daniel Curtis
  • 2026-06-23
    北京
  • 本文字数:1284 字

    阅读完需:约 4 分钟

谷歌的 Angular 团队发布了 angular/skills,这是一个专门的智能体 Skills 仓库,用于教会 AI 编程智能体编写现代化且语义正确的 Angular,而非模型默认倾向使用的过时模式。

智能体 Skills 是结构化的、领域特定的指令文件,这是由 Anthropic 提出的开放格式,它会按需加载为智能体提供特定任务的专业知识。Angular 集合当前包含两个 Skill。angular-developer Skill 用于生成代码并在响应式编码(signals、linkedSignal、resource)、表单、依赖注入、路由、服务器端渲染、无障碍、动画、样式和测试等方面提供架构指导;angular-new-app Skill 则通过 Angular CLI 搭建新的应用脚手架。在实践中,angular-developer 强制采用 v20 约定,偏好使用 @if 取代*ngIf,并移除冗余的 standalone: true 标记。这些 Skill 是针对 Gemini CLI 与 Antigravity 等智能体工具而设计的,官方文档指出,它们能使智能体保持与 Signals 和独立组件等约定保持同步。该仓库是一个已发布的快照,而非原始的事实来源,因为贡献在主仓库 angular/angular 中进行并会自动镜像到此处。

发布这些 Skill 的动机在文档中有充分说明。正如 Brandon Roberts 在文章中解释的那样,编程智能体“经常建议过时的 Angular 模式、NgModules、@Input()装饰器、*ngIf 和构造函数注入”,这是因为它们缺乏最新的上下文。

开发者可以通过如下命令,安装使用社区的 skills CLI:

npx skills add <https://github.com/angular/skills>
复制代码

该发布建立在社区工作之上,正如 Angular 新闻作者 Gérôme Grignon 观察到的,智能体 Skills 已经成为向大模型提供框架上下文的“最受欢迎”方式。最广泛使用的前作是 Roberts 的 analogjs/angular-skills。竞争性方法仍在存在,包括受 Vercel 的 react-best-practices 启发的 alfredoperez/angular-best-practices。

评论主要集中在为何官方的、基于仓库的 Skills 很重要。为 Angular.love 撰文的 Dominik Donoch 赞赏其“自动验证循环”功能,该机制在编辑后会强制智能体运行 ng build,以及它只加载相关参考文件以限制 token 使用的编排器设计。在 Reddit 上,开发者表示这些 Skill“因为存在于仓库中而感觉更原生”,且“可版本化、可比较差异(diffable)”,也有人承认他们“之前不知道 Angular 有自己的最佳实践技能”。怀疑者则对该格式能否修复可靠性持保留态度。

在 Hacker News 上,有评论者指出了此类机制存在的问题:这些机制的做法假装 LLM 是严格且完美遵循规则的,唯一的问题只是无法足够清晰地指定足够多的规则。这反映了对 LLM 工作方式的根本性认知错误。

也有人反驳说不应该“让完美成为足够好的敌人”。

对于迁移,替换社区包的团队应先用 npx skills remove analogjs/angular-skills 命令将其移除。CLI 还通过锁文件跟踪偏移,因此可使用 npx skills check 和 npx skills update 跟上 Angular 频繁发布的节奏。由于这些 Skill 面向 v20 及更高版本,旧项目应首先按照官方升级指南采用独立组件、inject()和 Skill 假定的内置控制流。

Angular 是谷歌的开源、基于 TypeScript 的 Web 框架,被企业级应用广泛采用,构建于独立组件与基于 signals 的响应式理念之上。

查看英文原文:Angular's Official Agent Skills Helps AI Coding Tools Write Modern Angular