VSCode配置 AI agent skills 详细步骤

VSCode配置 AI agent skills 详细步骤

在VS Code中配置“Agent Skills”,是为你的AI编程助手(如GitHub Copilot)定制可复用的专业能力包。你可以把它理解为教你助手如何执行特定任务的标准说明书

在这里插入图片描述

它主要由一个 SKILL.md 文件以及相关的脚本、示例组成。当你的需求与某个技能描述匹配时,Copilot会自动加载这个“技能包”来更精准地帮你完成任务,比如创建测试、调试工作流等

启用功能

在这里插入图片描述

技能创建位置

项目根目录个人配置文件夹中,创建一个特定的文件夹来存放你的技能包
  • 项目技能:在项目根目录创建 .github/skills/ 目录。就会作用于项目
  • 个人技能:在你电脑用户目录下创建 ~/.copilot/skills/(推荐)或 ~/.claude/skills/。作用于你电脑里所有的项目

技能编写规范

my-skill/ (技能文件夹) ├── SKILL.md # 必需:核心入口文件,包含元数据和主要指令 ‼️‼️‼️ ├── references/ 或 resources/ # 可选:参考文档(如API说明、详细政策) │ ├── advanced-guide.md │ └── api-reference.md ├── examples/ # 可选:使用示例 │ └── common-use-cases.md ├── scripts/ # 可选:可执行脚本(Python、Bash、node等) │ └── process_data.py └── templates/ 或 assets/ # 可选:输出模板、品牌资源等 └── report-template.md 

哪怕你这个技能包里啥也不放,SKILL.md必须有‼️

创建技能案例

比如用来检查vue项目代码规范的项目技能

存放目录:.github/skills/code-review/
SKILL.md:

--- name: code-review description: | Guides the review and enforcement of code style and quality standards in Vue 3 projects using ESLint, Prettier, and Vue-specific rules. Use when asked about code style, linting errors, or how to write compliant Vue code. --- # Vue 3 项目代码规范审查指南 ## 🎯 何时使用此技能 当用户的问题涉及以下方面时,应激活此技能: - 检查代码风格或规范问题 - 解释或修复ESLint/Prettier报错 - 询问Vue组件的最佳实践写法(如组件命名、Props定义、脚本顺序) - 需要自动生成符合项目规范的代码片段 ## 🔧 核心工具与配置 本项目使用以下工具链强制执行代码规范。在提供建议前,请先确认项目根目录是否存在对应配置文件。 | 工具 | 配置文件 | 主要职责 | | :--- | :--- | :--- | | **ESLint** | `.eslintrc.js` | JavaScript/TypeScript代码质量检查,识别潜在错误 | | **Prettier** | `.prettierrc` | 代码风格格式化,保持样式统一 | | **eslint-plugin-vue** | (继承自ESLint配置) | 专用于Vue 3的官方规则集 | ## 📝 重点审查内容 在审查或生成Vue代码时,请优先检查以下方面。 ### 1. 组件命名与结构 - **单文件组件命名**:使用**PascalCase**,例如 `UserProfile.vue`。 - **组件引用命名**:在模板和脚本中引用时保持PascalCase,例如 `<UserProfile />`。 - **脚本结构顺序**:建议遵循 `<script setup>`、`import`、`Props/Emits`定义、响应式数据、计算属性、生命周期钩子、方法的逻辑顺序。 ### 2. 语法与风格 - **优先使用 `<script setup>`** 语法以提高简洁性。 - **Props定义**:使用 `defineProps` 并尽可能提供详细类型定义。 - **响应式数据**:优先使用 `ref` 处理基本类型,使用 `reactive` 处理对象;在模板中正确使用 `.value`。 - **代码格式化**:确保代码遵循Prettier规则(通常是尾随逗号、单引号、2空格缩进)。 ### 3. Vue特定规则检查 确保代码遵守 `eslint-plugin-vue` 的核心规则: - **`vue/component-name-in-template-casing`**: 模板中组件名必须为PascalCase。 - **`vue/attribute-hyphenation`**: 模板中的属性名必须使用kebab-case(例如 `:user-name`)。 - **`vue/html-self-closing`**: 没有内容的标签应自闭合。 - **`vue/mustache-interpolation-spacing`**: 插值表达式 `{{ }}` 内应有空格。 ## 🛠️ 常用命令与修复建议 当用户遇到规范问题时,提供可执行的解决方案。 ### 运行检查与修复 ```bash # 检查整个项目并输出错误报告 npm run lint # 检查并自动修复可修复的问题 npm run lint:fix # 检查特定文件 npx eslint ./src/components/UserProfile.vue --ext .vue # 使用Prettier格式化所有文件 npm run format 
在这里插入图片描述

使用技能

有了技能包后,它的使用是智能且自动化的。你无需手动“打开”技能,而是通过与AI助手(如Copilot Chat)进行自然对话来触发的。整个过程就像一位熟悉你项目规范的新队友在帮你。
从触发到生效的完整过程:

在这里插入图片描述

说白了就是在VS Code中打开Copilot Chat面板直接对话:

在这里插入图片描述

怎么验证技能是否生效?
一个简单的验证方法是,问一个非常具体、且答案明确写在 SKILL.md 中的问题。
比如 :“我们项目对于Vue单文件组件的文件名,要求使用什么命名法?”
如果技能被正确加载,AI的回答会直接引用 SKILL.md 中的原文(如“使用PascalCase,例如 UserProfile.vue”),而不是一个泛泛的通用答案。

在这里插入图片描述

Read more

从零手搓实现 Linux 简易 Shell:内建命令 + 环境变量 + 程序替换全解析

从零手搓实现 Linux 简易 Shell:内建命令 + 环境变量 + 程序替换全解析

🔥草莓熊Lotso:个人主页 ❄️个人专栏: 《C++知识分享》《Linux 入门到实践:零基础也能懂》 ✨生活是默默的坚持,毅力是永久的享受! 🎬 博主简介: 文章目录 * 前言: * 一. Shell核心工作流程 * 二. 完整实现源代码 * 2.1 Makefile文件 * 2.2 头文件(myshell.h)和 主函数(main.c) * 2.3 核心实现(myshell.c 优化版) * 三. 核心功能解析 * 3.1 环境变量管理(补充重点) * 3.2 内建命令实现 * 3.3 外部命令执行 * 3.4 关键技术点总结

By Ne0inhk
Docker 部署 Ollama 全流程指南:支持 CPU/GPU、生产环境可用的工程化实践

Docker 部署 Ollama 全流程指南:支持 CPU/GPU、生产环境可用的工程化实践

在上一篇文章中,我们通过本地安装的方式快速跑通了 Ollama,还成功将 DeepSeek 模型运行起来,体验到了大模型本地部署的便捷性。但当你真正把 Ollama 放到团队协作环境、服务器长期运行场景,或是纳入正式项目开发流程时,会立刻发现一个核心问题:本机安装虽简单,却缺乏工程化属性。 本地安装的典型痛点集中在这几点: * 环境易污染,容易出现 CUDA 版本、依赖包的冲突问题 * 机器迁移成本高,换服务器需要重新配置全套环境 * 服务状态不可控,缺乏标准化的启停、监控方式 * 无法无缝接入企业现有运维体系,与容器化、自动化部署流程脱节 也正因如此,在真实的项目落地场景中,Docker 方式部署 Ollama 才是更合理、更可持续的选择。 本文不只是教你把 Docker 版 Ollama “跑起来”,更核心的是带你理解:如何用 Docker 部署 Ollama,让它真正具备工程可用性,适配团队协作与生产级的使用需求。 📌 系列文章 👉 大模型本地部署实践(

By Ne0inhk
【Linux】进程信号的产生

【Linux】进程信号的产生

个人主页~ 进程信号的产生 * 一、进程信号的概念 * 二、信号的产生 * 1、常用的信号解析 * 2、从硬件到软件了解信号的产生 * 3、产生方式 * (一)键盘组合键 * 后台程序 * (二)命令 * (三)系统调用 * (四)程序异常 * (1)除0异常 * (2)野指针异常 * (3)总结 * (五)软件模拟---alarm闹钟 一、进程信号的概念 进程具备能够识别并处理信号的能力,这数据进程内置功能的一部分 当进程真正收到信号的时候,具备在合适的时候处理这个信号的能力 进程在信号产生到信号处理的这段时间有临时保存哪些信号已经发生了的能力 信号的处理方式有三种:默认动作、忽略、自定义动作 二、信号的产生 1、常用的信号解析 我们常用的信号就是ctrl+c了,可以及时的把我们的前台进程(在Linux中,一个终端一般只有一个bash,每一次登陆只允许一个进程是前台进程,

By Ne0inhk
Windows 下 Docker 安装与使用全攻略(含避坑指南)

Windows 下 Docker 安装与使用全攻略(含避坑指南)

告别“在我机器上好好的”魔咒,一个容器搞定所有环境问题! “这代码在我电脑上跑得好好的,怎么一到你那就挂了呢?” —— 这句话是不是听着耳熟?作为一名开发者,你可能无数次被环境差异搞得焦头烂额。 Python版本不对、Node.js依赖冲突、数据库配置麻烦……这些问题那是非常熟悉的。 Docker 这个神器能帮你彻底解决这些烦恼! 这篇文章,我来手把手教你在Win11上安装和使用Docker,让你享受一致的开发体验。 一、为什么Windows开发者也需要Docker? 你可能会想:“Docker不是主要在Linux上用的吗?我在Windows上折腾这个干嘛?” 问得好!这里有几个实实在在的理由: 1. 开发环境一致性 你写代码用的是Windows,但服务器跑的是Linux?没问题!Docker容器在任何系统上运行的行为都是一样的。你再也不用担心“本地能跑,上线就崩”的尴尬。 2. 快速搭建开发环境 想用MySQL?一条命令搞定。需要Redis?再加一条。不用手动下载、安装、配置,省时省力。 3. 保持系统整洁 每个应用都在独立的容器里运行,不会污染你的Win

By Ne0inhk