codegeex支持语义级批量替换,能精准识别函数调用而非字符串匹配,通过ast分析识别所有fetchuser()调用并替换为getuserv2(),支持全项目、单文件及光标悬停三种替换模式,需手动保存更改。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

你想把项目里几十个文件中分散的 fetchUser() 全部替换成 getUserV2(),又不想手动逐个打开、查找、替换、保存,CodeGeeX 提供了语义级批量替换能力,能精准识别函数调用而非字符串匹配,避开注释和字符串里的假命中。
用语义搜索一键替换全项目过时 API
这一步依赖 AST 分析,不是文本搜“fetchUser”,所以 await fetchUser(id)、fetchUser ( )、const u = fetchUser; 都能被正确识别为调用点。
按 Ctrl+Shift+P 打开命令面板 → 输入并选择 “CodeGeeX: Semantic Search” → 在弹出框中输入自然语言指令:把所有调用 fetchUser 的地方改成 getUserV2,保留原有参数和括号结构 → 按回车等待分析完成。
预览面板会列出所有匹配位置,每行显示原代码 → 替换后代码。注意看是否漏掉了带注释的调用(如 // fetchUser())或字符串里的假调用(如 'fetchUser()')——CodeGeeX 默认排除这两类,避免误改。
点击某一行右侧的 ✅ 图标可单独应用该处替换;点击顶部“Apply All”按钮执行全部替换。
替换完成后,VSCode 编辑器标签页标题出现 ● 圆点,表示有未保存更改。【必须手动按 Ctrl+S 保存所有已修改文件】——CodeGeeX 不会自动写入磁盘,这步遗漏会导致 Git 看不到任何变更。
在单个文件内快速覆盖所有废弃调用
当你只关心当前正在编辑的这个文件,且想立刻看到全部变更效果,右键菜单是最直接的入口。
右键点击编辑器标签页 → 选择「CodeGeex: Replace All Deprecated in This File」→ 弹窗列出本次将修改的 3~12 处变更 → 点击「Apply」后立即重写整个文件。
【务必确保已提交当前文件的 Git 快照】——该操作不可撤销,重写后原始内容无法通过 Ctrl+Z 恢复。
光标悬停精准替换单个废弃函数
适合你只想改一处、但不确定推荐替代是什么,或者想边看边确认参数变化。
将光标悬停在被标记为「deprecated」的函数名上 → 按 Alt+Enter(Windows/macOS 均适用)→ 选择「Replace with recommended alternative」→ 确认后自动插入新调用并删除旧参数(如已移除的 callback 参数会被彻底清除)。











