박준 · PARK JOON
프로젝트 / AI 에이전트·자동화
AI 에이전트·자동화로컬 에이전트확인 게이트자연어 플래너SQLite운영 콘솔

숙박 운영 로컬 AI 에이전트 «지휘탑»

한국어 한 줄 지시로 예약·정산·OTA 재고·게스트 응대·청소·가격 업무를 계획→확인→실행→검증→기록하는 로컬 에이전트

기간
2026.10
형태
의뢰 프로젝트
상태
프로토타입
역할
요구 분석, 설계·구현, 시험, UX 조사, 브랜드·인계 문서 작성
재구성 목업 · 실제 화면이 아니라 흐름을 보여 주는 애니메이션입니다클릭하면 멈춤·재생
958건자동 시험 통과(실패 0)
43개6개 업무 영역+시스템 액션
7종실행 후 검증 절차
7종인계 문서(요구사항~인계목록)

문제

소규모 숙박 사업자는 객실 예약, 정산, 여러 판매 채널의 재고, 손님 문의, 청소 배정, 가격 조정을 혼자 또는 소수 인원으로 처리합니다. 화면이 업무마다 흩어져 있고, 휴대폰으로 이동 중에 처리해야 하는 일도 많았습니다.

AI 에이전트에 맡기려면 «무엇이 바뀌는지 미리 보고 승인할 수 있는가», «같은 지시가 두 번 들어와도 문자가 두 번 가지 않는가», «중간에 멈추면 이어서 할 수 있는가»가 먼저 보장되어야 했습니다.

접근

  • 모든 업무를 이름과 파라미터가 고정된 액션 43개로 정의하고, 액션마다 조회/변경/외부 전송 위험도를 붙여 실행기가 위험도에 맞게 확인을 받도록 했습니다.
  • 외부 효과는 outbox와 효과 키로 한 번만 일어나도록 보장하고, 재시도·부분 실패·프로세스 중단 뒤 재개를 실행기 수준에서 처리했습니다.
  • 자연어 해석은 규칙 해석기를 기본으로 두고 LLM 해석은 선택으로 붙였으며, LLM이 실패하면 규칙으로 돌아가고 개인정보는 가린 뒤 보냈습니다.
  • 데이터는 SQLite 파일 하나에 두는 로컬 구조로 만들고, 실제 채널·문자 연동은 어댑터 인터페이스 뒤에 모의 구현을 두어 외부 연동 없이도 전 흐름을 시험할 수 있게 했습니다.
  • 현재 콘솔 진단과 글로벌 PMS·국내 숙박 서비스·AI 에이전트 UX 등 7편의 조사로 화면 문제를 진단하고, «계획 = 결과 미리보기», «위험만큼만 묻기» 같은 화면 원칙을 정리했습니다.

구조

지시운영자가 콘솔·명령줄·휴대폰에서 한국어로 지시합니다.
계획플래너가 지시를 액션 계획으로 바꾸고, 받는 사람·바뀔 칸을 미리 보여 줍니다.
확인조회는 바로 실행하고, 변경·외부 전송은 확인 대기에 올립니다.
실행실행기가 중복을 막고 재시도·부분 실패·중단 복구를 처리하며 외부 효과는 한 번만 일으킵니다.
검증·기록검증 절차 7종으로 결과를 확인하고, 모든 작업을 감사 로그에 남깁니다.

주요 기능

위험도 기반 확인 게이트조회/변경/외부 전송으로 나눠, 손님에게 나가는 문장은 실제 문장을 보고 승인한 뒤에만 보냅니다.
중복 방지·중단 복구같은 지시가 다시 들어와도 새 작업을 만들지 않고, 프로세스가 멈춘 지점에서 이어서 실행합니다.
규칙+LLM 자연어 플래너날짜 표현·객실 번호만으로도 그날 예약을 찾고, LLM 실패 시 규칙 해석으로 돌아갑니다.
역할별 접속과 QR 등록토큰 인증과 사장님·직원 역할을 나누고, 휴대폰은 QR로 등록해 같은 와이파이에서 씁니다.
어댑터 교체 구조판매 채널·문자 연동은 인터페이스 뒤의 모의 어댑터로 시험하고, 실제 연동은 같은 인터페이스로 교체합니다.
숙소 정보 일괄 등록객실·채널·직원·안내 정보를 JSON 하나로 미리보기 후 적용하며, 틀린 행이 있으면 아무것도 바꾸지 않습니다.

결과

  • 요구 9개 항목을 모두 구현했고, 자동 시험 958건이 실패 0으로 통과했습니다(시험 파일 21개, 9.81초).
  • 시연 스크립트는 빈 폴더에서 초기화부터 지시, 중복 지시, 전체 검증까지 1.25초에 끝나며 검증 7종이 모두 통과합니다.
  • 코드 리뷰에서 나온 결함 33건을 처리하고 회귀 시험 51건으로 고정했습니다.
  • 요구사항정의서·설계서·사용설명서·운영가이드·시험결과서·교육자료·인계목록 7종 문서와 UX 조사, 로고·앱 아이콘 자산을 함께 만들었습니다. 실제 채널·문자 연동은 다음 단계 과제입니다.

포인트

업계 조사에서 «물어보기 → 준비 → 승인하면 실행» 구조는 이미 여러 제품에 있었지만, 단계별 위험도 표시와 실행 뒤 검증·실패 재개 화면은 공개 자료에서 찾지 못했습니다. 그래서 차별점을 화면보다 실행기 계약(확인·한 번 보장·재개·검증)에 두었습니다.

콘솔 진단에서 나온 치명 문제 세 가지(보낼 문장을 못 보고 보냄, 계획이 결과를 미리 보여 주지 않음, 문제가 있어도 «0»으로 표시)는 같은 뿌리였습니다. 화면은 실패를 숨기지 않아야 사용자가 믿고 누를 수 있다는 원칙으로 정리했습니다.

기술

Python 3.11+SQLiteFastAPIPydanticpytestClaude API(선택)단일 HTML 콘솔SVG 브랜드 자산

상단 영상은 실제 화면이 아니라 구조를 보여 주는 재구성 목업입니다. 고객 정보는 익명화했습니다.