github / github/copilot-cli

Plugin cache_path stored as absolute path breaks in Docker/multi-HOME environments

Aberta
#3,864 0 comentários 0 reações 0 responsáveis Ver no GitHub
area:configuration area:plugins
Linguagem predominante
Shell
Estrelas
11.2k
Forks
1.9k
Merge médio
14h 16min
PRs com merge (30d)
6

Descrição

## Description

When a plugin is installed, `cache_path` in `config.json` is hardcoded to an absolute path
rooted at the install-time `$HOME`. If `~/.copilot` is volume-mounted into Docker (where
`$HOME` differs), the path doesn't exist and `sessionStart` hooks silently never fire.

I'm mounting my host ~/.copilot into the active user's home folder in Docker, and that seems
to work for most things, but evidently not plugins. Any help greatly appreciated.

## Root Cause

config.json stores:
"cache_path": "/Users/josh/.copilot/installed-plugins/_direct/my-plugin"

Inside Docker ($HOME = /home/deployer), that path doesn't exist.

## Expected Behavior

cache_path should be $HOME-relative so it works across environments sharing ~/.copilot.

## Workaround

sudo mkdir -p /Users/josh && sudo ln -sfn /home/deployer/.copilot /Users/josh/.copilot
(must be recreated each container start)

## Environment
- CLI: 1.0.59
- Host: macOS /Users/josh
- Container: Linux /home/deployer
- ~/.copilot shared via Docker volume mount

Guia de contribuição

Abrir o guia de contribuição

Direção de pesquisa

Start by locating the plugin installation code that writes cache_path to config.json, then trace how sessionStart hooks resolve that path. Reproduce the issue with ~/.copilot mounted under a different HOME, and consider the work complete when the stored path works in both environments and the hook fires.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
docker, shell
Domínio
cli
Tipo de issue
Bug
Dificuldade
3/5
Tempo estimado
1-2 dias
Status de atividade
Pouca atividade
Clareza
Razoavelmente clara
Facilidade para iniciantes
52/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.