| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | ||
| 6 | 7 | 8 | 9 | 10 | 11 | 12 |
| 13 | 14 | 15 | 16 | 17 | 18 | 19 |
| 20 | 21 | 22 | 23 | 24 | 25 | 26 |
| 27 | 28 | 29 | 30 |
- beebox
- Reflected
- 백준
- wireshark
- SISS
- pwnable
- 와이어샤크
- 업스테이지
- python
- acc
- AI에이전트
- 유석종교수님
- 타임리
- Linux
- bWAPP
- CodeEngn
- datastructure
- S3
- htmlinjection
- Dreamhack
- AI
- Reversing
- System
- backjoon
- Upstage
- Systemhacking
- EC2
- AWS
- 자료구조
- MABC2026
- Today
- Total
Ctrl + Shift + ESC
MABC 2026 2주차 서포터즈: 질문에 타로 카드와 한 줄 답을 건네는 스킬 본문
서론
오늘 점심은 무엇을 먹을지, 새로운 일을 시작해도 될지, 괜히 마음이 복잡한 날에는 어떻게 하면 좋을지 고민할 때가 있습니다.
정답을 얻으려는 것은 아니지만, 익숙한 생각에서 잠시 벗어나 다른 관점으로 질문을 바라보고 싶을 때가 있죠.
한국에서는 사주나 타로, 오늘의 운세처럼 일상에서 가볍게 즐길 수 있는 점 문화가 익숙합니다. 이를 진지하게 믿는 사람도 있고, 소소한 재미로만 받아들이는 사람도 있습니다.
이런 친숙함을 활용하면 타로를 거창한 예언 도구가 아니라, 점심 메뉴를 추천받거나 사소한 고민을 새로운 관점에서 바라보는 재미있는 일상용 스킬로 만들 수 있겠다고 생각했습니다.
이번 주에는 업스테이지가 주관하는 Making AI Beneficial 챌린지(MABC 2026)에 참여하며 타임리 AI에서 tarot-one-line이라는 스킬을 만들었습니다. 질문을 하나 입력하면 타로 카드 한 장을 무작위로 뽑아 아스키 아트로 보여주고, 카드의 의미를 질문에 맞춰 한 문장으로 답해주는 스킬입니다.

반복되는 타로 해석 과정을 한 번에 줄이기
타로 카드 한 장을 가볍게 뽑는 일도 직접 하려면 은근히 여러 단계를 거칩니다.
카드를 섞고, 한 장을 선택하고, 정방향과 역방향을 구분하고, 카드의 일반적인 의미를 지금 질문에 맞게 다시 풀어야 합니다.
결과를 다른 사람에게 보여주려면 카드 이미지나 설명도 별도로 준비해야 합니다.
그래서 스킬을 통해 카드 선택, 정방향과 역방향 결정, 카드 의미 확인, 질문에 맞춘 해석과 결과 정리를 한 번에 처리하도록 했습니다.
물어보고 싶은 구체적인 질문을 넣으면 무작위로 선택된 카드의 아스키 아트와 한 문장짜리 답변이 나옵니다.
예를 들어 "오늘 저녁 뭐 먹을까?"라고 질문하면 카드 한 장을 뽑은 뒤, 카드의 상징을 음식 선택에 연결해 짧게 답합니다.
재미로 볼 수 있는 스킬인 만큼 짧고 간결한 액션 아이템을 전달하는 방향으로 기획했습니다.
MIT 아스키 타로 덱 활용

처음에는 카드 테두리와 간단한 기호를 조합해 아트를 직접 생성했습니다.
실행은 잘됐지만 어떤 카드를 뽑아도 그림이 빈약해서 타로 카드를 뽑는 재미가 충분히 살아나지 않았습니다.
그래서 MIT 라이선스로 공개된 [deanpoulos/ascii-tarot](https://github.com/deanpoulos/ascii-tarot)의 카드 아트를 활용했습니다. 메이저 아르카나와 마이너 아르카나 78장에 정방향과 역방향을 더해 총 156개의 아트를 스킬에 포함했습니다.
원 저작자의 저작권 고지와 MIT 라이선스도 스킬에 함께 보존했습니다.
실행할 때에는 Python 3만 사용하며 인터넷이나 외부 API를 호출하지 않습니다. 카드와 방향은 실행할 때마다 무작위로 선택하고, 선택된 카드에 맞는 키워드를 질문과 연결해 답변을 만듭니다.
Timely AI에서 잘 보이는 아스키 아트 만들기

만드는 과정이 처음부터 매끄럽지는 않았습니다.
원본 카드에는 장식용 유니코드 문자가 포함되어 있었고, 추첨 스크립트는 아트의 줄바꿈을 JSON 문자열 안의 `\n`으로 전달했습니다.
타임리 화면에서는 일부 줄바꿈이 일반 문단처럼 합쳐지고 글자 폭도 달라져 카드 모양이 무너지는 문제가 생겼습니다.
이 문제를 줄이기 위해 다음과 같이 수정했습니다.
1. JSON 문자열 대신 실제 줄바꿈이 들어 있는 여러 줄 텍스트를 출력했습니다.
2. 장식 문자를 일반 ASCII 문자로 바꿨습니다.
3. 카드의 모든 행을 21열 고정 폭으로 맞췄습니다.
4. 카드명과 정방향 또는 역방향을 아트 아래에 명확하게 표시했습니다.
5. 모델이 각 행의 공백과 줄바꿈을 바꾸지 않고 코드 블록에 그대로 옮기도록 출력 규칙을 강화했습니다.
전체 156개 아트를 검사해 모든 행이 ASCII 문자만 사용하며 동일한 폭을 유지하는지도 확인했습니다.
그 덕분에 처음 화면처럼 깔끔하게 타로 카드가 출력되었습니다.
실제 사용 방법
사용 방법은 간단합니다.
1. 타임리에서 `tarot-one-line` 스킬을 선택합니다.
2. `오늘 저녁 뭐 먹을까?`처럼 한 번에 하나의 구체적인 질문을 입력합니다.
3. 카드 아스키 아트와 그 카드의 의미를 반영한 한 문장 답변을 확인합니다.
결과가 마음에 들지 않는다는 이유로 같은 질문의 카드를 다시 뽑지는 않도록 했습니다.
무작위로 나온 첫 카드를 그대로 해석해야 한 번의 선택이 가진 의미가 유지된다고 생각했기 때문입니다.
타로는 미래를 확정하는 도구가 아니라 질문을 다른 각도에서 바라보는 가벼운 성찰 도구로 다뤘습니다.
의료, 법률, 금융처럼 중요한 판단이 필요한 질문에서는 카드가 실제 전문가의 조언이나 현실적인 확인을 대신하지 않도록 안내합니다.
저는 처음 화면의 타로 카드가 안내한 대로 중고 서점에 갔는데, 평소에 관심 있던 분야의 책을 많이 만나 3권이나 구매했습니다.
이렇게 심심풀이로, 중요하지 않은 결정에 약간의 재미를 줄 수 있는 스킬이라고 생각합니다.
만들어보니 좋았던 점과 아쉬웠던 점
가장 좋았던 점은 질문을 입력한 뒤 결과가 나오기까지의 흐름이 아주 짧다는 점입니다. 사용자는 타로 카드의 종류나 해석 방법을 미리 알 필요가 없습니다. 어떤 카드가 나올지 기다리는 재미와 한 문장으로 정리된 답변도 잘 어울렸습니다.
반면 아스키 아트는 인터페이스의 글꼴과 마크다운 처리 방식에 영향을 받습니다. 같은 결과라도 플랫폼에 따라 공백이나 줄바꿈이 다르게 보일 수 있었습니다. 이번에는 ASCII 전용 문자와 고정 폭 출력으로 호환성을 높였지만, 앞으로는 텍스트 모드와 이미지 모드를 선택할 수 있게 만들면 더 안정적으로 사용할 수 있을 것 같습니다.
이번 제작을 통해 작은 스킬도 문제를 정하고, 직접 실행해 보고, 실제 화면에서 불편한 부분을 고치는 과정이 중요하다는 것을 배웠습니다. 단순히 카드를 무작위로 뽑는 기능에서 끝내지 않고, 사용자가 결과를 편하게 읽을 수 있는 형태까지 다듬는 것이 이번 작업의 핵심이었습니다.
Making AI Beneficial 챌린지 2026 참여 안내

업스테이지가 주관하고 과학기술정보통신부와 한국지능정보사회진흥원(NIA)이 후원하는 전국민 AI 챌린지 MABC 2026이 진행 중입니다. 복잡한 코딩 경험이 없어도 일상과 업무의 반복 작업을 해결하는 나만의 AI 에이전트를 만들어볼 수 있습니다.
- 총상금 1,200만 원과 과학기술부총리상, NIA 원장상이 제공됩니다.
- 수상자 전원에게 업스테이지 채용 패스트트랙이 제공됩니다.
- 참가자 전원에게 무료 AI 에이전트 교육과 전용 크레딧이 지원됩니다.
- 만 19세 이상이라면 개인 또는 최대 3인의 팀으로 무료로 참가할 수 있습니다.
- 참가 신청은 2026년 8월 31일 월요일 18시까지입니다.
참가 신청: https://upstage.ai/mabc-2026
오늘 이 스킬을 보고 "나도 이런 스킬을 만들어보고 싶다"는 생각이 들었다면, mabc-2026에 참여해보시는 건 어떨까요?