# URL validation for external plugins@field_validator("url")@classmethoddefvalidate_url(cls,url:str|None)->str|None:ifurl:returnSecurityValidator.validate_url(url)# Validates against SSRFreturnurl# Script validation for STDIO plugins@field_validator("script")@classmethoddefvalidate_script(cls,script:str|None)->str|None:ifscript:file_path=Path(script)ifnotfile_path.is_file():raiseValueError(f"Script {script} does not exist")iffile_path.suffix!=".py":raiseValueError(f"Script {script} must have .py extension")returnscript