修复copilot 与Windows 的copilot 冲突

This commit is contained in:
2026-05-28 23:02:24 +08:00
parent 8ceccd75f1
commit e8693dad2a
4 changed files with 123 additions and 4 deletions

View File

@@ -608,10 +608,38 @@ gh-copilot-wsl explain "tar -czf backup.tar.gz ~/project --exclude node_modules"
### RTK (Rust Token Killer)
RTK 作为 Claude Code 的 **PreToolUse hook** 运行,自动将 bash 命令重写为 `rtk` 等效命令,过滤噪音、压缩输出,减少 6090% token 消耗。
RTK 支持多种 AI 编程助手集成,过滤噪音、压缩输出,减少 6090% token 消耗。
#### Claude Code 集成
RTK 作为 Claude Code 的 **PreToolUse hook** 运行,自动将 bash 命令重写为 `rtk` 等效命令。
`deploy.ps1` 会自动执行 `rtk init -g` 注册 hook**重启 Claude Code 后即生效**。
#### GitHub Copilot 集成
RTK 通过 `.github/copilot-instructions.md` 文件集成 GitHub CopilotVS Code / Copilot Chat
本仓库已包含此文件Copilot 读取后会自动在终端命令前添加 `rtk` 前缀。
```bash
# 生成 copilot-instructions 模板(如需在其他项目中集成)
rtk init -g --copilot
```
生成的 `.github/copilot-instructions.md` 内容示例:
```markdown
<!-- rtk-instructions v2 -->
# RTK — Token-Optimized CLI
Always prefix shell commands with `rtk`:
- rtk git status (instead of git status)
- rtk cargo test (instead of cargo test)
- rtk docker ps (instead of docker ps)
```
> 对已有 `copilot-instructions.md` 的项目,可手动追加 RTK 规则块,避免覆盖原有内容。
```bash
# 验证 hook 安装状态
rtk init --show
@@ -627,6 +655,30 @@ rtk cargo test # 只显示失败的测试
rtk grep "pattern" . # 分组搜索结果
```
### 故障排查 — gh copilot 使用 Windows 版本
**现象**:在 WSL2 中执行 `gh copilot` 报错 `exec: .../copilot.bat: not found`
**原因**VS Code GitHub Copilot Chat 扩展将其 `copilotCli` 目录加入了 Windows 系统 PATHWSL2 继承该路径后,`gh copilot` 内置命令从 PATH 找到了 Windows 的 `.bat` wrapper在 Linux 下无法执行。
```bash
# 方法一:重新运行 wsl-setup.sh已自动写入 PATH 修复)
bash /mnt/g/Works/server-deploy/claude-dev-stack/wsl-setup.sh
# 方法二:手动修复(写入 ~/.bashrc 并立即生效)
cat >> ~/.bashrc << 'EOF'
# 排除 VS Code Copilot Chat Windows wrappergh copilot 在 WSL2 中会误调用 .bat 文件)
PATH="$(echo "$PATH" | tr ':' '\n' | grep -Fv 'copilotCli' | tr '\n' ':' | sed 's/:$//')"
EOF
source ~/.bashrc
# 验证
gh copilot --version
```
---
### 故障排查 — rtk 安装失败
```bash