기계가 코드를 작성하는 시대다. 이미 GitHub Copilot이나 Cursor 같은 도구들이 개발자의 일상을 바꾸고 있지만, 이들이 가진 가장 큰 한계는 ‘기억’의 부재였다. 한 번의 대화나 세션이 끝나면 모든 맥락이 사라지고, 다음 작업에서는 처음부터 다시 시작해야 한다는 점이다. komi-learn은 이 문제를 해결하겠다고 나선 프로젝트다. 단순한 코드 생성기가 아니라, ‘지속적인 기억’과 ‘자기 개선’을 갖춘 에이전트를 표방한다. 기술적으로는 흥미롭지만, 그 이면에는 개발 문화의 근본적인 변화가 숨어 있다.
이 프로젝트의 핵심은 에이전트가 과거의 경험을 학습하고, 이를 바탕으로 새로운 문제를 더 효율적으로 해결하는 메커니즘이다. 구체적으로는 memory graph라는 구조를 통해 작업 히스토리를 저장하고, 이를 벡터 임베딩으로 변환해 유사성 기반 검색을 가능하게 한다. 마치 개발자가 수년간 쌓아온 노하우를 데이터화한 것처럼, 에이전트도 자신의 ‘경험’을 축적하고 재활용하는 것이다. 여기에 self-improvement loop라는 개념이 더해지는데, 에이전트가 생성한 코드의 품질을 스스로 평가하고, 피드백을 통해 다음 작업에 반영하는 구조다.
문제는 이런 접근이 과연 실용적인가 하는 점이다. 코딩 에이전트의 기억력이 인간 개발자의 경험과 동일하게 작동할 수 있을까? 인간의 기억은 맥락(context)에 의존한다. 같은 버그라도 프로젝트의 역사, 팀의 문화, 심지어 개발자의 감정 상태에 따라 해결 방식이 달라진다. 반면 기계의 기억은 구조화된 데이터에 불과하다. komi-learn이 제시하는 벡터 임베딩 기반 유사성 검색이 이런 미묘한 차이를 얼마나 잘 포착할 수 있을지는 의문이다. 또한 자기 개선 루프가 실제로 품질을 향상시킬 수 있을까? 피드백 메커니즘이 잘못 설계되면 에이전트는 오히려 잘못된 방향으로 학습할 위험도 있다.
기술은 언제나 도구의 영역을 넘어 문화의 영역으로 진입한다. 코딩 에이전트가 기억을 갖게 된다는 것은, 개발자가 더 이상 ‘모든 것을 알고 있어야 할 필요’가 사라진다는 의미이기도 하다.
더 큰 질문은 이것이 개발자의 역할을 어떻게 바꿀 것인가 하는 점이다. 지금까지의 코드 생성기는 도구에 가까웠다. 개발자가 방향을 제시하면 도구가 그에 맞는 코드를 만들어내는 식이었다. 하지만 기억과 자기 개선을 갖춘 에이전트는 ‘협력자’에 가까워진다. 마치 주니어 개발자가 시니어의 지도를 받으며 성장하듯, 에이전트도 지속적인 상호작용을 통해 점점 더 유능해지는 것이다. 이는 개발자의 업무가 코드 작성에서 에이전트 관리와 방향 설정으로 이동할 수 있음을 시사한다. 이미 많은 개발자가 CI/CD 파이프라인이나 인프라 관리 같은 ‘코드 외적’ 업무에 시간을 할애하고 있는데, 이 흐름은 더욱 가속화될 가능성이 크다.
물론 기술적 한계도 명확하다. komi-learn의 README를 보면 아직 초기 단계라는 것을 알 수 있다. 메모리 그래프의 확장성, 벡터 검색의 정확성, 피드백 루프의 안정성 등 해결해야 할 과제가 산적해 있다. 하지만 이런 시도들이 쌓이다 보면, 언젠가는 에이전트가 인간 개발자의 경험을 ‘모방’하는 수준을 넘어, 독자적인 문제 해결 능력을 갖추게 될지도 모른다. 그때가 되면 개발자는 더 이상 코드를 작성하는 사람이 아니라, 에이전트가 올바른 방향으로 성장하도록 이끄는 ‘가이드’가 될 것이다.
이 프로젝트가 성공하든 실패하든, 한 가지는 확실하다. 소프트웨어 개발의 패러다임이 다시 한 번 변하고 있다는 점이다. 20년 전만 해도 개발자는 모든 것을 외우고 있어야 했다. API 문서, 라이브러리 사용법, 심지어 하드웨어 스펙까지. 하지만 지금은 검색과 도구의 시대가 되었고, 앞으로는 에이전트가 그 역할을 대신할지도 모른다. 중요한 것은 도구가 아니라, 그 도구를 어떻게 활용해 더 나은 소프트웨어를 만들 것인가 하는 질문이다. komi-learn은 그 질문에 대한 하나의 답변일 뿐이다.
자세한 내용은 GitHub 저장소에서 확인할 수 있다.
이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.