Skip to content

Move Configure Tools action from chat input to config menu#298085

Draft
daviddossett wants to merge 1 commit intomainfrom
daviddossett/move-configure-tools-to-menu
Draft

Move Configure Tools action from chat input to config menu#298085
daviddossett wants to merge 1 commit intomainfrom
daviddossett/move-configure-tools-to-menu

Conversation

@daviddossett
Copy link
Copy Markdown
Collaborator

Moves the "Configure Tools..." icon button from the chat input toolbar (MenuId.ChatInput) to the chat config gear menu (CHAT_CONFIG_MENU_ID), placing it in the 2_level group alongside Tool Sets.

Copilot AI review requested due to automatic review settings February 26, 2026 20:08
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Moves the “Configure Tools...” action contribution from the chat input toolbar menu to the chat view’s config (gear) menu, aligning it with other configuration entries (e.g., Tool Sets).

Changes:

  • Re-targets ConfigureToolsAction menu contribution from MenuId.ChatInput to CHAT_CONFIG_MENU_ID.
  • Adds a view-scoped when clause (view === ChatViewId) and places the item into the 2_level group with a new order.
  • Updates imports accordingly (removes MenuId, adds ChatViewId and CHAT_CONFIG_MENU_ID).

Comment on lines 129 to +136
when: ContextKeyExpr.and(
ContextKeyExpr.equals('view', ChatViewId),
ChatContextKeys.chatModeKind.isEqualTo(ChatModeKind.Agent),
ChatContextKeys.lockedToCodingAgent.negate(),
),
id: MenuId.ChatInput,
group: 'navigation',
order: 100,
id: CHAT_CONFIG_MENU_ID,
group: '2_level',
order: 10,
Copy link

Copilot AI Feb 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since this action is now invoked from the chat view title config menu, it will typically receive an IChatViewTitleActionContext (with sessionResource). run() currently relies on lastFocusedWidget and only extracts a widget from args when an explicit { widget } object is passed, so it can operate on the wrong session/widget. Consider resolving the widget via IChatWidgetService.getWidgetBySessionResource(context.sessionResource) when the first arg matches isChatViewTitleActionContext(...) (and fall back to lastFocusedWidget).

Copilot uses AI. Check for mistakes.
Comment on lines +134 to +136
id: CHAT_CONFIG_MENU_ID,
group: '2_level',
order: 10,
Copy link

Copilot AI Feb 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Now that the action is surfaced from the config gear menu (instead of the chat input toolbar), the source passed into showToolsPicker will still default to 'chatInput' when no args are provided. This will misattribute picker telemetry (chatToolPickerClosed) and makes it harder to distinguish menu entry points. Consider changing the default source to something reflecting the new location (or plumbing a { source } argument from the menu invocation).

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants