Vintage appMaker의 Tech Blog

[codex] 포스트잇 정리를 위한 skill 본문

Source code or Tip/생성AI

[codex] 포스트잇 정리를 위한 skill

VintageappMaker 2026. 7. 9. 12:24

1. 사용목적

postit-dashboard는 한국어 내용을 포스트잇 대시보드형 인포그래픽 이미지로 만드는 Codex 스킬이다.

주요 사용 상황:

  • 포스트잇, 포스트잇 대시보드, 포스트잇 인포그래픽 요청
  • 뉴스, 유튜브 요약, 문서 요약을 손글씨 포스트잇 이미지로 정리
  • 주식 VS 채권처럼 좌우 비교가 필요한 교육형 카드 제작
  • 업로드된 포스트잇 이미지의 레이아웃/스타일을 재사용해 내용만 교체

중요 실행 원칙:

  • 이미지를 만들 때 반드시 Codex 내장 스킬 $imagegen과 built-in image_gen 도구를 사용한다.
  • Python/Pillow, HTML/CSS/canvas, SVG, 로컬 렌더링 스크립트로 이미지를 만들면 안 된다.
  • 특정 파일명으로 저장해야 하면 먼저 image_gen으로 생성한 뒤, 생성된 PNG를 요청 경로로 복사한다.

2. 설치용 프롬프트(json 포함)

다른 데스크탑의 Codex에서 아래 프롬프트를 그대로 실행한다.

아래 JSON과 지침을 기준으로 Codex 스킬을 등록해줘.

스킬 이름은 `postit-dashboard`로 한다.
스킬 위치는 기본 개인 스킬 폴더(`$CODEX_HOME/skills`, 없으면 `~/.codex/skills`)에 만든다.

이 스킬은 포스트잇 대시보드형 한국어 인포그래픽 이미지를 생성하는 용도다.
이미지 생성 시 반드시 Codex 내장 스킬 `$imagegen`과 built-in `image_gen` 도구를 사용해야 한다.
프로그래밍으로 이미지를 렌더링하면 안 된다.
금지: Python/Pillow, HTML/CSS/canvas, SVG, charting library, screenshot 기반 렌더링, 로컬 drawing script.

스킬 frontmatter:
- name: postit-dashboard
- description: Create Korean post-it dashboard infographic images from a topic, comparison pair, notes, screenshots, or user-provided JSON template, using the built-in imagegen skill/image_gen tool only. Use when the user asks for "포스트잇", "포스트잇 대시보드", "포스트잇 인포그래픽", sticky-note dashboards, handwritten Korean comparison cards such as "주식 VS 채권", or wants an uploaded post-it image/template converted into a reusable image-generation prompt. Do not create the visual with programming, HTML/CSS/canvas, SVG, or local raster rendering scripts.

아래 JSON을 스킬 본문 지침으로 반영한다.

{
  "template_name": "postit_dashboard_infographic",
  "purpose": "업로드된 포스트잇 이미지를 기반으로, 주제와 내용만 교체 가능한 대시보드형 인포그래픽 템플릿",
  "style": {
    "font": "Poor Story",
    "font_source": "Google Fonts",
    "visual_tone": "손글씨 느낌의 포스트잇 대시보드",
    "background": "줄노트 종이 배경",
    "texture": "종이 질감, 약한 그림자, 실제 포스트잇이 붙어 있는 느낌",
    "color_palette": {
      "main_note": "pink",
      "sub_note": "yellow",
      "tip_note": "light_blue",
      "ink": "black",
      "accent": "red_pen"
    }
  },
  "canvas": {
    "orientation": "vertical",
    "ratio": "4:5",
    "layout": "top_down_dashboard",
    "safe_margin": "5%"
  },
  "content_structure": {
    "title": {
      "text": "{{MAIN_TITLE}}",
      "position": "top_center",
      "size": "large"
    },
    "subtitle": {
      "text": "{{SUBTITLE}}",
      "position": "under_title",
      "size": "medium"
    },
    "left_definition_note": {
      "color": "pink",
      "title": "{{LEFT_ITEM}}이란?",
      "body": "{{LEFT_DEFINITION}}",
      "icon": "{{LEFT_ICON}}"
    },
    "right_definition_note": {
      "color": "yellow",
      "title": "{{RIGHT_ITEM}}이란?",
      "body": "{{RIGHT_DEFINITION}}",
      "icon": "{{RIGHT_ICON}}"
    },
    "center_comparison_table": {
      "title": "한눈에 보는 차이점",
      "columns": ["항목", "{{LEFT_ITEM}}", "{{RIGHT_ITEM}}"],
      "rows": [
        {
          "항목": "{{COMPARE_ROW_1_LABEL}}",
          "{{LEFT_ITEM}}": "{{COMPARE_ROW_1_LEFT}}",
          "{{RIGHT_ITEM}}": "{{COMPARE_ROW_1_RIGHT}}"
        },
        {
          "항목": "{{COMPARE_ROW_2_LABEL}}",
          "{{LEFT_ITEM}}": "{{COMPARE_ROW_2_LEFT}}",
          "{{RIGHT_ITEM}}": "{{COMPARE_ROW_2_RIGHT}}"
        },
        {
          "항목": "{{COMPARE_ROW_3_LABEL}}",
          "{{LEFT_ITEM}}": "{{COMPARE_ROW_3_LEFT}}",
          "{{RIGHT_ITEM}}": "{{COMPARE_ROW_3_RIGHT}}"
        },
        {
          "항목": "{{COMPARE_ROW_4_LABEL}}",
          "{{LEFT_ITEM}}": "{{COMPARE_ROW_4_LEFT}}",
          "{{RIGHT_ITEM}}": "{{COMPARE_ROW_4_RIGHT}}"
        }
      ]
    },
    "advantage_disadvantage_notes": {
      "left_advantages": {
        "color": "pink",
        "title": "{{LEFT_ITEM}}의 장점",
        "items": ["{{LEFT_ADVANTAGE_1}}", "{{LEFT_ADVANTAGE_2}}", "{{LEFT_ADVANTAGE_3}}"]
      },
      "left_disadvantages": {
        "color": "pink",
        "title": "{{LEFT_ITEM}}의 단점",
        "items": ["{{LEFT_DISADVANTAGE_1}}", "{{LEFT_DISADVANTAGE_2}}", "{{LEFT_DISADVANTAGE_3}}"]
      },
      "right_advantages": {
        "color": "yellow",
        "title": "{{RIGHT_ITEM}}의 장점",
        "items": ["{{RIGHT_ADVANTAGE_1}}", "{{RIGHT_ADVANTAGE_2}}", "{{RIGHT_ADVANTAGE_3}}"]
      },
      "right_disadvantages": {
        "color": "yellow",
        "title": "{{RIGHT_ITEM}}의 단점",
        "items": ["{{RIGHT_DISADVANTAGE_1}}", "{{RIGHT_DISADVANTAGE_2}}", "{{RIGHT_DISADVANTAGE_3}}"]
      }
    },
    "selection_note": {
      "color": "light_blue",
      "title": "언제 어떤 것을 선택할까?",
      "items": ["{{SELECTION_GUIDE_1}}", "{{SELECTION_GUIDE_2}}"]
    },
    "tip_note": {
      "color": "light_blue",
      "title": "{{TIP_TITLE}}",
      "body": "{{TIP_BODY}}"
    },
    "bottom_message": {
      "text": "{{BOTTOM_MESSAGE}}"
    }
  },
  "text_rules": {
    "language": "ko",
    "tone": "쉽고 직관적인 설명",
    "max_lines_per_note": 6,
    "avoid": ["너무 작은 글씨", "복잡한 문장", "전문용어 과다 사용", "표 안의 긴 문장"]
  },
  "generation_prompt_template": "업로드된 포스트잇 대시보드 이미지를 템플릿으로 사용한다. 줄노트 배경, 분홍색/노란색/하늘색 포스트잇, 손글씨 느낌의 Poor Story 구글 무료폰트, 종이 질감, 약한 그림자, 간단한 펜 드로잉 아이콘을 유지한다. 내용은 {{MAIN_TITLE}} 주제로 변경한다. 좌측은 {{LEFT_ITEM}}, 우측은 {{RIGHT_ITEM}}로 구성하고 정의, 비교표, 장단점, 선택 기준, 투자 TIP, 하단 핵심 메시지를 배치한다. 모든 글자는 한국어로 선명하고 크게 작성한다."
}

스킬 본문에는 다음 규칙을 반드시 포함한다.

1. 이미지 요청이면 항상 `$imagegen`을 먼저 읽고 built-in `image_gen`을 사용한다.
2. 프로그래밍 이미지 렌더링은 절대 금지한다.
3. 4:5 세로 캔버스, 줄노트 배경, 분홍/노랑/하늘색 포스트잇, 종이 질감, 약한 그림자, 손글씨 느낌, 빨간 펜 강조를 유지한다.
4. 글자는 한국어로 크고 선명하게, 포스트잇당 6줄 이하로 유지한다.
5. 내용이 길면 여러 PNG로 나누고 파일명에 번호를 붙인다.
6. 사용자가 저장 파일명을 지정하면 `image_gen` 생성 결과를 해당 경로로 복사한다.

설치 후 quick_validate.py로 스킬을 검증한다.

3. 사용법

기본 호출 예시:

[$postit-dashboard](C:\Users\user\.codex\skills\postit-dashboard\SKILL.md) 로
주식 VS 채권을 정의, 차이점, 장단점, 선택 기준, TIP으로 정리해서
주식채권.png로 저장해줘.

문서 기반 호출 예시:

세파라치.md의 내용을 인포그래픽으로 정리하여
[$postit-dashboard](C:\Users\user\.codex\skills\postit-dashboard\SKILL.md) 로
세파라치.png로 저장한다.
내용이 길어지면 넘버링해서 png로 만든다.

유튜브/뉴스 요약 기반 호출 예시:

이 유튜브 내용을 섹션별로 정리한 뒤,
[$postit-dashboard](C:\Users\user\.codex\skills\postit-dashboard\SKILL.md) 로
핵심 내용을 포스트잇 인포그래픽 PNG로 저장해줘.

실행 시 확인할 점:

  • 이미지 생성 전에 $imagegen 지침을 따른다.
  • built-in image_gen 결과물이 $CODEX_HOME/generated_images/... 아래에 저장되면, 요청한 파일명으로 작업 폴더에 복사한다.
  • 결과 PNG를 열어 글자 겹침, 잘림, 너무 작은 글자, 잘못된 핵심 문구가 없는지 확인한다.
  • 이미지 안의 긴 URL은 두 줄로 나누거나 QR/원본 확인 메모 형태로 짧게 처리한다.
Comments