Skip to content

Regression: 'XDG_CONFIG_HOME' ignored -- no equivalent available #1954

@DLehenbauer

Description

@DLehenbauer

Describe the bug

The XDG_CONFIG_HOME environment variable no longer appears to be respected for determining the configuration directory. This is a regression from 0.0.421.

Note that COPILOT_HOME and --config-dir are not acceptable substitutes because they also redirect machine local state, including:

  • The SQLite database
  • Auto-update package cache under pkg/
  • Temporary .lock files

These artifacts are unsuitable for cloud sync (OneDrive) or version control (Git).

By contrast, XDG_CONFIG_HOME would only redirect the user's configuration (config.json, skills, agents, etc.). The XDG spec deliberately separates configuration XDG_CONFIG_HOME from state XDG_STATE_HOME for exactly this reason.

Affected version

GitHub Copilot CLI 1.0.4

Steps to reproduce the behavior

  1. Set XDG_CONFIG_HOME
# PowerShell (Windows) — set for current session
$env:XDG_CONFIG_HOME = "D:\my_copilot_config"
  1. Create a minimal agent under the XDG config path
# PowerShell
New-Item -ItemType Directory -Force "$env:XDG_CONFIG_HOME\.copilot\agents"
@"
---
name: xdg-test
description: "Test agent to verify XDG_CONFIG_HOME support."
---
Reply with OK.
"@ | Set-Content "$env:XDG_CONFIG_HOME\.copilot\agents\xdg-test.agent.md"
  1. Launch Copilot CLI and check /agents
/agent


 Custom Agents

 Select Agent:
 ❯ 1. Default (current)

 Manage Agents:
   1. Create new agent...
   2. Learn more about custom agents

 ↑↓ to navigate · Enter to select · Esc to cancel

Expected behavior

xdg-test appears in the list of available agents:

Custom Agents

 Select Agent:
 ❯ 1. Default (current)
   2. xdg-test · user

 Manage Agents:
   3. Create new agent...
   4. Learn more about custom agents

 ↑↓ to navigate · Enter to select · Esc to cancel

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions