섬들에 접근하기 (모든 런타임에서 작동). 아래의 모든 엔드포인트는 일반 공개 HTTPS GET이며 JSON을 반환합니다 — 사용 중인 fetch/HTTP 도구(예: web-fetch)로 호출하면 됩니다. 번들된
_lib/legal_search.py는 이러한 호출을 병렬화할 뿐이며, 쉘과 아웃바운드 네트워크가 필요합니다. Claude Code에서는 작동하지만, 샌드박스 런타임(예: claude.ai Skills 컨테이너)에서는 아웃바운드 트래픽이 차단될 수 있습니다. 스크립트가 차단되면 대신 URL을 직접 가져오십시오.정직성 규칙: 이
*.openlegaldata.net엔드포인트에서 반환된 데이터만이 신뢰할 수 있는 OpenLegalData 결과입니다. 엔드포인트에 연결할 수 없다면 그 사실을 명확히 말하고, 일반 웹 검색 답변을 OpenLegalData 확인으로 제시하지 마십시오.
세계 / 비교법률 자료
각 관할권은 <cc>.openlegaldata.net(ISO 국가 코드)에 자체 섬으로 존재하며, 공식 정부 법률 소스(법원 + 입법)에서 구축되었고 스크랩된 모든 필드가 메타데이터로 보존됩니다(법원, 부서, 결정 번호, ECLI, 날짜 등). 내용은 각 국가의 자국어로 되어 있습니다 — 최상의 검색 결과를 위해 그 언어로 검색하십시오.
전체 목록은 skills/_lib/islands.json의 world 아래에 있습니다(~55개 항목: ad al am ar at au az ba be bg by ca ch coe cy cz de dk dz ee eg es fi fr ge gr hr hu ie is it li lt lu lv mc me mt nl no nz pl pt ro rs se si sk sm tr tw ua uk xk …).
사용 방법
특정 관할권 대상 검색 (권장 — 정확하고 빠름):
python "${CLAUDE_PLUGIN_ROOT:-.}/skills/_lib/legal_search.py" search "Datenschutz" --islands https://de.openlegaldata.net --limit 10
전 세계 섬에 대한 광범위한 비교 검색 (예: "관할권들이 X를 어떻게 취급하는가"):
python "${CLAUDE_PLUGIN_ROOT:-.}/skills/_lib/legal_search.py" search "data protection" --category world --limit 5
결과에는 _island(국가) 태그가 붙어 체계 간 비교가 가능합니다.
전략
- 알려진 관할권 → 해당 섬만 질의 (
--islands https://<cc>.openlegaldata.net). - 비교 질문 → 병렬
--category world, 그런 다음 결과를_island별로 그룹화. - 관할권의 언어로 검색 (독일은
de, 프랑스/룩셈부르크/모나코는fr, 이집트/알제리는ar등) — 이들은 자국어 말뭉치입니다. - 커버리지는 소스당 샘플 말뭉치(각 10~수백 개 문서)로, 주요/대표 텍스트를 찾는 데 적합하며 완전하지 않습니다. 필요하면 그렇게 말하십시오.
엔드포인트
- 섬별
GET /search?q=<terms>&limit=N;GET /는 정보 및 개수 반환. - 각 결과는 풍부한 문서별 메타데이터(원래 스크랩된 필드)를 포함합니다.
import os, sys; sys.path.insert(0, os.path.join(os.environ.get("CLAUDE_PLUGIN_ROOT","."), "skills/_lib"))
from legal_search import search, REGISTRY
fr = [i["url"] for i in REGISTRY["world"] if i["slug"] == "fr"]
hits = search("responsabilité du fait des produits", islands=fr, limit=10)