바이브 코딩으로 나만의 오픈 클로 만들기 – 모바일 앱 추가

2026년 05월 08일 by CRYUN in AI & Agents, Agent Build Logs
OpenAI Codex

처음부터 모바일 앱을 만들 생각은 없었다. 텔레그램 에이전트 봇만으로도 충분하다고 생각했다. 자연어로 요청하면 에이전트가 알아서 리마인더를 등록하고, 자산 정보를 정리하고, 브라우저 자동화도 수행한다. 굳이 전용 앱까지 만들 필요가 있나 싶었다.

그런데 기능이 하나씩 늘어나면서 생각이 조금씩 바뀌었다. 리마인더나 자산 관리처럼 구조화된 데이터가 생기기 시작하니, 자연어 채팅만으로는 아쉬운 순간이 생겼다. 내가 직접 보고 싶은 목록이 있고, 수정하고 싶은 화면이 있고, 상태를 한눈에 확인하고 싶은 데이터가 생겼다. 그래서 웹 프론트엔드를 하나씩 붙이기 시작했다.

여기까지는 괜찮았다. 웹은 홈서버에 올려두면 어디서든 접근할 수 있고, 관리 화면으로도 충분히 쓸만했다. 그런데 위치 기반 리마인더를 붙이려는 순간 이야기가 달라졌다. 이 기능은 결국 스마트폰이 필요했다. 내 위치를 알아야 하고, 특정 장소에 들어가거나 벗어났을 때 감지해야 한다. 이쯤 되니 모바일 앱을 피하기 어려워졌다.

전용 모바일 앱이 추가된 오픈 클로 에이전트 봇

텔레그램과 웹만으로 버티던 에이전트 봇에 전용 앱이 추가됐다

위치 기반 리마인더가 문제였다


위치 기반 리마인더는 말 그대로 특정 위치에 들어가거나 벗어날 때 알림을 주는 기능이다. 예를 들어 출근하려고 집을 나설 때 지갑이나 차키를 챙기라고 알려주거나, 회사 근처에 도착했을 때 처리할 일을 띄워주는 식이다. 예전부터 이런 기능이 있으면 꽤 편하겠다고 생각했다.

문제는 이걸 하려면 내 위치를 계속 알아야 한다는 점이다. 서버 혼자서는 할 수 없다. 결국 항상 들고 다니는 스마트폰이 필요하다. 안드로이드에는 지오펜스라는 기능이 있어서, 특정 좌표와 반경을 기준으로 들어오거나 나가는 이벤트를 저전력으로 처리할 수 있다. 정밀한 실시간 위치 추적은 아니지만 내가 하려던 기능에는 오히려 잘 맞았다.

내가 원하는 것도 결국 좌표와 범위 기반이었다. 집 주변 반경을 벗어나면 리마인더를 확인하고, 특정 장소에 들어오면 관련된 기억을 떠올려주는 정도면 충분했다. 그래서 더 이상 웹만으로 버티기 어렵다는 결론이 났다. 위치 기반 리마인더를 제대로 하려면 모바일 앱을 만들어야 했다.

위치 기반 리마인더를 위한 모바일 지오펜스 기능

위치 기반 리마인더는 결국 스마트폰의 지오펜스 기능이 필요했다

이왕 만드는 김에 푸시도 붙이기


모바일 앱을 만들기로 하니 자연스럽게 푸시 알림도 욕심이 났다. 기존 리마인더 알림은 텔레그램 채팅 알림에 의존하고 있었다. 이것도 나쁘진 않았지만, 전용 앱이 생긴다면 앱 푸시로 알림을 받는 편이 더 자연스럽다.

다만 리마인더는 서버에서 관리된다. 앱 로컬에서만 알림을 예약하는 구조가 아니라, 홈서버가 리마인더 상태를 관리하고 필요한 순간에 앱으로 알림을 보내야 한다. 그러려면 푸시 서버가 필요하다. 결국 Firebase Cloud Messaging 기반으로 푸시를 붙이는 방향이 됐다.

여기서부터 에이전트가 나에게 시키는 일이 많아졌다. 파이어베이스 콘솔에 로그인해야 하고, 프로젝트를 만들고, 안드로이드 클라이언트를 추가하고, 설정 파일을 받아야 한다. 예전 같았으면 이런 콘솔 작업이 제일 귀찮았을 텐데, 이번에는 이미 브라우저 자동화가 있었다.

그래서 에이전트에게 민감한 로그인 부분만 나한테 넘기고, 나머지는 브라우저 자동화를 활용해서 알아서 진행해달라고 했다. 생각보다 정말 잘했다. 중간에 내가 직접 해야 하는 인증이나 다운로드만 처리해주면, 나머지 설정 과정은 에이전트가 꽤 척척 진행했다. 결국 최종 설정된 json 파일을 받아서 앱과 서버에 연결하는 단계까지 갈 수 있었다.

웹 프론트엔드도 앱 안에 다시 만들었다


모바일 앱을 만들면서 처음에는 기존 웹 프론트엔드를 그대로 넣으면 되지 않을까 생각했다. 이미 리마인더나 자산 관리 화면을 웹으로 만들어뒀으니, 모바일은 웹앱 형태로 감싸면 금방 끝날 줄 알았다.

그런데 에이전트는 그냥 모바일 앱 안에 화면을 새로 만들어버렸다. 리마인더, 자산, 스케줄링 같은 기능들이 모바일 앱용 화면으로 따로 들어갔다. 처음에는 굳이 이렇게까지 해야 하나 싶었지만, 어차피 사람이 직접 만드는 것도 아니고 생각보다 금방 붙었다. 그래서 그냥 두기로 했다.

웹은 웹대로 유지하는 편이 낫기도 했다. PC에서 접근해야 할 때도 있고, 모바일 앱이 아닌 환경에서 관리 화면이 필요한 경우도 있다. 결과적으로 백엔드는 동일하게 두고, 프론트엔드는 웹과 모바일 앱으로 나뉘는 구조가 됐다. 보통이라면 유지보수 걱정이 먼저 들었을 텐데, 이 프로젝트에서는 어차피 수정도 에이전트에게 맡길 가능성이 높다. 그래서 크게 신경 쓰지 않기로 했다.

에이전트와의 채팅도 앱에 넣기


전용 앱이 생기고 나니 텔레그램에만 있던 에이전트 채팅도 앱에 넣고 싶어졌다. 애초에 이 프로젝트의 중심은 에이전트 봇과의 대화다. 리마인더나 자산 관리 화면만 있고 채팅이 빠지면 뭔가 반쪽짜리 앱처럼 느껴졌다.

그래서 모바일 앱 안에도 에이전트 채팅을 추가했다. 아직은 초안 수준이다. 텔레그램 챗봇에 비하면 훨씬 거칠고, 메시지 처리나 사용감도 더 다듬어야 한다. 그래도 앱 안에서 바로 에이전트에게 말을 걸 수 있다는 것만으로도 느낌이 꽤 달랐다.

당분간은 텔레그램 챗봇을 계속 유지할 생각이다. 텔레그램은 이미 안정적으로 쓰고 있고, 알림이나 대화 흐름도 익숙하다. 모바일 앱 채팅은 천천히 고도화하면 된다. 그래도 직접 만든 전용 앱 안에서 에이전트와 대화하는 화면을 보니, 정말 안 되는 게 없구나 하는 생각이 들었다.

Mobile app showing push, reminders, asset management, and chat

푸시, 리마인더, 자산 관리, 채팅까지 앱 안으로 들어오기 시작했다

만들어 놓고 보니 좋다


처음에는 모바일 앱까지 만드는 건 과하다고 생각했다. 그런데 만들어 놓고 보니 좋긴 좋다. 에이전트 봇과 페어링되는 전용 앱이 있다는 것 자체가 꽤 만족스럽다. 텔레그램이나 웹을 빌려 쓰는 느낌이 아니라, 내 에이전트를 위한 별도의 인터페이스가 생긴 느낌이다.

개인용 앱이라는 점도 마음이 편하다. 배포용 앱이 아니라 내가 쓰려고 만든 앱이니, 일반적인 서비스처럼 모든 보안과 범용성을 완벽하게 신경 쓸 필요는 없다. 물론 기본적인 보안은 챙겨야 하지만, 앱스토어에 올리고 불특정 다수를 상대하는 제품과는 기준이 다르다. 이 점이 개인용 AI 에이전트 프로젝트의 장점이기도 하다.

무엇보다 모바일 앱이 생기면서 앞으로 붙일 수 있는 기능의 폭이 넓어졌다. 위치, 푸시, 기기 상태, 앱 내부 화면처럼 스마트폰이 있어야 자연스러운 기능들이 있다. 지금은 위치 기반 리마인더와 푸시 알림 정도지만, 이왕 앱이 생겼으니 앞으로 더 다양한 기능을 붙여볼 수 있을 것 같다.

마치며


이번 작업은 계획에 없던 방향으로 흘러갔다. 원래는 텔레그램 봇과 웹 프론트엔드 정도면 충분하다고 생각했다. 하지만 기능을 붙이다 보니 결국 모바일 앱이 필요해지는 지점이 왔다. 특히 위치 기반 리마인더는 웹이나 텔레그램만으로는 해결하기 어려웠다.

바이브 코딩으로 앱까지 만드는 경험도 꽤 인상적이었다. 파이어베이스 설정처럼 귀찮은 부분은 브라우저 자동화로 넘기고, 앱 화면이나 서버 연동은 에이전트에게 맡기면서 생각보다 빠르게 형태가 잡혔다. 물론 아직 거칠고 다듬을 부분도 많다. 하지만 개인용으로 쓰기에는 충분히 재미있는 단계까지 왔다.

나만의 오픈 클로를 만든다고 시작한 프로젝트가 텔레그램 봇에서 웹 관리 화면으로, 다시 모바일 앱으로 확장되고 있다. 처음 생각했던 범위보다 점점 커지고 있지만, 그만큼 내 생활에 가까워지는 느낌도 든다. 이제는 이 앱을 기반으로 위치, 푸시, 채팅이 자연스럽게 섞이는 기능들을 더 붙여보고 싶다.

AD