Coopwire CodeLens
基于AI的智能代码搜索和问答VSCode扩展。
✨ 功能特性
- 🔍 智能搜索:多策略搜索(语义、精确、模糊),快速找到相关代码
- 🤖 AI智能问答:右键选中代码即可询问AI,获得即时解答
- 📊 调用图可视化:交互式函数调用关系图,理解代码结构
- 💡 内联CodeLens:在函数上方显示引用数量和调用关系
- ⚡ 自动索引:打开工作区时自动索引,无需手动配置
- 🔄 增量索引:支持手动增量更新,保持索引最新
- 🔒 权限控制:基于GitLab的权限验证,保障企业安全
📦 安装
- 打开VSCode
- 按
Cmd+Shift+X (Mac) 或 Ctrl+Shift+X (Windows/Linux)
- 搜索 "Coopwire CodeLens"
- 点击安装
🚀 快速开始
打开工作区
索引代码
- 扩展会自动提示是否索引
- 或手动运行:
Cmd+Shift+P → CodeLens: 索引工作区
开始使用
- 搜索代码:
Cmd+Shift+P → CodeLens: 搜索代码
- 询问AI:选中代码 → 右键 →
CodeLens: 询问AI关于选中内容
- 查看调用图:点击函数上方的CodeLens提示
🎯 支持的语言
- TypeScript (
.ts, .tsx)
- JavaScript (
.js, .jsx)
- Vue (
.vue)
⚙️ 配置选项
基础设置
打开VSCode设置(Cmd+,),搜索 "CodeLens":
- 自动索引:打开工作区时自动提示索引(默认:开启)
- 内联CodeLens:显示引用和调用提示(默认:开启)
- 悬停文档:鼠标悬停显示文档(默认:开启)
🔐 权限控制
插件采用严格权限模式:只有服务器已有索引的仓库才能使用插件功能。
统一权限规则
所有类型的仓库(GitLab、GitHub、本地Git、非Git项目)都遵循相同规则:
- 服务器已有索引 → ✅ 允许使用,可增量索引
- 服务器没有索引 → ❌ 拒绝使用,提示"服务器上没有该仓库索引"
匹配策略
插件会按以下顺序尝试匹配服务器上的仓库:
GitLab仓库:
- 通过 GitLab URL 精确匹配(优先级最高)
- 通过仓库名匹配(忽略大小写和 .git/.zip 后缀)
- 通过文件夹名称匹配
其他类型仓库(GitHub、本地Git、非Git项目):
- 通过文件夹名称匹配(忽略大小写和 .git/.zip 后缀)
为什么采用这种模式?
- 集中管理:所有仓库索引由服务器统一管理
- 安全可控:只有授权的仓库才能使用插件功能
- 团队协作:团队成员共享同一套索引,保证一致性
📖 使用指南
🎯 推荐用法:AI问答三合一面板
这是使用插件最便捷的方式! 在同一个面板中集成了三大核心功能:
打开面板
- 按
Cmd+Shift+P (Mac) 或 Ctrl+Shift+P (Windows/Linux)
- 输入 "CodeLens: 询问AI"
- 面板会在侧边栏打开
三大功能
🔎 搜索 - 代码搜索
- 输入关键词(如:
getUserInfo、API接口)
- 快速找到相关代码片段
- 点击结果直接跳转到文件
💬 普通问答 - AI智能问答
- 询问代码相关问题(如:
这个函数是做什么的?)
- AI基于代码库给出回答
- 显示相关证据代码,可点击查看
🔍 根因分析 - 深度分析
- 分析错误根本原因(如:
为什么登录失败?)
- 使用多策略搜索(vector、exact、fuzzy、dependency、graph)
- 提供详细的分析结果和证据链
使用技巧
- 搜索:适合快速定位代码位置
- 普通问答:适合理解代码逻辑和功能
- 根因分析:适合排查问题和追踪调用链
搜索代码
- 按
Cmd+Shift+P 打开命令面板
- 输入 "CodeLens: 搜索代码"
- 输入搜索关键词
- 在侧边栏查看搜索结果
AI问答
方式1:选中代码提问
- 在编辑器中选中代码
- 右键点击
- 选择 "CodeLens: 询问AI关于选中内容"
方式2:直接提问(推荐)
- 按
Cmd+Shift+P
- 输入 "CodeLens: 询问AI"
- 在面板中选择功能(搜索/问答/根因分析)并输入问题
增量索引
当你修改代码后,可以手动更新索引:
- 按
Cmd+Shift+P
- 输入 "CodeLens: 增量索引"
- 插件会自动检测变更并更新
📄 许可证
MIT License
| |