Codex Closet 사진으로 옷 중복구매 방지 에이전트 5분 만에 만들기

Codex Closet 사진으로 옷 중복구매 방지 에이전트 5분 만에 만들기

Codex Closet 사진으로 옷 중복구매 방지 에이전트 5분 만에 만들기

옷장 사진 2장으로 끝내기

오늘 만들 것
옷장 사진 2장으로 끝내기

비슷한 검정 셔츠 또 담아두고 결제 직전에 멈칫한 적 있죠. 오늘은 Codex Closet 사진으로 옷 중복구매 방지 에이전트를 만들어서, 내 옷장 사진 2장과 사고 싶은 상품 스크린샷 1장만 넣고 바로 판정 카드까지 뽑아볼 겁니다. 지난편이 새 공고를 알려주는 쪽이었다면 오늘은 지출이 새는 쪽을 막는 버전이구요. 첫 결과는 5분 안에 텍스트로 나오고, 그다음 카드 화면만 붙이면 됩니다.

준비물은 Codex 하나

오늘은 Codex로 갈게요. Claude Code 쓰는 분도 프롬프트는 거의 그대로 옮기면 되는데, 예시는 Codex 기준으로 적겠습니다. 공식 문서에서 지금 바로 쓸 만한 건 세 개면 충분했어요. 이미지 입력, 폴더 규칙을 기억하는 AGENTS.md, 그리고 결과를 딱 정해진 JSON으로 뽑는 output schema. 이 셋만 써도 중복구매 방지 에이전트 첫 버전은 바로 뜹니다.

1
판정 기준 먼저 박기
AI에게 보낸 프롬프트
새 폴더를 만들고 AGENTS.md와 schema.json 뼈대부터 준비해줘.
목표는 옷장 사진과 상품 스크린샷을 보고 중복구매 방지 리포트를 만드는 것.
schema.json 필드는 item_name, verdict, reason, already_have, pair_with, buy_now_score로 맞춰줘.
verdict는 buy_now, wait, skip 셋만 쓰고 말투는 짧고 담백하게 해줘.
왜 이렇게 시켰나: 이거 안 넣으면 Codex가 문장 길이도 들쭉날쭉하고 판정 이름도 제멋대로 만듭니다. 첫 판에서 규칙을 박아두면 뒤가 편해져요.
이렇게 나오면 OK: 폴더 안에 AGENTS.md와 schema.json 두 파일이 생기고, 필드 이름이 짧고 고정돼 있으면 됩니다.
여기서 이렇게 하면 안 돼요: Step 1에서 카드 디자인이랑 버튼까지 한꺼번에 시키면 아직 안 정한 규칙이 섞여서 나중에 더 꼬입니다.
2
중복구매 방지 에이전트 첫 판정 뽑기
AI에게 보낸 프롬프트
Codex에 옷장 사진 2장과 사고 싶은 상품 스크린샷 1장을 넣고 이렇게 말해.
내 옷장 사진 2장과 상품 스크린샷 1장을 읽고 중복구매 방지 에이전트처럼 판단해줘.
출력은 1) 이미 비슷한 옷 2) 같이 입기 좋은 기존 옷 3) 사도 되는 이유 4) 굳이 안 사도 되는 이유 순서의 짧은 한국어 메모로 줘.
과장하지 말고, 겹치는 옷이 보이면 왜 겹치는지 색감이나 핏 기준으로 적어줘.
왜 이렇게 시켰나: 첫 결과는 일단 빨리 봐야 하거든요. JSON부터 억지로 뽑으려 들면 초보한텐 딱딱해서 재미가 확 꺼집니다.
이렇게 나오면 OK: 비슷한 옷 목록이 2~3개 나오고, 사도 되는지 기다릴지 바로 감이 오면 됩니다. 여기서 반은 끝난 셈이에요.
여기서 이렇게 하면 안 돼요: 옷장 사진을 너무 멀리서 찍거나 여러 사람 옷이 섞인 사진을 넣으면 판정이 흐려집니다. 한 사람 옷만, 밝은 사진으로 가는 게 훨씬 잘 맞아요.
3
메모를 JSON으로 굳히기
AI에게 보낸 프롬프트
Step 2에서 나온 메모를 바탕으로 report.json을 만들 거야.
`codex exec`로 실행할 프롬프트를 만들어줘.
출력은 schema.json을 꼭 지키고, verdict는 buy_now, wait, skip 중 하나만 허용해줘.
buy_now_score는 0부터 100까지 정수로 넣고 JSON 외 텍스트는 금지해줘.
왜 이렇게 시켰나: 화면에 붙일 때는 사람이 읽는 메모보다 고정된 JSON이 훨씬 낫습니다. 이 한 줄이 있어야 같은 중복구매 방지 에이전트라도 결과가 덜 흔들려요.
이렇게 나오면 OK: report.json 안에 verdict 하나, 이유 한 줄, already_have 배열, pair_with 배열이 깔끔하게 들어가면 됩니다.
여기서 이렇게 하면 안 돼요: score를 82.5처럼 소수로 두거나 verdict를 maybe로 만들면 다음 단계에서 바로 깨집니다.
4
카드 화면 붙이기
AI에게 보낸 프롬프트
index.html 하나로 카드 화면을 만들어줘.
report.json 내용을 붙여넣는 textarea 하나와 render 버튼 하나만 넣어줘.
카드는 이미 있음, 같이 입기 좋음, 지금 사도 됨 이렇게 3개로 나눠 보여주고 모바일에서 먼저 잘 보여야 해.
색은 과하지 않게 회색과 포인트 색 하나만 써줘.
왜 이렇게 시켰나: 파일 열기 버튼이나 업로드 기능부터 넣으면 브라우저 권한 문제로 초반에 막히는 사람이 많습니다. textarea에 report.json 붙여넣기 방식이 제일 안 막혀요. 몰라도 괜찮아 그냥 붙여넣어.
이렇게 나오면 OK: report.json을 붙이고 render를 누르면 판정 배지와 이유 카드가 바로 뜹니다. 썸네일 한 장 찍기에도 딱 좋아요.
여기서 이렇게 하면 안 돼요: Step 4에서 검색 기능, 즐겨찾기, 저장 버튼까지 욕심내면 첫 화면이 늦어집니다. 오늘은 카드만 보이면 이긴 겁니다.
5
마지막으로 딱 두 가지만 검수
AI에게 보낸 프롬프트
`/review`를 열고 바뀐 파일만 검수해줘.
문구 과장, 모바일 줄바꿈, JSON 키 이름 실수만 찾아줘.
새 기능 제안은 하지 말고 지금 있는 것만 봐줘.
왜 이렇게 시켰나: Codex 문서에 있는 `/review`는 별도 리뷰어처럼 diff만 읽고 우선순위 높은 문제부터 말해줍니다. 이럴 때 좋더라구요. 괜히 더 꾸미려는 마음을 눌러줍니다.
이렇게 나오면 OK: 말투가 담백하고, 작은 화면에서도 카드가 안 깨지고, 키 이름이 schema.json과 똑같으면 끝입니다.
여기서 이렇게 하면 안 돼요: 검수 단계에서 디자인 갈아엎기까지 시키면 아까 만든 흐름이 다시 무거워집니다.

여기서 막히는 셋

첫째. 결과가 너무 뭉뚱그려 나오면 사진이 문제인 경우가 많습니다. 현상은 모든 옷이 비슷하다는 말만 반복되거나, 색 구분을 못 하는 식으로 보입니다. 원인은 옷장이 어둡거나 옷이 겹쳐 찍혀서 형태를 못 읽은 거예요. 해결은 상의만 따로, 하의만 따로 다시 찍고 배경을 줄여서 한 번 더 넣는 겁니다.

둘째. report.json이 안 만들어지면 필드 이름이 흔들린 경우가 많아요. 현상은 item_name 대신 product_name이 나오거나, score가 문자열로 들어가는 식입니다. 원인은 Step 2 메모를 그대로 옮기면서 schema 규칙을 느슨하게 준 거예요. 해결은 AGENTS.md에 verdict 값 셋과 score 정수 조건을 한 줄 더 적고, output schema 기준으로 다시 돌리면 됩니다.

셋째. 카드 화면이 비어 있으면 브라우저보다 입력값부터 보세요. 현상은 버튼을 눌렀는데 아무 일도 없거나, JSON parse error 비슷한 문구가 뜹니다. 원인은 report.json 전체가 아니라 메모만 붙였거나 쉼표 하나가 빠진 경우가 대부분이에요. 해결은 report.json 내용을 통째로 붙이고, 마지막 쉼표랑 대괄호만 다시 확인하면 거의 끝납니다.

다음에 붙여볼 것

한 걸음 더

여기까지 만들면 중복구매 방지 에이전트 첫 버전은 끝입니다. 다음엔 여기에 가격 검색만 하나 붙여서, 겹치는데도 세일이 세면 buy_now_score를 다시 계산하게 만들 수 있어요. 그 단계부터는 장바구니가 좀 덜 가벼워질 수도 있겠죠.

Related Searches

  • 🔍 Codex 사용법
  • 🔍 Codex 비교
  • 🔍 중복구매 방지 에이전트 사용법
  • 🔍 중복구매 방지 에이전트 비교
  • 🔍 옷장 사진 사용법
  • 🔍 옷장 사진 비교

댓글 쓰기

다음 이전