You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[feature] CLI 에 메가박스 명령 추가 (서버는 구현되어 있으나 megabox-* 명령이 없습니다) #179
src/services/megabox/ 에 api.ts / client.ts / location.ts / types.ts / index.ts / tools/ 가 롯데시네마와 같은 구성으로 있습니다.
MCP 도구 3종(megabox_find_nearby_theaters, megabox_list_now_showing, megabox_get_remaining_seats)이 등록되어 있습니다.
src/index.ts 에 createMegaboxService 와 registerMegaboxRoutes(app) 가 모두 들어가 있고, GET API 3종(/api/megabox/theaters|movies|seats)도 배포본에서 응답합니다.
반면 CLI 명령은 없습니다. daiso --help 기준입니다.
cgv-theaters CGV 극장 검색
cgv-movies CGV 영화 검색
cgv-timetable CGV 시간표 조회
lottecinema-theaters롯데시네마 주변 지점 조회
lottecinema-movies 롯데시네마 영화/회차 조회
lottecinema-seats 롯데시네마 잔여 좌석 조회
영화관 3사 중 메가박스만 CLI로 조회할 수 없어서, daiso get /api/megabox/... 로 경로를 직접 적어야 합니다. 다른 두 체인은 전용 명령이 있어 사용 경험이 갈립니다.
제안 내용
lottecinema-* 와 같은 형태로 메가박스 명령 3종을 추가하면 어떨까 합니다.
명령
대응 API
megabox-theaters
/api/megabox/theaters
megabox-movies
/api/megabox/movies
megabox-seats
/api/megabox/seats
lottecinema-* 가 이미 같은 3종 구조라 그대로 복제하면 될 것으로 보입니다. 손볼 파일은 아래 정도로 파악했습니다.
src/cli/commands/cinema.ts — 명령 정의 3개
src/cli.ts — 명령 라우팅
src/cli/commandOptions.ts — 옵션 정의
src/cliHelpDefinitions.ts — 타입 유니온, 명령 목록, 설명, 예시
추가 비용은 없어 보입니다. 메가박스는 createMegaboxService() 가 인자를 받지 않고 client.ts 도 fetch 로 직접 호출해서 Zyte 를 경유하지 않습니다. CLI 는 mcp.aka.page 의 HTTP API 를 부르는 구조라 업스트림 호출량이 늘지도 않습니다.
의도적으로 CLI 에서 제외하신 것이 아니라면 PR 을 준비해 보겠습니다. 명령 이름이나 옵션을 다르게 가져가고 싶으시면 맞추겠습니다.
대안/검토 사항
현행 유지: daiso get /api/megabox/... 로 조회는 가능하므로 기능 자체가 막혀 있지는 않습니다. 다만 다른 두 체인과 사용 방식이 달라집니다.
명령 이름: 롯데시네마가 theaters / movies / seats 를, CGV 가 theaters / movies / timetable 을 쓰고 있어 어느 쪽에 맞출지 판단이 필요해 보입니다. 메가박스 API 경로가 theaters|movies|seats 라 롯데시네마 쪽에 맞추는 편이 자연스러울 것 같습니다.
위치 검색: megabox_find_nearby_theaters 는 지오코딩에 GOOGLE_MAPS_API_KEY 를 쓰지만 키가 없으면 우회하도록 되어 있어, 좌표를 직접 넘기는 경로는 키 없이도 동작합니다. 롯데시네마와 같은 방식이라 CLI 추가로 달라지는 부분은 없어 보입니다.
Activity