Windows11 VS code 安装 Cline 调用 Github MCP 配置过程坑点汇总

背景

为了调研 MCP 在 windows 上如何使用本地的命令执行一些操作而实现自动化的过程,在 B 站视频的指导下,进行相应填坑过程,最终运行起来,并实现 github 自动化编程并提交代码的过程。

B 站 Cline 视频演示

Cline

Cline 是一款 Visual Studio Code (VSCode) 的开源 AI 编程辅助插件,主要用于通过人工智能增强开发者的编码体验,帮助自动化和加速软件开发流程。它不仅限于代码补全,而是作为一个智能代理(agent),能够理解项目上下文、执行复杂任务并与开发环境交互。以下是 Cline 的主要用途和功能:

自动化编程任务:

  • Cline 可以通过自然语言指令执行复杂的编程任务,例如创建新文件、编辑现有代码、运行终端命令等。例如,你可以要求它"创建一个 Spring Boot 应用"或"修复某个 bug",它会分解任务并逐步完成。

代码生成与优化:

  • 它能根据用户需求生成代码模板、优化现有代码或进行大规模重构。Cline 还能分析代码结构,自动修复语法错误、缺少的导入等常见问题。

实时调试与运行时交互:

  • Cline 支持与运行时环境交互,例如启动本地 Web 服务器、检查页面渲染、捕获控制台日志或修复运行时错误。它甚至可以通过无头浏览器模拟用户操作(如点击、输入)来调试前端问题。

多模型支持与灵活性:

  • Cline 支持多种 AI 模型(如 Anthropic 的 Claude 3.5 Sonnet、OpenAI 的 GPT-4、Google Gemini、DeepSeek R1 等),并允许用户根据任务需求切换模型。它还支持本地模型(如通过 LM Studio 或 Ollama),提供隐私和成本控制。

版本控制与安全:

  • Cline 提供工作区快照功能,每次 AI 操作后自动保存状态,允许用户随时查看更改差异或回滚到之前版本。每次文件修改或命令执行都需要用户批准,确保安全性和可控性。

项目上下文理解:

  • 通过分析文件结构、源代码 AST 和正则搜索,Cline 能快速适应大型复杂项目,提供精准的建议和修改。它还能通过 .clinerules 文件或自定义指令遵循项目特定的编码规范。

终端命令执行:

  • 利用 VSCode 的终端集成,Cline 可以执行安装包、运行测试、部署应用等命令,并根据输出动态调整后续操作。

多语言和框架支持:

  • Cline 支持多种编程语言和框架,尤其对主流框架(如 Spring Boot、Next.js)有较好的支持。用户可以用自然语言描述需求,Cline 会生成相应的代码结构。

增强系统管理员工作:

  • 对于系统管理员,Cline(及其分支 Roo Code)可通过自然语言生成和优化 PowerShell 或 Bash 脚本,自动化 CLI 任务。

成本透明与管理:

  • Cline 实时跟踪 API 使用的 token 数量和成本,帮助用户优化模型选择和控制开支。

Cline 安装 github MCP 常见问题

如何安装

在 cline 的插件管理里面搜索

github 源码地址:

https://github.com/modelcontextprotocol/modelcontextprotocol

cline_mcp_settings.json 配置

安装后在 Installed 中可以看到该服务的提供的服务,安装完后,需要我们来配置一个服务 json,B 站课程里面要求改写的地方注意改写,实测不改写在 powershell 里面也不会有啥问题,UP 主估计是在 cmd 控制台下出现的问题。

下面的 autoApprove 是自动授权的一种操作,若不添加,AI 无论操作以下哪种行为都要求我们来授权,比较麻烦,我全勾了。

open router 模型配置

openrouter 的地址:OpenRouter

注意 cline 的模型自动换成 sonnet

这估计不是 bug,而是故意而为,要时刻注意模型是否被切换

VS code 报 Shell Integration Unavailable 问题

知乎一篇帖子写得很全,下面来补补坑

  1. 第一个坑是 powershell 如何安装 7 的命令,这个往往会因为网络问题无法处理安装,你需要配置下 http_proxy,https_proxy ,另外 microsoft.com 默认不会被转发,你需要将其手动追加,这是个关键 地方,否则下面的命令无法执行
bash 复制代码
PS C:\Users\Administrator> winget install --id Microsoft.PowerShell --source winget
尝试更新源失败: winget
执行此命令时发生意外错误:
InternetOpenUrl() failed.
0x80072eff : unknown error
PS C:\Users\Administrator> winget install --id Microsoft.PowerShell --source winget
尝试更新源失败: winget
执行此命令时发生意外错误:
InternetOpenUrl() failed.
0x80072eff : unknown error

https://zhuanlan.zhihu.com/p/25724740375(升级 shell)

Powershell 如何被 vscode 默认调用

在C盘搜索pwsh.exe,查看新的PowerShell装哪了(此时默认的PowerShell还是旧版的),我的是在C:\Program Files\PowerShell\7\pwsh.exe下。然后,在VS Code中按Ctrl + Shift + P,输入并选择 Preferences: Open User Settings (JSON),打开用户设置文件,搜索 terminal.integrated,我不经常用 vscode,所以配置是空的,我直接输入以下内容即可:

bash 复制代码
{
    "terminal.external.windowsExec": "C:\\Program Files\\PowerShell\\7\\pwsh.exe",
    "terminal.integrated.defaultProfile.windows": "PowerShell 7",
    "terminal.integrated.profiles.windows": {
        "PowerShell 7":{
            "path": "C:\\Program Files\\PowerShell\\7\\pwsh.exe",
            "args": []
        }
    },
}

除了 json 配置外,也有 UI 配置

在VS Code中按Ctrl + Shift + P,输入并选择 Preferences: Open User Settings

Powershell 7 无法升级

需要将 microsoft.com 以 domain-suffix 增加到 clash rules 中去

  1. powershell 的命令 pwsh,不是 powershell,所以你在资源目录里面直接输入 powershell 还是 5 版本,如想找到 pwsh.exe 配置 pycharm terminal,可以用 everthing 搜索 pwsh.exe

查看 powershell 的版本号命令

bash 复制代码
$PSVersionTable.PSVersion  #这个比较难记
host # 这个比较好记

Pycharm 更换 powershell 7 后如何自动切换环境?

powershell 7 支持你开启时,执行一些脚本,powershell 5 不清楚是如何适配的,但是 7 需要配置 ps1 文件,并且开启可执行脚本的命令

bash 复制代码
. : 无法加载文件 C:\Users\Administrator\Documents\WindowsPowerShell\profile.ps1,因为在此系统上禁止运行脚本。有关详细信
息,请参阅 https:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies。
所在位置 行:1 字符: 3
+ . 'C:\Users\Administrator\Documents\WindowsPowerShell\profile.ps1'
+   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : SecurityError: (:) [],PSSecurityException
    + FullyQualifiedErrorId : UnauthorizedAccess
profile.ps1 内容(网上可找)
bash 复制代码
#region conda initialize
# !! Contents within this block are managed by 'conda init' !!
If (Test-Path "C:\Users\Administrator\anaconda3\Scripts\conda.exe") {
    (& "C:\Users\Administrator\anaconda3\Scripts\conda.exe" "shell.powershell" "hook") | Out-String | ?{$_} | Invoke-Expression
}
#endregion
Microsoft.PowerShell_profile.ps1,因为在此系统上禁止运行脚本

解决方案

解决Win11报错:Microsoft.PowerShell_profile.ps1,因为在此系统上禁止运行脚 本。_profile.ps1,因为在此系统上禁止运行脚本-CSDN博客

bash 复制代码
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
相关推荐
露临霜2 小时前
vue实现AI问答Markdown打字机效果
前端·javascript·vue.js·ai·github
z5z3c3 小时前
如何用git将项目上传到github
git·github
江鸟199812 小时前
AI 编程日报 · 2025 年 5 月 04 日|GitHub Copilot Agent 模式发布,Ultralytics 优化训练效率
人工智能·github·copilot
IoOozZzzz16 小时前
【Github仓库】Learn-Vim随笔
github·vim·excel
程序员陆通16 小时前
MCP协议与Dify集成教程
人工智能·ai编程
42fourtytoo1 天前
从0开始建立Github个人博客(hugo&PaperMod)
运维·服务器·python·go·github
qianmoQ2 天前
GitHub 趋势日报 (2025年05月01日)
github
怪我冷i2 天前
k8s笔记——kubebuilder工作流程
云原生·kubernetes·ai编程·ai写作
puyihuan2 天前
AI编程新选择!VSCode + RooCode,超越Cursor
ide·vscode·ai编程·roocode