跳到正文
FunCoding

搜索

搜索文档、Skill 和 MCP

路径专用指令

用 applyTo 为特定文件设置规则,区分路径匹配与 code review、cloud agent 的入口排除。

路径专用指令适合让 Ruby 模型、TypeScript 前端或测试文件各自遵循对应规则。它们放在 NAME.instructions.md 中,通过 YAML frontmatter 的 applyTo 指定匹配范围。

创建规则

在仓库中创建 .github/instructions/typescript.instructions.md:

---
applyTo: "**/*.ts,**/*.tsx"
---

Follow the existing TypeScript conventions in the package being edited.
Keep public types and their callers consistent when changing an interface.

目录下可以再建子目录整理规则;文件名必须以 .instructions.md 结尾。多个 glob 用逗号分隔,只有匹配 Copilot 正在处理的文件时,指令才加入上下文。

常用匹配范围

applyTo匹配范围
*当前目录文件
** 或 **/*所有目录中的文件
*.py当前目录的 Python 文件
**/*.py递归匹配 Python 文件
src/*.pysrc 直接包含的 Python 文件,不包括更深子目录
src/**/*.pysrc 下任意深度的 Python 文件
**/subdir/**/*.py路径上包含 subdir 目录的 Python 文件

例如 src/*.py 匹配 src/main.py,不会匹配 src/service/main.py。需要后者时使用递归形式,不能靠描述文字代替 glob 范围。

排除一个 GitHub 入口

同一指令文件供 Copilot code review 和 cloud agent 使用时,可以通过 excludeAgent 排除其中一个:

---
applyTo: "**"
excludeAgent: "code-review"
---

Run the project validation steps after implementing changes.

这个示例排除 code review,保留 cloud agent。另一个官方取值是 "cloud-agent";省略时两者都可使用。该字段描述这两个入口的适用性,不是 CLI 的工具禁止规则。

排查未加载的规则

核对后缀、frontmatter 与 glob,使用 /instructions 查看发现和禁用状态。不要在这类文件里依赖 @ 导入,因为 CLI 不展开 *.instructions.md 内的文件引用。修改后新建会话或退出再恢复,方法见指令文件与加载。