Vibe Code an Open Source
제가 개발자로서 가지고 있는 목표 중 하나는, 많은 사용자가 활용할 수 있는 오픈소스를 직접 만들어 보는 것입니다. 이를 위해 여러 프로젝트를 진행해 왔지만, 실제로는 기여자를 확보하기 어렵고, 확보하더라도 방향성이 맞지 않거나 피드백이 지연되는 문제가 반복되었습니다. 혼자서는 프로젝트 규모를 확장하기 어렵다는 점도 한계였습니다. 최근에는 AI 기반 도구들이 등장하면서 이러한 제약이 크게 줄었습니다. 개인이 단독으로도 일정 규모 이상의 프로젝트를 유지하고 확장할 수 있는 환경이 마련된 것입니다. 이번 글에서는 spring-boot-starter-actor 프로젝트를 예로 들어, 제가 AI를 어떤 방식으로 활용하며 개발을 진행하고 있는지 그 과정을 정리해보고자 합니다.
GitHub - seonWKim/spring-boot-starter-actor: Actors kindly introduced to Spring
Actors kindly introduced to Spring . Contribute to seonWKim/spring-boot-starter-actor development by creating an account on GitHub.
github.com
프로젝트 소개: spring-boot-starter-actor
spring-boot-starter-actor는 Akka의 fork인 Pekko를 Spring Boot 환경에서 자연스럽게 사용할 수 있도록 만든 glue 프로젝트입니다. Pekko는 액터 모델과 클러스터링 기능을 제공하는 라이브러리로 기능적인 측면에서는 성숙해 있지만, Spring과는 분리된 생태계를 가지고 있다는 점이 제약으로 작용합니다. Java 생태계에서 Spring의 비중을 고려하면, Pekko 기능을 Spring 기반 프로젝트에서 바로 사용할 수 없다는 점이 불편 요소였습니다. 이러한 문제를 해결하기 위해 해당 프로젝트를 시작하게 되었습니다.
AI를 활용한 개발 흐름
아이디어 정교화
초기 MVP는 분산 채팅 애플리케이션 예제를 만들 수 있는 수준으로 구성했습니다. 이 과정에서 Claude와 ChatGPT를 활용해 아이디어를 구조화하고 방향성을 잡았습니다.
- 특정 기능이 타당한지 질문
- 설계 방향에 대한 의견 요청
- 제안된 구조를 기반으로 MVP 생성

문서 작성 자동화
기능 정리가 어느 정도 완료된 시점부터는 문서화 작업을 시작했습니다. 문서 작성 방식은 다음과 같은 구조로 진행했습니다.
Introduction - spring-boot-starter-actor
Introduction Spring Boot Starter Actor is a library that integrates Spring Boot with the actor model using Pekko (an open-source, community-driven fork of Akka). What is this project about? This project bridges the gap between Spring Boot and the actor mod
seonwkim.github.io
- 문서 작성 형식 또는 구조에 대한 간단한 가이드 제공
- AI가 초안 작성
- 초안을 검토한 뒤 스타일·일관성 관련 가이드 제공
- AI가 다시 반영하여 문서 정돈
덕분에 문서화에 큰 시간을 들이지 않으면서도 최신화된 문서를 유지할 수 있었습니다.
TASK.md 기반 개발
프로젝트가 확장되기 시작하면서 필요한 작업들을 TASK.md에 기록하였고, 이 작업들은 대부분 AI가 처리했습니다. 예를 들어, 최근 추가한 Pekko pub/sub 기능은 다음 한 문장으로 시작했습니다.
“What do you think of adding Pekko's distributed publish subscribe feature to our project? And if so, how would you implement it?”
이 문장을 기반으로 AI와 기능의 방향을 협의했고, 단계별로 MVP를 완성했습니다. 기능 구현 이후에는 glue 프로젝트 특성상 사용자 경험을 고려한 API 정리가 필요했으며, 이를 위해 *“새로운 기능을 좋은 DX를 가진 API 형태로 리팩터링해달라”*는 요청을 반복적으로 전달했습니다. 테스트 코드 또한 직접 작성하지 않고, 검증해야 하는 케이스를 제시하고 AI가 코드를 작성하도록 했습니다.
PR 리뷰: AI가 AI를 리뷰하는 구조
개발은 로컬 환경에서 Claude를 중심으로 진행했지만, GitHub에 PR을 생성한 이후에는 Copilot을 사용해 리뷰를 진행하도록 했습니다.
혼자 개발하고 있어 바로 머지할 수 있지만, 다음을 위해 PR 리뷰 과정을 유지하고 있습니다.
- 코드 스타일 유지
- 문서 최신화 확인
- 기능 간 균형 및 구조 점검

이동 중 개발
AI 기반 도구를 사용하면서 개발 환경이 PC 앞에만 고정되지 않게 되었습니다. 이동 중에는 GitHub Copilot을 활용해 떠오른 아이디어를 구현해보도록 지시하고, 결과를 휴대폰으로 확인해 필요한 부분만 수정 지시하는 방식으로 작업을 이어가고 있습니다.

마무리
AI 도구가 등장한 이후, 개발자가 혼자서 만들 수 있는 프로젝트의 범위와 규모가 눈에 띄게 넓어진 것 같습니다. spring-boot-starter-actor 역시 AI가 없었다면 아마 초기 MVP 단계에서 멈췄을 가능성이 큽니다. 하지만 AI 덕분에 필요한 기능들을 지속적으로 확장할 수 있었고, 프로젝트의 완성도와 성숙도 역시 꾸준히 높여갈 수 있었습니다.