|
|
||
|---|---|---|
| installations | ||
| windows | ||
| .gitignore | ||
| README.md | ||
README.md
CodeGuard
配置 OpenCode
在安装之前,需要先配置 OpenCode 的大模型信息。配置文件位于:
./installations/opencode-cli/opencode.json
必须修改的配置项
- baseURL: 自行部署的大模型服务地址(如
http://localhost:8000/v1) - apiKey: 如果模型有 API Key,请配置;否则可保持默认
EMPTY - models 中的 name: 修改为实际使用的模型名称
可选配置项
- provider 中的名称(如
vllm-local): 可根据需要自定义
配置示例
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"your-provider-name": {
"npm": "@ai-sdk/openai-compatible",
"name": "Your Model Name",
"options": {
"baseURL": "http://your-llm-server:8000/v1",
"apiKey": "your-api-key-if-needed"
},
"models": {
"your-model-name": {
"_launch": true,
"name": "your-model-name"
}
}
}
}
}
安装步骤
1. 检查 Python 是否已安装
在安装其他软件之前,请先检查 Python 是否已安装。可以在终端运行以下命令检查:
python --version
如果未安装 Python,请运行安装包:
./installations/python-3.11.8-amd64.exe
!!!注意:安装过后需要确认添加环境变量:Python默认安装路径为:C:\Users\{username}\AppData\Local\Programs\Python\Python311
2. 安装 VSCode
如果未安装 VSCode,请运行安装包:
./installations/VSCodeSetup-x64-1.111.0.exe
3. 安装 OpenCode 和 Semgrep
根据您的操作系统运行对应的脚本:
- Windows: 双击运行
windows/install-all.bat
4. 重启 VSCode
关闭并重新打开 VSCode。
5. 安装 OpenCode 插件
- 点击左侧栏的 Extensions(扩展图标)
- 点击 Views and More Actions(三个点),选择 Install from VSIX
- 选择本地插件:
./installations/sst-dev.opencode-0.0.13.vsix
使用方式
方式一:项目分析
- 打开需要进行分析的工程文件夹
- 点击编辑器右上角的 OpenCode 图标启动 OpenCode
- 输入提示词,例如:
请帮我分析当前项目,介绍包括哪些模块,生成架构图
方式二:安全审计
- 同样点击右上角 OpenCode 图标启动
- 输入
/skills并回车 - 选择 semgrep 这个 skill 并回车
- 输入审计指令,例如:
请帮我审计当前项目
目录结构
CodeGuard/
├── installations/ # 安装资源
│ ├── VSCodeSetup-x64-1.111.0.exe
│ ├── sst-dev.opencode-0.0.13.vsix
│ ├── opencode-cli/
│ └── semgrep_skill/
├── windows/ # Windows 安装脚本
│ └── install-all.bat
└── linux/ # Linux/macOS 安装脚本
└── install-all.sh
注意事项
semgrep skill运行过程中的Error信息属于正常情况,opencode会先寻找联网解决手段,无法联网后会自动选择非联网手段解决问题
报错问题
- 运行install-all.bat报错
-
可能原因1:没有python命令
- 在cmd中运行
python --version检查是否安装了python
- 在cmd中运行
-
可能原因2:Semgrep虚拟环境安装失败(离线wheel与已有python版本不兼容)
- 如果已经安装了python,并且不想卸载,可以手动安装semgrep虚拟环境(即./windows/install-all.bat中的Part 1: Semgrep Installation),具体操作如下:
- 运行./installations/python-3.11.8.exe,选择默认的安装方式
- 在./installations/semgrep_offline/文件夹下打开powershell,运行
C:\Users\{username}\AppData\Local\Programs\Python\Python311\python.exe -m venv semgrep命令(username需要替换为自己的用户名)。 - 删除./windows/install-all.bat中
Part 1: Semgrep Installation的代码 - 再重新双击运行修改后的
install-all.bat脚本
-
- semgrep skill运行过程中报错,并且没有结果产出
- 可能原因3:模型参数量太小对指令的理解能力较弱,出错后自行调整的能力也弱
- 模型必须具备function call的能力
- 建议使用30b以上的模型
- 可能原因3:模型参数量太小对指令的理解能力较弱,出错后自行调整的能力也弱
兼容性问题
-
vscode的opencode插件可能存在兼容性问题(例如:鼠标滚动无法使用,鼠标选中文本后右键无法复制内容)
- 鼠标滚动问题可以通过page up、page down按钮查看结果
- 也可以直接在powershell中通过运行
opencode命令打开opencode的TUI界面,该交互模式兼容性较好。如果想要对某个项目进行操作,在资源管理器中进入到项目所在文件夹,点击右键(或shift+鼠标右键点击),在弹出框中选择在此处打开Powershell窗口,然后运行opencode命令即可
-
semgrep对中文的支持不好(运行过程中可能报: gbk codec的错误)