AI代码生成插件continue用vscode源码编译步骤

AI代码生成开源工具continue,由于其工作需要想在其上面做二次开发。但由于笔者个人是一个C/C++程序开发者。将次代码下载至本地,编译成插件费了些时间,因此本篇对其编译过程作以记录。

笔者用的continue源码是目前github上最新版本 1.2.17。下来正式开始。

编译流程

1、用vscode打开continue-1.2.17,如下图:

2、当前系统相关编译环境如下:

3、安装 core 侧打包所需原生依赖(onnx/sqlite/tree-sitter),命令(在 core 目录):npm install --no-save --no-audit --no-fund onnxruntime-node@1.14.0 sqlite3@5.1.7 tree-sitter-wasms@0.1.11,如下图:

4、安装extensions/vscode 依赖,在 extensions/vscode:npm ci --no-audit --no-fund,如下图:

5、安装 gui 依赖,在 gui:npm ci --no-audit --no-fund,首次构建 gui(失败,暴露本地 packages 未产出 dist 类型文件),命令(在 gui): npm run build;结果:tsc 报找不到 @continuedev/config-yaml、@continuedev/fetch 等类型。如下图:

6、修复本地 monorepo 包构建顺序(先构建依赖包 dist),在 packages/config-types目录下执行:npm ci --no-audit --no-fund;npm run build 命令。如下图:

7、在 packages/config-yaml目录下执行:npm ci --no-audit --no-fund;npm run build;如下图:

8、在 packages/fetch目录下执行:npm ci --no-audit --no-fund;npm run build;如下图:

9、在 packages/llm-info目录下执行:npm ci --no-audit --no-fund;npm run build;如下图:

10、在 packages/terminal-security目录下执行:npm ci --no-audit --no-fund;npm run build;如下图:

11、在 packages/openai-adapters目录下执行:npm ci --no-audit --no-fund;npm run build;如下图:

12、重新构建 GUI(成功),命令(在 gui): npm run build;结果:成功生成 gui/dist。如下图:

13、执行 VSCode prepackage(第一次因网络下载 sqlite 失败);命令(在 extensions/vscode): node scripts/prepackage.js --target win32-x64;失败原因:下载 sqlite 预编译文件时 ECONNRESET。如下图:

14、重试 prepackage(成功)。命令(在 extensions/vscode): node scripts/prepackage.js --target win32-x64;结果:资源拷贝与校验通过,All paths exist。如下图:

15、生成 VSIX(成功)。命令(在 extensions/vscode): node scripts/package.js --target win32-x64;结果:成功打包,生成 continue-win32-x64-1.2.17.vsix。如下图:

至此,vscode编译continue源码生成插件总体流程完毕。

相关推荐
小宋加油啊16 小时前
Mac vscode安装PCL
ide·vscode·macos
꯭爿꯭巎꯭17 小时前
visual studio code (vscode)下载
ide·vscode·编辑器
magic334165631 天前
ESP32S3开发环境介绍和创建工程
vscode·c·头文件
萌萌站起1 天前
Vscode 中 python模块的导入问题
ide·vscode·python
aqiu~1 天前
VSCode编辑器用于Unity项目
vscode·unity
ZXF_H2 天前
VSCode C/C++函数Ctrl+鼠标点击无法跳转的解决方法
c++·ide·vscode
zhangfeng11332 天前
vscode 之类的编辑器 ,跳转到某一个函数 方法 是什么快捷键 this->getEbayReturns($shop);
ide·vscode·编辑器
ShawnLiaoking2 天前
vscode 配置环境
ide·vscode·编辑器
弈风千秋万古愁2 天前
vscode使用markdown+plantuml
vscode·markdown·plantuml
日更嵌入式的打工仔2 天前
Visual Studio 与 Visual Studio Code 区别
ide·vscode