- Python 3.12 or higher
- OpenAI API key (set as environment variable
OPENAI_API_KEY)
-
Install uv (Python package manager):
curl -LsSf https://astral.sh/uv/install.sh | sh -
Clone the repository and navigate to the project directory
-
Create virtual environment (optional - uv sync will usually create one automatically):
uv venv
-
Install dependencies:
uv sync
Run tasks with:
uv run python run_agent.py [OPTIONS]--url: URL to crawl--max-steps: amount of steps the agent can make--output: Name of the output directory and zip file-number-of-pages-to-visit: amount of individual websites that should be discovered
uv run python run_agent.py --url https://schooltogo.de --username $USERNAME --password $PASSWORD --output schooltogo_legal.zip --number-of-pages-to-visit 5- Login: Logs in to the page
- Legal: Locates and saves privacy policy, legal notices, and terms of service
- Browsing: Browse through the website and visit at least
-number-of-pages-to-visitpages
All results are saved to the ./tmp directory, organized by task name. Each task folder contains:
Run classification with:
uv run python run_classification.py --input_name [INPUT_NAME] --output_name [OUTPUT_NAME]--input_name: Name of the task to check--output_name: Path to save the PDF report to
# Check the legal task and save the report to report.pdf
uv run python run_classification.py --input_name schooltogo_legal --output_name schooltogo_legal_classificationGenerate report with:
uv run python generate_report.py --input_name [INPUT_NAME] --output_name [OUTPUT_NAME]--input_name: Name of the task to check--output_name: Path to save the PDF report to
uv run python generate_report.py --input_name schooltogo_legal --output_name schooltogo_legal_reportYou can find the full criteria here:
https://www.vidis.schule/wp-content/uploads/sites/10/2024/12/Pruefkriterien-VIDIS-V0.2.pdf
We check the following:
- RDS-CDN-379 (no)
- RDS-CUC-371 (yes)
- RDS-CUC-372 (yes)
- RDS-CUC-373 (yes)
- RDS-CUC-374 (yes)
- RDS-CUC-375 (currently no - which information should we additionally check?)
- RDS-CUC-376 (currently no as discussed - theoretically some possibilities, but would be very complicated)
- RDS-CUC-377 (currently no - already covered in other criteria, not checked separately)
- RDS-CUC-453
- RDS-DEV-380 (no, technically not possible)
- RDS-DEV-381 (no, technically not possible)
- RDS-DEV-466 (no, technically not possible)
- RDS-DSO-383 (yes)
- RDS-DIL-356 (could be done if we ask for AVV)
- RDS-DIL-357 (no, technically not possible)
- RDS-DIL-358 (no, technically not possible)
- RDS-IPF-364 (yes)
- RDS-IPF-365 (yes)
- RDS-IPF-366 (yes)
- RDS-IPF-367 (yes)
- RDS-AGB-368 (yes)
- RDS-AGB-369 (yes)
- RDS-SPE-370 (yes)
- RDS-UBR-387 (no, technically not possible)
- RDS-UBR-388 (no, technically not possible)
- ITS-ENC-359 (yes)
- ITS-ENC-360 (yes)
- ITS-ENC-361 (yes)