Quickstart
Prerequisites​
- Node.js
>=20for documentation site. - Python
>=3.11for AutoPOM-Agent runtime.
Start docs locally​
cd docs
npm install
npm start
Run AutoPOM-Agent (mock adapter)​
cd ..
PYTHONPATH=src python3 -m autopom.cli.main \
--base-url "https://example.com" \
--output-dir "output" \
--pom-language "java" \
--browser-adapter "mock"
Run with guided wizard (recommended)​
bash run.sh
The wizard prompts for URL/language/adapter/crawl limits, handles dependency setup transparently, and prints live crawl progress.
Generated artifacts​
output/models_jsonpage modelsoutput/<language>generated Playwright POM classes (java,javascript,typescript)output/reports/crawl_summary.mdrun summaryoutput/reports/execution_summary.mdmanagerial summary (config + metrics + duration)output/reports/execution_summary.jsonmachine-readable summary payload
Try another POM language​
PYTHONPATH=src python3 -m autopom.cli.main \
--base-url "https://example.com" \
--output-dir "output" \
--pom-language "typescript"
Real browser crawl (Playwright)​
python -m pip install -e ".[browser]"
python -m playwright install chromium
PYTHONPATH=src python3 -m autopom.cli.main \
--base-url "https://vinipx.github.io/AUTOPOM/" \
--output-dir "output-live" \
--pom-language "typescript" \
--browser-adapter "playwright" \
--max-depth 2 \
--max-pages 20
Interactive Capture Mode​
Use this mode if you need to log in manually or navigate to a specific page before starting the mapping process:
PYTHONPATH=src python3 -m autopom.cli.main \
--interactive \
--pom-language "typescript"
- A browser will open.
- Perform any manual steps (Login, Navigation).
- Return to the terminal and press ENTER.
- AutoPOM will capture the current page and generate the POM.
Capture from Existing Browser​
If you already have a browser open with remote debugging enabled:
# Launch Chrome first:
# google-chrome --remote-debugging-port=9222
PYTHONPATH=src python3 -m autopom.cli.main \
--capture http://localhost:9222 \
--pom-language "java"
Runtime visibility​
When running, you will see logs such as:
[CRAWL] Visiting ...[MAP] <PageName> | elements=... | actions=...[SKIP] ... | reason=...