Community이미지github.com

zeighy/image-gen

텍스트 프롬프트로 이미지를 생성하거나 참조 이미지를 편집/결합합니다. 사용자가 이미지 생성, 그리기, 렌더링, 일러스트레이션 또는 편집을 요청할 때 사용하세요.

image-gen란 무엇인가요?

이 스킬은 OpenRouter 이미지 릴레이를 통해 텍스트 프롬프트로 이미지를 생성하거나 기존 이미지를 편집/결합하는 기능을 제공합니다. 자체 호스팅된 릴레이 서버를 활용하여 안정적이고 유연한 이미지 생성 환경을 지원하며, CLI 기반으로 동작하여 AI 에이전트(Claude Code, Cursor, Codex 등)가 명령어를 실행해 결과를 얻을 수 있습니다. 릴레이 스크립트(`relay.sh`)는 비동기 작업으로 이미지 생성을 처리하며, 최대 90초까지 결과를 기다린 후에도 작업이 지속되면 `result` 명령으로 상태를 확인할 수 있습니다. 사용자는 `--image` 또는 `--ref` 옵션으로 로컬 파일이나 이전에 생성된 릴레이 파일을 참조하여 편집하거나 결합할 수 있으며, 다양한 종횡비와 최대 4개의 이미지를 동시에 생성할 수 있습니다. 프롬프트 작성 시 주제, 스타일, 구도, 조명, 색상을 구체적으로 명시해야 하며, 콘텐츠 정책 위반 시 스크립트가 명확한 오류 메시지를 제공하므로 필터를 우회하려는 시도는 금지됩니다.

지원 대상✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/zeighy/orgir-relay/tree/HEAD/skill/image-gen

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

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

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

문서

릴레이를 통한 이미지 생성

이 스킬 폴더(SKILL.md와 같은 폴더)에 있는 relay.sh 스크립트를 사용하세요. 스크립트는 같은 위치에 있는 relay.env에서 릴레이 URL과 토큰을 읽거나(또는 IMAGE_RELAY_URL / IMAGE_RELAY_TOKEN 환경 변수가 설정된 경우 이를 사용), 릴레이를 호출하고 이미지를 파일로 저장합니다. 전체 경로를 사용하여 bash로 실행하세요.

절대 토큰이나 relay.env를 출력, 표시, 읽지 말고, 토큰을 명령줄에 포함시키지 마세요.

생성

bash /path/to/image-gen/relay.sh generate "눈 덮인 숲속의 수채화 여우" --aspect 16:9

옵션:

  • --aspect R: 1:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 21:9 중 하나
  • --n N: 이미지 수 (1-4)
  • --model M: 사용자가 특정 모델을 요청한 경우에만 사용; 허용된 모델 목록은 relay.sh models 실행
  • --out DIR: 저장 위치 (기본값: /mnt/user-data/outputs 디렉토리가 존재하면 해당 경로, 그렇지 않으면 현재 디렉토리)

출력 결과는 saved: /path/abc123.jpg (512345 bytes, relay file: abc123.jpg) 형식입니다. 저장된 파일을 사용자에게 보여주거나 첨부하세요. 후속 편집을 위해 relay file 이름을 유지하세요.

결과 대기

생성에는 시간이 걸릴 수 있으므로 릴레이는 백그라운드 작업으로 실행합니다. relay.sh generate는 작업을 제출하고 약 30초(릴레이가 요청하는 간격)마다 최대 90초 동안 확인합니다. 이미지가 준비되면 평소와 같이 saved: 줄이 출력됩니다.

pending: job <id> ...가 출력되면 작업이 여전히 릴레이에서 실행 중이며 손실되지 않은 것입니다. 명시된 초(예: sleep 30)만큼 기다린 후 다음을 실행하세요:

bash /path/to/image-gen/relay.sh result <id>

기다리는 동안 스크립트가 작업이 "확인 중"(릴레이가 요청을 계속 검토 중) 또는 "수락됨, 생성 중"이라고 말할 수 있습니다. saved: 줄이나 오류가 출력될 때까지 반복하세요. 작업이 보류 중인 동안 프롬프트를 다시 제출하지 마세요. 그러면 두 번째 이미지가 생성되어 비용이 청구됩니다. --wait SECONDS는 한 번 호출 시 대기 시간을 변경합니다(기본값 90).

참조 이미지 편집 또는 사용

사용자의 이미지 파일을 --image로 전달하세요(최대 4번까지 반복 가능, PNG, JPEG, WebP 또는 GIF, 각 10MB 이하):

bash /path/to/image-gen/relay.sh generate "하늘을 보라색으로 만들고, 나머지는 그대로 유지" --image /path/to/photo.jpg

대화 중 이전에 생성된 이미지를 개선하려면 --ref에 릴레이 파일 이름을 전달하세요(재업로드보다 빠름, 릴레이 파일은 24시간 후 만료):

bash /path/to/image-gen/relay.sh generate "오른쪽 상단에 작은 달 추가" --ref abc123.jpg

--ref는 https:// 이미지 URL도 허용합니다.

프롬프트 작성

주제, 스타일, 구도, 조명 및 색상을 다루는 구체적인 프롬프트를 작성하세요. 편집의 경우 무엇을 변경하고 무엇을 유지할지 명시하세요.

오류

스크립트는 error: HTTP <code> <code_name>: <message> 형식으로 출력합니다:

  • rate_limited: 명시된 초만큼 기다린 후 한 번 재시도하세요.
  • model_not_allowed, invalid_aspect_ratio, invalid_n: 옵션을 수정하고 재시도하세요.
  • invalid_input_images / 413: 이미지가 지원되는 유형이 아니거나 너무 큽니다. 변환하거나 크기를 줄이세요.
  • upstream_error (예: "제 시간에 응답하지 않음"): 릴레이가 자체적으로 이미 재시도했습니다. 사용자에게 알린 후 한 번 재제출하세요. 다시 실패하면 중단하고 보고하세요.
  • request_rejected: 릴레이가 요청을 수락하지 않았습니다(이유를 제공하지 않음). 사용자에게 거부되었음을 알리세요. 원인을 추측하거나, 프롬프트나 이미지를 수정/위장하거나, 재제출하지 마세요.
  • prompt_rejected: 릴레이의 콘텐츠 정책이 프롬프트를 차단했습니다. 사용자에게 알리세요. 필터를 우회하기 위해 프롬프트를 다시 작성하지 마세요.
  • image_rejected: 참조 이미지가 콘텐츠 정책에 의해 차단되었습니다. 사용자에게 알리세요. 동일한 이미지로 재시도하거나 위장하려 하지 마세요.
  • no_image: 이미지가 생성되지 않았습니다. 프롬프트를 다시 작성하세요.
  • job_not_found / job_lost: 작업 ID가 만료되었거나 서버가 중단했습니다. 프롬프트를 다시 제출하세요.
  • could not reach: 릴레이 도메인에 대한 네트워크 접근이 차단되었습니다. 사용자에게 설정 → 기능(네트워크 이그레스)에서 도메인을 허용하도록 알리세요.
  • unauthorized: 토큰이 없거나, 잘못되었거나, 만료되었습니다. 사용자에게 알리세요. 다른 토큰을 찾으려 시도하지 마세요.

관련 스킬