Skip to content
Back to skills

Webwright Legal Pl

ASecurity

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.

  • 6 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 19, 2026
ai-agentspythongobashawsgitapi

Works with

  • api
  • mcp

Security analysis

A96/100
  • mediumInstalls packages at runtime which could introduce malicious dependencies

Pro scans all 6 files and shows the line behind each finding

Scanned September 19, 2026

npx -y skills add matematicsolutions/awesome-matematic-skills-pl --skill webwright-legal-pl --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Webwright Legal Pl?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Webwright Legal Pl
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/matematicsolutions-webwright-legal-pl/badge)](https://www.skillsdirectory.com/skills/matematicsolutions-webwright-legal-pl)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: webwright-legal-pl
description: 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.
allowed-tools: Bash, Read, Write, Edit
license: Apache-2.0
data-residency: local
requires-human-approval: false
pii-egress: none
---

# 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ć

| Serwis | URL | Kiedy |
|--------|-----|-------|
| Portal Orzeczeń MS | orzeczenia.ms.gov.pl | orzeczenia sądów powszechnych (SA, SO, SR) niedostępne w mcp-saos |
| Sąd Najwyższy | www.sn.pl/orzecznictwo | wyroki SN, gdy mcp-saos / SAOS nie maja konkretnego orzeczenia (uzupelnienie zrodla, nie zastapienie) |
| Trybunał Konstytucyjny | trybunal.gov.pl | wyroki TK |
| EUR-Lex PL | eur-lex.europa.eu | rozporządzenia EU w wersji PL (RODO, AI Act) |

## Zależności (one-time setup)

Sklonuj Webwright do dowolnego katalogu i zainstaluj Playwright:

```bash
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`](scripts/fetch_orzeczenie.py) (gotowy do uruchomienia, ~150 wierszy, Playwright Chromium, sn.pl).

```bash
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):

| Sygnatura | Wynik | Sparsowano |
|---|---|---|
| `I CSK 100/22` | postanowienie SN z 18 marca 2022 r. | data 2022-03-18, link do PDF |
| `III CZP 1/24` | postanowienie 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:
```bash
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`](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).

```bash
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):

| CELEX | Akt | Sparsowano |
|---|---|---|
| `32024R1689` | AI Act (rozporządzenie 2024/1689) | data 2024-07-12, ELI, PDF PL, pełny opisowy tytuł |
| `32016R0679` | RODO (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>`

Files in this skill

  • SKILL.md5.5 KB
  • commands/eurlex.md1.5 KB
  • commands/orzeczenie.md1.4 KB
  • commands/szukaj.md1.6 KB
  • scripts/fetch_eurlex.py8.7 KB
  • scripts/fetch_orzeczenie.py7.2 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.