LICENSE
README.md
pyproject.toml
src/autosaxs/__init__.py
src/autosaxs.egg-info/PKG-INFO
src/autosaxs.egg-info/SOURCES.txt
src/autosaxs.egg-info/dependency_links.txt
src/autosaxs.egg-info/entry_points.txt
src/autosaxs.egg-info/requires.txt
src/autosaxs.egg-info/top_level.txt
src/autosaxs/cli/__init__.py
src/autosaxs/cli/cli.py
src/autosaxs/cli/deferred_pip_upgrade.py
src/autosaxs/cli/package_update.py
src/autosaxs/core/__init__.py
src/autosaxs/core/context.py
src/autosaxs/core/event_bus.py
src/autosaxs/core/gnom.py
src/autosaxs/core/gnom_quality.py
src/autosaxs/core/guinier.py
src/autosaxs/core/integrator.py
src/autosaxs/core/kratky.py
src/autosaxs/core/path_expression.py
src/autosaxs/core/pddf.py
src/autosaxs/core/processor.py
src/autosaxs/core/report.py
src/autosaxs/core/report_fragments.py
src/autosaxs/core/utils.py
src/autosaxs/core/viewer.py
src/autosaxs/core/viewer_interface.py
src/autosaxs/foreign/__init__.py
src/autosaxs/foreign/aiAssistantFramework/__init__.py
src/autosaxs/foreign/aiAssistantFramework/lib/__init__.py
src/autosaxs/foreign/aiAssistantFramework/lib/llm.py
src/autosaxs/foreign/supervised_ml/__init__.py
src/autosaxs/foreign/supervised_ml/plot_util.py
src/autosaxs/foreign/supervised_ml/util.py
src/autosaxs/foreign/supervised_ml/whittaker_smooth.py
src/autosaxs/pipeline/__init__.py
src/autosaxs/pipeline/api.py
src/autosaxs/pipeline/cli_interface.py
src/autosaxs/pipeline/gui.py
src/autosaxs/pipeline/gui_interface.py
src/autosaxs/pipeline/saxs_controller.py
src/autosaxs/resources/__init__.py
src/autosaxs/resources/agent_quickstart.txt
src/autosaxs/resources/config_base.conf
src/autosaxs/resources/ai_skills/__init__.py
src/autosaxs/resources/ai_skills/router_template.md
src/autosaxs/resources/ai_skills/subskill_template.md
src/autosaxs/resources/help/__init__.py
src/autosaxs/resources/help/guisaxs_liveview_loader.py
src/autosaxs/resources/help/guisaxs_liveview/__init__.py
src/autosaxs/resources/help/guisaxs_liveview/manifest.yaml
src/autosaxs/resources/help/guisaxs_liveview/__pycache__/__init__.cpython-313.pyc
src/autosaxs/resources/help/guisaxs_liveview/html/analysis_monodisperse.html
src/autosaxs/resources/help/guisaxs_liveview/html/analysis_polydisperse.html
src/autosaxs/resources/help/guisaxs_liveview/html/calibration.html
src/autosaxs/resources/help/guisaxs_liveview/html/concepts.html
src/autosaxs/resources/help/guisaxs_liveview/html/index.html
src/autosaxs/resources/help/guisaxs_liveview/html/main_window.html
src/autosaxs/resources/help/guisaxs_liveview/html/mask.html
src/autosaxs/resources/help/guisaxs_liveview/html/quickstart.html
src/autosaxs/resources/help/guisaxs_liveview/html/troubleshooting.html
src/autosaxs/resources/help/guisaxs_liveview/html/algorithms/calibrate.html
src/autosaxs/resources/help/guisaxs_liveview/html/algorithms/fit_distances.html
src/autosaxs/resources/help/guisaxs_liveview/html/algorithms/fit_sizes.html
src/autosaxs/resources/help/guisaxs_liveview/html/algorithms/guinier.html
src/autosaxs/resources/help/guisaxs_liveview/html/algorithms/index.html
src/autosaxs/resources/help/guisaxs_liveview/html/algorithms/integrate.html
src/autosaxs/resources/help/guisaxs_liveview/html/algorithms/integrate_proxy.html
src/autosaxs/resources/help/guisaxs_liveview/html/algorithms/model_bodies.html
src/autosaxs/resources/help/guisaxs_liveview/html/algorithms/model_dam.html
src/autosaxs/resources/help/guisaxs_liveview/html/algorithms/model_density.html
src/autosaxs/resources/help/guisaxs_liveview/html/algorithms/model_mixture.html
src/autosaxs/resources/help/guisaxs_liveview/html/algorithms/subtract.html
src/autosaxs/resources/help/guisaxs_liveview/html/assets/cal_create_mask.png
src/autosaxs/resources/help/guisaxs_liveview/html/assets/cal_overview.png
src/autosaxs/resources/help/guisaxs_liveview/html/assets/cal_run.png
src/autosaxs/resources/help/guisaxs_liveview/html/assets/main_analysis_icons.png
src/autosaxs/resources/help/guisaxs_liveview/html/assets/main_buffer_wizard.png
src/autosaxs/resources/help/guisaxs_liveview/html/assets/main_drop_tif.png
src/autosaxs/resources/help/guisaxs_liveview/html/assets/main_mono_icon.png
src/autosaxs/resources/help/guisaxs_liveview/html/assets/main_overview.png
src/autosaxs/resources/help/guisaxs_liveview/html/assets/main_poly_icon.png
src/autosaxs/resources/help/guisaxs_liveview/html/assets/main_process_history.png
src/autosaxs/resources/help/guisaxs_liveview/html/assets/main_s_buffer.png
src/autosaxs/resources/help/guisaxs_liveview/html/assets/main_set_buffer.png
src/autosaxs/resources/help/guisaxs_liveview/html/assets/main_set_calibration.png
src/autosaxs/resources/help/guisaxs_liveview/html/assets/main_subtraction_wizard.png
src/autosaxs/resources/help/guisaxs_liveview/html/assets/mask_overview.png
src/autosaxs/resources/help/guisaxs_liveview/html/assets/mask_save.png
src/autosaxs/resources/help/guisaxs_liveview/html/assets/mono_overview.png
src/autosaxs/resources/help/guisaxs_liveview/html/assets/poly_overview.png
src/autosaxs/resources/help/guisaxs_liveview/style/help.css
src/autosaxs/resources/prompts/visual/guinier_plot.txt
src/autosaxs/resources/prompts/visual/kratky_plot.txt
src/autosaxs/resources/prompts/visual/loglog_plot.txt
src/autosaxs/resources/prompts/visual/saxs_1d.txt
src/autosaxs/resources/readme/__init__.py
src/autosaxs/resources/readme/autosaxs_skills_explained.py
src/autosaxs/resources/readme/readme_header.md
src/autosaxs/resources/readme/skills_docs_header.md
src/autosaxs/resources/readme/images/hero_model_dam_frequency.gif
src/autosaxs/resources/schemas/report_summary.schema.json
src/autosaxs/skill/__init__.py
src/autosaxs/skill/analyze_kratky.py
src/autosaxs/skill/average.py
src/autosaxs/skill/common.py
src/autosaxs/skill/config.py
src/autosaxs/skill/deps.py
src/autosaxs/skill/fit_bodies.py
src/autosaxs/skill/fit_dammif.py
src/autosaxs/skill/gnom_fit_common.py
src/autosaxs/skill/integrate.py
src/autosaxs/skill/integrate_proxy.py
src/autosaxs/skill/model_bodies.py
src/autosaxs/skill/plot.py
src/autosaxs/skill/plot_2d.py
src/autosaxs/skill/process_monodisperse.py
src/autosaxs/skill/report_individual.py
src/autosaxs/skill/report_summary.py
src/autosaxs/skill/skill_wrap.py
src/autosaxs/skill/subtract.py
src/autosaxs/skill/calibrate/__init__.py
src/autosaxs/skill/calibrate/autocalib.py
src/autosaxs/skill/calibrate/autocalib_refine.py
src/autosaxs/skill/calibrate/autocalib_viz.py
src/autosaxs/skill/fit_distances/__init__.py
src/autosaxs/skill/fit_distances/artifacts.py
src/autosaxs/skill/fit_distances/distances.py
src/autosaxs/skill/fit_distances/optimize.py
src/autosaxs/skill/fit_distances/quality_io.py
src/autosaxs/skill/fit_distances/runners.py
src/autosaxs/skill/fit_distances/vis.py
src/autosaxs/skill/fit_guinier/__init__.py
src/autosaxs/skill/fit_guinier/guinier.py
src/autosaxs/skill/fit_mixture/__init__.py
src/autosaxs/skill/fit_mixture/mixture.py
src/autosaxs/skill/fit_sizes/__init__.py
src/autosaxs/skill/fit_sizes/artifacts.py
src/autosaxs/skill/fit_sizes/ensemble.py
src/autosaxs/skill/fit_sizes/optimize.py
src/autosaxs/skill/fit_sizes/parametric.py
src/autosaxs/skill/fit_sizes/quality_io.py
src/autosaxs/skill/fit_sizes/runners.py
src/autosaxs/skill/fit_sizes/sizes.py
src/autosaxs/skill/fit_sizes/vis.py
src/autosaxs/skill/fit_sizes/yaml_io.py
src/autosaxs/skill/model_dam/__init__.py
src/autosaxs/skill/model_dam/dam.py
src/autosaxs/skill/model_dam/vis.py
src/autosaxs/skill/model_density/__init__.py
src/autosaxs/skill/model_density/density.py
src/autosaxs/skill/model_density/vis.py
src/autosaxs/skill/model_dr_mc/__init__.py
src/autosaxs/skill/model_dr_mc/artifacts.py
src/autosaxs/skill/model_dr_mc/runner.py
src/autosaxs/skill/model_dr_mc/vis.py
src/autosaxs/skill/model_mixture/__init__.py
src/autosaxs/skill/model_mixture/mixture.py
src/guisaxs_liveview/__init__.py
src/guisaxs_liveview/__main__.py
src/guisaxs_liveview/viewer3d.py
src/guisaxs_skills/__init__.py
src/guisaxs_skills/__main__.py
src/guisaxs_skills/app.py
src/guisaxs_skills/core/event_bus.py
src/guisaxs_skills/core/events.py
src/guisaxs_skills/core/models.py
src/guisaxs_skills/core/paths.py
src/guisaxs_skills/core/settings.py
src/guisaxs_skills/liveview/__init__.py
src/guisaxs_skills/liveview/app.py
src/guisaxs_skills/liveview/window.py
src/guisaxs_skills/liveview/controller/__init__.py
src/guisaxs_skills/liveview/controller/controller.py
src/guisaxs_skills/liveview/controller/history.py
src/guisaxs_skills/liveview/controller/ingest.py
src/guisaxs_skills/liveview/controller/monodisperse.py
src/guisaxs_skills/liveview/controller/polydisperse.py
src/guisaxs_skills/liveview/controller/processing_mode.py
src/guisaxs_skills/liveview/controller/session.py
src/guisaxs_skills/liveview/ingest/__init__.py
src/guisaxs_skills/liveview/ingest/dir_tree_observer.py
src/guisaxs_skills/liveview/ingest/poll_watcher.py
src/guisaxs_skills/liveview/ingest/stability.py
src/guisaxs_skills/liveview/ingest/tiff_revision.py
src/guisaxs_skills/liveview/ingest/watcher.py
src/guisaxs_skills/liveview/pipeline/__init__.py
src/guisaxs_skills/liveview/pipeline/executor.py
src/guisaxs_skills/liveview/pipeline/jobs.py
src/guisaxs_skills/liveview/pipeline/monodisperse_pipeline.py
src/guisaxs_skills/liveview/pipeline/polydisperse_pipeline.py
src/guisaxs_skills/liveview/pipeline/queue.py
src/guisaxs_skills/liveview/services/__init__.py
src/guisaxs_skills/liveview/services/artifacts.py
src/guisaxs_skills/liveview/services/dam_models.py
src/guisaxs_skills/liveview/services/denss_models.py
src/guisaxs_skills/liveview/services/skills.py
src/guisaxs_skills/liveview/services/calibration/__init__.py
src/guisaxs_skills/liveview/services/calibration/display.py
src/guisaxs_skills/liveview/services/calibration/storage.py
src/guisaxs_skills/liveview/services/history/__init__.py
src/guisaxs_skills/liveview/services/history/middle_from_stem.py
src/guisaxs_skills/liveview/services/history/right_from_stem.py
src/guisaxs_skills/liveview/session/__init__.py
src/guisaxs_skills/liveview/session/output_paths.py
src/guisaxs_skills/liveview/session/persistence.py
src/guisaxs_skills/liveview/session/state.py
src/guisaxs_skills/liveview/session/workdir.py
src/guisaxs_skills/liveview/ui/__init__.py
src/guisaxs_skills/liveview/ui/attention.py
src/guisaxs_skills/liveview/ui/icons.py
src/guisaxs_skills/liveview/ui/log_panel.py
src/guisaxs_skills/liveview/ui/skill_form_utils.py
src/guisaxs_skills/liveview/ui/panels/__init__.py
src/guisaxs_skills/liveview/ui/panels/left.py
src/guisaxs_skills/liveview/ui/panels/middle.py
src/guisaxs_skills/liveview/ui/panels/right/__init__.py
src/guisaxs_skills/liveview/ui/panels/right/config_restore.py
src/guisaxs_skills/liveview/ui/panels/right/form_helpers.py
src/guisaxs_skills/liveview/ui/panels/right/panel.py
src/guisaxs_skills/liveview/ui/panels/right/monodisperse/__init__.py
src/guisaxs_skills/liveview/ui/panels/right/monodisperse/artifact_presenter.py
src/guisaxs_skills/liveview/ui/panels/right/monodisperse/config_sync.py
src/guisaxs_skills/liveview/ui/panels/right/monodisperse/coordinator.py
src/guisaxs_skills/liveview/ui/panels/right/monodisperse/format_display.py
src/guisaxs_skills/liveview/ui/panels/right/monodisperse/gnom_pane.py
src/guisaxs_skills/liveview/ui/panels/right/monodisperse/guinier_pane.py
src/guisaxs_skills/liveview/ui/panels/right/monodisperse/plot_clicks.py
src/guisaxs_skills/liveview/ui/panels/right/monodisperse/plots.py
src/guisaxs_skills/liveview/ui/panels/right/monodisperse/shape_pane.py
src/guisaxs_skills/liveview/ui/panels/right/monodisperse/wizard.py
src/guisaxs_skills/liveview/ui/panels/right/polydisperse/__init__.py
src/guisaxs_skills/liveview/ui/panels/right/polydisperse/artifact_presenter.py
src/guisaxs_skills/liveview/ui/panels/right/polydisperse/config_sync.py
src/guisaxs_skills/liveview/ui/panels/right/polydisperse/coordinator.py
src/guisaxs_skills/liveview/ui/panels/right/polydisperse/mixture_pane.py
src/guisaxs_skills/liveview/ui/panels/right/polydisperse/plot_clicks.py
src/guisaxs_skills/liveview/ui/panels/right/polydisperse/plots.py
src/guisaxs_skills/liveview/ui/panels/right/polydisperse/sizes_pane.py
src/guisaxs_skills/liveview/ui/panels/right/polydisperse/window_widget.py
src/guisaxs_skills/liveview/ui/widgets/__init__.py
src/guisaxs_skills/liveview/ui/widgets/plots.py
src/guisaxs_skills/liveview/ui/widgets/viewer_3d.py
src/guisaxs_skills/liveview/ui/windows/__init__.py
src/guisaxs_skills/liveview/ui/windows/polydisperse.py
src/guisaxs_skills/liveview/ui/wizards/__init__.py
src/guisaxs_skills/liveview/ui/wizards/left.py
src/guisaxs_skills/liveview/ui/wizards/mask.py
src/guisaxs_skills/liveview/ui/wizards/monodisperse.py
src/guisaxs_skills/liveview/ui/wizards/right.py
src/guisaxs_skills/liveview/ui/wizards/subtraction.py
src/guisaxs_skills/logic/app_relaunch.py
src/guisaxs_skills/logic/autosaxs_cli.py
src/guisaxs_skills/logic/default_output_dir.py
src/guisaxs_skills/logic/inputs_copy.py
src/guisaxs_skills/logic/package_update.py
src/guisaxs_skills/logic/path_display.py
src/guisaxs_skills/logic/path_normalize.py
src/guisaxs_skills/logic/result_parser.py
src/guisaxs_skills/logic/runner_qprocess.py
src/guisaxs_skills/logic/session_state.py
src/guisaxs_skills/logic/skill_catalog.py
src/guisaxs_skills/logic/smart_defaults.py
src/guisaxs_skills/logic/workdir.py
src/guisaxs_skills/ui/about_dialog.py
src/guisaxs_skills/ui/artifacts_panel.py
src/guisaxs_skills/ui/catalog_tabs.py
src/guisaxs_skills/ui/curve_plot.py
src/guisaxs_skills/ui/data_panel.py
src/guisaxs_skills/ui/help_dialog.py
src/guisaxs_skills/ui/help_toc.py
src/guisaxs_skills/ui/html_help_dialog.py
src/guisaxs_skills/ui/isosurface_mesh_data.py
src/guisaxs_skills/ui/log_view.py
src/guisaxs_skills/ui/main_window.py
src/guisaxs_skills/ui/path_field.py
src/guisaxs_skills/ui/preview_panel.py
src/guisaxs_skills/ui/run_controls.py
src/guisaxs_skills/ui/saxs_interactive_3d.py
src/guisaxs_skills/ui/skill_form.py
src/guisaxs_skills/ui/skill_header.py
src/guisaxs_skills/ui/style.py
src/guisaxs_skills/ui/toast.py
src/guisaxs_skills/ui/update_dialog.py
tests/test_guisaxs_liveview.py
tests/test_skill.py
tests/test_skills_real_data.py