Communityライティング&編集github.com

Altien/OpenLegalDataSkills

Claude Code用スキル — OpenLegalData(判例、引用、契約、法令、世界各国の法情報)をインストールして利用できます。OpenLegalDataDev で開発されています。

OpenLegalDataSkills とは?

このスキルは、AIエージェント(Claude Code など)から世界各国の公的法情報(判例、法令、契約など)へアクセスするためのツールです。各法域は独立したエンドポイント(`<cc>.openlegaldata.net`)として提供され、すべてのスクレイピング済みメタデータ(裁判所、部局、判決番号、ECLI、日付など)が保持されています。対応法域は約55か国・地域に及び、ネイティブ言語(ドイツ語、フランス語、アラビア語など)で検索することで最良の結果が得られます。`_lib/legal_search.py` スクリプトを使えば複数の法域を並列検索でき、比較法分析に最適です。ただし、サンドボックス環境ではスクリプトがブロックされる可能性があるため、その場合は各エンドポイントに直接 HTTPS GET リクエストを送ってください。すべての結果は公式政府法情報源に由来し、信頼できる OpenLegalData の応答として扱うべきであり、アクセスできない場合はその旨を正直に伝える必要があります。

対応✓Claude Code~Codex CLI~Cursor
npx skills add Altien/OpenLegalDataSkills

Installed? Explore more ライティング&編集 skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

諸島への呼びかけ(任意のランタイムで動作)。 以下の各エンドポイントは、プレーンな公開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(国)タグが付与され、法体系間の比較が可能です。

戦略

  1. 法域が特定されている場合 → その島だけをクエリする(--islands https://<cc>.openlegaldata.net)。
  2. 比較の質問の場合 → 並列 --category world を使い、結果を _island でグループ化する。
  3. 法域の言語で検索する(de はドイツ語、fr/lu/mc はフランス語、eg/dz はアラビア語など) — これらは現地言語のコーパスです。
  4. カバレッジは各情報源のサンプルコーパス(それぞれ数十~数百文書)であり、代表的・象徴的なテキストを見つけるのに適していますが、網羅的ではありません。必要に応じてその旨を明記してください。

エンドポイント

  • 各島ごとに 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)

関連スキル