skills/43-wentorai-research-plugins/skills/domains/law/legal-research-guide/SKILL.md
Legal research methods, case law analysis, and compliance tools
npx skillsauth add brycewang-stanford/Awesome-Agent-Skills-for-Empirical-Research legal-research-guideInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Conduct systematic legal research across jurisdictions, analyze case law, navigate statutory frameworks, and use computational legal tools for academic and practice-oriented research.
The standard analytical framework for legal reasoning:
| Step | Description | Example | |------|-------------|---------| | Issue | Identify the legal question | "Does web scraping of public data constitute a CFAA violation?" | | Rule | State the applicable legal rule | "The CFAA prohibits accessing a computer 'without authorization' or 'exceeding authorized access'" | | Application | Apply the rule to the facts | "In hiQ v. LinkedIn, the 9th Circuit held that scraping publicly available data does not violate the CFAA..." | | Conclusion | State the legal conclusion | "Therefore, scraping publicly available academic data likely does not violate the CFAA, though terms-of-service issues remain." |
C - Conclusion (state your thesis)
R - Rule (present the legal rule with authority)
E - Explanation (analyze how courts have interpreted the rule)
A - Application (apply the rule to your specific scenario)
C - Conclusion (restate and refine conclusion)
| Database | Coverage | Cost | Best For | |----------|----------|------|----------| | Westlaw (Thomson Reuters) | US, UK, EU, international | Subscription | Comprehensive case law, KeyCite citator | | LexisNexis | US, UK, international | Subscription | News integration, Shepard's citator | | Google Scholar (Case Law) | US federal and state courts | Free | Quick case lookup, citation tracking | | Casetext / CoCounsel | US courts | Subscription | AI-powered legal research | | CourtListener | US federal courts | Free | PACER alternative, bulk data | | EUR-Lex | EU law | Free | EU legislation, CJEU case law | | BAILII | UK, Ireland | Free | UK case law and legislation | | Justia | US law | Free | US case law, statutes, regulations | | HeinOnline | Historical legal materials | Subscription | Law journals, treaties, legislative history |
| Source | Content | Use | |--------|---------|-----| | Law reviews / journals | Scholarly analysis | Academic research, policy arguments | | Restatements | ALI compilations of common law | Authoritative secondary source | | Treatises | Comprehensive subject coverage | Deep dive into specific areas | | Legal encyclopedias (AmJur, CJS) | Broad legal summaries | Starting point for unfamiliar areas | | Practice guides | Practical how-to | Practitioner-oriented research |
# Case citation
Marbury v. Madison, 5 U.S. (1 Cranch) 137 (1803).
Brown v. Board of Education, 347 U.S. 483, 495 (1954).
# Statute citation
42 U.S.C. Section 1983 (2018).
Cal. Civ. Code Section 1798.100 (West 2020). # California statute
# Law review article
Jane Smith, The Future of AI Regulation, 120 Harv. L. Rev. 456 (2024).
# Book
Richard Posner, Economic Analysis of Law 25 (9th ed. 2014).
# Short form citations (after first full citation)
Brown, 347 U.S. at 495.
Smith, supra note 12, at 460.
Id. at 462. # Same source as immediately preceding citation
# Case citation
Donoghue v Stevenson [1932] AC 562 (HL).
R v Brown [1994] 1 AC 212, 237 (HL).
# Statute citation
Human Rights Act 1998, s 3.
Data Protection Act 2018, s 170(1).
# Journal article
Jane Smith, 'The Future of AI Regulation' (2024) 120 Modern Law Review 456.
# Book
Richard Posner, Economic Analysis of Law (9th edn, Aspen 2014) 25.
import requests
import json
# Using the CourtListener API (free, open-source)
BASE_URL = "https://www.courtlistener.com/api/rest/v3"
def search_opinions(query, court="scotus", page_size=20):
"""Search case opinions via CourtListener API."""
response = requests.get(
f"{BASE_URL}/search/",
params={
"q": query,
"type": "o", # opinions
"court": court,
"page_size": page_size,
"order_by": "score desc"
},
headers={"Authorization": "Token YOUR_API_TOKEN"}
)
results = response.json()
for case in results.get("results", []):
print(f"[{case.get('dateFiled', 'N/A')}] {case.get('caseName', 'N/A')}")
print(f" Court: {case.get('court', 'N/A')}")
print(f" Citation: {case.get('citation', ['N/A'])[0] if case.get('citation') else 'N/A'}")
print(f" URL: https://www.courtlistener.com{case.get('absolute_url', '')}")
return results
# Search for AI-related Supreme Court cases
results = search_opinions("artificial intelligence", court="scotus")
import networkx as nx
def build_citation_network(seed_case_ids, depth=2):
"""Build a citation network starting from seed cases."""
G = nx.DiGraph()
visited = set()
queue = [(cid, 0) for cid in seed_case_ids]
while queue:
case_id, level = queue.pop(0)
if case_id in visited or level > depth:
continue
visited.add(case_id)
# Get case metadata and citations
resp = requests.get(f"{BASE_URL}/opinions/{case_id}/",
headers={"Authorization": "Token YOUR_API_TOKEN"})
if resp.status_code != 200:
continue
case = resp.json()
case_name = case.get("case_name", f"Case {case_id}")
G.add_node(case_id, name=case_name, date=case.get("date_filed"))
# Get citing opinions (who cites this case)
for cited_id in case.get("opinions_cited", []):
G.add_edge(case_id, cited_id)
if level < depth:
queue.append((cited_id, level + 1))
return G
# Analyze: which cases are most cited (highest in-degree)?
# These are the most authoritative precedents
# Analyzing legislative text complexity
import re
from textstat import textstat
def analyze_statute(text):
"""Compute readability metrics for statutory text."""
return {
"flesch_reading_ease": textstat.flesch_reading_ease(text),
"flesch_kincaid_grade": textstat.flesch_kincaid_grade(text),
"gunning_fog": textstat.gunning_fog(text),
"word_count": textstat.lexicon_count(text),
"sentence_count": textstat.sentence_count(text),
"avg_sentence_length": textstat.avg_sentence_length(text),
"defined_terms": len(re.findall(r'"[A-Z][^"]*"', text)),
"cross_references": len(re.findall(r'[Ss]ection \d+', text))
}
# Example: Analyze a section of the GDPR
gdpr_article_5 = """
Personal data shall be processed lawfully, fairly and in a transparent
manner in relation to the data subject; collected for specified, explicit
and legitimate purposes and not further processed in a manner that is
incompatible with those purposes; adequate, relevant and limited to what
is necessary in relation to the purposes for which they are processed.
"""
print(analyze_statute(gdpr_article_5))
| Area | Key Topics | Interdisciplinary Connections | |------|-----------|------------------------------| | AI & Law | Algorithmic fairness, liability for autonomous systems, AI regulation | CS, philosophy | | IP Law | Patent, copyright, trade secret, open source licensing | Engineering, business | | Privacy Law | GDPR, CCPA, surveillance, data protection | CS, political science | | Law & Economics | Efficiency analysis of legal rules, behavioral law & economics | Economics | | Comparative Law | Cross-jurisdictional analysis, legal transplants | Political science | | International Law | Treaties, humanitarian law, trade law | International relations | | Environmental Law | Climate litigation, ESG regulation, environmental justice | Environmental science | | Health Law | Clinical trial regulation, health data, bioethics | Medicine, public health |
| Journal | Rank | Focus | |---------|------|-------| | Harvard Law Review | T1 | General | | Yale Law Journal | T1 | General | | Stanford Law Review | T1 | General, tech law | | Columbia Law Review | T1 | General | | Journal of Legal Studies | T1 | Law & economics | | Journal of Empirical Legal Studies | T1 | Empirical methods | | Computer Law & Security Review | Field | Technology law | | Berkeley Technology Law Journal | Field | Tech, IP |
tools
Recommend AND run open-source AI tools, agents, Claude Code / Codex skills, and MCP servers for any stage of a literature review — searching, reading, extracting, synthesizing, screening, citation-checking, and paper writing. Use when the user asks "what tool should I use to..." OR "install/run/use <tool> to ..." for research/lit-review work: automating a survey or related-work section, PDF→Markdown extraction for LLMs (MinerU/marker/docling), PRISMA / systematic review (ASReview), citation-backed Q&A over PDFs (PaperQA2), wiring papers into Claude/Cursor via MCP (arxiv/paper-search/zotero servers), or chatting with a Zotero library. Ships a launcher (scripts/litrun.py) that installs each tool in an isolated venv and runs it. Curated catalog of 70+ vetted projects. 支持中英文(用于「文献综述工具选型」与「一键安装/运行」)。
development
Route empirical-research requests through the Auto-Empirical Research Skills catalog when this whole repository is installed as one skill in Codex, CodeBuddy, Claude Code, or another IDE. Use to choose and load the right vendored AERS skill for causal inference, econometrics, replication, data acquisition, manuscript writing, peer review and referee responses, citation checking, de-AIGC editing, or full empirical-paper workflows without reading the entire repository at once.
documentation
Use when the project collects primary data or runs a field, lab, or survey experiment, before the intervention begins — write the pre-analysis plan, size the sample from a power calculation, and register with the AEA RCT Registry. Apply after the design is chosen in aer-identification and before any outcome data are seen.
tools
Guide economists to authoritative data sources with explicit, confirmed data specifications before retrieval; interfaces with Playwright MCP to navigate portals and extract real data, not articles about data.