Community이미지github.com

MrBogomips/codex-image-gen

codex CLI의 내장 이미지 도구를 구동하여 래스터 이미지를 생성하거나 편집하고, 해당 이미지를 지정된 경로에 저장합니다.

codex-image-gen란 무엇인가요?

이 스킬은 codex CLI의 내장 이미지 생성 기능을 활용하여 래스터 이미지(일러스트레이션, 사진, 아이콘, 텍스처, 목업, 포스터, 로고 컨셉, 투명 컷아웃, 플레이스홀더 에셋)를 생성하거나 편집한 후, 사용자가 지정한 경로에 이미지 파일을 저장합니다. codex CLI의 exec 명령어는 생성된 이미지를 자동으로 저장하지만 저장 위치를 지정할 수 없으므로, 이 스킬은 이를 해결하기 위해 `scripts/codex_image.py` 파이썬 스크립트를 사용하여 단일 비대화형 턴을 실행하고 해당 세션의 이미지만 수집하여 원하는 경로에 저장합니다. OpenAI SDK나 API 키를 사용하는 유료 API로 대체하지 않으며, codex 로그인의 할당량 내에서 무료로 작동합니다 (API 키 불필요). Google/Gemini 이미지 생성을 원할 경우 `google-image-gen` 스킬을 사용해야 합니다.

지원 대상~Claude Code✓Codex CLI~Cursor✓Gemini CLI
npx skills add https://github.com/MrBogomips/skills/tree/HEAD/skills/codex-image-gen

Installed? Explore more 이미지 skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

codex CLI를 통한 이미지 생성

codex exec에는 "이미지를 이 경로에 저장"하는 옵션이 없습니다: 자체적으로 생성한 내용을 $CODEX_HOME/generated_images/<session id>/ 아래에 저장합니다. scripts/codex_image.py는 비대화형 턴을 한 번 실행하고, 해당 세션의 이미지만 수집하여 요청한 위치에 기록합니다. 이미지가 반환되지 않으면 아무 것도 기록하지 않습니다.

항상 이 스크립트를 사용하세요. 직접 작성한 codex exec "고양이 그려줘"는 종종 텍스트나 ImageMagick 그림을 반환하며 출력을 찾기 위해 헤맬 수 있습니다.

절대 유료 API로 대체하지 마세요. codex가 실패하거나 할당량이 부족하더라도 OpenAI SDK나 OPENAI_API_KEY를 사용하지 마십시오. 실패를 보고하고 중단하세요. Google의 유료 API는 사용자가 요청한 경우에만 google-image-gen을 사용하세요.

사용법

스킬 디렉토리에서 실행하거나 스크립트의 절대 경로를 지정하세요. 실행은 약 30-60초 소요됩니다.

python3 scripts/codex_image.py -p "황혼의 젖은 돌담에 기대어 있는 빨간 자전거 한 대, 영화 같은 사진" -o bike.png
목표명령어
종횡비 (모델에 대한 힌트)-p "..." -o out.png --aspect 9:16
참조 이미지-p "..." -o out.png -r ref.png [-r ref2.png]
이미지 편집--edit v1.png -p "하늘을 보라색으로 만들어 줘" -o v2.png
여러 장 생성-p "..." -o opt.png -n 3 (opt.png, opt-2.png, opt-3.png 저장)
정확한 픽셀 크기-p "..." -o cover.png --aspect 9:16 --fit 1080x1920
긴 프롬프트--prompt-file prompt.md -o out.png
프롬프트만 확인, 비용 없음--print-prompt 추가
  • 출력 확장자는 실제 형식을 따릅니다: bike.jpg로 요청된 PNG 바이트는 bike.png로 저장됩니다. 스크립트는 기록된 각 경로를 출력합니다.
  • --aspect는 결과의 형태만 결정합니다. --fit WxH는 이후 크기를 보장합니다: 검은 막대를 추가하여 패딩하거나(--fit-mode pad, 기본값) 중앙을 기준으로 자르고(--fit-mode crop), 항상 PNG로 저장합니다. --aspect를 대상에 맞추면 패딩이나 자르기가 거의 필요하지 않습니다. --fit은 Pillow가 필요하며, codex 실행 전에 확인됩니다.
  • -n은 한 번의 실행에서 N장을 요청합니다. 모델이 더 적게 반환할 수 있으며, 스크립트는 받은 만큼 저장합니다.
  • --edit은 이미지를 대상으로 첨부하고 프롬프트가 요청한 부분만 변경하도록 모델에 지시합니다.

프롬프트 작성

스크립트는 실제 이미지 도구 호출을 강제하는 문구를 추가하므로 --prompt는 그림에 관한 내용만 포함합니다. 간결한 레이블 형식의 사양이 잘 작동합니다:

주제: 가장자리가 닳아 금속이 드러난 빨간 자전거 한 대
장면: 젖은 돌 harbor 벽에 기대어 있고, 그 너머로 마을 불빛
스타일: 영화 같은 사진, 얕은 피사계 심도
조명: 황혼, 낮고 따뜻한 태양, 젖은 돌에 반사
텍스트(그대로): "NO SPARE"
피해야 할 것: 사람, 워터마크, 추가 자전거
  • 반드시 표시되어야 하는 텍스트는 인용부호로 묶고 짧게 유지하세요. 긴 문자열은 철자가 틀려서 돌아올 수 있습니다.
  • 나타나지 말아야 할 것을 명시하세요. 투명 컷아웃의 경우 투명 배경을 요청하고 .png로 저장하세요.
  • --edit의 경우, 변경 사항("가로등 제거")을 작성하고 유지되어야 할 것("자전거, 구도, 조명 유지")을 지정하세요. 한 번에 한 가지만 변경하세요.
  • 편집은 픽셀 패치가 아닌 재생성입니다: 구도와 디테일이 변할 수 있으며, 각 패스가 이를 악화시킵니다. 체인을 짧게 유지하고, 반드시 변경되지 않아야 하는 부분은 나중에 합성하세요.

생성 후

결과물을 전달하기 전에 어떤 방법으로든 이미지를 확인하세요. 모델이 텍스트, 개수 또는 요청된 세부 사항을 틀리는 경우가 있습니다. 놓친 부분이 있으면 더 명확한 프롬프트로 다시 실행하거나 --edit으로 다듬으세요.

실패

스크립트는 0이 아닌 종료 코드와 함께 명확한 메시지를 출력하며 아무 것도 기록하지 않습니다.

  • codex CLI를 찾을 수 없음 / 로그인하지 않음: codex를 설치하고 codex login을 실행하세요. CODEX_BIN이 다른 바이너리를 가리키고 있습니다.
  • 할당량 부족: codex가 보고하는 초기화를 기다리거나 다른 계정을 사용하세요. 루프로 재시도하지 마세요.
  • 이미지 생성 안 됨: 모델이 텍스트로 응답했습니다. 응답이 표시되며, 더 간단한 그림 요청으로 다시 실행하세요.
  • 시간 초과: 실행이 단순히 느린 경우에만 --timeout(기본값 900초)을 늘리세요.
  • --fit 사용 시 Pillow 없음: pip install Pillow를 실행하거나 --fit을 제거하세요.

관련 스킬