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 默认不会被转发,你需要将其手动追加,这是个关键 地方,否则下面的命令无法执行

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,所以配置是空的,我直接输入以下内容即可:

{"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 的版本号命令

$PSVersionTable.PSVersion  #这个比较难记
host # 这个比较好记

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

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

. : 无法加载文件 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 内容(网上可找)
#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博客

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/79544.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

kdump详解

kdump 是 Linux 系统中的一种内核崩溃转储机制,用于在系统崩溃时将内存中的数据保存到磁盘上,以便后续分析系统崩溃的原因。以下是对 kdump 的详细介绍: 1、工作原理 kdump 利用了 Linux 系统中的双启动机制。当系统启动时,它会…

RGB三原色

本文来源 : 腾讯元宝 ​​RGB三原色(红绿蓝)详解​​ RGB(Red, Green, Blue)是光学的三原色,通过不同比例的混合可以产生人眼可见的绝大多数颜色。它是现代显示技术(如屏幕、投影仪&#xff09…

CSS兼容性:挑战与策略

CSS兼容性:挑战与策略 引言 在前端开发的广阔领域中,跨浏览器兼容性无疑是最棘手且难以预测的挑战之一。当我们精心设计的网页在Chrome中完美呈现,却在Safari中布局崩溃,或在Firefox中交互失效时,这种挫折感是每位前…

[ 设计模式 ] | 单例模式

单例模式是什么?哪两种模式? 单例模式就是一个类型的对象,只有一个,比如说搜索引擎中的索引部分,360安全卫士的桌面悬浮球。 饿汉模式和懒汉模式:饿汉模式是线程安全的,懒汉模式不是线程安全的…

Notebook.ai 开源程序是一套工具,供作家、游戏设计师和角色扮演者创建宏伟的宇宙 - 以及其中的一切

​一、软件介绍 文末提供程序和源码下载 Notebook.ai 开源程序是一套工具,供作家、游戏设计师和角色扮演者创建宏伟的宇宙 - 以及其中的一切。 二、软件特点 Notebook 是作家的规划工具,用于创建从宇宙到角色、情节到单个项目的任何内容。通过浏览器、…

centos7.0无法安装php8.2/8.3

在centos安装php8.2报错 configure: error: *** A compiler with support for C17 language features is required. 配置过程检测到你的系统编译器不支持 C17 语言特性,而 PHP 8.2 的编译需要编译器支持 C17 sudo yum update -y sudo yum install centos-releas…

Three.js + React 实战系列 - 客户评价区细解教程 Clients 组件✨(回答式评价 + 评分星级)

对个人主页设计和实现感兴趣的朋友可以订阅我的专栏哦!!谢谢大家!!! 在这篇博客中,我们将实现一个简洁的 Hear from My Clients 客户评价区域。这个区块在个人主页中可以突显用户体验和专业度,帮…

Vim 命令从头学习记录

学习链接:eleon-vim基础教程 Vim - 基础翻屏操作 光标移动:hjkl 20j 向下移动20行,w 向后移动一个字符,b 向前移动一个字符。 Ctrl u 向上翻半页 UP Ctrl d 向下翻半页 Down Ctrl f 向下翻整页 Forward Ctrl b 向上翻整页 …

Linux系统编程--基础指令(!!详细讲解+知识拓展)

第一讲 基础指令 ​ 我们现如今自己使用的电脑大部分是用的都是windows或者macOS,并配合上由微软和苹果开发的图形化界面,所以使用鼠标再屏幕上进行点击即可完成许多任务。但是作为操作系统的学习者,在linux的基础上不再使用图形化界进行操作…

ADK 第四篇 Runner 执行器

智能体执行器 Runner,负责完成一次用户需求的响应,是ADK中真正让Agent运行起来的引擎,其核心功能和Agents SDK中的Runner类似,具体作用如下: 会话管理:自动读取/写入 SessionService,维护历史信…

【Tauri2】37——后端处理invoke

目录 前言 正文 随便看看 看看get 看看parse_invoke_request 看看message_handler 看看handle_ipc_message 看看webview的on_message方法 第一种情况的处理 第二种情况的处理 运行通信函数 返回的处理 整个流程 前言 【Tauri2】033 __TAURI_INTERNALS__和invoke-C…

kotlin 05flow -从 LiveData 迁移到 Kotlin Flow 完整教程

一 从 LiveData 迁移到 Kotlin Flow 完整教程 LiveData 长期以来是 Android 架构组件中状态管理的核心,但随着 Kotlin Flow 的成熟,Google 官方推荐将现有 LiveData 迁移到 Flow。本教程基于官方文章并扩展实践细节,完成平滑迁移。 一、为什…

C++负载均衡远程调用学习之获取主机信息功能

目录 01Lars-lbAgentV0.2-赋值均衡数据结构关系分析 02 Lars-lbAgent0.2-host_info-load_balance-route_lb数据结构的定义 03Lars-lbAgentV0.2-proto协议的定义 04 Lars-lbAgentV0.2-route_lb与UDP server的关联 05 -Lars-lbAgentV0.2-route_lb与UDP server的关联 06Lars…

2025系统架构师---论软件的设计模式论文

2023 年,我所在的公司承担了某部网络靶场的研发任务。我作为公司的技 术总监,希望能打造基于网络靶场的系列产品,参与到项目的设计中,以期开发 扩展性和可维护性良好的网络靶场,为以后的产品开发打下基础。网络靶场是网 络安全技术研究的基础支撑平台,它利用虚拟的和实物…

Kubernetes排错(七)-节点排错

1、节点 Crash 与 Vmcore 分析 kdump 介绍​ 目前大多 Linux 发新版都会默认开启 kdump 服务,以方便在内核崩溃的时候, 可以通过 kdump 服务提供的 kexec 机制快速的启用保留在内存中的第二个内核来收集并转储内核崩溃的日志信息(vmcore 等文件), 这种机制需要服务…

【QT】QT中的软键盘设计

QT的软键盘设计 1.软键盘制作步骤2.介绍有关函数的使用3.出现的编译错误及解决办法示例代码1:按键事件实现软键盘现象:示例代码2:按键事件实现软键盘(加特殊按键)现象: 软键盘移植到新的工程的步骤&#xf…

【LaTeX+VSCode本地Win11编译教程】

LaTeXVSCode本地编译教程参考视频: LaTeXVSCode本地编译教程 下面提供一种Win11的Latex环境配置和设置方案,首先vscode安装参考博客:【VscodeGit教程】,然后准备安装Latex相关组件 在 https://miktex.org/download 下载 miktex 并…

2025五一杯数学建模ABC题赛题已出

2025五一杯数学建模ABC题赛题已出 A: B: C:

Springclound常用五大组件及其使用原理

注册中心Eureka Eureka-Server:就是服务注册中心(可以是一个集群),对外暴露自己的地址。 提供者:启动后向Eureka注册自己信息(地址,服务名称等),并且定期进行服务续约 …

Docker —— 隔离的基本操作(2)

Docker —— 隔离的基本操作(2) unshareunshare 命令详解基本语法常用选项常用示例实际应用场景注意事项与 Docker 的关系1. 执行命令2. 修改主机名3. 退出命名空间4. 验证宿主机主机名关键原理类比 Docker 容器总结 实战操作一(PID 隔离&…