Manim Skill 완벽 가이드
3Blue1Brown 스타일 수학 애니메이션을 코드 한 줄로 만드는 시대
관련글
https://www.facebook.com/reel/1420565746148392
서론: 무언가를 만들고 싶다면, 이제는 적절한 Skill을 찾으면 된다
“딸깍.” 이제 복잡한 수학 애니메이션을 만드는 것이 그 정도로 간단해졌습니다. 805만 구독자를 보유한 전설적인 수학 유튜브 채널 3Blue1Brown의 환상적인 설명 동영상을 한 번이라도 본 적이 있다면, 누구나 한 번쯤 “저런 영상은 도대체 어떻게 만드는 걸까?”라는 궁금증을 가져봤을 것입니다. 그런데 이제 그 답이 놀랍도록 간단해졌습니다.
Python 코드를 알 필요도 없고, 복잡한 애니메이션 라이브러리를 공부할 필요도 없습니다. skills.sh에 가서 ‘manim’을 검색하고, Skill 설치 명령어를 복사해서 터미널에 붙여넣기만 하면 됩니다. 그리고 Claude Code에게 만들고 싶은 영상에 대해 설명하면, 마치 마법처럼 3Blue1Brown 스타일의 전문적인 수학 애니메이션이 자동으로 생성됩니다.
이것이 바로 Manim Skill이 가져온 혁명입니다. 전문 개발자 Adithya S K가 만들어 공개한 이 Skill은 수학 애니메이션 제작의 진입 장벽을 완전히 허물었습니다. 이 매뉴얼에서는 Manim Skill의 모든 것을 자세히 알아보고, 여러분도 전문가 수준의 수학 애니메이션을 쉽게 만들 수 있도록 안내하겠습니다.
1장: 3Blue1Brown과 Manim의 탄생 배경
3Blue1Brown: 수학 교육의 패러다임을 바꾼 채널
3Blue1Brown은 스탠퍼드 대학교에서 수학을 전공한 그랜트 샌더슨(Grant Sanderson)이 2015년 3월 4일에 시작한 유튜브 채널입니다. 채널 이름은 제작자 본인의 오른쪽 눈에 있는 홍채 얼룩증(sectoral heterochromia)에서 유래했습니다. 그의 오른쪽 눈은 실제로 3/4이 푸른색이고 1/4이 갈색인데, 이것이 채널의 아이덴티티가 되었습니다.
3Blue1Brown이 특별한 이유는 단순히 수학을 설명하는 것이 아니라, 수학의 본질을 시각화하여 직관적으로 이해할 수 있게 만든다는 점입니다. 그랜트 샌더슨은 “명제의 참과 거짓을 해결하는 데 매달려 있는 것보다 실질적인 문제들을 해결하는 데 초점을 두어야 한다”고 강조합니다. 이러한 철학은 그의 모든 영상에 녹아 있으며, 복잡한 수학적 개념을 일반인도 이해할 수 있도록 아름답게 시각화합니다.
채널은 선형대수학의 본질, 미적분학의 본질, 신경망, 미분방정식 등의 시리즈로 구성되어 있으며, 각 영상은 단순히 수박 겉핥기식 설명이 아닌 깊이 있는 수학적 내용을 담고 있습니다. 2026년 현재 805만 명 이상의 구독자를 보유하고 있으며, 수학 교육 컨텐츠의 새로운 기준을 제시했다는 평가를 받고 있습니다.
Manim: 수학 애니메이션의 혁명
3Blue1Brown의 모든 애니메이션은 그랜트 샌더슨이 직접 개발한 Python 라이브러리인 Manim(Mathematical Animation Engine)으로 제작됩니다. Manim은 2015년 채널 시작과 함께 개인 프로젝트로 시작되었습니다. 샌더슨은 자신의 코딩 스킬을 연습하기 위해 Python으로 그래픽 라이브러리를 만들기로 결정했고, 이것이 결국 Manim이라는 오픈소스 프로젝트로 발전했습니다.
흥미로운 점은 Manim에는 두 가지 버전이 존재한다는 것입니다. 첫 번째는 그랜트 샌더슨이 직접 사용하는 원본 버전(ManimGL 또는 3b1b/manim)으로, 이는 그의 개인적인 영상 제작을 위한 실험적인 공간으로 기능합니다. 두 번째는 2020년에 개발자 커뮤니티가 포크하여 만든 커뮤니티 에디션(Manim Community Edition)으로, 더 안정적이고 잘 문서화되어 있으며 테스트도 철저하게 이루어집니다.
Manim의 핵심 철학은 수학을 코드로 표현하는 것입니다. 원과 사각형 사이의 복잡한 보간(interpolation) 같은 수학적으로 집약적인 애니메이션을 단 몇 줄의 코드로 구현할 수 있습니다. 예를 들어, 사각형이 원으로 부드럽게 변형되는 애니메이션은 다음과 같은 간단한 코드로 만들어집니다:
1
2
3
4
5
6
7
8
9
class SquareToCircle(Scene):
def construct(self):
circle = Circle()
circle.set_fill(PINK, opacity=0.5)
square = Square()
square.rotate(PI / 4)
self.play(Create(square))
self.play(Transform(square, circle))
self.play(FadeOut(square))
이렇게 코드와 수학이 직접적으로 연결되기 때문에, 수학적 개념을 프로그래밍적으로 설명하는 데 최적화되어 있습니다. Manim은 단순히 애니메이션 도구가 아니라, 수학적 사고를 코드로 옮기는 언어라고 할 수 있습니다.
Manim이 다른 도구들과 다른 점
그랜트 샌더슨 본인도 FAQ에서 밝혔듯이, Manim이 모든 상황에 최적의 도구는 아닙니다. Desmos, GeoGebra, Mathematica 같은 다른 수학 시각화 도구들도 각각의 장점이 있습니다. Manim의 주요 차별점은 잠재적으로 긴 영상 씬을 구성하는 데 특화되어 있고, matplotlib 같은 도구보다 훨씬 부드럽고 아름다운 결과물을 만들어낸다는 것입니다.
하지만 샌더슨은 다음과 같은 경고도 합니다: “단순한 이동이나 페이드 애니메이션만 필요하다면, Keynote나 PowerPoint 같은 간단한 도구가 예상보다 훨씬 더 효과적일 수 있습니다.” Manim이 진정으로 빛을 발하는 것은 코드가 설명하려는 수학을 직접 반영하거나, 반복(iteration), 추상화(abstraction), 조건문(conditionals) 등을 통해 수동으로는 너무 오래 걸릴 일련의 일러스트레이션을 가능하게 할 때입니다.
또한 Manim은 영상의 개별 클립을 생성하는 도구일 뿐이며, 나레이션 동기화나 최종 편집은 전통적인 영상 편집 소프트웨어를 사용해야 한다는 점도 명심해야 합니다. Manim으로 “어떻게 나레이션을 Manim에 동기화하나요?”라고 묻는 것은 도구의 목적을 잘못 이해한 것입니다.
2장: Agent Skills의 개념과 혁명
Agent Skills란 무엇인가?
Agent Skills는 AI 코딩 에이전트의 능력을 확장하는 모듈식 기능입니다. 각 Skill은 지시사항, 메타데이터, 그리고 선택적 리소스(스크립트, 템플릿 등)를 패키징하여 Claude가 관련성이 있을 때 자동으로 사용할 수 있게 합니다. Anthropic가 공식적으로 발표한 이 개념은 범용 에이전트를 특정 분야의 전문가로 변모시키는 핵심 메커니즘입니다.
Skill을 이해하는 가장 좋은 비유는 “새로운 팀원을 위한 온보딩 가이드”입니다. 새로운 직원이 입사하면 회사의 업무 방식, 도구 사용법, 모범 사례 등을 담은 온보딩 자료를 제공하는 것처럼, Skill은 AI 에이전트에게 특정 작업을 수행하는 방법을 가르치는 체계화된 지식입니다. 한 번 만들어 놓으면, 에이전트는 관련 상황에서 자동으로 이 지식을 불러와 활용합니다.
Skill의 구조: SKILL.md 파일
모든 Skill의 핵심은 SKILL.md라는 단일 파일입니다. 이 파일은 두 부분으로 구성됩니다:
첫 번째: YAML 프론트매터 파일 상단에 ---로 둘러싸인 YAML 메타데이터가 있습니다. 여기에는 필수 정보가 포함됩니다:
1
2
3
4
---
name: skill-name
description: 이 스킬이 무엇을 하는지, 언제 사용해야 하는지에 대한 명확한 설명
---
name 필드는 슬래시 커맨드(예: /skill-name)가 되며, description은 Claude가 이 Skill을 언제 자동으로 로드할지 결정하는 데 사용됩니다. Description은 단순히 기능 설명이 아니라 사용 시나리오를 포함해야 합니다. 예를 들어, “Deploy my app”, “Check logs” 같은 트리거 문구를 포함하면 Claude가 사용자의 의도를 더 잘 파악할 수 있습니다.
두 번째: 마크다운 콘텐츠 프론트매터 아래에는 Claude가 따라야 할 지시사항이 마크다운 형식으로 작성됩니다. 여기에는 다음이 포함될 수 있습니다:
- 단계별 작업 지침
- 코드 예제
- 사용 가이드라인
- 일반적인 문제와 해결책
- 참조할 외부 파일 경로
Progressive Disclosure: Skill의 핵심 원리
Skill 시스템의 가장 중요한 개념은 “Progressive Disclosure(점진적 공개)”입니다. 이것은 Agent가 작업을 수행하는 데 필요한 정보만 단계적으로 로드한다는 의미입니다.
단계별 로딩 프로세스:
시작 시: Claude는 모든 설치된 Skill의 name과 description만 로드합니다 (각 Skill당 약 50-100 토큰). 이렇게 하면 수백 개의 Skill이 있어도 컨텍스트 윈도우를 압박하지 않습니다.
관련성 판단: 사용자의 요청을 받으면, Claude는 description을 기반으로 어떤 Skill이 관련 있는지 빠르게 판단합니다.
필요 시 로드: 관련 Skill이 확인되면, 그때서야 전체
SKILL.md파일을 컨텍스트에 로드합니다.추가 리소스: Skill 실행 중 필요하면 스크립트나 참조 파일을 추가로 로드합니다.
이러한 점진적 접근 방식 덕분에, 5000개 이상의 토큰을 가진 방대한 문서도 처음에는 100 토큰 미만으로 표현될 수 있습니다. 실제로 한 개발자는 5가지 다이어그램 타입과 광범위한 문법 문서를 담은 Skill을 만들었는데, 전체 크기는 5000 토큰이지만 다이어그램이 요청되기 전까지는 50-100 토큰만 사용된다고 보고했습니다.
Skill과 MCP(Model Context Protocol)의 차이
많은 사람들이 Skill과 MCP를 혼동하는데, 이 둘은 근본적으로 다른 개념입니다:
MCP (Model Context Protocol)
- 외부 도구와 데이터 소스에 접근하기 위한 프로토콜
- 서버 인프라가 필요하며, API 통합이 포함됨
- 예: 데이터베이스 쿼리, 외부 API 호출, 실시간 데이터 접근
- 복잡한 설정이 필요하고 기술적 배경이 있어야 사용 가능
Agent Skills
- 순수한 지시사항과 베스트 프랙티스의 패키징
- 서버나 API가 필요 없음
- 파일 시스템 기반으로 간단하게 설치
- 누구나 마크다운 파일 하나로 만들 수 있음
MCP가 “무엇을 할 수 있는가(capability)”를 확장한다면, Skill은 “어떻게 잘 할 것인가(expertise)”를 제공합니다. 예를 들어, MCP는 Jira API에 접근하는 방법을 제공하지만, Skill은 Jira를 사용하여 프로젝트 관리를 효과적으로 하는 워크플로우를 가르칩니다.
Anthropic는 향후 Skill과 MCP가 상호 보완적으로 작동하도록 발전시킬 계획이라고 밝혔습니다. Skill이 복잡한 워크플로우를 가르치고, MCP를 통해 외부 도구와 소프트웨어를 사용하는 방식으로 통합될 것입니다.
Skill의 설치 위치와 우선순위
Skill은 여러 레벨에서 설치될 수 있으며, 각 레벨마다 우선순위가 다릅니다:
1. Enterprise Level (최우선)
- 조직 전체에 배포되는 Skill
- API를 통해 업로드되며 조직 구성원 모두가 사용 가능
2. Personal Level
- 개인 사용자 설정:
~/.claude/skills/ - 사용자의 모든 프로젝트에서 사용 가능
3. Project Level
- 프로젝트별 설정:
.claude/skills/ - 해당 프로젝트에서만 사용 가능
4. Plugin Skills
- Plugin marketplace를 통해 설치
plugin-name:skill-name네임스페이스 사용
같은 이름의 Skill이 여러 레벨에 존재하면, 더 높은 우선순위 레벨이 우선합니다(enterprise > personal > project). 또한 monorepo 구조에서는 nested .claude/skills/ 디렉토리도 자동으로 발견됩니다. 예를 들어 packages/frontend/.claude/skills/에 있는 Skill은 frontend 패키지에서 작업할 때 자동으로 사용 가능합니다.
3장: skills.sh 생태계와 설치 도구
skills.sh: Agent Skills의 마켓플레이스
skills.sh는 Vercel에서 런칭한 오픈 AI Agent Skills 생태계입니다. 이것은 단순한 저장소가 아니라, 수천 개의 커뮤니티 제작 Skill을 탐색하고, 검색하고, 설치할 수 있는 통합 플랫폼입니다. 2026년 1월 현재 70,000개 이상의 Skill이 등록되어 있으며, 매일 새로운 Skill이 추가되고 있습니다.
skills.sh의 핵심 가치는 다음과 같습니다:
1. 스마트 검색 기능 수만 개의 GitHub 저장소에서 적절한 Skill을 찾는 것은 압도적일 수 있습니다. skills.sh는 카테고리 필터링, 품질 지표, AI 기반 검색을 제공하여 정확히 필요한 Skill을 빠르게 찾을 수 있게 합니다.
2. 개방형 표준 준수 모든 Skill은 개방형 SKILL.md 표준을 따르므로, Claude Code, OpenAI Codex CLI, Cursor, GitHub Copilot 등 여러 AI 코딩 어시스턴트에서 호환됩니다. 한 번 만든 Skill을 여러 도구에서 사용할 수 있다는 뜻입니다.
3. 커뮤니티 기여 누구나 자신의 Skill을 GitHub에 공개하고 skills.sh에 등록할 수 있습니다. 이는 오픈소스 소프트웨어 생태계와 유사하게 작동하며, 커뮤니티의 집단 지성이 모든 사용자에게 혜택을 줍니다.
npx add-skill: 범용 설치 도구
npx add-skill은 Vercel Labs에서 개발한 공식 Skill 설치 CLI 도구입니다. 이 도구는 다음과 같은 특징을 가집니다:
설치 없이 실행 npx를 사용하므로 별도의 글로벌 설치 없이 즉시 사용할 수 있습니다. Node.js만 설치되어 있으면 됩니다.
다양한 저장소 지원
1
2
3
4
5
6
7
8
9
10
11
12
13
14
# GitHub shorthand
npx add-skill vercel-labs/agent-skills
# 전체 GitHub URL
npx add-skill https://github.com/vercel-labs/agent-skills
# 특정 Skill 직접 지정
npx add-skill https://github.com/vercel-labs/agent-skills/tree/main/skills/frontend-design
# GitLab URL도 지원
npx add-skill https://gitlab.com/org/repo
# Git URL
npx add-skill git@github.com:vercel-labs/agent-skills.git
에이전트별 타겟팅
1
2
3
4
5
6
7
8
9
10
11
# 특정 에이전트에 설치
npx add-skill vercel-labs/agent-skills -a claude-code -a codex
# 여러 Skill 동시 설치
npx add-skill vercel-labs/agent-skills --skill frontend-design --skill skill-creator
# 전역 설치
npx add-skill vercel-labs/agent-skills -g
# 비대화형 설치 (CI/CD에 유용)
npx add-skill vercel-labs/agent-skills --skill frontend-design -g -a claude-code -y
지원하는 AI 에이전트
- Claude Code (
.claude/skills/또는~/.claude/skills/) - OpenAI Codex CLI (
~/.codex/skills/) - Cursor
- GitHub Copilot
- Amp, Antigravity 등 23개 이상의 에이전트
Skill 검색 및 탐색
Skill을 찾는 방법은 여러 가지가 있습니다:
1. skills.sh 웹사이트 검색 가장 직관적인 방법으로, 웹 브라우저에서 skills.sh에 접속하여 검색창에 키워드를 입력하면 됩니다. AI 기반 검색이 지원되어 자연어 질의도 가능합니다.
2. CLI에서 목록 확인
1
2
# 저장소의 Skill 목록 보기
npx add-skill vercel-labs/agent-skills --list
3. Claude Code 내에서 확인 Claude Code를 실행한 후 /skills 커맨드를 입력하면 현재 프로젝트에서 사용 가능한 모든 Skill 목록이 표시됩니다.
4. SkillsMP.com skills.sh와는 별개로 운영되는 독립적인 커뮤니티 프로젝트인 SkillsMP는 71,000개 이상의 Skill을 색인화하여 제공합니다. 여기서도 카테고리별 브라우징, 품질 지표, 상세 검색이 가능합니다.
4장: Claude Code와 Skill의 통합
Claude Code란?
Claude Code는 Anthropic에서 개발한 터미널 기반 AI 코딩 어시스턴트입니다. 개발자들이 터미널에서 직접 Claude와 대화하며 코딩 작업을 위임할 수 있는 도구로, 복잡한 도메인에서 로컬 코드 실행과 파일 시스템 접근을 통해 복잡한 작업을 수행할 수 있습니다.
Claude Code의 핵심 강점은 단순히 코드를 제안하는 것을 넘어서, 실제로 파일을 생성하고, 스크립트를 실행하고, 결과를 확인하며, 필요시 수정하는 완전한 개발 워크플로우를 자동화한다는 점입니다. Skill은 이러한 워크플로우에 전문성을 더하는 레이어로 작동합니다.
Claude Code에서 Skill 사용하기
Skill 설치 Claude Code에서 Skill을 사용하려면 먼저 설치해야 합니다. 가장 일반적인 방법은 터미널에서 npx add-skill 명령을 사용하는 것입니다:
1
2
# Manim Skill 설치 예시
npx add-skill adithya-s-k/manim_skill -a claude-code
설치 후에는 Claude Code를 재시작해야 새로운 Skill을 인식합니다.
자동 Skill 로딩 Skill이 설치되면 Claude는 사용자의 요청을 분석하여 관련 Skill을 자동으로 로드합니다. 예를 들어 “수학 애니메이션을 만들어줘”라고 요청하면, Manim Skill이 자동으로 활성화됩니다.
수동 Skill 호출 슬래시 커맨드를 사용하여 특정 Skill을 명시적으로 호출할 수도 있습니다:
1
2
# Skill 이름이 manim이라면
/manim
Skill 목록 확인 현재 프로젝트에서 사용 가능한 Skill을 확인하려면:
1
/skills
Skill의 권한 및 보안
Skill은 강력한 기능을 제공하지만, 그만큼 보안 고려사항도 중요합니다. Anthropic는 다음과 같은 가이드라인을 제시합니다:
신뢰할 수 있는 소스만 사용 Skill은 Claude에게 새로운 지시사항과 코드를 제공하므로, 악의적인 Skill은 의도하지 않은 방식으로 도구를 호출하거나 코드를 실행할 수 있습니다. Anthropic는 다음만 사용할 것을 강력히 권장합니다:
- 직접 만든 Skill
- Anthropic 공식 Skill
- 신뢰할 수 있는 조직의 Skill
철저한 감사 알려지지 않은 소스의 Skill을 사용해야 한다면, 사용 전에 다음을 철저히 검토해야 합니다:
- SKILL.md의 모든 지시사항
- 포함된 스크립트 코드
- 이미지나 기타 리소스
- 네트워크 요청이나 파일 접근 패턴
allowed-tools 설정 SKILL.md의 프론트매터에서 allowed-tools 필드를 사용하여 Skill이 사용할 수 있는 도구를 제한할 수 있습니다:
1
2
3
4
5
---
name: my-skill
description: 안전한 Skill
allowed-tools: Bash(ls:*, cat:*), FileCreate
---
이렇게 하면 Skill은 ls와 cat 명령만 실행할 수 있고, 파일 생성만 가능합니다.
disable-model-invocation 특히 위험한 작업의 경우, 자동 호출을 비활성화할 수 있습니다:
1
2
3
4
5
---
name: dangerous-operation
description: 위험한 작업
disable-model-invocation: true
---
이 경우 사용자가 명시적으로 /dangerous-operation을 입력해야만 Skill이 활성화됩니다.
Plugin Marketplace 시스템
Claude Code는 플러그인 마켓플레이스 시스템을 지원합니다. 저장소를 마켓플레이스로 등록하면, 사용자들이 더 쉽게 Skill을 발견하고 설치할 수 있습니다.
Marketplace 등록 저장소에 marketplace.json 파일을 추가하면 플러그인으로 등록됩니다. 이 파일에는 Skill의 이름, 설명, 버전, 설치 지침 등이 포함됩니다.
Marketplace에서 설치
1
2
3
4
5
# Anthropic 공식 Skill marketplace 등록
/plugin install document-skills@anthropic-agent-skills
# 설치 후 사용
"PDF Skill을 사용해서 이 양식을 작성해줘"
5장: Manim Skill 상세 가이드
Manim Skill의 탄생
Manim Skill은 Adithya S K(Twitter: @adithya_s_k)가 개발하여 공개한 Agent Skill로, 3Blue1Brown 스타일의 수학 애니메이션을 자동으로 생성할 수 있게 합니다. 이 Skill의 혁명적인 점은 사용자가 Python이나 Manim의 복잡한 API를 전혀 알 필요 없이, 자연어로 원하는 애니메이션을 설명하기만 하면 된다는 것입니다.
GitHub 저장소(https://github.com/adithya-s-k/manim_skill)에는 다음과 같은 감사 메시지가 담겨 있습니다:
“Grant Sanderson에게 - 원조 Manim 애니메이션 엔진을 만들고 3Blue1Brown YouTube 채널을 운영하는 크리에이터. Grant의 선구적인 작업은 전 세계 수백만 학습자들에게 영감을 주었으며, 프로그래밍적 애니메이션을 통해 복잡한 개념을 설명하는 완전히 새로운 패러다임을 만들어냈습니다. 오픈소스 교육과 시각적 스토리텔링에 대한 그의 헌신은 수학이 가르쳐지고 이해되는 방식을 근본적으로 바꾸었습니다.”
“Manim Community Edition 팀에게 - 프레임워크를 접근 가능하고, 잘 문서화되고, 활발하게 개발되도록 유지하는 헌신적인 팀과 기여자들. 포괄적인 문서 작성, 커뮤니티 지원 관리, 코드베이스 지속적 개선을 위한 그들의 끊임없는 노력은 수학 애니메이션을 교육자, 학생, 크리에이터 모두에게 접근 가능하게 만들었습니다.”
Manim Skill의 구조
Manim Skill은 실제로 두 개의 독립적인 Skill로 구성됩니다:
1. manimce-best-practices Manim Community Edition을 위한 베스트 프랙티스 Skill입니다. 안정성과 문서화를 중시하며, 초보자에게 권장됩니다.
디렉토리 구조:
1
2
3
4
5
6
7
skills/manimce-best-practices/
├── SKILL.md # Skill 메타데이터
└── rules/ # 개별 베스트 프랙티스 가이드
├── animations.md
├── scenes.md
├── mobjects.md
└── ...
2. manimgl-best-practices ManimGL(Grant Sanderson이 사용하는 원본 버전)을 위한 Skill입니다. 더 실험적이지만 3Blue1Brown 영상과 동일한 스타일을 원한다면 이것을 사용할 수 있습니다.
설치 방법
방법 1: NPX를 이용한 설치 (권장)
1
2
3
4
5
6
7
8
# Manim Community Edition Skill 설치
npx skills add adithya-s-k/manim_skill/skills/manimce-best-practices
# ManimGL Skill 설치
npx skills add adithya-s-k/manim_skill/skills/manimgl-best-practices
# 둘 다 설치
npx skills add adithya-s-k/manim_skill/skills/manimce-best-practices adithya-s-k/manim_skill/skills/manimgl-best-practices
방법 2: 수동 설치
- GitHub 저장소 클론:
1
git clone https://github.com/adithya-s-k/manim_skill.git
- Skill 디렉토리 복사: ```bash
Personal level에 설치
cp -r manim_skill/skills/manimce-best-practices ~/.claude/skills/
Project level에 설치 (현재 프로젝트에서만 사용)
mkdir -p .claude/skills cp -r manim_skill/skills/manimce-best-practices .claude/skills/
1
2
3
4
5
6
7
3. Claude Code 재시작
**설치 확인**
Claude Code를 실행하고 다음 명령으로 설치를 확인합니다:
```bash
/skills
목록에 manimce-best-practices 또는 manimgl-best-practices가 표시되면 성공적으로 설치된 것입니다.
Manim Skill 사용 예제
예제 1: 기본 기하학 애니메이션
Claude Code에 다음과 같이 요청합니다:
1
2
"Manim을 사용해서 파란색 원이 빨간색 사각형으로 변하는 애니메이션을 만들어줘.
사각형은 45도 회전된 상태로 시작하고, 변환은 부드럽게 이루어져야 해."
Claude는 자동으로 Manim Skill을 로드하고, 다음과 같은 코드를 생성합니다:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
from manim import *
class ShapeTransform(Scene):
def construct(self):
# 원 생성
circle = Circle()
circle.set_color(BLUE)
circle.set_fill(BLUE, opacity=0.5)
# 사각형 생성
square = Square()
square.set_color(RED)
square.set_fill(RED, opacity=0.5)
square.rotate(PI / 4)
# 애니메이션 실행
self.play(Create(circle))
self.wait(0.5)
self.play(Transform(circle, square))
self.wait(1)
그리고 자동으로 렌더링 명령을 실행합니다:
1
manim -pql shape_transform.py ShapeTransform
예제 2: 수학 방정식 애니메이션
1
2
3
"피타고라스 정리를 증명하는 애니메이션을 만들어줘.
직각삼각형과 각 변에 대한 정사각형을 그리고,
a² + b² = c² 공식이 화면에 나타나야 해."
Claude는 Manim Skill의 지식을 활용하여 다음을 생성합니다:
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
31
32
33
34
35
36
37
38
39
40
41
42
from manim import *
class PythagoreanTheorem(Scene):
def construct(self):
# 직각삼각형 생성
triangle = Polygon(
[-2, -1, 0], [2, -1, 0], [-2, 1.5, 0],
color=BLUE
)
# 각 변의 길이를 나타내는 라벨
a_label = MathTex("a").next_to(triangle, LEFT)
b_label = MathTex("b").next_to(triangle, DOWN)
c_label = MathTex("c").move_to([0.5, 0.5, 0])
# 각 변에 대한 정사각형
square_a = Square(side_length=3.5).move_to([-3.75, 0, 0])
square_a.set_color(GREEN)
square_a.set_fill(GREEN, opacity=0.3)
square_b = Square(side_length=4).move_to([0, -3, 0])
square_b.set_color(YELLOW)
square_b.set_fill(YELLOW, opacity=0.3)
square_c = Square(side_length=4.5).rotate(33.7*DEGREES).move_to([1.5, 1.5, 0])
square_c.set_color(RED)
square_c.set_fill(RED, opacity=0.3)
# 피타고라스 정리 공식
formula = MathTex("a^2 + b^2 = c^2")
formula.to_edge(UP)
# 애니메이션 실행
self.play(Create(triangle))
self.play(Write(a_label), Write(b_label), Write(c_label))
self.wait(0.5)
self.play(Create(square_a), Create(square_b), Create(square_c))
self.wait(0.5)
self.play(Write(formula))
self.wait(2)
예제 3: 함수 그래프 애니메이션
1
2
"y = sin(x)와 y = cos(x)의 그래프를 그리고,
두 함수가 교차하는 지점을 강조 표시해줘."
Manim Skill은 이러한 요청도 쉽게 처리합니다:
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
31
32
33
34
35
36
from manim import *
class TrigFunctions(Scene):
def construct(self):
# 좌표축 생성
axes = Axes(
x_range=[-PI, 2*PI, PI/2],
y_range=[-1.5, 1.5, 0.5],
x_length=10,
y_length=6,
axis_config={"include_numbers": True}
)
# 함수 그래프
sin_graph = axes.plot(lambda x: np.sin(x), color=BLUE)
cos_graph = axes.plot(lambda x: np.cos(x), color=RED)
# 라벨
sin_label = MathTex("y = \\sin(x)").set_color(BLUE).to_edge(UR)
cos_label = MathTex("y = \\cos(x)").set_color(RED).next_to(sin_label, DOWN)
# 교차점 찾기 (x = π/4, 5π/4)
intersections = [
Dot(axes.c2p(PI/4, np.sin(PI/4)), color=YELLOW),
Dot(axes.c2p(5*PI/4, np.sin(5*PI/4)), color=YELLOW)
]
# 애니메이션
self.play(Create(axes))
self.play(Create(sin_graph), Write(sin_label))
self.play(Create(cos_graph), Write(cos_label))
self.wait(0.5)
for dot in intersections:
self.play(FadeIn(dot, scale=2))
self.wait(2)
Manim Skill이 포함하는 베스트 프랙티스
Manim Skill의 rules/ 디렉토리에는 다음과 같은 카테고리별 가이드가 포함되어 있습니다:
1. animations.md
- 애니메이션 타이밍과 속도 조절
- 여러 애니메이션을 조합하는 방법
- 커스텀 애니메이션 만들기
- 애니메이션 체이닝 베스트 프랙티스
2. scenes.md
- Scene 클래스 구조
- construct() 메서드 작성법
- 카메라 제어
- 배경 설정
3. mobjects.md
- Mobject 생성과 조작
- 위치 지정 및 정렬
- 색상 및 투명도 설정
- 그룹화 및 계층 구조
4. 수학 관련 객체
- MathTex를 사용한 LaTeX 수식 렌더링
- 그래프와 좌표축
- 기하학적 도형
- 행렬과 벡터 시각화
5. 성능 최적화
- 렌더링 품질 설정
- 프레임 레이트 조정
- 메모리 사용 최적화
- 대량의 객체 다루기
Claude는 이러한 베스트 프랙티스를 자동으로 참조하여, 사용자가 요청한 애니메이션을 가장 효율적이고 아름다운 방식으로 생성합니다.
6장: 실전 워크플로우
개발 환경 설정
필수 요구사항
Python 3.7 이상 Manim은 Python으로 작동하므로 최신 버전의 Python이 필요합니다.
- FFmpeg 비디오 렌더링을 위해 필요합니다.
- macOS:
brew install ffmpeg - Ubuntu/Debian:
sudo apt-get install ffmpeg - Windows: FFmpeg 공식 사이트에서 다운로드
- macOS:
- LaTeX (선택사항) 수학 수식 렌더링을 위해 권장됩니다.
- macOS:
brew install --cask mactex-no-gui - Ubuntu/Debian:
sudo apt-get install texlive-full - Windows: MiKTeX 설치 권장
- macOS:
Node.js
npx명령을 사용하기 위해 필요합니다.- Claude Code Anthropic 공식 웹사이트나 GitHub에서 다운로드
Manim Community Edition 설치
1
pip install manim
설치 확인:
1
manim --version
전형적인 워크플로우
1단계: 프로젝트 초기화 새로운 디렉토리를 만들고 Claude Code를 시작합니다:
1
2
3
mkdir my_math_animation
cd my_math_animation
claude-code
2단계: Manim Skill 설치 (아직 안 했다면)
1
npx skills add adithya-s-k/manim_skill/skills/manimce-best-practices
Claude Code를 재시작하여 Skill을 로드합니다.
3단계: 자연어로 요청 Claude Code 인터페이스에서 원하는 애니메이션을 자연어로 설명합니다:
1
2
3
4
"선형 변환을 시각화하는 애니메이션을 만들어줘.
2D 평면에 그리드를 그리고, 행렬 [[2, 1], [1, 2]]를 적용했을 때
그리드가 어떻게 변형되는지 보여줘.
변환 전후를 비교할 수 있도록 애니메이션을 만들어줘."
4단계: 코드 생성 및 검토 Claude는 자동으로 Python 코드를 생성하고, 파일로 저장합니다. 생성된 코드를 검토하고, 필요하면 수정을 요청할 수 있습니다:
1
2
"좋아 보여. 그런데 변환 속도를 좀 더 느리게 해줘.
그리고 변환 행렬을 화면에 표시해줘."
Claude는 코드를 수정하고 업데이트합니다.
5단계: 렌더링 Claude가 자동으로 렌더링 명령을 실행하거나, 직접 실행할 수 있습니다:
1
2
3
4
5
6
7
8
# 저화질 미리보기 (빠름)
manim -pql linear_transform.py LinearTransform
# 고화질 렌더링 (느림, 최종 결과물)
manim -pqh linear_transform.py LinearTransform
# GIF로 렌더링
manim -pql --format=gif linear_transform.py LinearTransform
6단계: 반복 및 개선 렌더링된 결과를 확인하고, 필요하면 Claude에게 수정을 요청합니다:
1
2
3
"원의 색깔을 더 밝게 해줘"
"텍스트 크기를 키워줘"
"애니메이션 중간에 1초 멈춤을 넣어줘"
고급 사용 팁
1. 배치 렌더링 여러 씬을 한 번에 렌더링하려면:
1
manim -pqh my_scenes.py Scene1 Scene2 Scene3
2. 커스텀 설정 manim.cfg 파일을 만들어 기본 설정을 지정할 수 있습니다:
1
2
3
4
5
6
7
8
9
10
11
[CLI]
quality = high_quality
preview = True
format = mp4
save_last_frame = False
[output]
video_dir = {media_dir}/videos/{module_name}/{quality}
images_dir = {media_dir}/images/{module_name}
text_dir = {media_dir}/texts
log_dir = {media_dir}/logs
3. 인터랙티브 모드 Grant Sanderson이 사용하는 방식으로, 코드를 실시간으로 수정하며 결과를 확인할 수 있습니다:
1
manimgl my_scene.py MyScene
이 모드에서는 코드 체크포인트를 설정하고, 특정 지점부터 애니메이션을 재생할 수 있습니다.
4. Claude Code와의 고급 통합 Claude Code의 다른 기능과 결합하여 더 복잡한 워크플로우를 만들 수 있습니다:
1
2
"이 CSV 파일의 데이터를 읽어서 막대 그래프 애니메이션을 만들어줘.
각 막대가 순서대로 나타나도록 해줘."
Claude는 파일을 읽고, 데이터를 파싱하고, Manim 코드를 생성하는 모든 과정을 자동화합니다.
문제 해결
일반적인 문제와 해결책
문제: LaTeX 렌더링 오류
1
LaTeX Error: File not found
해결책:
1
2
3
4
5
# LaTeX 패키지 설치
sudo apt-get install texlive-latex-extra texlive-fonts-extra
# macOS
brew install --cask mactex-no-gui
문제: FFmpeg 오류
1
FFmpeg not found
해결책: FFmpeg를 시스템 PATH에 추가하거나, Manim 설정에서 FFmpeg 경로를 명시적으로 지정합니다.
문제: 메모리 부족 복잡한 씬을 렌더링할 때 메모리가 부족할 수 있습니다.
해결책:
- 저화질로 먼저 렌더링하여 테스트
- 씬을 여러 개로 분할
- 불필요한 객체 제거
self.remove()사용하여 더 이상 필요 없는 객체 삭제
문제: Skill이 자동으로 로드되지 않음 Claude가 Manim Skill을 인식하지 못합니다.
해결책:
/skills명령으로 설치 확인- Claude Code 재시작
- description에 명확한 트리거 워드 포함 여부 확인
- 수동으로 슬래시 커맨드 사용:
/manimce-best-practices
7장: Skill 생성 및 커스터마이징
나만의 Skill 만들기
Manim Skill을 사용하다 보면, 자신만의 특정 스타일이나 자주 사용하는 패턴이 생길 수 있습니다. 이런 경우 커스텀 Skill을 만들 수 있습니다.
기본 Skill 템플릿
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
---
name: my-manim-style
description: 내가 자주 사용하는 Manim 애니메이션 스타일과 색상 팔레트를 적용합니다. 교육용 수학 영상을 만들 때 사용하세요.
---
# My Manim Style
이 Skill은 내 개인적인 Manim 애니메이션 스타일을 정의합니다.
## 색상 팔레트
항상 다음 색상을 사용하세요:
- 주요 객체: `#3498db` (밝은 파란색)
- 보조 객체: `#e74c3c` (빨간색)
- 배경: `#2c3e50` (짙은 회색)
- 텍스트: `#ecf0f1` (밝은 회색)
## 애니메이션 타이밍
- 각 씬은 최소 0.5초 대기로 시작
- 객체 생성 애니메이션은 1초
- 변환 애니메이션은 2초
- 페이드 아웃은 0.5초
## 텍스트 스타일
MathTex를 사용할 때:
- 폰트 크기: 48
- 위치: 화면 상단 모서리
- 색상: 항상 밝은 회색
## 예제
```python
from manim import *
class MyStyledScene(Scene):
def construct(self):
self.camera.background_color = "#2c3e50"
circle = Circle(color="#3498db")
circle.set_fill("#3498db", opacity=0.5)
title = MathTex("My Title").set_color("#ecf0f1")
title.scale(1.5).to_edge(UP)
self.wait(0.5)
self.play(Create(circle), run_time=1)
self.play(Write(title), run_time=1)
self.wait(2)
self.play(FadeOut(circle), FadeOut(title), run_time=0.5)
```
이 파일을 ~/.claude/skills/my-manim-style/SKILL.md로 저장하면, Claude는 이 스타일을 인식하고 애니메이션을 만들 때 자동으로 적용합니다.
skill-creator Skill 사용하기
Anthropic에서 제공하는 skill-creator Skill을 사용하면 새로운 Skill을 더 쉽게 만들 수 있습니다:
1
npx skills add vercel-labs/agent-skills --skill skill-creator
설치 후 Claude Code에서:
1
2
3
"/skill-creator를 사용해서 내 Manim 스타일을 위한 Skill을 만들어줘.
나는 항상 파스텔 색상을 사용하고, 부드러운 애니메이션을 선호해.
특히 교육용 컨텐츠에 적합한 스타일이어야 해."
skill-creator는 대화형으로 필요한 정보를 물어보고, 완전한 SKILL.md 파일을 생성해줍니다.
조직 전체에 Skill 배포하기
회사나 팀 차원에서 Manim Skill을 커스터마이징하여 배포하려면:
1. GitHub 저장소 생성
1
2
3
mkdir company-manim-skills
cd company-manim-skills
git init
2. Skill 디렉토리 구조 생성
1
2
3
4
5
6
7
8
9
10
11
company-manim-skills/
├── skills/
│ └── company-manim-style/
│ ├── SKILL.md
│ ├── scripts/
│ │ └── render_template.sh
│ ├── references/
│ │ └── brand_guidelines.md
│ └── templates/
│ └── intro_scene.py
└── README.md
3. 팀원들에게 배포
1
2
# 팀원들은 다음 명령으로 설치
npx skills add company/company-manim-skills
4. 지속적 업데이트 Skill을 업데이트하면, 팀원들은 다음 명령으로 최신 버전을 받을 수 있습니다:
1
npx skills update company/company-manim-skills
8장: 성능 최적화 및 베스트 프랙티스
렌더링 성능 최적화
품질 프리셋 이해하기 Manim은 다양한 품질 프리셋을 제공합니다:
-ql(low quality): 480p, 15fps - 빠른 미리보기용-qm(medium quality): 720p, 30fps - 초안 확인용-qh(high quality): 1080p, 60fps - 최종 결과물-qk(4k quality): 2160p, 60fps - 최고 품질
개발 중에는 항상 -ql을 사용하여 빠르게 반복하고, 최종 렌더링만 -qh나 -qk를 사용하세요.
부분 렌더링 전체 씬을 렌더링하는 대신 특정 부분만 렌더링하려면:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
class LongScene(Scene):
def construct(self):
# 섹션 1
self.section_1()
# 섹션 2
self.section_2()
# 섹션 3
self.section_3()
def section_1(self):
# ... 코드 ...
pass
특정 섹션만 테스트하려면 코드에서 다른 섹션을 주석 처리하거나, 별도의 Scene 클래스로 분리하세요.
객체 재사용 같은 객체를 여러 번 생성하는 대신 재사용하세요:
1
2
3
4
5
6
7
8
9
10
11
# 비효율적
for i in range(10):
circle = Circle()
self.play(Create(circle))
self.play(FadeOut(circle))
# 효율적
circle = Circle()
for i in range(10):
self.play(Create(circle))
self.play(FadeOut(circle))
코드 구조화 베스트 프랙티스
1. Scene 클래스 분리 하나의 파일에 모든 것을 넣지 말고, 논리적으로 분리하세요:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# scenes/intro.py
class IntroScene(Scene):
def construct(self):
# 인트로 애니메이션
pass
# scenes/main_content.py
class MainContent(Scene):
def construct(self):
# 메인 컨텐츠
pass
# scenes/conclusion.py
class ConclusionScene(Scene):
def construct(self):
# 결론
pass
2. 재사용 가능한 함수 작성 자주 사용하는 패턴은 함수로 추출하세요:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
def create_title(text, color=BLUE):
"""제목 생성 헬퍼 함수"""
title = Text(text)
title.scale(1.5)
title.set_color(color)
title.to_edge(UP)
return title
def create_formula_box(formula):
"""수식을 박스로 감싸는 헬퍼 함수"""
tex = MathTex(formula)
box = SurroundingRectangle(tex, color=YELLOW)
return VGroup(tex, box)
class MyScene(Scene):
def construct(self):
title = create_title("피타고라스 정리")
formula = create_formula_box("a^2 + b^2 = c^2")
self.play(Write(title))
self.play(Create(formula))
3. 설정 파일 활용 프로젝트별 설정을 manim.cfg에 저장하세요:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
[CLI]
quality = medium_quality
preview = True
format = mp4
save_sections = True
[output]
video_dir = ./output/videos
images_dir = ./output/images
[custom]
background_color = WHITE
text_color = BLACK
primary_color = BLUE
secondary_color = RED
Claude Code와의 효과적인 협업
명확한 요청하기 모호한 요청:
1
"수학 애니메이션 만들어줘"
명확한 요청:
1
2
3
4
"이차방정식 ax² + bx + c = 0의 근의 공식을 유도하는 과정을
단계별로 보여주는 애니메이션을 만들어줘.
각 단계마다 1초씩 멈추고, 변환되는 부분은 노란색으로 강조해줘.
배경은 흰색, 텍스트는 검은색으로 해줘."
반복적 개선 한 번에 완벽한 결과를 기대하지 말고, 단계적으로 개선하세요:
1차: “기본 애니메이션 만들어줘” 2차: “색상을 더 밝게 해줘” 3차: “애니메이션 속도를 느리게 해줘” 4차: “제목을 추가해줘” 5차: “배경 음악 타이밍 참고용으로 중간에 2초 멈춤 넣어줘”
컨텍스트 제공 이전 대화를 참조할 때는 명확하게 언급하세요:
1
"아까 만든 원 애니메이션에서, 원의 크기를 두 배로 키워줘"
9장: 고급 활용 사례
교육 컨텐츠 제작
예제: 미분 개념 설명
1
2
3
4
5
6
7
"함수 f(x) = x²의 미분을 기하학적으로 설명하는 애니메이션을 만들어줘.
1. 먼저 함수 그래프를 그려
2. 점 P(2, 4)를 표시하고
3. 점 P를 지나는 할선을 그려 (다른 점은 Q로 표시)
4. Q가 P에 가까워지면서 할선이 접선으로 변하는 과정을 보여줘
5. 최종적으로 접선의 기울기가 f'(2) = 4임을 강조해줘"
이런 요청은 Manim Skill 없이는 복잡한 코드가 필요하지만, Skill과 함께라면 자연어 요청만으로 가능합니다.
데이터 시각화
예제: 실시간 데이터 애니메이션
1
2
3
4
"이 JSON 파일의 월별 매출 데이터를 읽어서
막대 그래프 애니메이션을 만들어줘.
각 막대가 차례로 아래에서 위로 성장하는 애니메이션이고,
최종 값에 도달하면 숫자 레이블이 나타나야 해."
Claude는 파일을 읽고, 데이터를 파싱하고, 동적으로 Manim 코드를 생성합니다.
과학 시뮬레이션
예제: 물리 시뮬레이션
1
2
3
4
"단진자의 운동을 시뮬레이션하는 애니메이션을 만들어줘.
진자의 길이는 2m, 초기 각도는 30도.
에너지 보존을 보여주기 위해 운동 에너지와 위치 에너지 막대 그래프도
함께 표시해줘. 시뮬레이션은 10초 동안 실행되어야 해."
알고리즘 시각화
예제: 정렬 알고리즘
1
2
3
4
"버블 정렬 알고리즘을 시각화해줘.
배열 [64, 34, 25, 12, 22, 11, 90]을 정렬하는 과정에서
각 비교 단계를 보여주고, 교환이 일어날 때 해당 요소들을 강조해줘.
정렬이 완료되면 최종 배열을 초록색으로 표시해줘."
10장: 커뮤니티와 리소스
공식 리소스
Manim Community
- 웹사이트: https://www.manim.community/
- GitHub: https://github.com/ManimCommunity/manim
- Discord: https://www.manim.community/discord/
- 문서: https://docs.manim.community/
3Blue1Brown
- YouTube: https://www.youtube.com/@3blue1brown
- 웹사이트: https://www.3blue1brown.com/
- GitHub (ManimGL): https://github.com/3b1b/manim
- GitHub (영상 코드): https://github.com/3b1b/videos
Manim Skill
- GitHub: https://github.com/adithya-s-k/manim_skill
- 제작자 Twitter: https://x.com/adithya_s_k
Agent Skills 생태계
- skills.sh: https://skills.sh/
- Vercel Agent Skills: https://github.com/vercel-labs/agent-skills
- Anthropic Skills: https://github.com/anthropics/skills
- SkillsMP: https://skillsmp.com/
학습 리소스
튜토리얼 및 가이드
- Manim Community 공식 튜토리얼
- 3Blue1Brown의 “How I animate 3Blue1Brown” 영상
- CodeCut의 “Manim: Create Mathematical Animations Like 3Blue1Brown Using Python”
예제 코드 모음
- 3Blue1Brown 영상 코드: https://github.com/3b1b/videos
- Manim Examples: https://github.com/ManimCommunity/manim_examples
- ManimML: https://github.com/helblazer811/ManimML/
데이터셋
- Hugging Face의 3blue1brown-manim 데이터셋 (2400+ 예제)
한국어 리소스
3Blue1Brown 한국어 채널 2020년 5월 18일 개설된 공식 한국어 채널에서 번역된 영상을 볼 수 있습니다.
한국 커뮤니티
- 나무위키 3Blue1Brown 항목
- 국내 수학 교육 커뮤니티
기여하기
Manim Skill에 기여 Adithya S K의 GitHub 저장소에 이슈를 제기하거나 풀 리퀘스트를 보낼 수 있습니다. 특히 다음과 같은 기여가 환영받습니다:
- 새로운 베스트 프랙티스 추가
- 버그 수정
- 문서 개선
- 예제 추가
자신의 Skill 공유 skills.sh에 자신이 만든 Skill을 등록하여 전 세계 개발자들과 공유할 수 있습니다.
11장: 미래 전망과 발전 방향
Agent Skills의 미래
Anthropic는 Agent Skills가 다음과 같은 방향으로 발전할 것이라고 밝혔습니다:
1. Skill 생태계 확장 앞으로 몇 주 내에 Skill의 전체 생명주기(생성, 편집, 발견, 공유, 사용)를 지원하는 기능이 추가될 예정입니다.
2. MCP와의 통합 Skill이 MCP 서버와 함께 작동하여 외부 도구와 소프트웨어를 포함하는 복잡한 워크플로우를 가르치는 방식으로 발전할 것입니다.
3. 자기 개선 Skill 장기적으로는 에이전트 스스로 Skill을 생성하고, 편집하고, 평가할 수 있게 되어, 자신의 행동 패턴을 재사용 가능한 기능으로 체계화할 수 있을 것입니다.
Manim과 AI의 융합
AI 기반 애니메이션 생성 현재 Manim Skill은 코드 생성을 자동화하지만, 미래에는 다음이 가능할 것입니다:
- 음성 설명만으로 애니메이션 생성
- 스케치를 Manim 코드로 변환
- 자동 나레이션 동기화
- 스타일 전이(Style Transfer) 적용
교육 혁명 Manim Skill과 같은 도구는 교육 컨텐츠 제작의 민주화를 가져올 것입니다:
- 전문 프로그래머가 아니어도 고품질 교육 영상 제작 가능
- 개인화된 학습 자료 자동 생성
- 실시간 개념 시각화
한국 시장의 기회
한글 최적화 현재 Manim은 LaTeX를 통해 한글을 지원하지만, 한글 타이포그래피에 최적화된 Skill은 아직 없습니다. 이는 한국 개발자들에게 기회입니다:
- 한글 수식 렌더링 최적화
- 한국 교육과정에 맞춘 템플릿
- K-에듀테크 통합
기업 교육 시장 기업 내부 교육 자료 제작에 Manim Skill을 활용할 수 있습니다:
- 기술 문서 시각화
- 온보딩 자료 자동화
- 데이터 분석 결과 프레젠테이션
결론: 새로운 시대의 시작
Manim Skill의 등장은 단순히 애니메이션 제작 도구가 추가된 것이 아닙니다. 이것은 전문 지식의 민주화, 창작의 자동화, 그리고 AI와 인간 전문성의 융합이라는 더 큰 변화의 일부입니다.
과거에는 3Blue1Brown 같은 영상을 만들기 위해 Python을 배우고, Manim API를 숙지하고, 수많은 시행착오를 거쳐야 했습니다. 이제는 skills.sh에 가서 Skill을 설치하고, Claude Code에게 자연어로 요청하기만 하면 됩니다. “딸깍.” 그것이 전부입니다.
하지만 이것은 끝이 아니라 시작입니다. Manim Skill은 Agent Skills라는 더 큰 생태계의 한 예시일 뿐입니다. 앞으로 수천, 수만 개의 Skill이 만들어질 것이고, 각각은 특정 도메인의 전문 지식을 AI 에이전트에게 전달하는 역할을 할 것입니다.
우리가 할 일은 만들고 싶은 것을 상상하고, 그것을 실현할 적절한 Skill을 찾는 것입니다. 그 다음은 “딸깍.”
부록: 빠른 참조 가이드
필수 명령어
Skill 설치
1
2
3
4
5
# Manim Community Edition Skill
npx skills add adithya-s-k/manim_skill/skills/manimce-best-practices
# ManimGL Skill
npx skills add adithya-s-k/manim_skill/skills/manimgl-best-practices
Manim 렌더링
1
2
3
4
5
6
7
8
# 저화질 미리보기
manim -pql script.py SceneName
# 고화질 렌더링
manim -pqh script.py SceneName
# GIF 생성
manim -pql --format=gif script.py SceneName
Claude Code 명령
1
2
3
4
5
# 설치된 Skill 목록
/skills
# 특정 Skill 실행
/manimce-best-practices
유용한 링크 모음
공식 리소스
- Manim Community: https://www.manim.community/
- 3Blue1Brown: https://www.3blue1brown.com/
- Manim Skill GitHub: https://github.com/adithya-s-k/manim_skill
- skills.sh: https://skills.sh/
- Anthropic Claude: https://www.anthropic.com/
학습 자료
- Manim 튜토리얼: https://docs.manim.community/en/stable/tutorials/quickstart.html
- 3B1B 영상 코드: https://github.com/3b1b/videos
- Agent Skills 문서: https://docs.claude.com/docs/agents-and-tools/agent-skills/overview
커뮤니티
- Manim Discord: https://www.manim.community/discord/
- SkillsMP: https://skillsmp.com/
문제 해결 체크리스트
렌더링 문제:
- FFmpeg가 설치되어 있는가?
- LaTeX가 설치되어 있는가? (수식 사용 시)
- Python 버전이 3.7 이상인가?
- Manim이 최신 버전인가?
Skill 문제:
- Skill이 올바른 경로에 설치되었는가?
- Claude Code를 재시작했는가?
/skills명령으로 Skill이 목록에 있는가?- description에 적절한 트리거 워드가 있는가?
성능 문제:
- 저화질(
-ql)로 먼저 테스트했는가? - 불필요한 객체를 제거했는가?
- 씬이 너무 복잡하지 않은가?
- 메모리가 충분한가?
감사의 말
이 매뉴얼은 다음 분들의 작업 덕분에 가능했습니다:
Grant Sanderson - Manim과 3Blue1Brown을 만들어 수학 교육의 새로운 지평을 연 분
Manim Community - Manim Community Edition을 유지보수하고 발전시키는 모든 기여자들
Adithya S K - Manim Skill을 만들어 이 모든 것을 쉽게 만든 개발자
Anthropic - Claude와 Agent Skills 생태계를 개발한 팀
Vercel - skills.sh와 add-skill 도구를 제공한 팀
그리고 오픈소스 커뮤니티의 모든 기여자들에게 감사드립니다.
작성 일자: 2026-01-27