github copilot可通过配置promptprefix固化编码风格,如强制jsdoc、箭头函数和const声明;支持按文件类型用.instructions.md差异化提示,或在代码中嵌入类型锚点与结构化样例提升生成准确性。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

你想让GitHub Copilot每次生成函数时自动带JSDoc注释、用箭头函数、禁用var声明,而不是每次都在注释里重复写“请加文档、用const和箭头函数、别用var”——这需要把风格约束固化进提示词模板,而非依赖临场发挥。
在VSCode中配置全局提示词前缀
打开当前项目根目录下的 `.vscode/settings.json` 文件,若不存在则新建。
在 `settings.json` 中添加 `"github.copilot.advanced"` 配置块,嵌套 `"promptPrefix"` 字段,值为纯字符串(不加换行)。
填写内容必须是自然语言指令,例如:"Use arrow functions, declare all variables with const, and include JSDoc comments for every exported function." 这句会自动拼接到你每条注释的最前面,Copilot实际收到的是“【你写的注释】+【这句前缀】”。
【不要在promptPrefix里写代码示例或具体函数名】 否则Copilot可能误以为你在要求它复现某段特定逻辑,导致生成偏离预期。
按文件类型启用差异化提示
方法一:使用 `.instructions.md` 多文件机制
在项目根目录创建 `.github/instructions/` 文件夹,在其中分别建立:
`typescript.instructions.md`(内容聚焦TS类型安全与接口约定)、
`python.instructions.md`(强调PEP8、type hints、docstring格式)。
每个文件顶部用 YAML frontmatter 指定作用范围,例如:
```yaml
---
applyTo: "**/*.ts"
---
```
Conventional Commits v1.0.0 分支、工作树命名及提交信息规范,适用于 GitHub 与 GitLab 项目,用于创建分支和命名工作树等场景。
方法二:直接复用已有类型定义锚点
在 `.ts` 文件顶部注释中显式引用当前模块已导出的接口,例如:
`// Context: User type is defined as interface User { id: number; name: string; }`
这比空泛说“按User结构返回”更可靠,Copilot能真正感知字段名和类型。
为函数级注释注入结构化样例
第一步:在函数签名正上方写自然语言需求,明确输入输出形态。
第二步:紧接其后插入 `// Example:` 行,下方用缩进写出1个真实、极简的输入→输出对,字段名与项目一致。
第三步:若涉及边界逻辑,单独起一行写 `// Edge case:` 并说明,例如:
`// Edge case: when input array is empty, return [] instead of null`
第四步:光标停在空行,按 Ctrl+Enter(Windows/Linux)或 Cmd+Enter(macOS)手动触发,避免Copilot因上下文干扰而跳过样例解析。
注意:样例必须与当前语言模式匹配——在 `.py` 文件里写 `input: [1, 2, 3] → output: [2, 4, 6]` 有效;但在 `.js` 里写 Python 风格列表字面量会降低识别率。










