CommunityProgramación y desarrollogithub.com

danepps/legal-research-skills

Recopila el conjunto completo de documentos de un caso del Tribunal Supremo de EE. UU. que se prepara para un episodio de podcast, una clase o un artículo — escritos de fase de certiorari, escritos de fondo, opinión del tribunal inferior, preguntas presentadas y transcripción del alegato oral — y los carga en el reMarkable del usuario en una carpeta por caso. Disparo manual: úsalo cuando el usuario diga "prep <caso>", "consigue los escritos de <caso>", "carga <caso>" o similar.

¿Qué es legal-research-skills?

Esta habilidad automatiza la tediosa tarea de recopilar todos los documentos oficiales de un caso del Tribunal Supremo de EE. UU. (SCOTUS) y cargarlos en una tableta reMarkable, organizados en una carpeta específica por caso. Es ideal para abogados, académicos, periodistas o cualquier persona que prepare un episodio de podcast, una clase o un artículo y necesite un conjunto de lectura completo: desde la opinión del tribunal inferior, la petición de certiorari y escritos de fondo, hasta la transcripción del alegato oral. La habilidad se activa manualmente mediante frases como "prep <caso>" o "consigue los escritos para <caso>". Funciona en sistemas que ejecutan Claude Code, Cursor, Codex u otros agentes de IA con acceso a línea de comandos, herramientas MCP y un script Python auxiliar. El proceso incluye: (1) resolver el caso mediante búsqueda web para confirmar el número de expediente y la carátula exacta, (2) descargar el conjunto predeterminado de documentos (enumerados en orden de lectura) desde supremecourt.gov y CourtListener usando curl con un User-Agent realista, (3) recortar márgenes de cada PDF con un script dedicado para una lectura óptima en la tableta, y (4) subir los archivos al reMarkable usando herramientas MCP (remarkable_mkdir, remarkable_upload, remarkable_browse). La habilidad tiene reglas estrictas: verifica que cada PDF comience con `%PDF`, confirma la carátula con el usuario si hay ambigüedad, y reporta honestamente cualquier documento faltante o no disponible. No descarga todos los escritos amicus por defecto para evitar abrumar; solo informa al usuario cuántos hay y ofrece añadir los que desee.

Compatible con✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/danepps/legal-research-skills/tree/HEAD/claude-code/skills/case-prep

Installed? Explore more Programación y desarrollo skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

Preparación de caso SCOTUS → reMarkable

Dado un nombre de caso (y opcionalmente un número de expediente), recopila el conjunto de lectura canónico y lo sube a la tableta bajo <Proyecto>/<Caso>/.

Reglas estrictas

  • Cada documento subido es un PDF real que realmente descargaste. Verifica que cada archivo comience con %PDF antes de subirlo. Nunca construyas una URL de documento manualmente y asumas que funcionó — descárgalo y compruébalo.
  • Primero confirma la carátula y el número de expediente por web. Si el nombre es ambiguo (varios casos admitidos, casos consolidados, nombres de partes comunes), confírmalo con el usuario antes de descargar los escritos del caso equivocado.
  • Informa las ausencias con honestidad. Si un documento aún no se ha presentado, no es público o no se puede encontrar, dilo en el manifiesto final. Nunca sustituyas un documento similar.

Paso 1 — Resolver el caso

  1. Busca en la web el nombre del caso para confirmar la carátula exacta y el número de expediente del Tribunal Supremo (formato NN-NNN, p. ej. 24-316). Buenas fuentes de confirmación: supremecourt.gov, la página del caso en SCOTUSblog, Oyez.
  2. Anota si el caso está consolidado con otros (toma el expediente principal; menciona los acompañantes en el manifiesto).
  3. Anota el estado del alegato: aún no argumentado / argumentado (transcripción disponible) / decidido.

Paso 2 — Descargar documentos (al bloc de notas, mediante curl)

Página del expediente (índice de todas las presentaciones, con enlaces PDF): https://www.supremecourt.gov/search.aspx?filename=/docket/docketfiles/html/public/<EXPEDIENTE>.html Descárgala y extrae los enlaces DocketPDF. El texto de cada entrada identifica la presentación ("Petición de certiorari presentada", "Escrito del peticionario", "Escrito amicus curiae de Estados Unidos", etc.).

Conjunto predeterminado de documentos (en orden de lectura — omite lo que no exista aún; anótalo en el manifiesto):

#DocumentoFuente
00Preguntas presentadashttps://www.supremecourt.gov/qp/<TERMINO>-<numero-de-5-digitos-con-ceros-a-la-izquierda>qp.pdf (p. ej. expediente 24-316 → 24-00316qp.pdf)
01Opinión del tribunal inferiorCourtListener (abajo)
02Petición de certioraripágina del expediente
03Escrito de oposiciónpágina del expediente
04Réplica en fase de certioraripágina del expediente
05Escrito de fondo del peticionariopágina del expediente
06Escrito de fondo del demandadopágina del expediente
07Escrito de réplica de fondopágina del expediente
08Escrito amicus de EE. UU. / Procurador General (si lo hay, de cualquier fase)página del expediente
09Transcripción del alegato oral (si ya se argumentó)https://www.supremecourt.gov/oral_arguments/argument_transcripts/ — los enlaces siguen .../argument_transcripts/<TERMINO>/<expediente>_<sufijo>.pdf; encuentra el enlace real en la página de índice de transcripciones del término

Otros escritos amicus: no los descargues todos por defecto (puede haber docenas). Informa al usuario cuántos se presentaron y ofrécele añadir los que desee.

Opinión del tribunal inferior mediante CourtListener: busca https://www.courtlistener.com/api/rest/v4/search/?q=<nombre del caso>&court=<id del tribunal inferior> o la búsqueda web, haciendo coincidir el número de expediente / carátula de la petición de certiorari (las primeras páginas de la petición identifican precisamente la opinión recurrida). Luego resuelve y descarga el PDF de forma determinista con el helper de la habilidad de investigación legal:

python3 ${CLAUDE_PLUGIN_ROOT}/skills/legal-research/cl_case_tools.py pdf cluster:<id_del_cluster> --out "01 Opinión del tribunal inferior.pdf"

(cluster_id proviene del resultado de búsqueda; una cita del reportero también funciona una vez que existe una). Si no hay PDF en CourtListener ni en el sitio del tribunal, el apéndice de la petición de certiorari contiene la opinión recurrida — indica esa alternativa en lugar de subir algo no verificado.

Usa un User-Agent plausible para navegador en supremecourt.gov (da error 403 con curl simple): curl -sL -A "Mozilla/5.0" -o <archivo> <url>.

Paso 3 — Subir al reMarkable

Herramientas: las herramientas MCP remarkable_* (si no están cargadas: ToolSearch "select:mcp__remarkable__remarkable_upload,mcp__remarkable__remarkable_mkdir,mcp__remarkable__remarkable_browse" — ajusta el prefijo según lo que exponga el servidor conectado).

  1. Primero recorta márgenes — ejecuta crop_pdf.py de esta habilidad en cada PDF para que los documentos se abran sin márgenes en la tableta (el usuario no debería tener que ajustar bordes manualmente): uv run <directorio de esta habilidad>/crop_pdf.py <archivo.pdf> Un código de salida distinto de cero significa que no se encontró un cuadro de contenido plausible — sube ese archivo sin recortar en lugar de fallar.
  2. remarkable_mkdir → <Proyecto>/<Carátula Corta> (p. ej. Preparación SCOTUS/Smith v. Arizona).
  3. Sube cada PDF con el nombre NN Título.pdf según la tabla (conserva los números para que se ordenen en orden de lectura), p. ej. 02 Petición de certiorari.pdf, 06 Escrito de fondo del demandado.pdf.
  4. remarkable_browse la carpeta después para confirmar que todo haya llegado.

Paso 4 — Informar

Entrega al usuario un manifiesto: carátula, número de expediente, fecha/estado del alegato, cada documento subido (con la fecha de presentación cuando el expediente la muestre), cada documento no disponible y por qué, casos acompañantes, y la cantidad de escritos amicus con una oferta para descargar algunos específicos.

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

danepps/legal-research-skills

Build or extend a Zotero collection of verified sources for a project — find the sources (web, catalogs, HeinOnline via an institutional library proxy), add them with full metadata via the Zotero Web API, then run a deterministic anti-hallucination check that every added item must pass. Trigger when the user wants sources gathered into Zotero ("build a library for X", "add the books/articles on X to my Zotero", "populate <collection> with …").

danepps/legal-research-skills

Verify every citation and quotation in an article draft against the real sources — cases via CourtListener + official reporters, scholarship via the user's Zotero library then the open web — and return a graded, footnote-by-footnote report with a "needs your attention" section first, plus a citation-form section (short cites per Bluebook R. 10.9/4.2 and italics/small caps per R. 2.1(a)) decided from the draft alone. Trigger when the user wants a draft cite-checked ("cite-check this", "check the citations/quotes in this draft", "run cite-check on <file>"). Input: a .docx with real Word footnotes (markdown/plain-text fallback). Not a full Bluebook linter — signal order, citation order and cite composition stay out.

danepps/legal-research-skills

Quick, verified citation-finding for a specific proposition — a footnote-filler, not a research memo. Returns a few Supreme Court cites and/or a few scholarly cites (top scholars in flagship journals preferred; student notes only as a last resort), each verified with a pincite and a parenthetical or quote. Trigger when the user asks "find me a cite for X", "what should I cite for this footnote", "I need authority for the proposition that…", or pastes a sentence with an empty footnote.

danepps/legal-research-skills

Deep legal research that fans out multiple agents across free legal sources, verifies every authority, and returns a polished, well-cited memo. Use for case-law research, legal-scholarship / literature reviews, or both. Modes — caselaw | scholarship | both. Trigger when the user wants a thorough doctrinal memo, a survey of the academic debate, an answer grounded in cases/statutes, or a research deep-dive on a legal question.

Skills relacionados