"""仿真浏览器 RPA 示例常量。""" from __future__ import annotations import os from pathlib import Path SKILL_SLUG = "example-simulator-browser-rpa" LOG_LOGGER_NAME = "openclaw.skill.example_simulator_browser_rpa" DEFAULT_TIMEOUT_MS = 15_000 LOGIN_NAVIGATE_TIMEOUT_MS = 30_000 SUBMIT_NAVIGATE_TIMEOUT_MS = 60_000 DEFAULT_DEMO_LOGIN_ID = "demo001" DEFAULT_DEMO_PASSWORD = "demo-password" DEFAULT_DEMO_CAPTCHA = "0000" DEFAULT_DEMO_TOKEN_PIN = "123456" ENV_SIMULATOR_BASE_URL = "SIMULATOR_BASE_URL" ENV_SIMULATOR_LOGIN_ID = "SIMULATOR_LOGIN_ID" ENV_SIMULATOR_PASSWORD = "SIMULATOR_PASSWORD" ENV_SIMULATOR_TOKEN_PIN = "SIMULATOR_TOKEN_PIN" ENV_SIMULATOR_PROFILE_DIR = "SIMULATOR_PROFILE_DIR" _EXAMPLE_ROOT = Path(__file__).resolve().parents[2] DEFAULT_DEMO_APP_PATH = _EXAMPLE_ROOT / "sandbox" / "demo_app.html" def resolve_simulator_base_url() -> str: env = (os.getenv(ENV_SIMULATOR_BASE_URL) or "").strip() if env: return env.rstrip("/") return DEFAULT_DEMO_APP_PATH.as_uri()