AI 코딩 에이전트가 실제 버그를 만나기 전에 스스로 '가짜 버그'를 만들어 연습해서 특정 프로젝트에 강해지는 방법
AI 코딩 에이전트가 실제 버그를 만나기 전에 스스로 '가짜 버그'를 만들어 연습해서 특정 프로젝트에 강해지는 방법
SkillForge는 소프트웨어 버그를 자동으로 고치는 AI 에이전트가 특정 프로젝트(레포지토리)의 특성을 미리 익히도록, 그 레포지토리의 테스트 코드를 이용해 가짜 이슈를 스스로 만들어 풀어보고 그 경험에서 재사용 가능한 노하우(스킬)를 뽑아낸다. 기존 방법들은 과거에 실제로 해결된 이슈 기록이 있어야 하거나, 매번 새 이슈가 들어올 때마다 비싼 탐색을 반복해야 했는데, SkillForge는 이슈가 들어오기 전에 미리 지식을 쌓아둔다. SWE-bench Verified와 SWE-bench Pro라는 벤치마크에서 기존 최고 성능 방법들보다 일관되게 높은 성공률을 보였다.
METAL MEDIA 해설 도표
AI 코딩 에이전트가 실제 버그를 만나기 전에 스스로 '가짜 버그'를 만들어 연습해서 특정 프로젝트에 강해지는 방법
- 01레포지토리의 테스트가 실제로 실행하는 핵심 코드 부분을 찾아, AI가 원본을 보지 않고 그 기능을 다시 구현하게 만들어 자연스러운 실수(가짜 버그)를 유도하고 이를 합성 이슈로 만든다
- 02SWE 에이전트가 이 합성 이슈들을 풀게 한 뒤, 성공한 시도와 실패한 시도 모두에서 '이 코드 부분은 이렇게 접근해야 한다'는 전역 진단 지식과 '이 부분은 이렇게 고쳐야/이런 실수를 피해야 한다'는 지역 수정 지식을 뽑아 코드의 특정 부분(엔티티)에 연결해 저장한다
- 03실제 이슈를 풀 때는 이슈 설명으로 관련된 전역 지식을 먼저 검색해 제공하고, 에이전트가 실제로 특정 파일이나 함수에 접근하는 순간 그에 맞는 지역 수정 지식을 실시간으로 끼워 넣는다
- 04Mini-SWE-Agent에 적용해 DeepSeek-V3.2와 GPT-5-mini로 실험한 결과 SWE-bench Verified에서 기존 방법 대비 각각 +5.8%p, +5.6%p, SWE-bench Pro에서 +5.8%p, +4.1%p 성능(Pass@1)이 올랐고, 과거 이력 기반 방법이나 이슈마다 탐색을 반복하는 방법들을 모두 앞섰다
무엇을 했나
- 레포지토리의 테스트가 실제로 실행하는 핵심 코드 부분을 찾아, AI가 원본을 보지 않고 그 기능을 다시 구현하게 만들어 자연스러운 실수(가짜 버그)를 유도하고 이를 합성 이슈로 만든다
- SWE 에이전트가 이 합성 이슈들을 풀게 한 뒤, 성공한 시도와 실패한 시도 모두에서 '이 코드 부분은 이렇게 접근해야 한다'는 전역 진단 지식과 '이 부분은 이렇게 고쳐야/이런 실수를 피해야 한다'는 지역 수정 지식을 뽑아 코드의 특정 부분(엔티티)에 연결해 저장한다
- 실제 이슈를 풀 때는 이슈 설명으로 관련된 전역 지식을 먼저 검색해 제공하고, 에이전트가 실제로 특정 파일이나 함수에 접근하는 순간 그에 맞는 지역 수정 지식을 실시간으로 끼워 넣는다
- Mini-SWE-Agent에 적용해 DeepSeek-V3.2와 GPT-5-mini로 실험한 결과 SWE-bench Verified에서 기존 방법 대비 각각 +5.8%p, +5.6%p, SWE-bench Pro에서 +5.8%p, +4.1%p 성능(Pass@1)이 올랐고, 과거 이력 기반 방법이나 이슈마다 탐색을 반복하는 방법들을 모두 앞섰다

| Method | Model | Pass@1 | Avg Cost |
|---|---|---|---|
| Mini-SWE-Agent | DeepSeek-V3.2 | 66.4% | $0.049 |
| GPT-5-mini | 55.0% | $0.031 | |
| History-driven project-specific knowledge acquisition | |||
| SWE-Exp | DeepSeek-V3.2 | 69.0%†↑2.6% | $0.090 |
| GPT-5-mini | 56.6%†↑1.6% | $0.065 | |
| EvoCoder | DeepSeek-V3.2 | 67.0% ↑0.6% | $0.064 |
| GPT-5-mini | 58.4% ↑3.4% | $0.052 | |
| MemGovern | DeepSeek-V3.2 | 69.2%†↑2.8% | – |
| GPT-5-mini | 58.0%†↑3.0% | – | |
| Online project-specific knowledge acquisition | |||
| SAGE | DeepSeek-V3.2 | 67.2% ↑0.8% | $0.081 |
| GPT-5-mini | 56.0%†↑1.0% | $0.052 | |
| SWE-Debate | DeepSeek-V3.2 | 68.2% ↑1.8% | $0.382 |
| GPT-5-mini | 56.4% ↑1.4% | $0.167 | |
| Live-SWE-agent | DeepSeek-V3.2 | 67.0% ↑0.6% | $0.050 |
| GPT-5-mini | 55.6% ↑0.6% | $0.042 | |
| Variants of SkillForge | |||
| SkillForge w/ SWE-Smith | DeepSeek-V3.2 | 68.0% ↑1.6% | $0.088 |
| GPT-5-mini | 56.4%†↑1.4% | $0.071 | |
| SkillForge w/ LLM Summary | DeepSeek-V3.2 | 68.7%†↑2.3% | $0.069 |
| GPT-5-mini | 54.4% ↓0.6% | $0.065 | |
| SkillForge | DeepSeek-V3.2 | 72.2%†↑5.8% | $0.074 |
| GPT-5-mini | 60.6%†↑5.6% | $0.066 | |
| †: p−value<0.05. |

| DeepSeek-V3.2 | GPT-5-mini | |||
|---|---|---|---|---|
| Method | Pass@1 | Avg Cost | Pass@1 | Avg Cost |
| Mini-SWE-Agent | 28.3% | $0.047 | 47.6% | $0.063 |
| SWE-Exp | 29.4% ↑1.1% | $0.083 | 48.7% ↑0.9% | $0.089 |
| Live-SWE-agent | 32.4% ↑4.1% | $0.051 | 49.1%†↑1.5% | $0.072 |
| SkillForge | 34.1%†↑5.8% | $0.069 | 51.7%†↑4.1% | $0.087 |
| †: p−value<0.05. |

| Approach | DeepSeek-V3.2 | GPT-5-mini |
|---|---|---|
| w/o Global Diagnostic Skills | 68.4% (↓3.8%) | 57.6% (↓3.0%) |
| w/o Local Intervention Skills | 67.8% (↓4.4%) | 57.2% (↓3.4%) |
| SkillForge | 72.2% | 60.6% |
| Resolver LLM | Knowledge-source LLM | Pass@1 |
|---|---|---|
| GPT-5-mini | GPT-5-mini | 60.6% |
| DeepSeek-V3.2 | 55.0% | |
| DeepSeek-V3.2 | GPT-5-mini | 65.2% |
| DeepSeek-V3.2 | 72.2% |
왜 중요한가
실무에서 AI 코딩 에이전트를 특정 회사나 오픈소스 프로젝트에 투입할 때 가장 큰 문제는 그 프로젝트만의 관례와 함정을 모른다는 점인데, 이 방법은 과거 이슈 데이터가 부족하거나 없는 프로젝트에서도 비용을 크게 늘리지 않고 에이전트를 미리 훈련시킬 수 있는 실용적인 길을 보여준다. 자동 버그 수정 도구를 실제 프로젝트에 적용하려는 개발팀이나 AI 에이전트 개발자에게 바로 참고할 수 있는 설계다.

이 논문의 용어
- Pass@1 · 한 번의 시도로 이슈를 정확히 해결한 비율을 나타내는 평가 지표
- SWE-bench · 실제 GitHub 이슈를 기반으로 AI 코딩 에이전트의 버그 수정 능력을 평가하는 벤치마크
- BM25 · 검색어와 문서의 단어 일치도를 계산해 관련 문서를 찾아주는 전통적인 정보 검색 알고리즘
- 엔티티 그라운딩(entity-grounded) · 추출한 지식을 코드의 특정 파일·함수·클래스 등 실제 요소에 직접 연결해두는 방식
- 자기증류(self-distillation) · 모델(또는 에이전트)이 스스로 만든 데이터와 경험에서 재사용 가능한 지식을 뽑아내는 과정
최신 논문
- AI 코딩 에이전트에게 과학 소프트웨어 수리를 시켜보니, 절반도 제대로 못 고쳤다AI 코딩 에이전트에게 과학 소프트웨어 수리를 시켜보니, 절반도 제대로 못 고쳤다
- 논문 속 시연이 아니라 실제 서비스에 넣을 수 있는 희소 어텐션 만들기논문 속 시연이 아니라 실제 서비스에 넣을 수 있는 희소 어텐션 만들기
- 고객상담 AI 상담원이 규정을 '한 번의 행동'이 아니라 '전체 절차'로 지키게 만드는 방법고객상담 AI 상담원이 규정을 '한 번의 행동'이 아니라 '전체 절차'로 지키게 만드는 방법
- 로봇 팔에게 사람의 시연 없이 새 일 시키기, 말 잘하는 AI가 대신 가르친다로봇 팔에게 사람의 시연 없이 새 일 시키기, 말 잘하는 AI가 대신 가르친다
- 에이전트 학습용 환경을 새로 만드는 대신, 기존 환경에 '패치 부품'을 씌워 그 에이전트의 약점에 맞게 바꾸는 방법에이전트 학습용 환경을 새로 만드는 대신, 기존 환경에 '패치 부품'을 씌워 그 에이전트의 약점에 맞게 바꾸는 방법
- AI 모델을 '소유'하지 못한 조직은 안전 통제도 절반밖에 못 한다AI 모델을 '소유'하지 못한 조직은 안전 통제도 절반밖에 못 한다
- AI가 선생님 모델을 따라 배우다가, 정답에 다가가는 '좋은 생각'까지 억누르는 문제를 잡아낸다AI가 선생님 모델을 따라 배우다가, 정답에 다가가는 '좋은 생각'까지 억누르는 문제를 잡아낸다
- AI가 특정 사람 말투를 흉내내도록 시켜봤더니, 결국 AI 자신의 말투에서 못 벗어난다AI가 특정 사람 말투를 흉내내도록 시켜봤더니, 결국 AI 자신의 말투에서 못 벗어난다
METAL MEDIA 최신 기사
그림 출처: Silin Chen et al., arXiv:2608.18933, CC BY 4.0