Community이미지github.com

EP 인시그니아

기관 휘장/로고/패치 이미지를 URL에서 다운로드하여 배경을 제거하고 512x512로 리사이즈한 후 PNG와 JPG로 저장하여 EP S3 버킷(prod-ep-cmh-insignia)에 업로드합니다.

EP 인시그니아란 무엇인가요?

이 스킬은 Essential Personnel(EP) 시스템에 고객/기관의 휘장, 로고, 패치, 배지를 추가하거나 교체 또는 업데이트할 때 사용됩니다. 사용자가 제공한 이미지 URL을 받아 배경을 제거하고 EP가 요구하는 형식(PNG 512x512 투명 배경, JPG 512x512 흰색 배경)으로 변환한 후 프로덕션 S3 버킷(s3://prod-ep-cmh-insignia, AWS 계정 405995789491, 리전 us-east-2)에 업로드합니다. 배경 제거는 소스의 투명도, 단색 테두리 여부 등을 자동 감지하며, AI 기반 세그멘테이션(rembg isnet-general-use) 또는 플러드 필 방식을 선택적으로 적용할 수 있습니다. 업로드 전에 미리보기를 생성하여 사용자 확인을 받은 후 기존 파일이 있을 경우 백업을 생성하고 덮어씁니다. Claude Code, Cursor, Codex 등의 AI 에이전트 환경에서 실행되며, Python 스크립트와 uv 패키지 매니저를 사용합니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/rtaylor-talmark/ep-skills/tree/HEAD/skills/ep-insignia

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

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

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

문서

EP 인시그니아은(는) 무엇을 하나요?

소스 이미지 URL을 EP가 요구하는 두 개의 인시그니아 파일로 변환하고 s3://prod-ep-cmh-insignia (EP AWS 계정 405995789491, 리전 us-east-2)에 업로드합니다.

버킷 내 기존 파일과 일치하는 규칙:

  • 키: 버킷 루트에 <prefix>.png 및 <prefix>.jpg 형식이며, <prefix>는 EP 고객 접두사(소문자, 예: audubonpd, alexanderncsheriff)입니다.
  • 두 파일 모두 512x512입니다. 인시그니아는 자르고, 크기를 맞추고, 약간의 여백을 두고 중앙에 배치됩니다.
  • PNG는 투명 배경입니다. JPG는 흰색 배경입니다.
  • 콘텐츠 타입은 image/png 및 image/jpeg입니다. 버킷은 BucketOwnerEnforced를 사용하므로 ACL을 설정하지 마세요.

입력

  1. 소스 URL. 사용자가 제공하지 않았다면 요청하세요. 로컬 파일 경로도 사용할 수 있습니다.
  2. 고객 접두사. 제공되지 않았다면 요청하세요. 기관 이름에서 추측하지 마세요. 소문자로 정규화하고 a-z 0-9 - _ 이외의 문자는 거부하세요.

단계

1. 이미지 처리

스크래치패드에 새 작업 디렉터리를 만들거나 mktemp -d를 실행한 후 다음 명령을 실행하세요:

uv run -q <skill_dir>/scripts/process_insignia.py "<url>" "<prefix>" "<workdir>"

uv는 스크립트의 인라인 메타데이터에서 종속성을 설치합니다. 처음 AI 배경 제거를 실행하면 약 180MB 모델을 ~/.u2net에 다운로드합니다.

기본 배경 모드(--bg auto)는 다음과 같이 동작합니다:

  • 소스에 이미 투명 배경이 있으면 그대로 유지됩니다.
  • 테두리가 단색(보통 흰색)인 경우 가장자리에 연결된 배경만 제거됩니다. 배지 내부의 흰색 글자나 세부 사항은 유지됩니다.
  • 그 외의 경우 AI 세그멘테이션(rembg isnet-general-use)을 사용합니다.

재정의: --bg ai, --bg flood, --bg none은 모드를 강제합니다. --margin N은 패딩(px, 기본값 4)을 설정합니다.

다운로드가 403 또는 429 오류로 실패하거나, URL이 SVG 또는 웹 페이지(이미지가 아님)인 경우 사용자에게 알리고 직접 이미지 링크를 요청하세요. 사용자가 직접 파일을 다운로드하여 로컬 경로를 전달할 수도 있습니다.

2. 업로드 전 검토

대비되는 색상 위에 PNG 미리보기를 만들고 JPG 옆에 표시하세요:

convert \( <workdir>/<prefix>.png -background '#c33' -flatten \) <workdir>/<prefix>.jpg +append <workdir>/preview.png

preview.png를 읽기 도구로 열고 다음을 확인하세요:

  • 남은 배경 없음(빨간색 쪽에 헤일로, 박스, 프린지 없음).
  • 인시그니아의 누락된 부분 없음(내부 흰색이 제거된 구멍, 잘린 텍스트).
  • 올바른 기관인지 확인.

결과가 잘못된 경우 다른 --bg 모드로 다시 실행하세요. 사용자에게 미리보기와 함께 스크립트가 보고한 배경 방법 및 작은 소스 이미지에 대한 경고를 표시하세요.

3. AWS 접근 및 기존 파일 확인

aws sts get-caller-identity --query Account --output text   # 405995789491가 예상됨
aws s3 ls s3://prod-ep-cmh-insignia/<prefix>.

<prefix>.png 또는 <prefix>.jpg가 이미 존재하면 사용자에게 알리세요. 이는 프로덕션 버킷이므로 덮어쓰기 전에 명시적 확인을 받으세요. 먼저 기존 파일을 백업하세요:

aws s3 cp s3://prod-ep-cmh-insignia/<prefix>.png <workdir>/backup/<prefix>.png
aws s3 cp s3://prod-ep-cmh-insignia/<prefix>.jpg <workdir>/backup/<prefix>.jpg

기존 파일이 없더라도 미리보기를 보여준 후 사용자에게 업로드 확인을 받으세요.

4. 업로드

aws s3 cp <workdir>/<prefix>.png s3://prod-ep-cmh-insignia/<prefix>.png --content-type image/png
aws s3 cp <workdir>/<prefix>.jpg s3://prod-ep-cmh-insignia/<prefix>.jpg --content-type image/jpeg

aws s3 ls s3://prod-ep-cmh-insignia/<prefix>.로 업로드를 확인한 후 두 S3 키, 크기 및 백업이 저장된 위치를 보고하세요.

관련 스킬