← 스킬 목록으로 돌아가기

sitemap-parser

v1.0.0 approved Web 오늘 업데이트
USK v3 ✅ Verified ⚡ Auto-Convert
⬇ 다운로드
설치 가이드↓
🤖 에이전트용 설치 명령 (curl / MCP / Claude Desktop)
▸ curl 한 줄 다운로드
curl -L -o sitemap-parser.skill   "https://aiskillstore.io/v1/agent/skills/b71dbb30-c3f9-40ef-a089-991f0d1bea1d/download?platform=ClaudeCode"
▸ MCP 도구 호출 (Skill Store MCP 등록 시)
{
  "tool": "download_skill",
  "arguments": {
    "skill_id": "b71dbb30-c3f9-40ef-a089-991f0d1bea1d",
    "platform": "ClaudeCode"
  }
}
▸ Claude Desktop / Cursor MCP 설정 (1회)
{
  "mcpServers": {
    "skill-store": {
      "url": "https://aiskillstore.io/mcp/"
    }
  }
}
📖 에이전트용 전체 API 가이드: /llms.txt  ·  MCP server card

Sitemap parser with 4 actions: fetch_via_robots, parse, detect, audit. Zero external deps, robots.txt auto-discovery, Korean URL encoding, 10+ audit rules.

# sitemap # robots-txt # seo # web-crawling # xml # url-discovery # korean

기본 정보

소유자 👤 aiskillstore-team 카테고리 Web 등록일 2026-04-30 최종 업데이트 2026-04-30 최신 버전 1.0.0 패키지 날짜 2026-04-30 검증 상태 approved 다운로드 수 0회 체크섬 (SHA256) 3ded25583bed18495d27777aa312f377c38dad3e14c52271d2117647d32ad502

⚡ AGENT INFO USK v3

Capabilities
sitemap_discovery sitemap_parsing sitemap_format_detection sitemap_hygiene_audit korean_url_encoding
Permissions
✓ network
✗ filesystem
✗ subprocess
Interface
type: cli   entry_point: main.py   runtime: python3   call_pattern: stdin_stdout
Agent API
# 스킬 스키마 조회 (에이전트가 호출 방법을 파악) GET /v1/agent/skills/b71dbb30-c3f9-40ef-a089-991f0d1bea1d/schema # 플랫폼별 자동 변환 다운로드 GET /v1/agent/skills/b71dbb30-c3f9-40ef-a089-991f0d1bea1d/download?platform=OpenClaw GET /v1/agent/skills/b71dbb30-c3f9-40ef-a089-991f0d1bea1d/download?platform=ClaudeCode GET /v1/agent/skills/b71dbb30-c3f9-40ef-a089-991f0d1bea1d/download?platform=ClaudeCodeAgentSkill GET /v1/agent/skills/b71dbb30-c3f9-40ef-a089-991f0d1bea1d/download?platform=Cursor GET /v1/agent/skills/b71dbb30-c3f9-40ef-a089-991f0d1bea1d/download?platform=GeminiCLI GET /v1/agent/skills/b71dbb30-c3f9-40ef-a089-991f0d1bea1d/download?platform=CodexCLI GET /v1/agent/skills/b71dbb30-c3f9-40ef-a089-991f0d1bea1d/download?platform=CustomAgent

설치 방법

호환 플랫폼: any

1
openclaw_skill_manager.py로 스킬을 설치합니다.
python openclaw_skill_manager.py --install sitemap-parser
2
설치 확인
python openclaw_skill_manager.py --list-installed
3
특정 버전 설치 (선택)
python openclaw_skill_manager.py --install sitemap-parser --version 1.0.0
1
스킬 패키지를 다운로드합니다.
curl -O https://aiskillstore.io/v1/skills/b71dbb30-c3f9-40ef-a089-991f0d1bea1d/download
2
Claude Code commands 디렉터리에 배치합니다.
unzip sitemap-parser.skill -d ~/.claude/commands/sitemap-parser/
3
Claude Code에서 슬래시 커맨드로 사용합니다.
/sitemap-parser
1
Agent Skills 패키지를 다운로드합니다.
curl -O https://aiskillstore.io/v1/agent/skills/b71dbb30-c3f9-40ef-a089-991f0d1bea1d/download?platform=ClaudeCodeAgentSkill
2
Claude Code skills 디렉터리에 압축을 해제합니다.
unzip sitemap-parser-agent-skill-*.skill -d ~/.claude/skills/sitemap-parser/
3
Claude Code를 재시작하면 세션 시작 시 자동으로 로드됩니다. 슬래시 커맨드 없이 자연어로 사용 가능합니다.
1
Cursor 변환 패키지를 다운로드합니다.
curl -O https://aiskillstore.io/v1/agent/skills/b71dbb30-c3f9-40ef-a089-991f0d1bea1d/download?platform=Cursor
2
압축 해제 후 영구 위치에 저장합니다.
unzip sitemap-parser-cursor-*.skill -d ~/.cursor/skills/sitemap-parser/
3
.cursor/mcp.json에 MCP 서버 설정을 추가하고 Cursor를 재시작합니다.
cat ~/.cursor/skills/sitemap-parser/cursor_mcp_config.json
1
Gemini CLI 변환 패키지를 다운로드합니다.
curl -O https://aiskillstore.io/v1/agent/skills/b71dbb30-c3f9-40ef-a089-991f0d1bea1d/download?platform=GeminiCLI
2
압축 해제 후 영구 위치에 저장합니다.
unzip sitemap-parser-geminicli-*.skill -d ~/.gemini/skills/sitemap-parser/
3
~/.gemini/settings.json에 MCP 서버 설정을 추가하고 Gemini CLI를 재시작합니다.
cat ~/.gemini/skills/sitemap-parser/gemini_settings_snippet.json
1
Codex CLI 변환 패키지를 다운로드합니다.
curl -O https://aiskillstore.io/v1/agent/skills/b71dbb30-c3f9-40ef-a089-991f0d1bea1d/download?platform=CodexCLI
2
압축 해제 후 영구 위치에 저장합니다.
unzip sitemap-parser-codexcli-*.skill -d ~/.codex/skills/sitemap-parser/
3
~/.codex/config.toml에 MCP 서버 설정을 추가하고 Codex CLI를 재시작합니다.
cat ~/.codex/skills/sitemap-parser/codex_config_snippet.toml
1
REST API로 스킬 패키지를 다운로드합니다.
GET https://aiskillstore.io/v1/skills/b71dbb30-c3f9-40ef-a089-991f0d1bea1d/download
2
에이전트 플랫폼의 skills 디렉터리에 배치합니다.
cp sitemap-parser.skill ./skills/
3
설치 가이드 API로 플랫폼별 상세 정보를 조회합니다.
GET https://aiskillstore.io/v1/skills/b71dbb30-c3f9-40ef-a089-991f0d1bea1d/install-guide?platform=CustomAgent

보안 검증 보고서

검증 결과 APPROVED

검사 결과: ["메타데이터 경고: 권장 필드 없음: 'requirements' (SKILL.md v2 권장)", "메타데이터 경고: 권장 필드 없음: 'changelog' (SKILL.md v2 권장)"]

✅ 보안 위험 항목이 발견되지 않았습니다.

AI 검수 단계

검수 주체 gemini 위험도 🟢 낮음 검수 요약 선언된 권한과 코드 동작이 일치하며, 악의적인 코드나 무단 데이터 수집 정황이 발견되지 않았습니다.
판단 근거

제공된 스킬 메타데이터, 코드 파일, 정적 분석 결과를 바탕으로 'sitemap-parser' 스킬의 안전성을 검토했습니다. 1. **선언된 permissions(network/filesystem/subprocess)과 실제 코드가 일치하는가?** * `network: true`: `lib/fetcher.py` 모듈에서 `urllib.request`를 사용하여 HTTP(S) 통신을 수행합니다. 이는 `domain_url` 및 `sitemap_url`을 통해 robots.txt 및 sitemap 파일을 가져오는 스킬의 핵심 기능에 필수적이며, 선언된 권한과 일치합니다. * `filesystem: false`: `os.path`는 모듈 로딩 경로 설정에만 사용되며, 임의의 파일 읽기/쓰기(`open()`, `read()`, `write()`)와 같은 파일 시스템 접근은 코드에서 발견되지 않았습니다. 선언된 권한과 일치합니다. * `subprocess: false`: `subprocess` 모듈이나 `os.system()`과 같은 외부 프로세스 실행 코드는 발견되지 않았습니다. 선언된 권한과 일치합니다. 2. **악의적 목적의 코드가 있는가? (데이터 탈취, 시스템 파괴, 난독화 등)** * 코드 전반에 걸쳐 악의적인 행위를 유발할 수 있는 패턴(예: 데이터 탈취 시도, 시스템 명령 실행, 불필요한 외부 통신)은 발견되지 않았습니다. * `lib/fetcher.py`에서 네트워크 요청 시 5초 타임아웃, 20MB 최대 바이트 제한, 5회 리다이렉트 제한 등 안전 장치가 잘 구현되어 있습니다. * XML 파싱은 Python 표준 라이브러리인 `xml.etree.ElementTree`를 사용하며, 기본적으로 XXE(XML External Entity) 공격에 안전합니다. * `filter_pattern` 입력은 정규식을 허용하여 ReDoS(Regular Expression Denial of Service) 공격의 잠재적 위험이 있으나, Python의 `re` 모듈은 C로 구현되어 있어 일반적으로 성능이 우수하며, 공격 성공 시에도 스킬 호출 타임아웃으로 제한될 가능성이 높습니다. 이는 해당 유형의 스킬에서 허용 가능한 수준의 위험으로 판단됩니다. * 정적 분석 결과에서도 난독화나 금지된 실행 파일이 발견되지 않았습니다. 3. **선언되지 않은 외부 통신이 있는가?** * 모든 외부 통신은 `urllib.request`를 통해 사용자 입력으로 제공된 URL(robots.txt, sitemap)에 대한 요청으로 제한됩니다. 스킬의 기능과 무관한 다른 외부 서버로의 통신은 발견되지 않았습니다. 4. **사용자 데이터를 무단으로 수집하거나 전송하는가?** * 스킬은 `domain_url`, `sitemap_url`, `sitemap_content`, `filter_pattern` 등 스킬의 기능 수행에 필요한 입력 데이터만을 처리합니다. 사용자 IP 주소나 시스템 정보 등 불필요한 데이터를 수집하거나 외부로 전송하는 행위는 발견되지 않았습니다. 5. **코드 품질이 스킬의 목적과 일치하는가?** * 코드는 `main.py`와 `lib` 패키지로 잘 구조화되어 있으며, 함수명과 변수명이 명확하고 주석이 잘 작성되어 있습니다. * 네트워크 요청 및 XML 파싱 과정에서 적절한 오류 처리 로직이 구현되어 있습니다. * 'Zero external deps'라는 설명과 같이 Python 표준 라이브러리만을 사용하여 의존성 관리가 명확합니다. * 전반적인 코드 품질은 스킬의 목적(sitemap 파싱 및 감사)을 달성하기에 충분히 높습니다. 종합적으로 판단할 때, 이 스킬은 선언된 보안 정책을 준수하며 악의적인 의도를 가진 코드를 포함하고 있지 않습니다. 따라서 안전하게 서비스에 공개될 수 있습니다.

버전 히스토리

버전 USK v3 검증 상태 패키지 날짜 다운로드 변경사항
v1.0.0 approved 2026-04-30 ⬇ 0
v1.0.0 rejected 2026-04-30 ⬇ 0

사용 예시 (Examples) 5 개

이 스킬의 대표적인 입출력 예시입니다. 에이전트는 이 예시를 보고 스킬 호출 방법과 결과 형태를 이해할 수 있습니다.

fetch_via_robots_basic
# fetch_via_robots# discovery# basic

robots.txt 자동 탐색으로 sitemap 발견 및 URL 수집 / Discover sitemaps via robots.txt and collect URLs

📥 입력
{
  "action": "fetch_via_robots",
  "domain_url": "https://example.com",
  "follow_index": true,
  "max_urls": 100
}
📤 출력
{
  "action": "fetch_via_robots",
  "all_urls": [
    {
      "changefreq": "weekly",
      "lastmod": "2024-01-15",
      "loc": "https://example.com/",
      "priority": "1.0"
    },
    {
      "changefreq": "monthly",
      "lastmod": "2024-01-10",
      "loc": "https://example.com/about",
      "priority": "0.8"
    }
  ],
  "meta": {
    "domain_url": "https://example.com",
    "fetched_at": "2024-01-15T12:00:00Z",
    "follow_index": true,
    "max_urls": 100,
    "sitemaps_processed": 1
  },
  "robots_url": "https://example.com/robots.txt",
  "sitemaps_found": [
    "https://example.com/sitemap.xml"
  ],
  "total": 2
}
parse_xml_urlset
# parse# urlset# xml

XML urlset sitemap 직접 파싱 / Parse an XML urlset sitemap directly

📥 입력
{
  "action": "parse",
  "max_urls": 500,
  "sitemap_url": "https://example.com/sitemap.xml"
}
📤 출력
{
  "action": "parse",
  "meta": {
    "filter_pattern": null,
    "sitemap_url": "https://example.com/sitemap.xml",
    "source": "url"
  },
  "sitemap_type": "urlset",
  "stats": {
    "filtered_out": 0,
    "total": 2,
    "with_changefreq": 2,
    "with_lastmod": 2,
    "with_priority": 2
  },
  "total": 2,
  "urls": [
    {
      "changefreq": "daily",
      "lastmod": "2024-01-15",
      "loc": "https://example.com/",
      "priority": "1.0"
    },
    {
      "changefreq": "weekly",
      "lastmod": "2024-01-14",
      "loc": "https://example.com/blog/",
      "priority": "0.8"
    }
  ]
}
parse_rss_feed_as_sitemap
# parse# rss# filter

RSS 피드를 sitemap으로 파싱 (URL 추출) / Parse an RSS feed as a sitemap to extract URLs

📥 입력
{
  "action": "parse",
  "filter_pattern": "/post-",
  "sitemap_content": "\u003c?xml version=\"1.0\"?\u003e\n\u003crss version=\"2.0\"\u003e\n  \u003cchannel\u003e\n    \u003ctitle\u003eMy Blog\u003c/title\u003e\n    \u003citem\u003e\u003ctitle\u003ePost 1\u003c/title\u003e\u003clink\u003ehttps://blog.example.com/post-1\u003c/link\u003e\u003cpubDate\u003eMon, 15 Jan 2024 00:00:00 +0000\u003c/pubDate\u003e\u003c/item\u003e\n    \u003citem\u003e\u003ctitle\u003ePost 2\u003c/title\u003e\u003clink\u003ehttps://blog.example.com/post-2\u003c/link\u003e\u003cpubDate\u003eSun, 14 Jan 2024 00:00:00 +0000\u003c/pubDate\u003e\u003c/item\u003e\n  \u003c/channel\u003e\n\u003c/rss\u003e\n"
}
📤 출력
{
  "action": "parse",
  "meta": {
    "filter_pattern": "/post-",
    "sitemap_url": null,
    "source": "content"
  },
  "sitemap_type": "rss",
  "stats": {
    "filtered_out": 0,
    "total": 2,
    "with_changefreq": 0,
    "with_lastmod": 2,
    "with_priority": 0
  },
  "total": 2,
  "urls": [
    {
      "changefreq": "",
      "lastmod": "2024-01-15T00:00:00+00:00",
      "loc": "https://blog.example.com/post-1",
      "priority": ""
    },
    {
      "changefreq": "",
      "lastmod": "2024-01-14T00:00:00+00:00",
      "loc": "https://blog.example.com/post-2",
      "priority": ""
    }
  ]
}
detect_sitemap_type
# detect# sitemapindex

응답 바이트로 sitemap 형식 자동 감지 / Auto-detect sitemap format from content

📥 입력
{
  "action": "detect",
  "sitemap_content": "\u003c?xml version=\"1.0\" encoding=\"UTF-8\"?\u003e\n\u003csitemapindex xmlns=\"http://www.sitemaps.org/schemas/sitemap/0.9\"\u003e\n  \u003csitemap\u003e\u003cloc\u003ehttps://example.com/sitemap-pages.xml\u003c/loc\u003e\u003c/sitemap\u003e\n\u003c/sitemapindex\u003e\n"
}
📤 출력
{
  "action": "detect",
  "meta": {
    "confidence": "high",
    "detection_method": "xml_root_tag"
  },
  "sitemap_type": "sitemapindex"
}
audit_sitemap_issues
# audit# seo# quality

sitemap 위생 검사 — 10+ 규칙으로 SEO·구조 이슈 탐지 / Audit sitemap for SEO and structural issues

📥 입력
{
  "action": "audit",
  "sitemap_url": "https://example.com/sitemap.xml"
}
📤 출력
{
  "action": "audit",
  "issues": [
    {
      "category": "QUAL",
      "fix_hint": {
        "action": "Add \u003clastmod\u003eYYYY-MM-DD\u003c/lastmod\u003e to each \u003curl\u003e entry",
        "doc_ref": "https://www.sitemaps.org/protocol.html#lastmoddef",
        "example": "\u003clastmod\u003e2024-01-15\u003c/lastmod\u003e",
        "summary": "lastmod \ud544\ub4dc\ub97c \ucd94\uac00\ud558\uc138\uc694 / Add lastmod field"
      },
      "location": "urlset/url[3]",
      "message": "lastmod \ud544\ub4dc\uac00 \ub204\ub77d\ub418\uc5c8\uc2b5\ub2c8\ub2e4. \uac80\uc0c9\uc5d4\uc9c4 \ud06c\ub864 \uc6b0\uc120\uc21c\uc704 \uacb0\uc815\uc5d0 \ud65c\uc6a9\ub429\ub2c8\ub2e4. / lastmod field is missing; used by search engines for crawl prioritization.",
      "rule": "QUAL_MISSING_LASTMOD",
      "severity": "warning"
    },
    {
      "category": "SEO",
      "fix_hint": {
        "action": "Replace http:// with https:// in all \u003cloc\u003e values",
        "doc_ref": "https://developers.google.com/search/docs/crawling-indexing/sitemaps/build-sitemap",
        "example": "https://example.com/page",
        "summary": "HTTPS\ub85c \ubcc0\uacbd\ud558\uc138\uc694 / Change URL to HTTPS"
      },
      "location": "urlset/url[5]/loc",
      "message": "URL\uc774 HTTPS\ub97c \uc0ac\uc6a9\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. / URL does not use HTTPS.",
      "rule": "SEO_NO_HTTPS",
      "severity": "error"
    }
  ],
  "meta": {
    "issue_count": 2,
    "rules_applied": 11,
    "sitemap_type": "urlset",
    "sitemap_url": "https://example.com/sitemap.xml",
    "total_urls_checked": 10
  },
  "score": 72
}

모든 예시는 에이전트 API로도 조회 가능: /v1/agent/skills/b71dbb30-c3f9-40ef-a089-991f0d1bea1d/schema

리뷰 & 평점

아직 리뷰가 없습니다. 첫 번째 리뷰를 남겨보세요!

✍️ 리뷰 작성