|
|
|
|
@ -50,7 +50,8 @@ class GitHubCopilotSetup extends BaseIdeSetup {
|
|
|
|
|
message: 'Maximum requests per session (1-50)?',
|
|
|
|
|
default: '15',
|
|
|
|
|
validate: (input) => {
|
|
|
|
|
const num = parseInt(input);
|
|
|
|
|
const num = parseInt(input, 10);
|
|
|
|
|
if (isNaN(num)) return 'Enter a valid number 1-50';
|
|
|
|
|
return (num >= 1 && num <= 50) || 'Enter 1-50';
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
@ -187,9 +188,10 @@ class GitHubCopilotSetup extends BaseIdeSetup {
|
|
|
|
|
// Manual configuration - use pre-collected settings
|
|
|
|
|
const manual = options.manualSettings || {};
|
|
|
|
|
|
|
|
|
|
const maxRequests = parseInt(manual.maxRequests || '15', 10);
|
|
|
|
|
bmadSettings = {
|
|
|
|
|
'chat.agent.enabled': true,
|
|
|
|
|
'chat.agent.maxRequests': parseInt(manual.maxRequests || 15),
|
|
|
|
|
'chat.agent.maxRequests': isNaN(maxRequests) ? 15 : maxRequests,
|
|
|
|
|
'github.copilot.chat.agent.runTasks': manual.runTasks === undefined ? true : manual.runTasks,
|
|
|
|
|
'chat.mcp.discovery.enabled': manual.mcpDiscovery === undefined ? true : manual.mcpDiscovery,
|
|
|
|
|
'github.copilot.chat.agent.autoFix': manual.autoFix === undefined ? true : manual.autoFix,
|
|
|
|
|
@ -226,26 +228,17 @@ class GitHubCopilotSetup extends BaseIdeSetup {
|
|
|
|
|
// Reference: https://code.visualstudio.com/docs/copilot/reference/copilot-vscode-features#_chat-tools
|
|
|
|
|
const tools = [
|
|
|
|
|
'changes', // List of source control changes
|
|
|
|
|
'codebase', // Perform code search in workspace
|
|
|
|
|
'createDirectory', // Create new directory in workspace
|
|
|
|
|
'createFile', // Create new file in workspace
|
|
|
|
|
'editFiles', // Apply edits to files in workspace
|
|
|
|
|
'edit', // Edit files in your workspace including: createFile, createDirectory, editNotebook, newJupyterNotebook and editFiles
|
|
|
|
|
'fetch', // Fetch content from web page
|
|
|
|
|
'fileSearch', // Search files using glob patterns
|
|
|
|
|
'githubRepo', // Perform code search in GitHub repo
|
|
|
|
|
'listDirectory', // List files in a directory
|
|
|
|
|
'problems', // Add workspace issues from Problems panel
|
|
|
|
|
'readFile', // Read content of a file in workspace
|
|
|
|
|
'runInTerminal', // Run shell command in integrated terminal
|
|
|
|
|
'runTask', // Run existing task in workspace
|
|
|
|
|
'runCommands', // Runs commands in the terminal including: getTerminalOutput, terminalSelection, terminalLastCommand and runInTerminal
|
|
|
|
|
'runTasks', // Runs tasks and gets their output for your workspace
|
|
|
|
|
'runTests', // Run unit tests in workspace
|
|
|
|
|
'runVscodeCommand', // Run VS Code command
|
|
|
|
|
'search', // Enable file searching in workspace
|
|
|
|
|
'searchResults', // Get search results from Search view
|
|
|
|
|
'terminalLastCommand', // Get last terminal command and output
|
|
|
|
|
'terminalSelection', // Get current terminal selection
|
|
|
|
|
'search', // Search and read files in your workspace, including:fileSearch, textSearch, listDirectory, readFile, codebase and searchResults
|
|
|
|
|
'runSubagent', // Runs a task within an isolated subagent context. Enables efficient organization of tasks and context window management.
|
|
|
|
|
'testFailure', // Get unit test failure information
|
|
|
|
|
'textSearch', // Find text in files
|
|
|
|
|
'todos', // Tool for managing and tracking todo items for task planning
|
|
|
|
|
'usages', // Find references and navigate definitions
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
|