agentsclimarketplace

Webwright legal pl

Skill matematicsolutions/awesome-matematic-skills-pl/orzecznictwo-zrodla/skills/webwright-legal-pl

Pobierz orzeczenia i akty prawne z polskich serwisów sądowych niedostępnych przez MCP (orzeczenia.ms.gov.pl, sn.pl, trybunal.gov.pl) używając Playwright. Użyj gdy potrzebujesz wyroku po sygnaturze z MS, SN lub TK, albo gdy mcp-saos nie ma danego orzeczenia.From its SKILL.md

Install
npx -y skills add matematicsolutions/awesome-matematic-skills-pl --skill webwright-legal-pl

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 5 stars5 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its file declares

Copied from the file, not written here

The file declares its own license as Apache-2.0. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

5.5 KB, ~1.8k tokens by cl100k_base, as published. Nobody here has run it

webwright-legal-pl

Skill do pobierania orzeczeń z polskich serwisów prawnych niedostępnych przez istniejące MCP konektory. Wrapper nad Webwright (Playwright Firefox, code-as-action) wyspecjalizowany pod polskie domeny.

Kiedy używać

SerwisURLKiedy
Portal Orzeczeń MSorzeczenia.ms.gov.plorzeczenia sądów powszechnych (SA, SO, SR) niedostępne w mcp-saos
Sąd Najwyższywww.sn.pl/orzecznictwowyroki SN, gdy mcp-saos / SAOS nie maja konkretnego orzeczenia (uzupelnienie zrodla, nie zastapienie)
Trybunał Konstytucyjnytrybunal.gov.plwyroki TK
EUR-Lex PLeur-lex.europa.eurozporządzenia EU w wersji PL (RODO, AI Act)

Zależności (one-time setup)

Sklonuj Webwright do dowolnego katalogu i zainstaluj Playwright:

git clone https://github.com/microsoft/webwright --depth=1
pip install playwright
playwright install firefox

Ścieżkę do lokalnego klonu Webwright ustaw raz w zmiennej środowiskowej WEBWRIGHT_HOME - skille i skrypty w tym pakiecie odczytują ją zamiast hardcodowanych ścieżek.

Tryby działania

1. Pobierz orzeczenie po sygnaturze (/webwright-legal-pl:orzeczenie)

Referencyjny skrypt: scripts/fetch_orzeczenie.py (gotowy do uruchomienia, ~150 wierszy, Playwright Chromium, sn.pl).

python scripts/fetch_orzeczenie.py --sygnatura "III CZP 1/24" --out outputs/orzeczenia
# -> outputs/orzeczenia/iii-czp-1-24/orzeczenie.md + meta.json + 3 screenshoty

Walidacja na żywym sn.pl (2026-05-27):

SygnaturaWynikSparsowano
I CSK 100/22postanowienie SN z 18 marca 2022 r.data 2022-03-18, link do PDF
III CZP 1/24postanowienie SN z 4 lipca 2024 r.data 2024-07-04, link do PDF

Oba post-2016, czyli poza zasięgiem mcp-saos. Skrypt parsuje typ orzeczenia (wyrok/postanowienie/uchwala) z nagłówka wyników i datę z polskiej formy ("z dnia 18 marca 2022 r." -> ISO 2022-03-18). Robi 3 screenshoty (formularz / wyniki / detal) jako dowód wizualny dla self-verify.

Dla nowej domeny (orzeczenia.ms.gov.pl, trybunal.gov.pl) skopiuj fetch_orzeczenie.py i podmień selektory formularza po wykonaniu ARIA snapshot - patrz workflow niżej.

2. Szukaj orzeczeń po słowie kluczowym (/webwright-legal-pl:szukaj)

Produkuje listę JSON z matchującymi orzeczeniami:

python szukaj_orzeczen.py --fraza "AI Act odpowiedzialnosc" --sad "Sąd Apelacyjny" --limit 10
# -> outputs/szukaj/<slug>/wyniki.json

3. Pobierz akt prawny z EUR-Lex (/webwright-legal-pl:eurlex)

Referencyjny skrypt: scripts/fetch_eurlex.py (Playwright Chromium, ~200 wierszy). Komplementarny do eu-sparql-search: SPARQL znajduje akty semantycznie, ten skrypt pobiera pełną treść konkretnego CELEX (do citation grounding i audit bundle).

python scripts/fetch_eurlex.py --celex 32024R1689 --out outputs/eurlex
# -> outputs/eurlex/32024R1689/akt.md + meta.json + screenshot.png

python scripts/fetch_eurlex.py --celex 32016R0679 --lang EN   # RODO po angielsku

EUR-Lex jest za CloudFront WAF (HTTP 202 + challenge), więc curl zwraca pustkę - skrypt używa headless Chromium, który challenge automatycznie przechodzi.

Walidacja na żywym EUR-Lex (2026-05-27):

CELEXAktSparsowano
32024R1689AI Act (rozporządzenie 2024/1689)data 2024-07-12, ELI, PDF PL, pełny opisowy tytuł
32016R0679RODO (rozporządzenie 2016/679)data 2016-05-04, ELI, PDF PL, pełny opisowy tytuł

Parser radzi sobie z dwoma formatami daty (12/07/2024 w headerze + 12.7.2024 w treści Dz.U.) i filtruje link PDF wg parametru --lang (EUR-Lex renderuje 20+ linków PDF, po jednym na język UE).

Format wyjściowy (kontrakt z PATRON)

Każdy pobrany dokument trafia do outputs/<typ>/<slug>/:

meta.json          -> {sygnatura, sad, data, typ, url, pobrano_at, zrodlo}
orzeczenie.md      -> # <sygnatura>\n\n**Sąd:** ...\n\n<treść>
screenshot_*.png   -> dowód wizualny dla self-verify

meta.json jest zgodny ze schematem oczekiwanym przez citation-grounding-pl oraz legal-ai-audit-bundle: pola url i pobrano_at umożliwiają późniejszy audit trail.

Workflow (Webwright standard)

  1. Plan - zapisz critical points do plan.md
  2. Explore - scratch Playwright script, ARIA snapshot serwisu
  3. Author final_script.py w final_runs/run_<id>/
  4. Execute - uruchom, zapisz screenshots
  5. Self-verify - sprawdź CP przez Read na PNG + log

Viewport zawsze {"width": 1280, "height": 1800}. Nigdy full_page=True. Przeglądarka: Firefox (playwright.firefox.launch(headless=True)).

Uwagi RODO

  • Dane klientów NIGDY nie trafiają do URL ani formularzy zewnętrznych serwisów
  • Pobieramy tylko publiczne orzeczenia (anonimizowane przez sądy)
  • Screenshots lądują lokalnie w outputs/ - nie wysyłaj ich dalej bez sanityzacji
  • Pliki outputs/ NIE idą do git

Slash Commands

  • /webwright-legal-pl:orzeczenie <sygnatura> [sąd]
  • /webwright-legal-pl:szukaj <fraza> [sąd] [limit]
  • /webwright-legal-pl:eurlex <celex-id>

What ships with it: 5 files

20.5 KB alongside SKILL.md, 2 of them executable

commands/

scripts/

Gives 0 of the 12 instructions most legal skills give in ~1.8k tokens

Counted across 234 of the 234 authors here whose files we hold, read 2026-08-07

  • Use text operators for text fieldsin 11 of 234, across 6 files
  • Consult qualified counsel before usein 11 of 234, across 3 files
  • Use PatentSearch API for patent searchesin 10 of 234, across 5 files
  • Confirm jurisdiction, employment type, and required clausesin 9 of 234, across 2 files
  • Choose a document template and tailor role-specific termsin 9 of 234, across 2 files
  • Validate compensation, benefits, and compliance requirementsin 9 of 234, across 2 files
  • Add signature, confidentiality, and IP assignment terms as neededin 9 of 234, across 2 files
  • Open the implementation playbook for detailed templatesin 9 of 234, across 2 files
  • Use TSDR for trademark data retrievalin 9 of 234, across 4 files
  • Ask for clarification if required inputs are missingin 8 of 234, across 2 files
  • Set the USPTO_API_KEY environment variablein 8 of 234, across 3 files
  • Use the uspto-opendata-python library for PEDSin 8 of 234, across 3 files

Said here and by no other author read

  • set the webwright path in an environment variable
  • install playwright and firefox
  • record critical points in a plan file
  • take an ARIA snapshot of the target site
  • author a final execution script
  • execute the script and save screenshots

Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.