Conversation
There was a problem hiding this comment.
Pull request overview
This PR introduces a new "Tour" agent that provides guided code tours to help users understand codebases through interactive file navigation and highlighting. The Tour agent uses three new tools (openFile, highlightLines, clearHighlights) to orchestrate step-by-step walkthroughs of code, opening files, highlighting specific line ranges, and managing visual highlights.
Changes:
- Adds three new tools for file navigation and highlighting (openFile, highlightLines, clearHighlights)
- Implements TourAgentProvider with embedded prompt instructions for guided code tours
- Registers tools in the toolset and contributes tool definitions to package.json
Reviewed changes
Copilot reviewed 8 out of 9 changed files in this pull request and generated 11 comments.
Show a summary per file
| File | Description |
|---|---|
| src/extension/tools/vscode-node/openFileTool.ts | New tool to open files in the editor |
| src/extension/tools/vscode-node/highlightLinesTool.ts | New tool to open files and highlight specific line ranges with visual decorations |
| src/extension/tools/vscode-node/clearHighlightsTool.ts | New tool to clear all highlights from a file |
| src/extension/tools/vscode-node/allTools.ts | Registers the three new tools for loading |
| src/extension/tools/common/toolNames.ts | Adds enum entries and categorization for the three new tools |
| src/extension/agents/vscode-node/tourAgentProvider.ts | Implements the Tour agent provider with dynamic configuration and prompt generation |
| src/extension/agents/vscode-node/promptFileContrib.ts | Registers the Tour agent provider |
| package.json | Adds tool definitions with schemas for the three new tools |
| package-lock.json | Dependency tree updates (peer flags and optional dependency cleanup) |
Comments suppressed due to low confidence (5)
src/extension/agents/vscode-node/tourAgentProvider.ts:133
- Spacing issue: Missing space after "focused." and before "Aim". Should be "Keep tours focused. Aim for".
- Keep tours focused.Aim for 3-7 stops unless the topic genuinely requires more.
src/extension/agents/vscode-node/tourAgentProvider.ts:113
- Markdown formatting inconsistency: Should be "How to tell the difference:" (no space between asterisks and text).
** How to tell the difference:**
src/extension/agents/vscode-node/tourAgentProvider.ts:128
- Markdown formatting inconsistency: Should be "Example:" (no space between asterisks and text).
** Example:**
src/extension/agents/vscode-node/tourAgentProvider.ts:65
- Spacing issue: Missing space after "stop" and before the opening parenthesis. Should be "this stop (with the #tool:todo tool)".
4. Before moving to the next stop, check off the todo item corresponding to this stop(with the #tool:todo tool)
src/extension/agents/vscode-node/tourAgentProvider.ts:82
- Markdown formatting inconsistency: The examples use "** Good example:" and " Bad example (too terse):**" with double asterisks and a space, which is non-standard Markdown. Standard Markdown bold formatting should be "Good example:" (no space between asterisks and text) or use a different format like "Good example:" if the bold should only apply to "Good example".
** Good example:**
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
I am making Submissions in the course of work for my employer (Microsoft/GitHub). I have permission from my employer to make Submissions and enter into this Agreement on behalf of my employer. By signing below, the defined term “You” includes me and my employer. @microsoft-github-policy-service agree company="Microsoft/GitHub" |
Overview
Hi!!
This PR adds a custom agent called "Tour" that is meant to help orient users to a new repo by walking them through it. The flow: (1) User asks a question ("How is feature X implemented?"), (2) agent plans a tour, (3) agent goes through the steps of the tour, opening files, highlighting lines, and explaining what it's showing. The user controls the pace of the tour, and can ask questions or even redirect the tour as desired.
Advantages over the "Ask" agent
Questions
There are certainly other choices we can make in terms of UI/UX!
Screenshots