Skip to content

Support multi-root workspaces via .code-workspace file for additional folder context and instruction files #1826

@boazwasserman

Description

@boazwasserman

Describe the feature or problem you'd like to solve

When using the Copilot CLI connected to a VS Code IDE workspace (via /ide), the CLI does not read the .code-workspace file to discover additional root folders. This means: 1. Instruction files (e.g., AGENTS.md) in additional workspace folders are not discovered or loaded 2. File context from additional workspace folders is not available for search/indexing — the agent only sees the primary cwd/git-root 3. Workspace settings like github.copilot.chat.codeGeneration.instructions that reference files in additional folders are not applied The VS Code extension handles this correctly — it reads all root folders from the .code-workspace file and includes their context and instruction files. Example Given this productivity.code-workspace: { "folders": [ { "path": "." }, { "path": "../../repos/TeamCerebro" }, { "path": "../../../../projects/XSPM-PostureEffectivenessScore" } ], "settings": { "github.copilot.chat.codeGeneration.instructions": [ { "file": "AGENTS.md" } ] } } The VS Code Copilot Chat extension indexes all 3 folders and loads the AGENTS.md instruction file. The CLI only sees the primary folder (cwd).

Proposed solution

When connected to a VS Code IDE workspace via /ide:

  1. Read the .code-workspace file to discover all root folders
  2. Include instruction files from all workspace roots (respecting the same discovery rules: AGENTS.md, .github/copilot-instructions.md, etc.)
  3. Make all workspace folders available for file search/context (same as the extension does)

Alternatively, support a CLI flag or config option like --workspace <path-to-.code-workspace> for standalone use without /ide.

Example prompts or workflows

The agent can manually read the .code-workspace file, resolve the relative paths, and access the additional folders — but this requires explicit manual navigation rather than automatic discovery

Additional context

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:configurationConfig files, instruction files, settings, and environment variablesarea:context-memoryContext window, memory, compaction, checkpoints, and instruction loading
    No fields configured for Feature.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions