github / github/copilot-cli

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

Đang mở
#3,864 0 bình luận 0 reaction 0 người được giao Xem trên GitHub
area:configuration area:plugins
Ngôn ngữ chính
Shell
Star
11.2k
Fork
1.9k
Merge trung bình
14 giờ 16 phút
Pull request đã merge (30 ngày)
6

Mô tả

## 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

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

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.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
docker, shell
Lĩnh vực
cli
Loại issue
Lỗi
Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức độ hoạt động
Ít trao đổi
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
52/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.