ANALYSIS

Introduction

The Analysis page is the catalog for web views that belong to your AGILab installation. It lets you pick which views should appear on the main landing page and launch any of them in an isolated sidecar session for a richer interactive experience.

Main Content Area

AGILab scans ${AGILAB_PAGES_ABS} for installed page bundles and Python files that expose an entrypoint such as src/<module>/<module>.py (or main.py / app.py). The page grid lists every discovered bundle so you can preview what is available on disk.

Use the multi-select control to choose which pages are shown as quick-access shortcuts for analyzing the selected project. The selection is written to src/<project>/src/app_settings.toml in the [pages] section under view_module. Only the names you choose are persisted for the active project; every project keeps its own list.

You can also create a complete starter bundle directly from this page using Create in the Create from template tab. It creates a minimal pyproject and runnable Streamlit module so the page is immediately usable and ready to be customized. You can optionally clone an existing app page as a starting point from the same panel before clicking Create.

Each selected view appears as a button. Clicking it launches the bundle in a dedicated web process (one port per view, per session) using the nearest virtual environment (.venv/venv in the bundle or the directories pointed to ${AGILAB_VENVS_ABS} and ${AGILAB_PAGES_VENVS_ABS}). The child app is then embedded via iframe and a Back to Analysis control keeps navigation lightweight.

Tips & Notes

  • Views are ordinary web projects. Bundles that expose a pyproject.toml and a src/<module>/<module>.py entry point are automatically picked up.

  • Built-in IDE pages (PROJECT, ORCHESTRATE, PIPELINE, ANALYSIS) always remain available; page bundles simply add extra entries to the Analysis catalogue when the project opts into them.

  • AGILab caches the list per project, so the Analysis grid reflects the exact configuration stored in app_settings.toml.

  • If a view needs its own Python environment, place it alongside the page bundle (.venv or venv) or in the shared directories referenced by the AGILAB_VENVS_ABS / AGILAB_PAGES_VENVS_ABS environment variables. Analysis automatically picks the first interpreter that exists when spinning up the sidecar process.

Troubleshooting and checks

If analysis view discovery is unexpected, use these checks:

  • If the list is empty, confirm the bundle folder contains pyproject.toml and src/<module>/<module>.py.

  • If a bundle is not launchable, verify that no syntax error blocks startup and that the bundle has either .venv/venv or a valid shared interpreter under ${AGILAB_VENVS_ABS} / ${AGILAB_PAGES_VENVS_ABS}.

  • If a launch opens a blank frame, confirm the web process starts on the expected port and that your browser blocks mixed local/remote content.

  • If the selected bundle list is not saved, check write permission on src/<project>/src/app_settings.toml.

See also