Skip to content

Commit 783f094

Browse files
authored
Merge branch 'main' into fluency-tracking
2 parents 0bea517 + 179d02c commit 783f094

File tree

6 files changed

+751
-12
lines changed

6 files changed

+751
-12
lines changed

src/README.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,3 +77,38 @@ Note: These are the current GitHub Copilot supported Gemini models. Pricing from
7777
- After making changes, run `npm run compile` to rebuild
7878
- Pricing is for reference only - GitHub Copilot may use different pricing structures
7979
- Cost estimates assume a 50/50 split between input and output tokens
80+
81+
## customizationPatterns.json
82+
83+
Defines repository file patterns that the extension will scan for to discover Copilot customization files (for example: `copilot-instructions.md`, `skills/` folders, `agents.md`). The extension uses these patterns to produce the "Customization Files" section in the Usage Analysis webview.
84+
85+
Structure:
86+
87+
```json
88+
{
89+
"patterns": [
90+
{
91+
"id": "copilot-instructions",
92+
"label": "copilot-instructions.md",
93+
"path": "copilot-instructions.md",
94+
"scanMode": "exact",
95+
"icon": "📋"
96+
}
97+
],
98+
"stalenessThresholdDays": 90,
99+
"excludeDirs": [".git", "node_modules"]
100+
}
101+
```
102+
103+
Notes:
104+
105+
- `scanMode` can be `exact`, `oneLevel`, or `recursive`.
106+
- `stalenessThresholdDays` controls when a file is marked as stale in the UI.
107+
- `excludeDirs` lists directories to skip during recursive scans.
108+
109+
To update patterns:
110+
111+
1. Edit `src/customizationPatterns.json` and add or adjust entries.
112+
2. Run `npm run compile` to rebuild the extension.
113+
114+
The usage webview will surface discovered files per workspace and mark files as stale when their last modification time exceeds `stalenessThresholdDays`.

src/customizationPatterns.json

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
{
2+
"description": "Defines Copilot customization file patterns to scan in workspaces",
3+
"lastUpdated": "2026-02-11",
4+
"stalenessThresholdDays": 90,
5+
"excludeDirs": ["node_modules", ".git", "dist", "build", "out", "__pycache__", ".venv", ".next", "coverage"],
6+
"patterns": [
7+
{
8+
"id": "copilot-instructions",
9+
"type": "instructions",
10+
"icon": "📋",
11+
"label": "Instructions",
12+
"path": ".github/copilot-instructions.md",
13+
"scanMode": "exact"
14+
},
15+
{
16+
"id": "copilot-setup",
17+
"type": "coding-agent",
18+
"icon": "⚙️",
19+
"label": "Coding Agent Setup",
20+
"path": ".github/copilot-setup.md",
21+
"scanMode": "exact"
22+
},
23+
{
24+
"id": "mcp-config",
25+
"type": "mcp-config",
26+
"icon": "🔌",
27+
"label": "MCP Server Config",
28+
"path": ".vscode/mcp.json",
29+
"scanMode": "exact"
30+
},
31+
{
32+
"id": "skills",
33+
"type": "skill",
34+
"icon": "🧠",
35+
"label": "Skill Files",
36+
"path": ".github/skills/*/SKILL.md",
37+
"scanMode": "oneLevel"
38+
},
39+
{
40+
"id": "agents-dir",
41+
"type": "agent",
42+
"icon": "🤖",
43+
"label": "Custom agents",
44+
"path": ".github/agents/*.md",
45+
"scanMode": "recursive",
46+
"maxDepth": 3
47+
},
48+
{
49+
"id": "scoped-instructions",
50+
"type": "instructions",
51+
"icon": "📋",
52+
"label": "Scoped Instructions",
53+
"path": "**/*.instructions.md",
54+
"scanMode": "recursive",
55+
"maxDepth": 5
56+
},
57+
{
58+
"id": "agents-md",
59+
"type": "agent",
60+
"icon": "🤖",
61+
"label": "AGENTS.md",
62+
"path": "**/AGENTS.md",
63+
"scanMode": "recursive",
64+
"maxDepth": 5,
65+
"caseInsensitive": true
66+
}
67+
]
68+
}

0 commit comments

Comments
 (0)