TRENDSHIFT #20 · 2026.05.24 · EVOLINKAI

awesome-gpt-image-2 —
11.5k 스타짜리
"트윗에서 살아남은 프롬프트" 큐레이션

OpenAI의 차세대 이미지 모델 GPT-Image-2를 위해 X(트위터)의 크리에이터·디자이너·일러스트레이터 커뮤니티에서 검증된 330개+ 프롬프트를 7개 카테고리로 큐레이션한 awesome-list. 코드는 거의 0줄, 11개 언어 README가 본체다. 자매 레포 gpt-image-2-gen-skill로 같은 프롬프트를 Claude Code·OpenClaw·OpenCode·Cursor에서 한 줄 명령으로 호출할 수 있도록 만들었다. "awesome-list + 호출 가능 스킬 + 다국어" 3중 자산화의 한 모델.

11.5k ★
GitHub stars · 1.2k forks · 92 commits
330+
큐레이션 프롬프트 · 7개 카테고리
11개
README 다국어 (en/ko/ja/zh-CN/zh-TW/de/es/fr/pt/ru/tr)
CC0-1.0
자매 스킬은 MIT · npm evolink-gpt-image

0먼저, "GPT-Image-2"가 뭔가

ChatGPT가 그림 그려주는 그 모델 — 두 번째 세대.

OpenAI는 2024년에 DALL·E 3를 ChatGPT에 통합했고, 2025년에 그것을 대체할 GPT-Image-1(코드명 "gpt-image-1")을 API로 공개했다. 2026년 초에 등장한 GPT-Image-2는 그 다음 세대로, 한국에서는 흔히 "ChatGPT의 이미지 모델 2"로 불린다. 글자 깨짐이 거의 사라졌고, 입력 이미지를 1~16장 받아서 그 위에 편집을 가하는 image editing 모드가 안정화됐다.

용어
Text-to-Image (T2I)
"자연어 설명을 주면 그림을 그려주는" AI 모델의 약자. 입력은 텍스트(prompt), 출력은 이미지. DALL·E, Midjourney, Stable Diffusion이 모두 같은 부류. GPT-Image-2는 OpenAI의 최신 T2I 모델이다.
용어
Image-to-Image (편집 모드)
이미지 1~16장을 함께 넣고 "이거랑 비슷하게 만들어줘", "이 사진에 고양이를 추가해줘" 같은 지시를 내리는 모드. 참조 이미지의 스타일·구도·인물 얼굴을 유지하면서 변형할 수 있다. 한 프롬프트로 최대 32,000자까지 받는다.

이 레포는 GPT-Image-2 모델을 "어떻게 잘 쓰는가"에 대한 답이다. 모델 자체를 만드는 게 아니라, 이 모델이 잘 따르는 프롬프트 패턴을 X(트위터)에서 매일 수집해서 큐레이션한다. 데이터 폴더의 ingested_tweets.json(316KB)이 그 수집 원본이다.

용어
awesome-list
2014년 sindresorhus/awesome에서 시작된 GitHub 장르. 특정 주제에 대해 "best-of" 자료를 모아 README 하나로 정리한 큐레이션 레포. awesome.re 배지가 공식 인증. 이 레포도 그 장르에 속한다 — "GPT-Image-2 프롬프트의 awesome".

1한 줄 요약

"좋은 프롬프트를 찾으러 X를 뒤지지 말고, 여기서 베껴라."

한 줄 정의

X에서 매일 새로 올라오는 GPT-Image-2 신박한 프롬프트 → 검증 → 카테고리 분류 → README 7개에 박제하는 큐레이션 파이프라인

"트위터에서 본 그 미니어처 디오라마 스킨케어 광고 어떻게 만들었지?"라는 질문을 매일 받는 사람을 위해, EvoLinkAI 팀이 48시간 단위로 X를 크롤링·검증·태깅해서 7개 카테고리 README에 박제해 둔 곳. 각 케이스는 출처 트윗 링크 + 원본 작가 핸들 + 완성된 프롬프트 코드 블록 + 결과 이미지 미리보기 4종 세트로 정리돼 있다.

그리고 같은 큐레이션을 npm 패키지 한 줄(npx evolink-gpt-image)로 설치 가능한 Claude Code/OpenClaw 스킬로 다시 묶었다 — README는 사람이 베끼고, 스킬은 AI 에이전트가 직접 호출한다.

2왜 주목받는가

"awesome-list가 진화하면 어떤 모습이 되는가"의 사례.

이 레포가 2026년 5월 TrendShift 20위로 올라온 이유는 GPT-Image-2 자체 인기 + 4가지 차별점이다. 보통의 awesome-X 레포는 외부 링크 모음이 끝이고, 1년 뒤에는 절반이 dead link가 되어 있다. 이 레포는 그 한계를 4단계로 넘었다.

차별점 1 / 4

외부 링크가 아니라 "프롬프트 본문"을 통째로 박제한다

일반 awesome-list는 "BubbleBrain의 콘비니언스 스토어 네온 포트레이트 → x.com/...링크" 식이다. 트윗이 삭제되면 끝. 이 레포는 프롬프트 본문 전체를 코드 블록으로 박제하고, 결과 이미지도 images/ 폴더에 로컬 호스팅한다. 트윗이 사라져도 자료가 살아남는다.

차별점 2 / 4

12개 언어 README가 자동 동기화된다

en/ko/ja/zh-CN/zh-TW/de/es/fr/pt/ru/tr 11개 README가 항상 같은 케이스를 갖는다. 사람이 손으로 번역하지 않는다 — script/sync_multilingual_readmes.py(43KB Python)가 영문 정본을 파싱해서 10개 번역본의 케이스 추가/제목/앵커를 자동으로 맞춘다. 새 케이스 1개 추가 시 11개 파일을 동시에 갱신하는 CI/CD 같은 구조.

차별점 3 / 4

읽기 자료 + 호출 가능 스킬 = 같은 데이터 두 번 쓰기

같은 프롬프트 케이스를 (1) 사람용 README와 (2) AI 에이전트용 SKILL.md 양쪽에 노출한다. 자매 레포 EvoLinkAI/gpt-image-2-gen-skill은 SKILL.md + bash 스크립트만으로 Claude Code·OpenClaw·OpenCode·Cursor에서 "이 케이스랑 비슷하게 만들어줘"를 한 줄로 실행시킨다. README는 학습 자료, 스킬은 실행 인터페이스 — 둘이 한 자산을 공유한다.

차별점 4 / 4

매일 X에서 자동 수집하는 "살아있는" 큐레이션

News 섹션을 보면 알 수 있다 — 2026.04.18 첫 릴리즈 후 거의 매일 5~80개씩 새 케이스가 추가됐다. data/ingested_tweets.json(316KB)이 X 검색 batch로 수집한 raw 트윗 풀이고, 사람이 review → media validation(실제 이미지 확인) → 카테고리 분류 → README 추가 → 11개 언어 동기화 파이프라인을 거친다. "awesome-list = 끝난 자료"가 아니라 살아있는 데이터 제품.

비유

요리 레시피 카페에서 매일 "오늘 트위터에서 본 신박한 김치찌개 사진" 100장을 모은 뒤, 진짜 맛있어 보이는 20장만 추려 레시피와 결과 사진을 한 페이지에 박제하고, 그걸 영어·일본어·중국어로 동시 번역해서 올리는 큐레이터를 상상하면 된다. EvoLinkAI가 GPT-Image-2 프롬프트에 대해 하는 일이 그것. 거기에 한 단계 더 — 그 레시피를 "재료 자동 주문 봇"으로 변환해 주방 어시스턴트에게 넘겨주는 것까지 한다(자매 스킬).

3기술 스택 전체 지도

코드보다 데이터·자동화·표준 준수가 중심인 레포의 스택.

이 레포는 "콘텐츠 + 자동화" 구조라서 일반적인 "백엔드/프론트엔드/인프라" 분류와 다르다. 본체는 마크다운 문서이고, 그것을 둘러싼 ① 다국어 자동 동기화 스크립트, ② X 트윗 수집 데이터, ③ 외부 호출 가능 스킬(자매 레포 2개)로 구성된다. 코드는 Python 1개 파일 + Shell 1개 파일 + JavaScript 1개 파일이 사실상 전부.

본체: 콘텐츠 레이어

레이어도구·포맷역할
본체 문서Markdown (CommonMark)11개 README + 7개 카테고리별 케이스 md = 18개 마크다운 파일
이미지 자산JPG/PNG, GitHub rawimages/{category}_case{N}/output.jpg 구조로 로컬 호스팅
케이스 메타데이터JSONresult/gpt_image_2_recent_prompts_{날짜}_summary.json 형태로 최근 prompt-only 업데이트 추적
라이선스CC0-1.0저작권 포기 선언 (퍼블릭 도메인 헌정) — 출처 표시 의무 없이 누구나 자유롭게 사용·변형 가능
큐레이션 인증awesome.re 배지sindresorhus가 인정한 awesome-list 표준 준수

자동화 레이어

스크립트크기·언어하는 일
script/sync_multilingual_readmes.py43KB · Python 3영문 README 정본을 파싱 → 11개 번역 README의 케이스 헤딩·앵커·메뉴 자동 동기화. 신규 케이스가 추가되면 12개 파일이 같이 갱신됨
data/ingested_tweets.json316KB · JSONX 검색 API로 수집한 raw 트윗 풀. 큐레이터가 여기서 골라서 README에 박제

호출 가능 레이어 (자매 레포 1: gpt-image-2-gen-skill)

파일역할
SKILL.mdAnthropic Agent Skills 표준 — YAML frontmatter(name+description) + 본문 워크플로. Claude Code/OpenClaw가 자동 로드
_meta.jsonOpenClaw 레지스트리용 메타데이터(slug, version, ownerId, publishedAt)
llms-install.md"AI Agent? Skip the README" — LLM이 README 대신 읽는 설치 가이드
bin/cli.jsnpm 설치자 (JavaScript). npx evolink-gpt-image 한 줄로 SKILL.md를 사용자 에이전트 디렉토리에 복사
scripts/gpt-image-gen.sh실제 이미지 생성 bash 스크립트 (~500줄). POST → polling → IMAGE_URL 추출 + 친절한 에러 메시지
references/api-params.md전체 API 파라미터 레퍼런스. SKILL.md 본문이 가벼우려고 references/로 분리

호출 가능 레이어 (자매 레포 2: GPT-Image-2-Seedance2-Workflow)

GPT-Image-2(이미지) × Seedance 2.0(ByteDance의 비디오 생성 모델)을 묶어 "이미지 → 영상" 워크플로를 만드는 별도 레포. 시네마틱 광고나 9-panel 스토리보드를 정적 이미지에서 영상으로 확장할 때 쓴다. 이번 분석에서는 이 레포는 깊이 다루지 않는다.

EvoLink (회사 자체) 인프라

용어
Unified AI API Gateway
"여러 회사의 AI 모델을 하나의 OpenAI 호환 API로 묶어주는" 미들웨어. EvoLink는 OpenAI(GPT-Image-2), ByteDance(Seedance 2.0), HeyGen 등 여러 모델을 자기 API 게이트웨이 뒤에 두고, 클라이언트는 api.evolink.ai/v1/images/generations 하나로 모두 호출한다. 결제도 EvoLink가 통합 처리(BYOK가 아니라 EvoLink 크레딧 차감).

API endpoint는 스크립트에 하드코딩돼 있다 — readonly API_BASE="https://api.evolink.ai". 즉 이 스킬은 사용자 OpenAI 키로 직접 호출하는 것이 아니라 EvoLink 크레딧을 사용한다. 이게 큐레이션 레포가 무료인 비즈니스 모델의 비밀 — README는 무료로 풀고, 호출 시 EvoLink로 트래픽을 모은다.

4아키텍처 심화 분석

"콘텐츠 → 데이터 → 다국어 → 스킬 → API"의 5단 파이프라인.

전체 시스템을 ASCII로 그리면 다음과 같다 — 왼쪽 끝(X 트윗)에서 시작해 오른쪽 끝(사용자 디스크의 PNG)으로 흐른다.

┌──────────────────┐ ┌──────────────────┐ ┌──────────────────┐ │ X(Twitter) │ │ Curation Team │ │ Cases (md) │ │ #gptimage2 │ → │ - media validate │ → │ cases/portrait │ │ creator tweets │ │ - category tag │ │ cases/poster │ │ │ │ - keep/reject │ │ cases/ui ... │ └──────────────────┘ └──────────────────┘ └────────┬─────────┘ │ ▼ ┌──────────────────┐ │ Sync Script │ │ sync_multilingual│ │ _readmes.py 43KB │ └────────┬─────────┘ │ ┌──────────────────────────┴──────────┐ ▼ ▼ ┌──────────────────┐ ┌──────────────────┐ │ 12 READMEs │ │ SKILL.md │ │ en/ko/ja/zh-CN/ │ │ (gpt-image-2- │ │ zh-TW/de/es/fr/ │ │ gen-skill repo) │ │ pt/ru/tr │ └────────┬─────────┘ │ (human readers) │ │ └──────────────────┘ ▼ ┌──────────────────┐ │ AI Agent │ │ Claude Code / │ │ OpenClaw / │ │ OpenCode /Cursor │ └────────┬─────────┘ │ exec ▼ ┌──────────────────┐ │ gpt-image-gen.sh │ │ - jq build JSON │ │ - POST /v1/... │ │ - poll task_id │ └────────┬─────────┘ │ ▼ ┌──────────────────┐ │ EvoLink API │ │ api.evolink.ai │ │ /v1/images/ │ │ generations │ └────────┬─────────┘ │ ▼ ┌──────────────────┐ │ OpenAI │ │ GPT-Image-2 │ │ (실제 추론) │ └────────┬─────────┘ │ ▼ ┌──────────────────┐ │ IMAGE_URL │ │ (24h valid) │ └──────────────────┘

설계 패턴 1 — Progressive Disclosure (점진적 노출)

Anthropic Agent Skills 표준의 핵심 개념. SKILL.md는 가볍게 두고, 자세한 정보는 references/와 scripts/에 분리한다. AI 에이전트는 먼저 SKILL.md의 YAML frontmatter(name+description)만 보고 이 스킬이 활성화될지 판단하고, 활성화되면 본문 워크플로를 읽고, 필요한 경우에만 references/api-params.md를 추가로 읽는다. 이 레포의 SKILL.md는 모든 정보를 다 담지 않고, 사용 시점에 필요한 만큼만 노출한다.

용어
YAML frontmatter
마크다운 파일 맨 위에 ---로 감싼 메타데이터 블록. name:, description: 같은 키-값 쌍을 둔다. Jekyll·Hugo·Anthropic Agent Skills가 모두 이 포맷을 쓴다. AI 에이전트는 description만 보고 "이 스킬을 이 요청에 활성화할지" 판단한다.

설계 패턴 2 — Sister Repo로 자산 분리

"awesome-list"는 절대 SKILL.md를 직접 갖지 않는다. 대신 gpt-image-2-gen-skill이라는 별도 레포에 스킬을 둔다. 이유는 ① 관심사 분리(awesome은 사람용, skill은 에이전트용), ② 독립 배포(skill만 npm publish, awesome은 git pull로 보면 됨), ③ 다국어 의존성 분리(skill은 영문만, awesome은 12개 언어). 이 패턴은 Anthropic anthropics/skillsdocument-skills/example-skills/claude-api 3개 분리와 같은 철학.

설계 패턴 3 — Polling + Backoff로 동기 API 흉내내기

OpenAI 이미지 생성은 비동기다(요청 → task_id 받기 → 결과 polling). 하지만 AI 에이전트는 "한 번 실행하면 결과까지 받는" 동기 인터페이스를 선호한다. gpt-image-gen.sh는 이 차이를 흡수한다 — POST로 task_id 받자마자 즉시 TASK_SUBMITTED:를 출력해 "재시도 금지" 시그널을 보내고, 그 다음부터는 3초 → (20초 이후) 8초 백오프로 polling하면서 15초마다 STATUS_UPDATE:를 토하다가, 완료되면 IMAGE_URL=을 출력한다.

함정
AI 에이전트가 "안 끝났네?" 하고 두 번 실행

POST는 이미 서버에 큐잉됐는데, AI가 답이 안 오는 줄 알고 스크립트를 재실행하면 같은 이미지를 두 번 생성해서 사용자 크레딧이 두 배로 빠진다.

해결
TASK_SUBMITTED를 빨리, IMAGE_URL과 분리해서 출력

SKILL.md가 명시적으로 "Once you see TASK_SUBMITTED: in the output, the task is already queued on the server. Do NOT run the script again"이라고 못박는다. 출력 프로토콜이 곧 API 계약. AI 에이전트의 행동을 마크다운 한 줄로 제어한다.

5디렉토리 구조 해부

메인 레포 + 자매 스킬 레포를 한 번에.

메인 레포 (awesome-gpt-image-2-API-and-Prompts)

awesome-gpt-image-2-API-and-Prompts/ ├── README.md # 영문 정본 (모든 동기화의 기준) ├── README_ko.md # 한국어 (자동 동기화됨) ├── README_ja.md # 일본어 ├── README_zh-CN.md # 간체 중국어 ├── README_zh-TW.md # 번체 중국어 ├── README_de.md README_es.md README_fr.md ├── README_pt.md README_ru.md README_tr.md # 11개 총 ├── cases/ # 카테고리별 케이스 md │ ├── ecommerce.md # 🛒 제품 광고 │ ├── ad-creative.md # 📣 광고 크리에이티브 │ ├── portrait.md # 🍌 포트레이트·인물 │ ├── poster.md # 🎨 포스터·일러스트 │ ├── character.md # 🧍 캐릭터 디자인 │ ├── ui.md # 📱 UI·SNS 목업 │ └── comparison.md # 🧪 비교·커뮤니티 예제 ├── data/ │ └── ingested_tweets.json # 316KB · X 트윗 raw 풀 ├── images/ │ └── {category}_case{N}/ # 각 케이스 결과 이미지 │ └── output.jpg ├── script/ │ └── sync_multilingual_readmes.py # 43KB · 12개 README 자동 동기화 ├── tmp/ # 작업 임시 폴더 ├── LICENSE # CC0-1.0 └── .gitignore

자매 레포 (gpt-image-2-gen-skill)

gpt-image-2-gen-skill/ ├── README.md # 사람용 (11개 다국어 README도 같이 있음) ├── README.ko.md ├── llms-install.md # ⭐ "AI Agent? Skip the README" ├── SKILL.md # ⭐ 에이전트가 자동 로드하는 본문 ├── _meta.json # OpenClaw 레지스트리 메타 ├── package.json # npm publish용 (evolink-gpt-image) ├── bin/ │ └── cli.js # JavaScript · npm 설치자 진입점 ├── scripts/ │ └── gpt-image-gen.sh # ⭐ 실제 이미지 생성 (~500 LoC bash) ├── references/ │ └── api-params.md # 사용 시점에만 읽히는 상세 레퍼런스 ├── assets/ # 쇼케이스 이미지 (banner.jpg 등) ├── .npmrc .npmignore .gitignore └── LICENSE # MIT
용어
llms-install.md
사람이 읽는 README와 별개로 LLM 친화 설치 가이드. README는 마케팅 문구·뱃지·스크린샷이 많아 LLM 컨텍스트에 쓸데없이 토큰을 잡아먹는다. llms-install.md는 step-by-step 명령만 담아서 AI 에이전트가 바로 실행하게 만든다. 비슷한 컨벤션이 llms.txt(루트), AGENTS.md(루트)에서 진화 중.

6학습 포인트 (기술별)

이 레포에서 정확히 무엇을 배울 수 있는가.

코드 라인 수는 적지만 배울 거리는 의외로 많다. "콘텐츠 기획·자동화·표준 준수·비즈니스 모델" 4가지 축이다.

① 프롬프트 엔지니어링 (T2I) — 가장 큰 본체

케이스 165개를 읽으면 OpenAI GPT-Image-2가 잘 따르는 프롬프트의 공통 패턴이 보인다. 예를 들어 럭셔리 광고 케이스의 프롬프트 본문은 거의 항상 다음 6가지를 명시적으로 포함한다.

이건 사람이 모델에게 "사진 찍는 법"을 텍스트로 가르치는 것과 같다. 사진가의 어휘(렌즈, 조리개, 골든 아워, 베지표, depth of field)를 그대로 모델이 학습 데이터에서 보고 있어서 이런 단어를 넣으면 결과가 일관되게 좋아진다.

② Argument Pattern — 재사용 가능 템플릿화

많은 케이스 프롬프트에 다음과 같은 표기가 보인다.

{argument name="shirt text" default="CITY"} {argument name="aspect ratio" default="9:16"} {argument name="landmark tower" default="Burj Khalifa"} {argument name="headline text" default="PRECISION"}

이건 GPT-Image-2 API의 정식 스펙은 아니다 — EvoLink가 도입한 큐레이션용 컨벤션으로, 같은 프롬프트를 사용자가 일부 변수만 바꿔서 재실행할 수 있게 표시한 것. evolink.ai/gpt-image-2-prompts 웹 인터페이스에서 이 변수들이 입력 필드로 노출된다. "프롬프트를 함수로 만들기"의 사례다.

③ Curation Pipeline (인풋 → 검증 → 박제)

News 섹션을 시간순으로 보면 이 팀이 도구화한 파이프라인이 보인다.

단계방법도구
1. 수집X 검색 API로 24~48시간 batch 크롤data/ingested_tweets.json 추가
2. 미디어 검증트윗의 첨부 이미지가 실제 결과인지 사람이 확인수동 review
3. 카테고리 태깅portrait/poster/ui/comparison/character/ad/ecom 7개 중 분류수동
4. 영문 README 추가제목·트윗 링크·작가 핸들·프롬프트 본문·이미지 셋git commit
5. 11개 언어 동기화영문 정본을 파싱해 번역본의 헤딩·앵커 자동 갱신sync_multilingual_readmes.py
6. 메타데이터 갱신최근 prompt-only 업데이트를 JSON에 기록result/gpt_image_2_recent_prompts_{날짜}_summary.json

④ Bash 스크립팅 + 비동기 API 폴링

gpt-image-gen.sh는 ~500줄짜리 잘 짜인 bash 예제다. 학습 포인트:

⑤ Agent Skill 표준 (SKILL.md 작성법)

SKILL.md는 단순한 마크다운이 아니다 — AI 에이전트의 행동을 자연어로 프로그래밍하는 문서다. 이 레포의 SKILL.md에서 배울 점:

⑥ awesome-list 큐레이션 비즈니스 모델

"무료 콘텐츠로 사용자를 모으고, 실행은 자사 API로 돌리는" 게이트웨이 비즈니스. 이건 코드/문서/마케팅이 한 자산으로 합쳐진 OSS 모델의 한 예. 비슷한 사례 — Firecrawl(AGPL 코어 + 클라우드), Plausible(AGPL + 호스팅), Supabase(Apache + 호스팅). EvoLink는 더 가벼운 모델 — 큐레이션 CC0-1.0 + 호출 시 EvoLink 크레딧.

7하드웨어/시스템 요구사항

스킬 실행에 필요한 환경 — 설치가 가장 간단한 레포 중 하나.

이 레포(큐레이션 자체)는 Markdown 파일이므로 브라우저나 GitHub 웹에서 바로 읽을 수 있다. 자매 스킬(gpt-image-2-gen-skill)을 실제 실행하려면 아래 세 가지가 필요하다.

항목버전/비고역할
bashv3.2+ (macOS/Linux 기본 포함, Windows는 Git Bash 또는 WSL)gpt-image-gen.sh 실행 셸
curl대부분 OS 기본 포함EvoLink API POST 요청 및 polling
jqv1.6+ (brew install jq / apt install jq)JSON 안전 빌드 및 응답 파싱
EVOLINK_API_KEY환경변수 — evolink.ai 대시보드에서 발급API 인증
Python 3 (선택)3.8+ — 필수 아님script/sync_multilingual_readmes.py 실행 시만 필요

GPU·로컬 모델 불필요. 모든 추론은 EvoLink → OpenAI 서버에서 실행된다. 네트워크 연결과 API 크레딧만 있으면 된다.

프롬프트 패턴 심층 분석

실제 케이스에서 추출한 GPT-Image-2 잘 쓰는 법.

큐레이션된 케이스를 카테고리별로 보면 각 카테고리마다 굳어진 패턴이 있다. 어느 패턴이 어디서 통하는지를 정리하면 자신만의 프롬프트를 만들 때 출발점이 된다.

패턴 A — Miniature Diorama (제품 광고)

샘플 케이스 151

"화장품병 위에 미니어처 인부들이 기어다니는" 광고

구조: hyper-realistic + miniature + tilt-shift + 거대한 제품 + tiny figurine workers + scaffolding + commercial photography + 8K + photorealistic CGI render

왜 통하는가: GPT-Image-2의 학습 데이터에 "tilt-shift miniature aesthetic"이라는 사진 용어가 들어 있어서, 단어 하나로 카메라 시뮬레이션 + 디테일 강제가 작동한다.

패턴 B — 9-Panel Storyboard (광고 TVC)

샘플 케이스 160

제품 사진 1장 → 9칸 광고 스토리보드

구조: "9-panel grid" + 각 panel의 명시적 번호와 설명 (1) wide shot establishing (2) hero product medium shot ... (9) brand closing frame + 각 패널마다 한국어/중국어 타이틀과 타임스탬프 명시

왜 통하는가: GPT-Image-2는 panel 수와 panel 내용을 동시에 매우 구체적으로 지정하면 분할 레이아웃을 따라 그린다. 단순히 "스토리보드 만들어줘"보다 훨씬 정확하다.

패턴 C — Side-Profile Portrait + Glitch Effect (포트레이트)

샘플 케이스 100

흑백 옆모습 + 빨간 글리치 픽셀 솔트

구조: subject (얼굴 디테일) → style fusion (realistic photo + abstract digital glitch art) → color palette (strictly monochromatic + aggressive crimson splashes) → graphic elements (glitch effect 위치 명시) → texture → lighting (Chiaroscuro) → details (skin texture, hair strands) → framing → aspect ratio

왜 통하는가: 사진 용어 (Chiaroscuro, hyper-realistic skin texture) + 추상 디자인 용어(glitch, pixel sorting)를 같은 프롬프트에서 섞으면 모델이 두 미학을 합성한다.

패턴 D — City Map Illustration (포스터)

샘플 케이스 3 (중국어 프롬프트)

성도(成都) 미식 지도 일러스트

구조: 鸟瞰视角 + 手绘简化城市地图 + 12个美食地点 + 每个插画约占地图的 5% 面积 + 边缘装饰(辣椒+藤蔓) + 标题字体(胖圆手绘美术字) + 比例(1:1)

왜 통하는가: GPT-Image-2는 중국어/일본어 프롬프트도 잘 따른다. 면적 비율("5%")까지 명시하면 시각 위계가 강화된다. 한국어 프롬프트도 같은 패턴이 통한다(자체 검증 필요).

패턴 E — Reference-Image Editing (이미지 편집)

샘플 케이스 101

9장의 입력 이미지(image_0~9.png) → 동작 시퀀스

구조: "as seen in image_0.png, image_1.png, and other source frames" 같은 명시적 이미지 인덱스 참조 + "begins with..., then transitions to..., followed by..., finally" 같은 시간 시퀀스 + 의상·배경 일관성 유지 요구

왜 통하는가: GPT-Image-2 편집 모드는 1~16장의 참조 이미지를 받을 수 있고, 각 이미지를 인덱스로 참조할 수 있다. 동작 시퀀스 생성에 유리. 캐릭터의 의상·얼굴 일관성을 거의 유지한다.

함정
"실사 인물" 프롬프트의 윤리적 회색지대

케이스 1번(Convenience Store Neon Portrait)은 실제 인물처럼 보이는 매우 정교한 묘사("Chinese female idol", "ultra-realistic delicate refined Chinese features", "seductive almond-shaped fox eyes")를 사용한다. 딥페이크/스토킹/하라스먼트 도구로 악용될 위험이 있어서 본인 사진을 학습 데이터로 쓰는 것은 OpenAI 정책 위반일 수 있다.

해결
스타일 지정은 OK, 특정 인물 식별은 NO

"young woman in side profile, soft natural skin texture"는 안전. "Donald Trump 닮은 정치인"이나 본인이 아닌 실제 인물의 사진을 참조 이미지로 넣는 것은 위험. 본인 얼굴 사진을 가지고 본인의 다양한 포즈를 생성하는 것은 합법 영역.

8직접 해볼 수 있는 실습 과제

난이도별 5개.

실습 1 / 5 · 난이도 ★☆☆☆☆

README에서 마음에 드는 케이스 1개 베껴 실행

목표: GPT-Image-2 API에 직접 POST 1번 보내기.

단계: ① evolink.ai 가입 → API key 발급 → ② cases/poster.md에서 패턴 D(City Map) 케이스 선택 → ③ 프롬프트를 자기 도시(서울)로 바꿔 ④ curl POST로 호출 → ⑤ 반환된 task_id로 polling. 결과는 24시간 유효.

배움: 비동기 API의 워크플로(POST→poll), Authorization 헤더 사용법.

실습 2 / 5 · 난이도 ★★☆☆☆

Claude Code에 gpt-image-2-gen 스킬 설치하고 자연어로 호출

목표: Agent Skill을 한 번 깔아서 "이미지 만들어줘" 한 마디로 결과 얻기.

단계: ① npx evolink-gpt-image -y --path ~/.claude/skillsexport EVOLINK_API_KEY=... ③ Claude Code에서 "춘천 가는 길 풍경 그려줘 16:9 4K" 입력 ④ 에이전트가 SKILL.md를 자동 로드해 bash 스크립트 호출 ⑤ IMAGE_URL 받기.

배움: SKILL.md가 어떻게 에이전트의 행동을 정의하는지 체감.

실습 3 / 5 · 난이도 ★★★☆☆

나만의 awesome-list 1개 만들기 (다른 모델로)

목표: 같은 큐레이션 패턴을 다른 모델(Flux, Stable Diffusion XL, Imagen 등)에 적용.

단계: ① GitHub repo 생성 → ② README 구조 모방(Intro·News·Contents·Cases by Category) → ③ awesome.re 배지 추가 → ④ 트위터/Reddit에서 케이스 5개 수집 → ⑤ 출처·작가·프롬프트·결과 이미지 셋트로 정리 → ⑥ 1개월 운영해 케이스 30개 모으기. 잘 되면 sindresorhus/awesome 본진에 PR로 등록.

배움: 큐레이션 자산을 만드는 워크플로, awesome-list 컨벤션.

실습 4 / 5 · 난이도 ★★★★☆

sync_multilingual_readmes.py 같은 다국어 동기화 스크립트 작성

목표: 영문 README 1개 → 한국어/일본어 자동 동기화 Python 스크립트.

단계: ① 영문 README를 마크다운 AST로 파싱(markocommonmark-py) → ② 케이스 H3 헤딩과 앵커 추출 → ③ 한국어 README의 같은 헤딩들과 비교 → ④ 누락된 케이스 자동 삽입 + 번역은 OpenAI/Claude API로 → ⑤ pre-commit hook이나 GitHub Action으로 자동 실행.

배움: 마크다운 AST 처리, 다국어 콘텐츠 운영의 실제 어려움, LLM을 자동 번역 백엔드로 쓰는 패턴.

실습 5 / 5 · 난이도 ★★★★★

OpenAI API + Cloudflare R2로 자체 EvoLink 만들기

목표: EvoLink API gateway를 본인이 직접 구축. BYOK 모델.

단계: ① Hono/Fastify로 /v1/images/generations 엔드포인트 작성 → ② 백엔드에서 OpenAI images.generate() 호출 → ③ 결과 PNG를 Cloudflare R2에 24시간 만료로 저장 → ④ 사전 서명된 URL 반환 → ⑤ Stripe로 사용량 과금 → ⑥ EvoLink 스킬의 API_BASE를 본인 도메인으로 변경해서 같은 SKILL.md로 본인 게이트웨이 사용. 비즈니스 모델 자체를 클론.

배움: API Gateway 아키텍처, 비동기 task 큐(BullMQ/Cloudflare Queues), 객체 스토리지 사전 서명 URL, OSS 큐레이션을 마케팅 채널로 쓰는 모델.

9관련 기술 심화 학습 로드맵

주차별 6주 계획.

Week 1 — 프롬프트 엔지니어링 기초

"사진가의 언어"로 모델과 대화하는 법

다양한 케이스 50개 읽기(cases/portrait.md + cases/poster.md) → 공통 단어 빈도 추출(파이썬 collections.Counter) → "lens / lighting / mood / aspect ratio / negative prompt" 5가지 축으로 자기 템플릿 정리. 참고: OpenAI Prompt Engineering Guide의 image generation 섹션, Sora 2 프롬프트 가이드.

Week 2 — Agent Skills 표준

SKILL.md를 직접 1개 만들어 배포

Anthropic anthropics/skills 레포의 skill-creator 스킬 학습 → SKILL.md 5가지 패턴(Domain Organization, Progressive Disclosure, Script Output Protocol, Smart Gathering Rules, Error Handling Table) 모두 적용한 본인 스킬 1개 작성 → npm 패키지로 publish하거나 .claude/skills/에 직접 설치. 참고: Anthropic Agent Skills 공식 문서, agentskills.io.

Week 3 — 비동기 API + Bash 스크립팅

polling 패턴을 4가지 다른 API에 적용

OpenAI Images, AssemblyAI(음성 인식), Replicate(이미지·비디오), Modal(GPU 작업) 4가지 비동기 API를 같은 bash 패턴(TASK_SUBMITTED:STATUS_UPDATE:RESULT=)으로 구현. 참고: jq 매뉴얼, set -euo pipefail 가이드, BashFAQ.

Week 4 — 마크다운 AST 처리 + 다국어 자동화

실습 4번 본격 구현

Python marko 또는 commonmark-py로 README를 AST로 파싱 → tree-sitter-markdown으로도 같이 해보기 → diff 알고리즘으로 새 케이스 감지 → OpenAI API로 한 케이스 번역 후 11개 언어 README에 삽입. 참고: script/sync_multilingual_readmes.py 코드 정독(43KB).

Week 5 — OSS 큐레이션 비즈니스 모델

3가지 사례 비교 분석

① Firecrawl (AGPL 코어 + Mendable 클라우드), ② Plausible Analytics (AGPL 셀프호스팅 + plausible.io 호스팅), ③ EvoLink (CC0-1.0 큐레이션 + EvoLink 크레딧). 공통점: 상위 자산은 OSS, 운영은 클라우드. 차이: EvoLink는 "콘텐츠 → 트래픽 → API" 게이트웨이가 더 라이트한 모델. 자기 사업 아이디어가 어디에 가까운지 매핑.

Week 6 — 자기 awesome-list 30개 케이스로 키우기

실습 3번을 본격화

주제 결정(예: "Awesome Claude Code Skills", "Awesome ASMR Prompts for Suno") → GitHub 레포 생성 → cases/ 폴더 + 카테고리 7개 → 매주 5개씩 케이스 추가 → 1개월 30개 → awesome.re에 PR 제출 → sindresorhus/awesome에 본진 등록. 이게 다음 트렌딩 레포가 되는 가장 빠른 길.

10핵심 키워드 사전

레포·자매 스킬·관련 생태계의 주요 용어.

용어
GPT-Image-2
OpenAI의 2세대 이미지 생성 모델. T2I + I2I 편집 모드 + 글자 렌더링 + 1~16장 참조 이미지 지원. 1K/2K/4K 해상도 티어, low/medium/high 품질 티어, 1~10장 배치 생성. 프롬프트 최대 32,000자.
용어
awesome-list
2014년 sindresorhus/awesome에서 시작된 GitHub 큐레이션 장르. README 1개로 "best-of" 자료를 정리한다. awesome.re 배지가 인증, create-list.md가 표준 규칙.
용어
Agent Skill / SKILL.md
Anthropic이 2025년 Claude Code에 도입한 표준. AI 에이전트의 행동을 자연어로 정의하는 마크다운 문서. YAML frontmatter(name+description)로 트리거 판단, 본문에서 워크플로 명시.
용어
Progressive Disclosure
UX 용어를 빌려온 Skills 표준 개념. SKILL.md는 가볍게 두고, 상세 정보는 references/·scripts/·assets/에 분리. 에이전트가 필요할 때만 추가로 읽어 토큰 소비 최소화.
용어
Tilt-Shift Miniature
실제 풍경 사진을 미니어처 모형처럼 보이게 만드는 사진 기법. 특정 영역만 초점이 맞고 위아래는 블러 처리. GPT-Image-2의 학습 데이터에 이 용어가 들어있어서, 단어 하나로 카메라 시뮬레이션이 작동.
용어
Chiaroscuro
이탈리아어 "밝음/어둠". 강한 명암 대비로 입체감을 극대화하는 회화/사진 기법. 카라바조 그림이 대표. 포트레이트 프롬프트에서 "Chiaroscuro lighting"이라고 쓰면 강한 측면광이 자동 적용.
용어
EvoLink (회사)
evolink.ai. 여러 AI 모델(OpenAI, ByteDance, HeyGen 등)을 OpenAI 호환 API로 통합하는 "Unified AI API Gateway". 사용자는 EvoLink 크레딧으로 모든 모델을 호출. 이 레포의 큐레이션 + 자매 스킬이 EvoLink 트래픽 유입 채널.
용어
Seedance 2.0
ByteDance(틱톡 모회사)가 만든 영상 생성 모델. Sora 경쟁작. EvoLink의 자매 워크플로 레포(GPT-Image-2-Seedance2-Workflow)는 "정적 이미지(GPT-Image-2) → 5~15초 영상(Seedance 2.0)" 파이프라인을 묶는다.
용어
OpenClaw
openclaw/openclaw GitHub 레포의 코딩 에이전트 플랫폼. Claude Code의 오픈소스 대안 중 하나. 스킬 등록 명령이 openclaw skills add <repo>로 GitHub URL 한 줄.
용어
BYOK (Bring Your Own Key)
"본인 API 키를 가져오시오" — 사용자가 OpenAI/Anthropic 키를 직접 입력해 결제도 본인이 처리하는 모델. EvoLink는 BYOK가 아니라 자체 크레딧 모델 — 사용자가 OpenAI에 직접 결제하지 않고, EvoLink가 중간에서 정산.
용어
CC0-1.0 (Creative Commons Zero)
CC0 1.0 Universal — 저작권 포기 선언으로 퍼블릭 도메인에 헌정하는 라이선스. 출처 표시 의무조차 없이 누구나 자유롭게 사용·변형·상업 이용 가능. CC BY 4.0(출처 표시 의무 있음)과 근본적으로 다름. 코드보다는 문서·데이터·콘텐츠 큐레이션에 자주 쓰인다. 이 레포가 채택. 반면 자매 스킬 레포는 코드라서 MIT.
용어
llms-install.md / llms.txt / AGENTS.md
2025~2026년 등장한 "AI 에이전트 친화" 파일 컨벤션. 사람용 README와 별개로 LLM이 빨리 읽을 수 있는 컴팩트 가이드. 토큰을 절약하고 정확도를 높인다. llms.txt는 사이트 루트에, AGENTS.md는 레포 루트에, llms-install.md는 스킬·플러그인 레포에.

11참고 링크

레포·자매 스킬·관련 문서.

본 레포 (메인 큐레이션)

· GitHub: EvoLinkAI/awesome-gpt-image-2-API-and-Prompts (11.5k ★, CC0-1.0)
· 한국어 README (11개 다국어 중 하나)
· cases/ 폴더 (7개 카테고리별 케이스 md)
· script/sync_multilingual_readmes.py (43KB · 12개 README 자동 동기화)

자매 레포 (호출 가능 스킬)

· EvoLinkAI/gpt-image-2-gen-skill (npm evolink-gpt-image, MIT)
· SKILL.md (Agent Skills 표준 본문)
· scripts/gpt-image-gen.sh (~500줄 bash 생성 스크립트)
· llms-install.md (LLM 친화 설치 가이드)
· EvoLinkAI/GPT-Image-2-Seedance2-Workflow (이미지 + 영상 워크플로)

EvoLink 회사 / API

· evolink.ai (메인 사이트)
· GPT-Image-2 API 공식 문서
· evolink.ai/gpt-image-2-prompts (브라우저에서 케이스 미리보기 + 실행)
· 대시보드 (API 키·크레딧 관리)

Agent Skills / 큐레이션 생태계

· Anthropic 공식 skills 레퍼런스 (Progressive Disclosure 표준)
· sindresorhus/awesome (awesome-list 본진)
· awesome.re (배지 인증 + 표준 가이드)
· TrendShift: 본 레포 페이지

시도해볼 만한 것

이 레포에서 가장 빨리 가져갈 수 있는 3가지

  1. cases/portrait.md에서 마음에 드는 케이스 1개 골라, 자기 사진을 참조로 넣고 편집 모드로 돌려보기. evolink.ai 가입 후 API 키 발급에 30초, curl 한 번이면 24시간 유효한 결과 URL 손에 쥔다. "사진가의 어휘"로 모델과 대화하는 감각을 직접 체감.
  2. "awesome-X" 큐레이션 레포 1개 본인 손으로 시작하기. 주제는 본인이 매일 쓰는 도구 중 하나(Claude Code Skills, 음악 생성 프롬프트, Sora 영상 프롬프트 등). 1개월 30개 케이스만 모이면 awesome.re 인증 가능. 다음 트렌딩 레포가 되는 가장 빠른 경로다.
  3. SKILL.md 1개를 본인 작업 흐름에 맞게 작성해 ~/.claude/skills/에 두기. "매일 반복하는 작업"이 뭔지 적어 두면 그게 곧 스킬 후보다 — 회의 정리, 코드 리뷰 체크리스트, 이메일 답변 템플릿. SKILL.md 한 장이 에이전트의 행동을 바꾼다는 걸 직접 체감하면 그 다음부터 모든 작업이 "스킬화 가능한가?"로 보인다.
레포: EvoLinkAI/awesome-gpt-image-2-API-and-Prompts · 11.5k ★ · 1.2k forks · 92 commits · CC0-1.0 · 11개 다국어 README · 330+ 큐레이션 케이스 · 자매 스킬 evolink-gpt-image (npm, MIT) — TrendShift 20위 · 2026-05-24 분석.