/web-to-markdown
웹페이지 URL을 입력받아 마크다운 형태로 변환하여 저장합니다. 웹 문서를 로컬 마크다운 파일로 아카이빙하거나 정리할 때 유용합니다.
$ npx -y skills add bear2u/my-skills --skill web-to-markdown --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/web-to-markdown
Context preview
The summary Claude sees to decide when to auto-load this skill.
웹페이지 URL을 입력받아 마크다운 형태로 변환하여 저장합니다. 웹 문서를 로컬 마크다운 파일로 아카이빙하거나 정리할 때 유용합니다.
SKILL.md
web-to-markdown.SKILL.mdname: web-to-markdown
description: 웹페이지 URL을 입력받아 마크다운 형태로 변환하여 저장합니다. 웹 문서를 로컬 마크다운 파일로 아카이빙하거나 정리할 때 유용합니다.
Web to Markdown Converter
웹페이지의 URL을 입력받아 해당 페이지의 내용을 마크다운 형식으로 변환하여 저장하는 스킬입니다.
When to Use
다음과 같은 요청이 있을 때 이 스킬을 사용하세요:
- "웹페이지를 마크다운으로 변환해줘"
- "이 URL을 마크다운으로 저장해줘"
- "웹사이트 내용을 마크다운 파일로 만들어줘"
- "웹페이지 아카이빙해줘"
- "블로그 글을 마크다운으로 저장해줘"
- **"AI가 읽기 좋게 변환해줘"** (AI 최적화 모드)
- **"컨텍스트로 사용하기 좋게 변환해줘"** (AI 최적화 모드)
- **"원본이랑 AI 최적화 버전 둘 다 만들어줘"** (듀얼 모드) ⭐ NEW
Core Workflow
Step 1: URL 입력받기
사용자에게 변환하고자 하는 웹페이지의 URL을 입력받습니다.
**Example:**
Claude: 변환하실 웹페이지의 URL을 입력해주세요.
User: https://example.com/article
**Important:**
- URL은 `http://` 또는 `https://`로 시작해야 합니다
- HTTP URL은 자동으로 HTTPS로 업그레이드됩니다
- 유효하지 않은 URL은 에러를 반환합니다
Step 2: 변환 모드 선택
사용자의 요청을 분석하여 적절한 변환 모드를 선택합니다.
**변환 모드:** 1. **일반 모드** (기본): 웹페이지를 읽기 좋은 마크다운으로 변환 2. **AI 최적화 모드**: AI 에이전트가 컨텍스트로 활용하기 최적화된 형태로 변환 3. **듀얼 모드** ⭐ NEW: 원본 + AI 최적화 버전 2개 파일 생성
**자동 감지 키워드:**
- "AI가 읽기 좋게", "컨텍스트로 사용", "AI 학습용" → AI 최적화 모드
- "원본이랑", "둘 다", "2개", "both", "원본도 저장" → 듀얼 모드
- 기타 → 일반 모드
**Example 1 (AI 최적화):**
User: https://example.com/article AI가 읽기 좋게 변환해줘
Claude: AI 최적화 모드로 변환하겠습니다. 구조화된 포맷과 메타데이터를 추가합니다.
**Example 2 (듀얼 모드):**
User: https://example.com/article 원본이랑 AI 최적화 버전 둘 다 만들어줘
Claude: 듀얼 모드로 변환하겠습니다.
- 원본 마크다운 (article.md)
- AI 최적화 버전 (article.context.md)
2개 파일을 생성합니다.
Step 3: 저장 옵션 확인
사용자에게 저장 위치와 파일명을 확인합니다.
**Example:**
Claude: 마크다운 파일을 어디에 저장할까요?
옵션:
1. 현재 디렉토리 (./)
2. 특정 경로 지정
3. 파일로 저장하지 않고 내용만 보기
파일명은? (기본값: webpage.md)
User: 현재 디렉토리에 article.md로 저장해줘
Step 4: 웹페이지 가져오기 및 변환
WebFetch 도구를 사용하여 웹페이지를 가져오고 마크다운으로 변환합니다.
일반 모드 프롬프트
url = "https://example.com/article"
prompt = "웹페이지의 전체 내용을 마크다운 형식으로 변환해주세요. 제목, 본문, 링크, 이미지 등 모든 요소를 포함하되, 불필요한 네비게이션이나 광고는 제외해주세요."
AI 최적화 모드 프롬프트 (CRITICAL)
url = "https://example.com/article"
prompt = """이 웹페이지를 AI 에이전트가 컨텍스트로 활용하기 최적화된 형태로 변환해주세요:
**필수 구조:**
1. **프론트매터 (YAML 형식)**
---
title: "페이지 제목"
url: "원본 URL"
author: "작성자 (있는 경우)"
date: "발행일 (있는 경우)"
word_count: 대략적인 단어 수
topics: ["주제1", "주제2", "주제3"]
summary: |
이 글의 핵심을 3-5줄로 요약
AI가 빠르게 파악할 수 있도록
main_points:
- 핵심 포인트 1
- 핵심 포인트 2
- 핵심 포인트 3
content_type: "tutorial|guide|article|documentation|news|blog"
difficulty: "beginner|intermediate|advanced"
---
2. **본문 구조**
# [원본 제목]
## 핵심 요약
[3-5줄로 이 글이 무엇을 다루는지 명확하게]
## 주요 내용
[명확한 계층 구조로 섹션 구분, H2/H3 사용]
### 섹션 1
[내용]
### 섹션 2
[내용]
## 핵심 인사이트
- 인사이트 1
- 인사이트 2
- 인사이트 3
## 실용적 적용
[이 내용을 어떻게 활용할 수 있는지]
## 관련 리소스
[링크가 있다면 설명과 함께]
## 결론
[마무리 요약]
**변환 규칙:**
- 광고, 네비게이션, 푸터, 사이드바 완전 제거
- 코드 블록은 언어 명시 (```python, ```javascript 등)
- 링크는 [설명](URL) 형식으로 명확하게
- 이미지는  형식으로
- 불필요한 수식어 제거, 간결하게
- 리스트는 명확한 bullet points로
- 중요한 개념은 **굵게** 강조
**최종 목표:**
AI가 이 문서를 읽고 핵심을 3초 안에 파악하고,
사용자의 질문에 정확하게 답변할 수 있도록 최적화
"""
**Important:**
- WebFetch는 HTML을 자동으로 마크다운으로 변환합니다
- 15분 캐시가 적용되어 같은 URL을 반복 요청해도 빠릅니다
- 리다이렉트가 발생하면 새로운 URL로 다시 요청합니다
- **AI 최적화 모드는 토큰을 30-50% 절감하고 구조를 명확하게 합니다**
Step 5: 마크다운 저장
변환된 마크다운을 파일로 저장합니다.
# Write 도구를 사용하여 파일 저장
Write {
file_path: "/Users/symverse/workspaces-skill-test/my-skills-hub/article.md"
content: "[변환된 마크다운 내용]"
}**AI 최적화 모드 파일명 권장:**
- 일반: `article.md`
- AI 최적화: `article-ai-optimized.md` 또는 `article.context.md`
Step 6: 결과 확인
저장된 파일의 경로와 간단한 통계를 사용자에게 보여줍니다.
✅ 웹페이지를 마크다운으로 변환했습니다!
📄 파일: article.md
📍 경로: /Users/symverse/workspaces-skill-test/my-skills-hub/article.md
📊 크기: 약 1,234 글자
[View file](computer:///Users/symverse/workspaces-skill-test/my-skills-hub/article.md)
듀얼 모드 워크플로우 ⭐ NEW
듀얼 모드는 원본 마크다운과 AI 최적화 버전을 모두 생성합니다. 사람이 읽을 자료와 AI가 처리할 자료를 동시에 확보할 수 있습니다.
듀얼 모드 Step 1: URL 및 파일명 확인
User: https://react.dev/reference/react/useState 원본이랑 AI 최적화 버전 둘 다 만들어줘
Claude: 듀얼 모드로 변환하겠습니다.
기본 파일명은? (기본: webpage)
듀얼 모드 Step 2: 원본 마크다운 생성
일반 모드 프롬프트로 WebFetch를 사용하여 원본 마크다운을 생성합니다.
url = "https://react.dev/reference/react/useState"
prompt = "웹페이지의 전체 내용을 마크다운 형식으로 변환해주세요. 제목, 본문, 링크, 이미지 등 모든 요소를 포함하되, 불필요한 네비게이션이나 광고는 제외해주세요."
**원본 파일 저장:**
Write {
file_path: "/path/to/useState.md"
content: "[원본 마크다운 내용]"
}듀얼 모드 Step 3: AI 최적화 버전 생성
**CRITICAL**: 같은 URL에 대해 AI 최적화 프롬프트로 다시 WebFetch를 호출합니다.
url = "https://react.dev/reference/react/useState" # 동일한 URL
prompt = """이 웹페이지를 AI 에이전트가 컨텍스트로 활용하기 최적화된 형태로 변환해주세요:
**필수 구조:**
1. **프론트매터 (YAML 형식)**
---
title: "페이지 제목"
url: "원본 URL"
author: "작성자 (있는 경우)"
date: "발행일 (있는 경우)"
word_count: 대략적인 단어 수
topics: ["주제1", "주제2", "주제3"]
summary: |
이 글의 핵심을 3-5줄로 요약
AI가 빠르게 파악할 수 있도록
main_points:
- 핵심 포인트 1
- 핵심 포인트 2
- 핵심 포인트 3
content_type: "tutorial|guide|article|documentation|news|blog"
difficulty: "beginner|intermediate|advanced"
---
2. **본문 구조**
# [원본 제목]
## 핵심 요약
[3-5줄로 이 글이 무엇을 다루는지 명확하게]
## 주요 내용
[명확한 계층 구조로 섹션 구분, H2/H3 사용]
### 섹션 1
[내용]
### 섹션 2
[내용]
## 핵심 인사이트
- 인사이트 1
- 인사이트 2
- 인사이트 3
## 실용적 적용
[이 내용을 어떻게 활용할 수 있는지]
## 관련 리소스
[링크가 있다면 설명과 함께]
## 결론
[마무리 요약]
**변환 규칙:**
- 광고, 네비게이션, 푸터, 사이드바 완전 제거
- 코드 블록은 언어 명시 (```python, ```javascript 등)
- 링크는 [설명](URL) 형식으로 명확하게
- 이미지는  형식으로
- 불필요한 수식어 제거, 간결하게
- 리스트는 명확한 bullet points로
- 중요한 개념은 **굵게** 강조
**최종 목표:**
AI가 이 문서를 읽고 핵심을 3초 안에 파악하고,
사용자의 질문에 정확하게 답변할 수 있도록 최적화
"""
**AI 최적화 파일 저장:**
Write {
file_path: "/path/to/useState.context.md"
content: "[AI 최적화 마크다운 내용]"
}듀얼 모드 Step 4: 결과 요약
2개 파일 생성 결과를 사용자에게 보여줍니다.
✅ 듀얼 모드 변환 완료! 2개 파일이 생성되었습니다.
📄 원본 마크다운:
- 파일: useState.md
- 경로: /path/to/useState.md
- 크기: 약 3,500 글자
- 용도: 사람이 읽기 좋은 원본 보존
[View file](computer:///path/to/useState.md)
📄 AI 최적화 버전:
- 파일: useState.context.md
- 경로: /path/to/useState.context.md
- 크기: 약 2,100 글자 (40% 절감)
- 용도: AI 컨텍스트로 활용
[View file](computer:///path/to/useState.context.md)
💡 팁:
- 원본(.md)은 사람이 읽을 때 사용
- AI 최적화(.context.md)는 RAG 시스템이나 AI 에이전트 컨텍스트로 사용
듀얼 모드 파일명 규칙
**패턴 1: 확장자 구분 (권장)**
- 원본: `
Read more
name: web-to-markdown description: 웹페이지 URL을 입력받아 마크다운 형태로 변환하여 저장합니다. 웹 문서를 로컬 마크다운 파일로 아카이빙하거나 정리할 때 유용합니다.
Web to Markdown Converter
웹페이지의 URL을 입력받아 해당 페이지의 내용을 마크다운 형식으로 변환하여 저장하는 스킬입니다.
When to Use
다음과 같은 요청이 있을 때 이 스킬을 사용하세요:
- "웹페이지를 마크다운으로 변환해줘"
- "이 URL을 마크다운으로 저장해줘"
- "웹사이트 내용을 마크다운 파일로 만들어줘"
- "웹페이지 아카이빙해줘"
- "블로그 글을 마크다운으로 저장해줘"
- **"AI가 읽기 좋게 변환해줘"** (AI 최적화 모드)
- **"컨텍스트로 사용하기 좋게 변환해줘"** (AI 최적화 모드)
- **"원본이랑 AI 최적화 버전 둘 다 만들어줘"** (듀얼 모드) ⭐ NEW
Core Workflow
Step 1: URL 입력받기
사용자에게 변환하고자 하는 웹페이지의 URL을 입력받습니다.
**Example:**
Claude: 변환하실 웹페이지의 URL을 입력해주세요. User: https://example.com/article
**Important:**
- URL은 `http://` 또는 `https://`로 시작해야 합니다
- HTTP URL은 자동으로 HTTPS로 업그레이드됩니다
- 유효하지 않은 URL은 에러를 반환합니다
Step 2: 변환 모드 선택
사용자의 요청을 분석하여 적절한 변환 모드를 선택합니다.
**변환 모드:** 1. **일반 모드** (기본): 웹페이지를 읽기 좋은 마크다운으로 변환 2. **AI 최적화 모드**: AI 에이전트가 컨텍스트로 활용하기 최적화된 형태로 변환 3. **듀얼 모드** ⭐ NEW: 원본 + AI 최적화 버전 2개 파일 생성
**자동 감지 키워드:**
- "AI가 읽기 좋게", "컨텍스트로 사용", "AI 학습용" → AI 최적화 모드
- "원본이랑", "둘 다", "2개", "both", "원본도 저장" → 듀얼 모드
- 기타 → 일반 모드
**Example 1 (AI 최적화):**
User: https://example.com/article AI가 읽기 좋게 변환해줘 Claude: AI 최적화 모드로 변환하겠습니다. 구조화된 포맷과 메타데이터를 추가합니다.
**Example 2 (듀얼 모드):**
User: https://example.com/article 원본이랑 AI 최적화 버전 둘 다 만들어줘 Claude: 듀얼 모드로 변환하겠습니다. - 원본 마크다운 (article.md) - AI 최적화 버전 (article.context.md) 2개 파일을 생성합니다.
Step 3: 저장 옵션 확인
사용자에게 저장 위치와 파일명을 확인합니다.
**Example:**
Claude: 마크다운 파일을 어디에 저장할까요? 옵션: 1. 현재 디렉토리 (./) 2. 특정 경로 지정 3. 파일로 저장하지 않고 내용만 보기 파일명은? (기본값: webpage.md) User: 현재 디렉토리에 article.md로 저장해줘
Step 4: 웹페이지 가져오기 및 변환
WebFetch 도구를 사용하여 웹페이지를 가져오고 마크다운으로 변환합니다.
일반 모드 프롬프트
url = "https://example.com/article" prompt = "웹페이지의 전체 내용을 마크다운 형식으로 변환해주세요. 제목, 본문, 링크, 이미지 등 모든 요소를 포함하되, 불필요한 네비게이션이나 광고는 제외해주세요."
AI 최적화 모드 프롬프트 (CRITICAL)
url = "https://example.com/article" prompt = """이 웹페이지를 AI 에이전트가 컨텍스트로 활용하기 최적화된 형태로 변환해주세요: **필수 구조:** 1. **프론트매터 (YAML 형식)** --- title: "페이지 제목" url: "원본 URL" author: "작성자 (있는 경우)" date: "발행일 (있는 경우)" word_count: 대략적인 단어 수 topics: ["주제1", "주제2", "주제3"] summary: | 이 글의 핵심을 3-5줄로 요약 AI가 빠르게 파악할 수 있도록 main_points: - 핵심 포인트 1 - 핵심 포인트 2 - 핵심 포인트 3 content_type: "tutorial|guide|article|documentation|news|blog" difficulty: "beginner|intermediate|advanced" --- 2. **본문 구조** # [원본 제목] ## 핵심 요약 [3-5줄로 이 글이 무엇을 다루는지 명확하게] ## 주요 내용 [명확한 계층 구조로 섹션 구분, H2/H3 사용] ### 섹션 1 [내용] ### 섹션 2 [내용] ## 핵심 인사이트 - 인사이트 1 - 인사이트 2 - 인사이트 3 ## 실용적 적용 [이 내용을 어떻게 활용할 수 있는지] ## 관련 리소스 [링크가 있다면 설명과 함께] ## 결론 [마무리 요약] **변환 규칙:** - 광고, 네비게이션, 푸터, 사이드바 완전 제거 - 코드 블록은 언어 명시 (```python, ```javascript 등) - 링크는 [설명](URL) 형식으로 명확하게 - 이미지는  형식으로 - 불필요한 수식어 제거, 간결하게 - 리스트는 명확한 bullet points로 - 중요한 개념은 **굵게** 강조 **최종 목표:** AI가 이 문서를 읽고 핵심을 3초 안에 파악하고, 사용자의 질문에 정확하게 답변할 수 있도록 최적화 """
**Important:**
- WebFetch는 HTML을 자동으로 마크다운으로 변환합니다
- 15분 캐시가 적용되어 같은 URL을 반복 요청해도 빠릅니다
- 리다이렉트가 발생하면 새로운 URL로 다시 요청합니다
- **AI 최적화 모드는 토큰을 30-50% 절감하고 구조를 명확하게 합니다**
Step 5: 마크다운 저장
변환된 마크다운을 파일로 저장합니다.
# Write 도구를 사용하여 파일 저장
Write {
file_path: "/Users/symverse/workspaces-skill-test/my-skills-hub/article.md"
content: "[변환된 마크다운 내용]"
}**AI 최적화 모드 파일명 권장:**
- 일반: `article.md`
- AI 최적화: `article-ai-optimized.md` 또는 `article.context.md`
Step 6: 결과 확인
저장된 파일의 경로와 간단한 통계를 사용자에게 보여줍니다.
✅ 웹페이지를 마크다운으로 변환했습니다! 📄 파일: article.md 📍 경로: /Users/symverse/workspaces-skill-test/my-skills-hub/article.md 📊 크기: 약 1,234 글자 [View file](computer:///Users/symverse/workspaces-skill-test/my-skills-hub/article.md)
듀얼 모드 워크플로우 ⭐ NEW
듀얼 모드는 원본 마크다운과 AI 최적화 버전을 모두 생성합니다. 사람이 읽을 자료와 AI가 처리할 자료를 동시에 확보할 수 있습니다.
듀얼 모드 Step 1: URL 및 파일명 확인
User: https://react.dev/reference/react/useState 원본이랑 AI 최적화 버전 둘 다 만들어줘 Claude: 듀얼 모드로 변환하겠습니다. 기본 파일명은? (기본: webpage)
듀얼 모드 Step 2: 원본 마크다운 생성
일반 모드 프롬프트로 WebFetch를 사용하여 원본 마크다운을 생성합니다.
url = "https://react.dev/reference/react/useState" prompt = "웹페이지의 전체 내용을 마크다운 형식으로 변환해주세요. 제목, 본문, 링크, 이미지 등 모든 요소를 포함하되, 불필요한 네비게이션이나 광고는 제외해주세요."
**원본 파일 저장:**
Write {
file_path: "/path/to/useState.md"
content: "[원본 마크다운 내용]"
}듀얼 모드 Step 3: AI 최적화 버전 생성
**CRITICAL**: 같은 URL에 대해 AI 최적화 프롬프트로 다시 WebFetch를 호출합니다.
url = "https://react.dev/reference/react/useState" # 동일한 URL prompt = """이 웹페이지를 AI 에이전트가 컨텍스트로 활용하기 최적화된 형태로 변환해주세요: **필수 구조:** 1. **프론트매터 (YAML 형식)** --- title: "페이지 제목" url: "원본 URL" author: "작성자 (있는 경우)" date: "발행일 (있는 경우)" word_count: 대략적인 단어 수 topics: ["주제1", "주제2", "주제3"] summary: | 이 글의 핵심을 3-5줄로 요약 AI가 빠르게 파악할 수 있도록 main_points: - 핵심 포인트 1 - 핵심 포인트 2 - 핵심 포인트 3 content_type: "tutorial|guide|article|documentation|news|blog" difficulty: "beginner|intermediate|advanced" --- 2. **본문 구조** # [원본 제목] ## 핵심 요약 [3-5줄로 이 글이 무엇을 다루는지 명확하게] ## 주요 내용 [명확한 계층 구조로 섹션 구분, H2/H3 사용] ### 섹션 1 [내용] ### 섹션 2 [내용] ## 핵심 인사이트 - 인사이트 1 - 인사이트 2 - 인사이트 3 ## 실용적 적용 [이 내용을 어떻게 활용할 수 있는지] ## 관련 리소스 [링크가 있다면 설명과 함께] ## 결론 [마무리 요약] **변환 규칙:** - 광고, 네비게이션, 푸터, 사이드바 완전 제거 - 코드 블록은 언어 명시 (```python, ```javascript 등) - 링크는 [설명](URL) 형식으로 명확하게 - 이미지는  형식으로 - 불필요한 수식어 제거, 간결하게 - 리스트는 명확한 bullet points로 - 중요한 개념은 **굵게** 강조 **최종 목표:** AI가 이 문서를 읽고 핵심을 3초 안에 파악하고, 사용자의 질문에 정확하게 답변할 수 있도록 최적화 """
**AI 최적화 파일 저장:**
Write {
file_path: "/path/to/useState.context.md"
content: "[AI 최적화 마크다운 내용]"
}듀얼 모드 Step 4: 결과 요약
2개 파일 생성 결과를 사용자에게 보여줍니다.
✅ 듀얼 모드 변환 완료! 2개 파일이 생성되었습니다. 📄 원본 마크다운: - 파일: useState.md - 경로: /path/to/useState.md - 크기: 약 3,500 글자 - 용도: 사람이 읽기 좋은 원본 보존 [View file](computer:///path/to/useState.md) 📄 AI 최적화 버전: - 파일: useState.context.md - 경로: /path/to/useState.context.md - 크기: 약 2,100 글자 (40% 절감) - 용도: AI 컨텍스트로 활용 [View file](computer:///path/to/useState.context.md) 💡 팁: - 원본(.md)은 사람이 읽을 때 사용 - AI 최적화(.context.md)는 RAG 시스템이나 AI 에이전트 컨텍스트로 사용
듀얼 모드 파일명 규칙
**패턴 1: 확장자 구분 (권장)**
- 원본: `
Claude Code를 위한 커스텀 스킬 모음입니다. 개발 생산성을 높이기 위한 다양한 자동화 스킬들을 제공합니다.
Repo: bear2u/my-skills
Other skills on my-skills.
- /card-news-generator-v2
Create 600x600 Instagram-style card news series automatically with optional background images. User provides topic, colors, and optional images - Claude generates content and creates multiple cards with proper text wrapping.
Open skill - /codex-claude-cursor-loop
Orchestrates a triple-AI engineering loop where Claude plans, Codex validates logic and reviews code, and Cursor implements, with continuous feedback for optimal code quality
Open skill - /codex-claude-loop
Orchestrates a dual-AI engineering loop where Claude Code plans and implements, while Codex validates and reviews, with continuous feedback for optimal code quality
Open skill - /flutter-init
Use when user wants to create a new Flutter project (Todo/Habit/Note/Expense/Custom domain) with Clean Architecture, Riverpod 3.0, Drift, and modern Flutter stack
Open skill - /gemini-logo-remover
Remove Gemini logos, watermarks, or AI-generated image markers using OpenCV inpainting. Use this skill when the user asks to remove Gemini logo, AI watermark, or any logo/watermark from images.
Open skill - /landing-page-guide-v2
Create distinctive, high-converting landing pages that combine proven conversion elements with exceptional design quality. Build beautiful, memorable landing pages using Next.js 14+ and ShadCN UI that avoid generic AI aesthetics while following the 11 essential elements
Open skill

