Quick-Start
If you are new to AGILab, this page owns one thing only: the exact commands for the recommended first proof.
That first proof is the built-in flight_telemetry_project run locally from the web
UI. If it works once from end to end, then branch into notebooks, package mode,
or cluster mode. If it fails, use Newcomer First-Failure Recovery.
Fast adoption path:
Step |
Action |
Stop when |
|---|---|---|
|
Open AGILAB Demo for the hosted public UI. |
The Space opens the lightweight |
|
Run the source-checkout commands below and stay on the built-in demo. |
|
|
Run |
|
|
Choose notebook, package, private app, or cluster routes only after the local proof passes once. |
You have one known-good baseline to compare against. |
Prerequisites
Python 3.11+ with uv installed. Use the installer command for your platform from the uv documentation; the common macOS/Linux bootstrap is
curl -LsSf https://astral.sh/uv/install.sh | sh.macOS or Linux shell for the source-checkout installer. On native Windows, use the published package route for the CI-covered CLI first proof, or use WSL2 for the source checkout path until native installer parity is published.
PyCharm and the local web UI are optional. The first proof below uses only a shell by default; IDE run configurations and Streamlit pages are contributor conveniences, not installation requirements.
If you plan to explore remote workers later, keep SSH access for that later step; it is not needed for the first proof path.
Upgrade or first 10 minutes
Use one lane and stop when the first-proof manifest passes. Do not mix source, package, private-app, and cluster variables during the first 10 minutes.
Source checkout, including upgrades after a new release:
git pull --ff-only
./install.sh --install-apps
uv --preview-features extra-build-dependencies run agilab
If startup fails, run a local fallback first:
uv --preview-features extra-build-dependencies run agilab dry-run
uv --preview-features extra-build-dependencies run agilab first-proof --json
uv --preview-features extra-build-dependencies run agilab adoption-report
Published package install or upgrade, CLI proof only:
uv --preview-features extra-build-dependencies tool install --upgrade "agilab[examples]"
agilab first-proof --json
The examples extra installs the agi-apps umbrella, which depends on the
per-app package that contains the public built-in flight_telemetry_project used by
the proof.
Use the UI profile when you want the local Streamlit pages from the published package:
uv --preview-features extra-build-dependencies tool install --upgrade "agilab[ui]"
agilab
The ui extra installs agi-apps and its per-app project packages for
public built-in projects, agi-pages for packaged ANALYSIS page bundles, and
agi-web for portable rich UI islands. A base agilab install stays
command-shell only; install agilab[core] when you only need agilab
dry-run and the lightweight import/runtime smoke.
If you installed AGILAB inside an activated project environment instead of as a
uv tool, upgrade that environment explicitly:
uv pip install --upgrade "agilab[examples]"
agilab first-proof --json
The adoption checkpoint is always the same: run_manifest.json reports
status: pass and the default flight_telemetry_project analysis view opens. If it
does not pass, stay on this lane and use Newcomer First-Failure Recovery
before changing install route. agilab adoption-report reads that manifest
and turns the checkpoint into a short report with missing handoff evidence and
the exact next command.
After that first proof passes, use an app-owned UI surface when you want a richer interactive app without changing the evidence contract. The PyTorch Playground is the public example:
agilab app surface pytorch_playground_project --list
agilab app surface pytorch_playground_project --ui streamlit
agilab app surface pytorch_playground_project --ui hf --no-browser
The generic launcher is the pattern to reuse for future Streamlit, hosted, or alternate UI adapters; the app still owns the runtime and evidence files.
Recommended first proof path
Use this path exactly once before trying anything broader. It is the shortest local path that exercises install, execution, visible analysis, and a machine-readable proof record.
Clone the repository and install the built-in apps:
CHECKOUT="${AGILAB_CHECKOUT:-$HOME/agilab-src}" git clone https://github.com/ThalesGroup/agilab.git "$CHECKOUT" cd "$CHECKOUT" ./install.sh --install-apps
This is the narrow source-checkout path. It installs the public built-in apps and keeps root/app/core test suites opt-in so a first proof does not become a full CI run. On native Windows, prefer the published package route below. The source checkout installer uses POSIX shell scripts, so run that path from WSL2 until native installer parity is published.
If you also want AGILAB to bootstrap local Ollama-backed models, rerun the installer with the model families you want:
./install.sh --install-apps --install-local-models gpt-oss,qwen3-coder,ministral,phi4-mini
For hardened workstations where downloaded shell installers must not run, add
--no-remote-installers. The installer will refuse remote bootstrap scripts such as Ollama or Homebrew installers and leave those prerequisites for your managed package baseline.Supported values are
gpt-oss,qwen,deepseek,qwen3,qwen3-coder,ministral, andphi4-mini. The first family in the list becomes the default WORKFLOW local assistant. For example,gpt-ossselects the Ollama-backedgpt-oss:20bmodel and writes the matchingLAB_LLM_PROVIDER,UOAIC_MODEL, andAGILAB_LLM_*values into the AGILAB environment file.Launch the app:
uv --preview-features extra-build-dependencies run agilab
This starts the app from the source checkout. The source-checkout developer evidence command is the same contract through
tools/newcomer_first_proof.py --json.Run the first-proof manifest check:
If the app fails to start, use:
uv --preview-features extra-build-dependencies run agilab dry-run uv --preview-features extra-build-dependencies run agilab first-proof --json
Then rerun:
uv --preview-features extra-build-dependencies run agilab
The app and all core pages can also be started directly with:
uv --preview-features extra-build-dependencies run --extra ui streamlit run src/agilab/main_page.py
Local UI is intended to stay on loopback. If you intentionally expose it through a reverse proxy, set
AGILAB_PUBLIC_BIND_OK=1plus a real protection indicator such asAGILAB_TLS_TERMINATED=1before using--server.address 0.0.0.0.Use the landing-page first-proof wizard
The web UI landing page exposes the current first-proof path directly:
click
1. INSTALL demoto selectflight_telemetry_projectand run the ORCHESTRATE installclick
2. EXECUTE demoto start the local ORCHESTRATE execution with cluster, benchmark, and service mode offclick
3. OPEN ANALYSISafter evidence exists to open the built-in analysis route
These three proof actions are shown as a compact row on the landing page. They open the target page in a new browser tab so the first-proof guide remains available while ORCHESTRATE or ANALYSIS loads.
If you want to start from a notebook, use the same wizard’s
Create from built-in notebookbutton for AGILAB’s packaged sample; there is no notebook file to locate or upload. The wizard opensPROJECT->Create->From notebookwith the bundled sample already selected; then you click PROJECTCreateand prove the imported project with ORCHESTRATEINSTALLandEXECUTE. For your own local notebook, use PROJECT ->Create->From notebookinstead of the first-proof wizard. Treat that as a separate starting lane: prove either the built-in flight project or a notebook-imported project first, not both at the same time.The notebook lane is the full adoption proof, not only an upload shortcut: notebook -> PROJECT
Create-> ORCHESTRATEINSTALL-> ORCHESTRATEEXECUTE-> ANALYSIS -> WORKFLOWDownload pipeline notebook. The last step is the no-lock-in check: the work remains available aslab_stages.ipynbrunning on the stable, production-gradeagi-coretechnology if the AGILAB UI or distributed runtime is no longer the right interface for the project.The landing page also shows an adoption gate. Treat it as a go/no-go for widening from one user to a controlled team trial: one first proof must have a passing
run_manifest.jsonand the project must have an exportednotebooks/lab_stages.ipynb. This gate does not certify production, public exposure, multi-tenant use, secrets handling, or cluster/service hardening.Before sharing the proof with someone else, keep a handoff bundle: the passing
run_manifest.json, the exportednotebooks/lab_stages.ipynb, the compatibility-report output for that manifest, and a redactedagilab security-check --json --strictresult. That bundle makes the proof portable for review without pretending it is production certification.agilab adoption-reportis the shortcut for checking that bundle from the shell; add--jsonwhen a workflow needs the same status in machine-readable form.Check the first proof outcome
You are past the newcomer hurdle when these are true:
~/log/execute/flight_telemetry/run_manifest.jsonhasstatus: passfresh output exists under
~/log/execute/flight_telemetry/if you start from a notebook,
notebooks/lab_stages.ipynbexists in the imported project as the no-lock-in handoff artifactthe handoff bundle lists the manifest, notebook export, compatibility report, and strict security-check result needed for review
you can open the default
ANALYSISview forflight_telemetry_projectand see the bundled network view as an available route
Only after one lane passes, branch into broader paths
Do not switch to packaged install, external apps, or cluster setup before either the built-in flight proof or your notebook-import proof works once from end to end.
Why this path avoids common adoption friction
No PyCharm dependency: PyCharm run configurations are generated mirrors for IDE debugging. Shell users can run the same flows from the commands on this page or from
tools/run_configs.No cluster dependency: SSH keys, shared cluster paths, and remote workers are intentionally outside the first proof.
No private app dependency: the first proof uses only public built-in apps under
src/agilab/apps/builtin.No mandatory test marathon: installer-managed root, app/page, and core tests are available, but only run when you pass explicit test flags.
One failure lane: if it fails, stay on
flight_telemetry_projectand use Newcomer First-Failure Recovery before changing install route.
If the first proof fails
Do not broaden the problem immediately. Stay on the built-in local path.
Use Newcomer First-Failure Recovery first.
The landing page wizard reads run_manifest.json; if it is missing,
invalid, incomplete, or failing, it shows a recovery checklist plus the exact
first-proof and compatibility-report commands to rerun.
If you want the preflight to also check the built-in installer and seeded helper scripts:
uv --preview-features extra-build-dependencies run agilab first-proof --json --with-install
agilab dry-run is the fast alias for agilab first-proof --dry-run and
checks only CLI/core readiness. It requires a source checkout, agilab[core],
agilab[examples], or agilab[ui] because the bare command-shell package
does not install the runtime stack.
Use --dry-run when startup or import errors appear before you need a full UI
proof contract.
The troubleshooting page covers the common first-run failures:
missing
uvinstaller failure
built-in app path not found
Main page / ORCHESTRATE startup failure
no fresh output under
~/log/execute/flight_telemetry/
If you want the current public support picture before branching into other routes, use Compatibility Matrix. It makes the current validated slices explicit and separates them from routes that are documented but not the recommended newcomer proof.
Alternative install routes
Use these only after the local flight_telemetry_project proof works once.
AGILAB demo:
Self-serve public AGILAB demo hosted on Hugging Face Spaces. The dedicated docs page for this route is AGILAB Demo.
agi-core Kaggle notebook:
Notebook-first proof for users who want the headless agi-core route before
installing or operating the full AGILAB UI.
Published package route (fastest install, less representative of the full product path):
uv --preview-features extra-build-dependencies tool install --upgrade "agilab[examples]"
agilab first-proof --json --max-seconds 60
The base package install is intentionally CLI/core only. Install the UI profile before launching the local Streamlit app:
uv --preview-features extra-build-dependencies tool install --upgrade "agilab[ui]"
agilab
If startup fails, or if you also want a one-command onboarding manifest in this profile, run:
agilab dry-run
agilab first-proof --json
Add --with-ui to the first-proof command only when the proof should also
boot the packaged Streamlit pages.
Optional feature stacks stay out of the base package install. Add
agilab[ui] for the local Streamlit app, agilab[pages] for analysis
page bundles without the full UI profile, agilab[ai] for AI assistant
features such as OpenAI, Mistral, and OpenAI-compatible endpoints like vLLM,
agilab[agents] for the packaged agent workflow client dependencies,
agilab[examples] for notebook/demo helper dependencies, agilab[mlflow]
for tracking, agilab[proof] for detached proof-capsule signatures,
agilab[local-llm] for local model helpers, agilab[viz] for optional
Plotly/matplotlib visualizations, and
agilab[dev] for contributor-only test/build tooling:
uv --preview-features extra-build-dependencies tool install --upgrade "agilab[ui,agents,examples,viz,mlflow,proof,local-llm]"
agi-core demo:
Use agi-core Demo when you intentionally want the notebook-first runtime path before the web UI.
Validation commands
The installer keeps test suites opt-in so the default first proof stays fast. Use these commands when you explicitly want validation during install.
For public built-in apps plus installer-managed root, app/page, and core tests:
./install.sh --non-interactive --install-apps builtin --test-root --test-apps --test-core
For an external apps repository available on your machine:
./install.sh --non-interactive \
--apps-repository /path/to/apps-repository \
--install-apps all \
--test-root \
--test-apps \
--test-core
For a trusted app project published as a PyPI agi-app-* package, use either
the web UI or the packaged CLI. In the UI, open PROJECT, expand
agi-app from PyPI, choose a promoted catalog agi-app or enter an exact
manual requirement, run Check agi-app, review Python compatibility,
wheel/sdist availability, entry-point metadata, hashes, and advertised
provenance/signature status, then confirm and click Install agi-app.
AGILAB installs the package into the current Python environment with
uv pip install --python and discovers the project through the package’s
agilab.apps entry point. The same expander includes an Installed
maintenance drawer that can update or remove installed apps after explicit
confirmation.
The CLI exposes the same management surface:
agilab app search weather
agilab app check agi-app-weather-forecast
agilab app install agi-app-weather-forecast
agilab app list
agilab app update agi-app-weather-forecast
agilab app remove agi-app-weather-forecast
Refresh PROJECT or restart AGILAB if a newly installed or removed project is
not reflected immediately. This PyPI path is separate from APPS_REPOSITORY,
which remains the source-checkout route for external app repositories.
Private apps or framework contributor setup
Only do this after the public built-in proof path is working.
Before working on private apps that depend on the public AGILab framework, initialise the pinned submodule:
git submodule update --init --recursive
Cluster installs
If you want to install on a cluster, the installer must have SSH key access or
credentials with permission to deploy workers. See Cluster for the full
workflow. pycharm/setup_pycharm.py mirrors web interface run configurations
to ~/log/execute/<app>/AGI_*.py for IDE users, while shell users can keep
using generated snippets and tools/run_configs directly.
Next steps
Demos if you want browser-first entry points instead of the local first proof.
agi-core Demo if you intentionally want the
agi-corenotebook path.Agent Workflows if you are working inside the AGILAB repository and want the prepared Codex, Claude, Aider, or OpenCode developer paths.
Cluster only after the local proof works and you are ready for SSH or multi-node execution.
Support
Support: open an issue on GitHub
License
New BSD. See License File.