copilot配置deepseek和skills

参考:VS + Copilot 最简入门 AI Skill 模板

Skill介绍

安装

  • 安装Copilot Models
  • 安装完成后调出命令面板Ctrl+Shift+P
  • 输入Copilot Models: Set API Key,按下回车
  • 输入DeepSeek的API KEY 即配置完成

创建skills

项目根目录新建文件夹,固定路径:.github\skills\[skillname]\SKILL.md。例如创建一个仅仅检测c++ 源文件的Skill。名称:cpp-file-check

skill完整路径:项目根目录\.github\skills\cpp-file-check\SKILL.md

copilot 写skill

或者使用 skill creator

cpp 复制代码
---
name: cpp-file-check
description: '检查 C++ 项目中的 .h 和 .cpp 文件。用于代码审查、重构、Bug 修复、格式规范化。只关注头文件(.h)和源文件(.cpp),忽略其他文件类型。'
user-invocable: true
---

# C++ 文件检查 Skill

## 适用范围

- **只检查 `.h` 和 `.cpp` 文件** --- 不处理 `.sln`、`.vcxproj`、`.sdf`、`.suo`、`.ipch`、`.pch` 等其他文件
- 适用于代码审查、重构、Bug 修复、编码规范检查

## 使用时机

- 需要对 C++ 代码进行审查或修改时
- 只关注头文件(`.h`)和源文件(`.cpp`)
- 希望保持项目代码风格一致

## 流程规范

### 1. 文件范围限制

- ???? **只读取和修改 `*.h` 和 `*.cpp` 文件**
- 不修改构建配置文件(`.vcxproj`、`.sln` 等)
- 不读取预编译头文件(`.pch`)
- 不处理 IDE 生成文件(`.sdf`、`.suo`、`.ipch`)

### 2. C++ 编码规范

参考此项目现有代码风格,遵循以下规则:

#### 命名规范
- **函数名**: PascalCase(如 `CalcCheckSum`、`NewIcmpPack`、`parseIcmpReply`)
- **变量名**: 小写字母 + 下划线(如 `pack_len`、`check_sum`、`recv_buf`)
- **类型定义**: PascalCase(如 `ICMPHeader`、`CircleBuffer`、`IPHeader`)
- **宏定义**: 全大写 + 下划线(如 `MAX_CIRCLE_BUF`)
- **类成员变量**: 前缀 `m_`(如 `m_data_size`、`m_mtx`、`m_buf`)

#### 代码风格
- **花括号**: 换行风格(Allman 风格),函数和类定义的花括号独占一行
- **缩进**: 使用 Tab 缩进
- **指针**: `*` 靠近变量名(如 `char *buffer`、`unsigned short *pdata`)
- **引用**: `&` 靠近变量名(如 `int &len`、`int &sum`)
- **类型转换**: 使用 C 风格强制转换(如项目现有风格 `(unsigned short *)pdata`)
- **include 顺序**: 标准库头文件优先(`<>`),然后是项目头文件(`""`)

#### 内存管理
- 使用 `new`/`delete` 进行手动内存管理(项目现有风格)
- 注意检查内存泄漏
- 使用 RAII 原则管理资源(如 `std::lock_guard` 管理互斥锁)

#### 错误处理
- 使用 `throw` 抛出异常(如 `throw std::runtime_error(...)`)
- 检查 API 返回值(如 `SOCKET_ERROR`、`INVALID_SOCKET`)

#### Windows 特定
- Winsock 使用 `WSAStartup`/`WSACleanup` 配对
- 使用 `#pragma comment(lib, "...")` 链接库
- 使用 `#pragma pack(push/pop)` 控制结构体对齐
- 使用 `#pragma once` 防止头文件重复包含

### 3. 检查清单

对每个检查的 `.h` / `.cpp` 文件,需要确认:

- [ ] 文件命名是否符合 PascalCase(如 `NetStruct.h`、`testICMP.cpp`)
- [ ] 头文件是否有 `#pragma once` 保护
- [ ] 函数命名是否为 PascalCase
- [ ] 变量命名是否为下划线风格
- [ ] 类成员是否有 `m_` 前缀
- [ ] 是否包含了必要的头文件
- [ ] 是否存在潜在的内存泄漏
- [ ] Windows API 返回值是否正确检查
- [ ] 结构体定义是否有正确的对齐处理(`#pragma pack`)
相关推荐
独隅3 小时前
Visual Studio Code 和 Visual Studio 2026 两大开发工具的核心差异
java·vscode·visual studio
雨水的早晨3 小时前
什么是SKill
人工智能·skill
ShyanZh3 小时前
【skill】Agent-Browser:AI代理的浏览器自动化实战指南
运维·人工智能·自动化·skill·agent-browser
DS随心转小程序4 小时前
AI导出鸭 从 Markdown 草稿到精品 Word 文档的无损之道
人工智能·word·豆包·deepseek·ai导出鸭
芋头莎莎4 小时前
window 右键菜单添加 vscode
ide·vscode·编辑器
学Linux的语莫4 小时前
DeepAgents Skills :掌握 Agent 的可复用专业能力
ai·skill·deepagent
专注VB编程开发20年5 小时前
VS重大升 AI功能:Agent Skills:给 Copilot 定义 “团队技能”(跑构建、代码规范、模板)
人工智能·copilot·代码规范
奋飛5 小时前
反向拆解 skill-creator:一个好 skill 是怎么写出来的
agent·skill·anthropic·agent skill·skill-creator
yeflx5 小时前
vscode-server下载异常导致远程连接失败解决方法
ide·vscode·编辑器