在 Cursor 中打造你的专属前端“AI 助手”:Agent Skills 实战指南 什么是 Agent Skills?

在 Cursor 中打造你的专属前端“AI 助手”:Agent Skills 实战指南 什么是 Agent Skills?

文章目录


一、什么是 Agent Skills?

简单来说,Agent Skills 是一种标准化的方式,用来封装特定任务的知识和工作流。
如果说 MCP (Model Context Protocol) 是给 AI 装上了“手”(让它能连接数据库、Github),那么 Skills 就是给 AI 的“操作说明书”(告诉它怎么用这双手去搬砖)。
它和 .cursorrules 的区别在于:.cursorrules (全局规则): 就像公司的“员工手册”,是 AI 必须时刻记住的(Always on),适合放通用的代码风格(比如“永远使用 TypeScript”)。Agent Skills (技能): 就像“特定的任务SOP”,AI 只有在需要的时候(Context Relevant)才会去加载它,或者通过 / 命令手动触发。这大大节省了 Token,也让 AI 更专注。

二、使用步骤

1.下载官方提供的agent-skills文档

链接:github:https://github.com/anthropics/skills

在这里插入图片描述

2.cursor中使用

在cursor中新建.cursor目录加skills目录,把从Github上下载的skills拷贝到该目录下。上

在这里插入图片描述


在这里插入图片描述

这是参考frontend-design这个skills来设计的网站,会发现精美许多。

在这里插入图片描述


在这里插入图片描述

三、如何设计自己的skills

通过别人提供好的skils文档来生成

在这里插入图片描述


在cursor中输入提示词,cursor会自动扫描你文件下的skill.md文档进行生成。

在这里插入图片描述

四、实战:打造一个“生成标准 React 组件”的 Skill

假设我们团队有一个严格的组件开发规范:

  1. 组件必须是 Function Component。
  2. 必须使用 CSS Modules。
  3. 必须包含一个 interface 定义 Props。
  4. 文件结构必须是文件夹形式。

我们来写一个 Skill 教会 Cursor 怎么做。

第一步:创建目录

在你的项目根目录下(或者全局 ~/.cursor/skills),创建一个存放技能的文件夹:

.cursor/ skills/ react-component-gen/ <-- 技能名称文件夹 SKILL.md <-- 核心定义文件 

第二步:编写 SKILL.md

这是核心部分。SKILL.md 包含两部分:Frontmatter (元数据)Markdown 正文 (指令)

.cursor/skills/react-component-gen/SKILL.md 中写入:

--- name: react-component-gen description: Generate a new React functional component with CSS Modules and TypeScript interfaces following team standards. disable-model-invocation: false --- # React Component Generator Use this skill when the user asks to create a new UI component, page, or widget. ## [...](asc_slot://start-slot-9)Instructions 1. **Analyze the Request**: Identify the component name and props required. 2. **Directory Structure**: - Create a folder named exactly as the component (PascalCase). - Inside, create `index.tsx` and `styles.module.scss`. 3. **Code Standards**: - **index.tsx**: - Use `FC` type from 'react'. - Import styles as `import styles from './styles.module.scss'`. - Define an interface `[ComponentName]Props`. - Export the component as default. - **styles.module.scss**: - Create a root class `.container`. - Use BEM naming convention for inner elements if needed. ## [...](asc_slot://start-slot-11)Template Example If the user asks for a "Button", generate: ```tsx // Button/index.tsx import React, { FC } from 'react'; import styles from './styles.module.scss'; export interface ButtonProps { label: string; onClick: () => void; } const Button: FC<ButtonProps> = ({ label, onClick }) => { return ( <button className={styles.container} onClick={onClick}> {label} </button> ); }; export default Button; 
### [...](asc_slot://start-slot-13)第三步:启用并使用 1. **启用**:确保你的 Cursor 是较新版本(部分功能可能在 Beta/Nightly 通道)。打开设置 -> `Rules` 或 `Features`,确保 Agent Skills 相关的开关已打开。 2. **自动触发**: * 打开 Cursor 的 Agent 聊天框(CMD+L 或 CMD+K)。 * 输入:“帮我写一个 UserCard 组件,包含头像和名字。” * 你会发现 Agent 会自动识别意图,加载 `react-component-gen` 技能,并严格按照你的模板生成代码! 3. **手动触发**: * 输入 `/`,你应该能看到 `react-component-gen` 出现在命令列表中。 ## [...](asc_slot://start-slot-15)进阶玩法:带脚本的 Skill (自动化重构) 前端经常需要做一些批量重构,比如“找出所有硬编码的颜色并替换为 Tailwind 类名”。我们可以给 Skill 配上脚本。 

.cursor/skills/refactor-color/
SKILL.md
scripts/
find-hex.js <-- 一个扫描文件的脚本

**SKILL.md**: ```markdown --- name: refactor-color description: Refactor hardcoded hex colors to Tailwind utility classes. --- # Color Refactoring ## [...](asc_slot://start-slot-17)Instructions 1. Run the script `scripts/find-hex.js` to locate hex codes in the current file. 2. For each hex code found, map it to the closest Tailwind color (e.g., `#ef4444` -> `text-red-500`). 3. Rewrite the code. 

这样,AI 就不只是在“瞎猜”,而是真正执行了你写的工具脚本来辅助它工作。

总结:为什么你应该开始用 Skills?

  1. 团队规范统一:把这个 .cursor 文件夹提交到 Git 仓库,新入职的同事 git pull 下来,他的 AI 助手立刻学会了全套团队规范,不用手把手教。
  2. 减少上下文污染:只在写组件时加载组件规范,写测试时加载测试规范,让 AI 的脑子更清醒。
  3. 沉淀最佳实践:把那些你每次都要重复敲的 Prompt,固化成代码资产。

💡 个人心得
不要试图把所有东西都塞进 .cursorrules。把 .cursorrules 当作宪法(不可动摇的原则),把 Agent Skills 当作SOP 手册(针对具体任务的流程)。

快去试试在你的项目里加一个 Skill 吧!如果你有更好玩的 Skill 创意(比如自动写 Code Review 意见),欢迎在评论区分享!👇

Read more

深入剖析 WebHostView:浏览器内核中的桌面级 Web 宿主

深入剖析 WebHostView:浏览器内核中的桌面级 Web 宿主

引言 随着桌面级 Web 应用需求的增加,浏览器内核的角色逐渐从一个单纯的网页渲染引擎演化为一个“Web 运行时平台”,为更多类型的应用场景提供支持。在这一过程中,WebHostView 作为一个关键组件,担当了将传统的网页浏览功能与桌面应用深度融合的桥梁。它的出现不仅解决了浏览器原生 Tab 模型无法满足桌面应用需求的问题,也推动了浏览器从“Web 浏览器”向“Web 应用平台”的演变。 本文将详细分析 WebHostView 的设计理念、功能架构及其在 360 浏览器中的具体应用,探讨它如何打破传统浏览器内核的局限,成为一种全新的系统级 Web 宿主。 1. 浏览器内核的架构演变 传统浏览器内核架构 在传统的浏览器架构中,WebContents 作为网页渲染的核心,绑定于浏览器的标签页(Tab)、WebUI(chrome:// 页面)以及扩展视图(Extension View)。这些宿主形态都属于浏览器界面的一部分,通常具备以下共同特点: * 标签页(Tab)

ctfshow Web入门命令执行29-124全通关详解(看这一篇就够啦~)

文章目录 * 命令执行 * web29-web31:基础注入 * web29 * web30 * web31 * web32-web36:参数逃逸 * web32 * web33 * web34-36 * web37-web39:文件包含+伪协议命令执行 * web37 * web38 * web39 * web40:无参数RCE * web41:无字母RCE * web42-web53:绕过无回显RCE * web42 * web43 * web44 * web45 * web46 * web47-web49 * web50 * web51 * web52 * web52 * web53 * web54:关键词模糊匹配 * web55-web57:字符集受限 RCE * web55 * web56 * we

7个用于运行LLM的最佳开源WebUI

7个用于运行LLM的最佳开源WebUI

无论是希望将AI大模型集成到业务流程中,还是寻求企业客户服务自动化,亦或者是希望创建一个强大的个人学习工具。可能都需要考虑数据安全、灵活度以及更具有可控性的使用和开发基础。值得考虑的一个方案是:将大模型(LLM)私有化并且创建一个好用的LLM WebUI系统。 下面,我们推荐7个出色的开源LLM WebUI 系统。 01.Open WebUI(Ollama WebUI) https://github.com/open-webui/open-webui Star:45.7K 开发语言:Python、TypeScript\Svelte Open WebUI是一个可扩展、功能丰富且用户友好的WebUI,旨在完全离线操作。它支持包括Ollama和OpenAI在内的各种LLM运行容器或者API。 产品特点: * 直观的界面:受ChatGPT启发的用户友好型聊天 * 响应式设计:在桌面和移动的上实现流畅的性能 * 轻松安装:使用Docker/Kubernetes轻松安装 * 主题定制:个性化与多个主题 * 高亮:增强代码的可读性 * Markdown LaTeX支持:

Flutter Web:混合开发的最佳实践

Flutter Web:混合开发的最佳实践 一次编写,多端运行。Flutter Web 让前端开发更加高效。 一、Flutter Web 的优势 作为一名追求像素级还原的 UI 匠人,我对跨平台解决方案有着严格的要求。Flutter Web 不仅让我们能够使用相同的代码库构建 Android、iOS 和 Web 应用,还提供了出色的性能和一致的用户体验。它就像是一把瑞士军刀,为前端开发带来了前所未有的便利。 二、环境搭建 1. 启用 Web 支持 # 启用 Web 支持 flutter config --enable-web # 检查可用设备 flutter devices # 创建项目 flutter create my_web_app cd my_