# Jetbrains Code Fix

> Fix confirmed code problems with JetBrains semantic tools, Inspection, build, tests, and debugger evidence. Use after a code review or whenever the user provides errors, warnings, build failures, or a reproducible bug to fix. Group related findings, fix the root cause with the narrowest safe edit, and re-check warnings as well as errors after each batch.

- Skill: `narylr350/jetbrains-code-fix` (Agent Skill)
- Install (CLI): `npx skillmds@latest add narylr350/jetbrains-code-fix`
- Raw SKILL.md: https://api.skillmd.com/api/skills/narylr350/jetbrains-code-fix/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: Narylr350 (https://skillmd.com/u/narylr350)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/narylr350/jetbrains-code-fix

---


# JetBrains Code Fix

## 前置条件

- 先加载 `jetbrains-ide-mcp`，遵循其 IDE-first 编辑和验证规则。
- 输入可以是审查报告、IDE problems、构建失败、测试失败或用户提供的可复现 bug；不强制要求已有正式审查报告。
- 先读取相关 Git diff，避免覆盖用户已有改动。

## Fix Process

### 1. 确认问题和范围

逐条确认问题可定位、可复现或有明确 Inspection/构建证据。来源未确认的问题先调查，不为了清零列表盲目修改。

按根因和修改边界分组：

- 同一 API 迁移或弃用问题
- 未使用 import、变量或不可达代码
- 符号命名或 shadowing
- 类型、空值和泛型问题
- 构建、配置或依赖问题
- 需要运行时证据的行为 bug

优先修 ERROR 和阻塞构建/测试的问题；WARNING 按本轮范围和用户要求处理。

### 2. 选择最安全的编辑方式

- 符号重命名：使用 `rename_refactoring`。
- 小范围确定性修改：使用 `replace_text_in_file`。
- 多文件或结构化修改：先用 IDE 搜索确认引用和影响范围，再使用精确 patch。
- 运行时根因不明确：先用测试、运行配置或 `xdebug_*` 收集证据，再修改。
- 不为了消除 warning 改变未经确认的业务行为或公共 API。

### 3. 分批修复和即时验证

每完成一类或一个独立根因：

1. 对修改文件调用 `get_file_problems(errorsOnly=false)`。
2. 确认目标 error/warning 消失。
3. 检查是否新增其他 error/warning。
4. 调用 `build_project` 验证受影响文件或模块。
5. 行为变化时运行相关测试或运行配置。

不要使用 `errorsOnly=true` 证明 warning 已修复，因为它不会返回 warning。

### 4. 最终验证

完成全部修复后：

- 对所有修改代码文件调用 `get_file_problems(errorsOnly=false)`。
- 调用 `build_project`。
- 运行与修改相关的测试或复现步骤。
- 查看 Git diff，确认没有无关重构、自动格式化扩散或调试残留。

只有目标问题消失且没有本轮新增的阻塞问题时，才能报告修复完成。仍存在的问题按“已修复、明确跳过、需要业务决策、来源未确认”分类。

## 不硬修的情况

- 需要产品或业务决策
- 会改变公共 API 或架构边界但用户尚未确认
- 第三方库自身问题
- 无法复现且缺少足够证据
- 超出用户指定范围的既有问题

这些问题保留原始证据和下一步，不用猜测性修改换取表面清零。

