github / github/copilot-cli

Plugin install fails: pluginRoot prepended to source path causing doubled directory segment

未關閉
#2,200 2 則留言 1 個 reaction 已指派 0 人 在 GitHub 檢視
area:installation area:plugins
主要語言
Shell
星號
11.2k
分支
1.9k
平均合併
14 小時 16 分鐘
30 天內合併 PR
6

描述

## Bug Report

### Summary
When installing a plugin from the `microsoft-skills` marketplace (e.g. `azure-skills@skills`), the CLI constructs an incorrect path by joining `pluginRoot` with a `source` value that already contains the full path prefix. This produces a doubled directory segment and the install fails with a directory-not-found error.

### Steps to Reproduce
1. Run `/plugin` and install `azure-skills@skills` from the `microsoft-skills` marketplace.
2. Observe the error: directory not found.

### Expected Behavior
Plugin installs successfully. The resolved path should be:
```
~/.cache/copilot/marketplaces/microsoft-skills/.github/plugins/azure-skills
```

### Actual Behavior
The CLI looks for the plugin at:
```
~/.cache/copilot/marketplaces/microsoft-skills/.github/plugins/.github/plugins/azure-skills
```

### Root Cause (Observed)
In `marketplace.json` for `microsoft-skills`, the `metadata.pluginRoot` is set to `./.github/plugins` and each plugin entry's `source` field is `./.github/plugins/` (the full path from repo root). The CLI appears to join `pluginRoot + source` rather than treating `source` as repo-root-relative, resulting in the segment being appended twice.

Relevant `marketplace.json` snippet:
```json
{
"metadata": {
"pluginRoot": "./.github/plugins"
},
"plugins": [
{
"name": "azure-skills",
"source": "./.github/plugins/azure-skills"
}
]
}
```

### Workaround
Manually create a symlink at the doubled path pointing to the real plugin directory:
```bash
mkdir -p ~/.cache/copilot/marketplaces/microsoft-skills/.github/plugins/.github/plugins
ln -sf ~/.cache/copilot/marketplaces/microsoft-skills/.github/plugins/azure-skills ~/.cache/copilot/marketplaces/microsoft-skills/.github/plugins/.github/plugins/azure-skills
```

### Environment
- OS: Linux
- Marketplace: `microsoft-skills` (marketplace version 1.0.0)
- Plugin: `azure-skills` (plugin version 1.0.1)
- Copilot CLI version: 1.0.10

貢獻指南

開啟貢獻指南

評估

這個 Issue 還沒有評估資料。

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。