vscode copilot在win10 WSL2环境无法使用的问题

vscode copilot在win10 WSL2环境无法使用的问题

问题描述

问话会进入chat初始化过程

在这里插入图片描述


等了一段时间就说 retry connection

在这里插入图片描述

重新reload window会报:Chat took too long to get ready. Please ensure you are signed in to GitHub and that the extension GitHub.copilot-chat is installed and enabled.

在这里插入图片描述

解决办法

回退Copilot版本

参考这位老哥解决方案 :https://github.com/orgs/community/discussions/147219

在这里插入图片描述

将Copilot回退回 v1.252.0版本

PS:Vscode插件回退方法
依次点击插件->Copilot->Uninstall旁边下拉->Install Specific Version

在这里插入图片描述


点击重装即可,记得关闭自动更新(Auto Update)

在这里插入图片描述

网络问题

在找攻略的时候,可能瞎改了一通网络代理,导致回退了版本也不行

查看网络连接问题

可以在Vscode控制台->output->搜Copilot,这是正常的打印日志

如果显示类似 127.0.0.1:7890 或 127.0.0.1:7987 连接不通过,那就是网络问题

在这里插入图片描述
关闭网络代理

第一步:进入Setting,切换到Remote[WSL:Ubuntu],搜索proxy,去掉Http: Proxy

在这里插入图片描述


第二步:关闭Http: Use Local Proxy Configuration

在这里插入图片描述


在这里插入图片描述

第三步:Reload window后,看到控制台打印如下信息,就说明成功了

在这里插入图片描述

Read more

使用OpenClaw的Skills对接本地系统

使用OpenClaw的Skills对接本地系统 2026年了,养虾了吗?能对接本地系统的方法了解下? Skills听说过吧,AI圈里整天都在讨论的,,今天我们就通过它来让OpenClaw有能力对接我们本地的系统。 此篇仅提供思路,由于目前OpenClaw不太建议在生产环境使用,并且其能力范围可能远超我们的想象,所以这里只做演示用,实际项目中落地请一定要慎重。 为了演示方便,我利用先前我的一篇随笔,是介绍如何通过LangChain Agent的Tools来为销售团队制定培训和考试内容的: 利用AI Agent,辅助销售团队制定培训和考试内容 https://www.cnblogs.com/aspnetx/p/19242559 主要的方法就是将访问本地系统的方法封装成一个python函数,然后把其作为Agent的Tool,提供给AI,让其决定根据用户的指令,如何利用这些Tools来完成任务。 接下来我们来演示,如何使用OpenClaw的Skills来实现同样的功能,这也是使用任何Agent,包括Openclaw对接本地应用系统的一种方式。 首先,创建Skill。作为一个Agen

By Ne0inhk
在 Spring AI 中自定义 Tool 调用返回值——实现 TodoList 提醒注入

在 Spring AI 中自定义 Tool 调用返回值——实现 TodoList 提醒注入

最近发现了一个极简 Claude Code 的文档:https://learn.shareai.run/en/s03/ 其中有一个实用技巧:如何在适当时机提醒 AI 更新 TodoList? 文档中的做法是:当连续三次工具调用都没有触发 todo 更新操作时,在 Function Call 返回值的第一个位置插入一条提醒: <reminder>Update your todos.</reminder> 对应的 Python 实现如下: if rounds_since_todo >=3and messages: last = messages[-1]if last["role"

By Ne0inhk
从源码看ArrayList与LinkedList的性能差异

从源码看ArrayList与LinkedList的性能差异

从源码深挖ArrayList与LinkedList的性能差异 在Java集合框架中,ArrayList和LinkedList作为List接口的两个典型实现,经常被拿来对比。很多开发者仅停留在“ArrayList基于数组、LinkedList基于链表”的表层认知,却忽略了底层源码设计对性能的决定性影响。本文将从源码出发,从初始化、增删改查、内存占用等多维度拆解两者的性能差异,帮你在实际开发中精准选型。 📦 底层结构:数组 vs 双向链表 要理解性能差异,首先得从两者的底层数据结构说起,这是一切性能表现的根源。 ArrayList:动态扩容的Object数组 ArrayList的核心是一个transient Object[] elementData数组,Java源码中定义如下: Java 复制 /** * The array buffer into which the elements of the ArrayList are stored. * The capacity of the ArrayList is the length of

By Ne0inhk

Java集合——List

1. List的几种实现 List 是有序的 Collection,允许元素重复,实现 List 的类有LinkedList、ArrayList、Vector、Stack 等。 ArrayList是应用更加广泛的动态数组实现,它本身不是线程安全的,所以性能要好很多。与Vector近似,ArrayList也是可以根据需要调整容量,不过两者的调整逻辑有所区别,Vector在扩容时会提高1倍,而ArrayList 则是增加 50%。 LinkedList顾名思义是Java提供的双向链表,所以它不需要像上面两种那样调整容量,它也不是线程安全的。 Vector是Java早期提供的线程安全的动态数组,如果不需要线程安全,并不建议选择,毕竟同步是有额外开销的。Vector内部是使用对象数组来保存数据,可以根据需要自动的增加容量,当数组已满时,会创建新的数组,并拷贝原有数组数据。 Vector和ArrayList作为动态数组,其内部元素以数组形式顺序存储的,所以非常适合随机访问的场合。除了尾部插入和删除元素,往往性能会相对较差,比如我们在中间位置插入一个元素,需要移动后续所有元素。而Link

By Ne0inhk