AGILAB Streamlit UI dependency bundle and compatibility imports
Project description
AGI-GUI
agi-gui provides the UI dependency bundle for Streamlit pages. It depends on the headless agi-env runtime
and adds reusable page helpers and UI packages.
Quick Install
pip install agi-gui
Use agi-env for worker/headless runtimes. Use agi-gui for Streamlit pages and local UI sessions.
File Picker
agi_gui.file_picker provides a reusable Streamlit popover picker for pages that need server-side path selection
without exposing arbitrary filesystem access.
from agi_gui.file_picker import agi_file_picker
selected_path = agi_file_picker(
"Browse dataframe",
roots={"Project": active_app_export_dir},
key=f"{project_name}:dataframe_picker",
patterns=["*.csv", "*.parquet", "*.json"],
container=st.sidebar,
)
The picker validates manual paths and dataframe selections against the configured roots, keeps widget keys namespaced, and can optionally save uploaded files when the caller provides an explicit upload_dir.
UX Widgets
agi_gui.ux_widgets provides small compatibility wrappers for newer Streamlit primitives. Pages can adopt modern controls while still running on older UI runtimes.
from agi_gui.ux_widgets import compact_choice, status_container, toast
selected = compact_choice(
st.sidebar,
"Stages file",
available_stages_files,
key="index_page",
default=available_stages_files[0],
)
with status_container(st, "Running pipeline...", state="running") as status:
run_pipeline()
status.update(label="Pipeline completed", state="complete")
toast(st, "Pipeline completed", state="success")
compact_choice uses st.segmented_control or st.pills when available and falls back to selectbox for long lists or older Streamlit versions.
Widget Registry
agi_gui.widget_registry provides a typed registry for reusable widgets. It gives pages and docs a single discovery point without breaking direct imports from agi_gui.file_picker or agi_gui.ux_widgets.
from agi_gui import default_widget_registry, get_widget
registry = default_widget_registry()
rows = registry.as_rows()
file_picker = get_widget("file_picker")
same_picker = get_widget("agi_file_picker")
The default registry includes file selection, compact choice, action buttons, confirmation, status, empty-state, notice, and toast widgets.
Repository
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file agi_gui-2026.6.20.tar.gz.
File metadata
- Download URL: agi_gui-2026.6.20.tar.gz
- Upload date:
- Size: 28.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4b3e9d4010fa213b8e296a1bd4686f14bb55ab759f1987518fe52773e5f136ce
|
|
| MD5 |
5317087a0e2fd07b8ae3ba2d61f1710e
|
|
| BLAKE2b-256 |
c02f170bd191b0f76a4f50b35d24d307515358505156fb8e1838582f67fa849d
|
Provenance
The following attestation bundles were made for agi_gui-2026.6.20.tar.gz:
Publisher:
pypi-publish.yaml on ThalesGroup/agilab
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
agi_gui-2026.6.20.tar.gz -
Subject digest:
4b3e9d4010fa213b8e296a1bd4686f14bb55ab759f1987518fe52773e5f136ce - Sigstore transparency entry: 1901160858
- Sigstore integration time:
-
Permalink:
ThalesGroup/agilab@3679adf575d2e2e814a0cb8163d67a6daccffa7a -
Branch / Tag:
refs/heads/main - Owner: https://github.com/ThalesGroup
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi-publish.yaml@3679adf575d2e2e814a0cb8163d67a6daccffa7a -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file agi_gui-2026.6.20-py3-none-any.whl.
File metadata
- Download URL: agi_gui-2026.6.20-py3-none-any.whl
- Upload date:
- Size: 23.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fb3e220a13aa82c2696cf8114d82648f150689e31364d80a7df1b3db19f2d826
|
|
| MD5 |
c05c2ffb2dc20557aca5f4437ee690ff
|
|
| BLAKE2b-256 |
5470e699923d40773bc56d8a911c45253e1d38f9d57da88e8acb28acb0e1be12
|
Provenance
The following attestation bundles were made for agi_gui-2026.6.20-py3-none-any.whl:
Publisher:
pypi-publish.yaml on ThalesGroup/agilab
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
agi_gui-2026.6.20-py3-none-any.whl -
Subject digest:
fb3e220a13aa82c2696cf8114d82648f150689e31364d80a7df1b3db19f2d826 - Sigstore transparency entry: 1901161148
- Sigstore integration time:
-
Permalink:
ThalesGroup/agilab@3679adf575d2e2e814a0cb8163d67a6daccffa7a -
Branch / Tag:
refs/heads/main - Owner: https://github.com/ThalesGroup
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi-publish.yaml@3679adf575d2e2e814a0cb8163d67a6daccffa7a -
Trigger Event:
workflow_dispatch
-
Statement type: