实验 / 已完成
idea编程助手
IntelliJ IDEA 编程助手插件:在 IDE 内收集选中代码、文件、目录和项目结构,生成规范 AI 提示词;用户把外部 AI 返回的结构化 JSON 粘回后,插件可解析思路、反馈、命令、requires 与多种代码变更,提供差异预览、匹配状态检查、单项/批量应用和历史记录。当前定位是不直连 AI API,而是半自动打通 IDE 与通用 AI 工具的代码修改闭环。
实验 / 已完成
IntelliJ IDEA 编程助手插件:在 IDE 内收集选中代码、文件、目录和项目结构,生成规范 AI 提示词;用户把外部 AI 返回的结构化 JSON 粘回后,插件可解析思路、反馈、命令、requires 与多种代码变更,提供差异预览、匹配状态检查、单项/批量应用和历史记录。当前定位是不直连 AI API,而是半自动打通 IDE 与通用 AI 工具的代码修改闭环。
这是一个 IntelliJ IDEA 插件,面向“在 IDE 内准备上下文、到外部 AI 工具生成方案、再把 AI 返回的代码变更应用回项目”的半自动编程流程。插件当前不直接调用 AI API,而是把 IDEA 作为上下文整理、提示词生成、变更解析和落地执行的工作台。
.ai-assistant/config.json 的 ignore 规则过滤 .git、.idea、build、node_modules 等无关内容。requires 请求缺失文件或类。thought、feedback、commands、actions、requires.files、requires.classes,兼容 action 数组、单个 action、actions/changes 字段以及普通 Markdown 文本回退。CREATE、OVERWRITE、UPDATE、INSERT_AFTER、DELETE,覆盖新建、覆盖、局部替换、插入和删除等常见代码修改场景。requires 时,可在变更树中加载所需文件或类,继续补齐上下文后再次生成方案。request.md 与 response.json 到 .ai-assistant/history/,便于回看和复用。action、service、ui、model、util、common 分层。PromptManager 负责提示词生成、JSON 响应解析和 UI 状态同步。ChangeApplierService 负责变更匹配、写入、创建/覆盖/删除文件、格式化和通知。DiffPresentationService 负责异步构建差异预览,并对超大内容或超时场景降级,避免 UI 卡顿。AssistantConfigService 负责 .ai-assistant/config.json 默认配置、ignore 规则读取和通配符匹配。HistoryManager 负责请求与响应历史落盘。从当前代码和提交记录看,插件已具备完整的本地闭环能力:上下文收集、提示词生成、AI 响应解析、Diff 预览、变更应用、requires 补充和历史记录均已实现。近期改动集中在插件品牌命名、JSON 解析健壮性、代码块匹配、差异预览性能和单项/批量应用体验优化。
runIde 手工验证清单和截图。
右侧 ToolWindow 提供工作区与历史记录两个入口,顶部工具栏集中放置生成提示词、添加目录结构、复制、粘贴、解析、清空和刷新配置等操作。这个界面对应插件的核心定位:在 IDEA 内完成上下文整理、提示词生成、AI 响应粘贴和变更预览。

在编辑器里选中代码片段后,可以通过右键菜单“添加到大鱼AI编程助手”把当前片段加入上下文。插件会记录文件路径、代码位置和语言类型,适合处理小范围方法修改或局部 bug 修复。

在 Project 视图中右键文件或目录,可以选择普通加入或“紧凑”加入。普通模式适合提供完整源码;紧凑模式适合大目录场景,会尽量保留结构、类名、字段和方法签名,控制上下文体积。

点击生成按钮后,插件会把需求、上下文和响应协议包装成完整 Prompt,要求外部 AI 返回可解析的 JSON,并约束 UPDATE、INSERT_AFTER、CREATE、OVERWRITE、DELETE 等动作的格式,减少无法落地的自然语言回复。

AI 返回 JSON 后,插件会解析 thought、feedback、commands、actions 和 requires,在右侧展示“思路与反馈”和“变更摘要”。变更树里可以看到目标文件、动作类型和匹配原因,帮助用户在应用前先判断风险。

打开聚合变更预览后,IDEA 会以左右对比方式展示当前内容与 AI 生成后的最终效果,用户可以在 Diff 中检查新增代码、忽略空白差异,并通过“应用全部变更”把确认后的修改写回项目。

在变更预览树上可以右键应用全部变更,也可以加载 AI 通过 requires 请求的上下文。这个交互把“AI 生成方案”和“IDE 内安全落地”连接起来:先看思路和变更摘要,再决定单项、文件级或全部应用。
项目源码已开源到 GitHub:
支持在 .ai-assistant/config.json 中配置提示词专家角色和新建文件作者信息,生成 Prompt 时动态注入角色与 @author,让插件更适配不同语言、团队和项目规范。
完善 README 项目说明,并为 AI 实验室实验补充功能特点与 7 张截图,覆盖上下文采集、提示词生成、响应解析、Diff 预览和应用变更。
统一插件品牌命名与 IDEA 展示文案,同时继续验证和优化代码块匹配策略。
修复 AI JSON 响应解析卡死问题,提升粘贴、解析和进入变更预览流程的稳定性。
增强匹配状态可视化、单项/批量应用和批量对比能力,并提升 AI JSON 响应解析健壮性。
系统性优化代码块匹配,提升空白/换行差异下的应用成功率,并补充核心匹配测试。
升级提示词协议、AI 思路反馈展示、变更对比与编辑同步能力,并修复新建文件路径/内容异常。
补齐批量加载 AI 所需上下文能力,完善 requires 多文件补充流程。
优化 AI 索取文件后的补充流程,让 requires 机制更适合多轮上下文协作。
新增紧凑上下文模式,支持按语言压缩代码结构并控制 token 体积,同时集中优化 Diff 预览和代码压缩稳定性。
补齐 AI requires 索取上下文机制,支持按 AI 请求加载缺失文件,并增强变更树复制与匹配容错能力。
将代码变更定位从行号方式升级为代码块特征匹配,提高 AI 修改在真实项目文件中的落地成功率。
加入 .ai-assistant/config.json 配置与忽略规则,支持目录上下文采集时自动过滤无关文件,并可在工具窗口中刷新配置。
完成 IDEA 编程助手 MVP:支持在 IDE 内采集代码上下文、生成提示词、解析 AI JSON 响应、预览并应用代码变更,同时补齐项目结构采集、文件树上下文和文档类文件兼容。
还没有关联的公开文章。