You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+10Lines changed: 10 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -10,6 +10,16 @@ Check [Keep a Changelog](http://keepachangelog.com/) for recommendations on how
10
10
- Security: Override transitive `glob` to 10.5.0 (fixes GHSA-5j98-mcp5-4vw2) via root `overrides` after audit flagged vulnerable range (<10.5.0). Lockfile committed for reproducible remediation.
11
11
-**Breaking:** Removed `launchConfigurationName` alias from Start Debugger tool input schema. Use `configurationName` exclusively. Resolution order unchanged (direct value → setting → auto-select sole configuration). Prompts referencing the alias must be updated.
12
12
13
+
## [0.0.16] - 2025-11-20
14
+
15
+
**Documentation:** Clarified that `variableFilter` values are exact, case-sensitive variable names (no regex support). Removed prior regex-style examples (`^(user|session)$`, `^order_`) from README and replaced with explicit name lists. Added note that `resume_debug_session` breakpoints may omit `variableFilter` (optional) while `start_debugger_with_breakpoints` requires it per breakpoint to keep responses compact.
16
+
17
+
**Added:** Expanded README action guidance (difference between `break`, `capture`, `stopDebugging`), release workflow steps, and improved examples for capture interpolation.
18
+
19
+
**Internal:** Version bump only; no functional code changes. Test suite unchanged. Prepares accurate docs baseline before subsequent feature work.
20
+
21
+
**Rationale:** Prevent confusion observed in prompts using regex patterns; LLM planners should enumerate exact variable names they want returned.
22
+
13
23
## [0.0.15] - 2025-11-20
14
24
15
25
**Purpose:** Patch release to establish an immutable post–force-tag artifact after moving `v0.0.14` to commit `75294db`. Ensures CI publish runs against a stable tag without retroactive modification.
Copy file name to clipboardExpand all lines: README.md
+33-15Lines changed: 33 additions & 15 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,8 +6,8 @@ Use GitHub Copilot (or any LM-enabled workflow in VS Code) to start, inspect, an
6
6
7
7
The extension contributes Language Model Tools that Copilot can invoke:
8
8
9
-
1.**Start Debugger** (`start_debugger_with_breakpoints`) – Launch a configured debug session and wait for the first breakpoint (optionally set breakpoints/logpoints or filter variables).
10
-
2.**Resume Debug Session** (`resume_debug_session`) – Continue execution of an existing paused session and optionally wait for the next stop.
9
+
1.**Start Debugger** (`start_debugger_with_breakpoints`) – Launch a configured debug session and wait for the first breakpoint (you must supply at least one breakpoint with an exact-name `variableFilter` list; also supports logpoints & capture actions).
10
+
2.**Resume Debug Session** (`resume_debug_session`) – Continue execution of an existing paused session and optionally wait for the next stop (new breakpoints added during resume may omit `variableFilter` if you only need a pause, but include it for scoped variable output or interpolation).
11
11
3.**Get Variables** (`get_variables`) – Retrieve all variables in the current top stack frame scopes.
12
12
4.**Expand Variable** (`expand_variable`) – Drill into a single variable to inspect its immediate children.
13
13
5.**Evaluate Expression** (`evaluate_expression`) – Run an arbitrary expression (like the Debug Console) in the paused stack frame.
@@ -47,7 +47,7 @@ npm run compile
47
47
48
48
`copilot-debugger.entryTimeoutSeconds` – How long (in seconds) to wait for the initial _entry_ stop after launching (before continuing to user breakpoints). Increase this for large projects with long cold builds or container start times (e.g. 180). If the entry stop is not observed within the window a timeout error is returned.
49
49
50
-
> **Important:**`start_debugger_with_breakpoints` requires at least one breakpoint **and** a non-empty `variableFilter`. Tight filters keep the response concise so Copilot doesn’t exhaust the LLM context window.
50
+
> **Important:**`start_debugger_with_breakpoints` requires at least one breakpoint **and** a non-empty `variableFilter` per breakpoint. Each `variableFilter` is a list of **exact** variable names (case-sensitive). Regex / glob patterns are not supported; enumerate only what you need to minimize output.
51
51
52
52
Example settings snippet:
53
53
@@ -71,7 +71,7 @@ If none of the above apply (and multiple configs exist), an error is returned so
71
71
Minimal example (auto-selection when sole config exists):
72
72
73
73
```text
74
-
Start the debugger in workspace folder /absolute/path/to/project with a breakpoint at src/index.ts line 15 and variables foo,bar.
74
+
Start the debugger in workspace folder /absolute/path/to/project with a breakpoint at src/index.ts line 15 filtering variables foo,bar.
75
75
```
76
76
77
77
Explicit configuration example:
@@ -91,11 +91,11 @@ Start debug with configurationName "Run test.js" and capture action at test-work
91
91
## 🧪 Example Copilot Prompts
92
92
93
93
```text
94
-
Start the debugger with a breakpoint at src/app.ts line 42; only show variables matching ^(user|session)$.
94
+
Start the debugger with a breakpoint at src/app.ts line 42 filtering variables user,session.
95
95
```
96
96
97
97
```text
98
-
Resume the last debug session, add a breakpoint at src/server.ts line 42 and filter ^order_, then wait for it to hit.
98
+
Resume the last debug session, add a breakpoint at src/server.ts line 42 filtering variables orderId,orderTotal then wait for it to hit.
99
99
```
100
100
101
101
```text
@@ -108,11 +108,11 @@ Stop every debug session named "Web API".
108
108
109
109
### Prompt Priorities & Output Size
110
110
111
-
Tool responses are now rendered with `@vscode/prompt-tsx`, the same priority-aware prompt builder used in Microsoft’s chat samples. Each tool result includes a structured `LanguageModelPromptTsxPart`, so Copilot (or any prompt-tsx–aware planner) can automatically drop low-priority sections when the context window is tight.
111
+
Tool responses are rendered with `@vscode/prompt-tsx`, the same priority-aware prompt builder used in Microsoft’s chat samples. Each tool result includes structured parts so Copilot (or any prompt-tsx–aware planner) can automatically drop low-priority sections when the context window is tight.
112
112
113
-
- High priority → breakpoint summary (session/file/line).
Because variable filters are mandatory and the prompt is minified before returning, typical tool output is now only a few thousand characters instead of tens of thousands.
118
118
@@ -174,12 +174,30 @@ You can also run tests/debug from VS Code’s Run and Debug view using the provi
174
174
175
175
---
176
176
177
-
## 📦 Publishing
177
+
## 📦 Publishing & Release Workflow
178
178
179
-
-**CI/CD** – `.github/workflows/ci.yml` runs lint/format/test on push & PR, then packages + publishes on GitHub releases.
180
-
-**Secrets** – add `VSCE_PAT` (Marketplace PAT with Manage scope); `GITHUB_TOKEN` is provided automatically.
181
-
-**Manual publish** – `npm run lint && npm test`, bump `npm version`, then `npx @vscode/vsce package` and `npx @vscode/vsce publish -p <VSCE_PAT>`.
182
-
-**Release flow** – tag (`git push --tags`) and create a GitHub release to kick off the publish workflow.
179
+
Standard release checklist (copy/paste):
180
+
181
+
```text
182
+
1. Update code / docs
183
+
2. npm run format && npm run lint
184
+
3. npm test (all pass)
185
+
4. Update CHANGELOG.md (new section [x.y.z] - YYYY-MM-DD)
CI/CD – `.github/workflows/ci.yml` runs lint/format/test on push & PR, then packages + publishes on GitHub releases.
195
+
196
+
Secrets – add `VSCE_PAT` (Marketplace PAT with Manage scope); `GITHUB_TOKEN` is provided automatically.
197
+
198
+
Manual publish – `npm run lint && npm test`, bump version (`npm version patch|minor|major`), then `npx @vscode/vsce package` and `npx @vscode/vsce publish -p <VSCE_PAT>`.
199
+
200
+
Release flow – push tag & create a GitHub release to trigger publish workflow.
Copy file name to clipboardExpand all lines: package.json
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
"publisher": "dkattan",
3
3
"name": "copilot-breakpoint-debugger",
4
4
"displayName": "Copilot Breakpoint Debugger",
5
-
"version": "0.0.15",
5
+
"version": "0.0.16",
6
6
"description": "Use GitHub Copilot to automate starting, inspecting and resuming VS Code debug sessions with conditional breakpoints, exact numeric hit counts (hitCount), logpoints, and capture actions that interpolate variables inside log messages.",
0 commit comments