stackops 26.6.4__tar.gz → 26.6.6__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {stackops-26.6.4/src/stackops.egg-info → stackops-26.6.6}/PKG-INFO +10 -1
- {stackops-26.6.4 → stackops-26.6.6}/README.md +9 -0
- {stackops-26.6.4 → stackops-26.6.6}/pyproject.toml +1 -1
- stackops-26.6.6/src/manual/test_dotfile_mapper_assets.py +29 -0
- stackops-26.6.6/src/manual/test_stackops_skill_refs.py +129 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/sessions_managers/session_conflict.py +52 -63
- stackops-26.6.6/src/stackops/cluster/sessions_managers/status_reporting.py +43 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/sessions_managers/tmux/tmux_local_manager.py +1 -1
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/sessions_managers/tmux/tmux_utils/tmux_execution.py +108 -48
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/scripts_dynamic/download_stackops_offline_installer.py +15 -5
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/profile/create_helper.py +14 -3
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/agents.py +54 -23
- stackops-26.6.6/src/stackops/scripts/python/agents_iter.py +34 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/agents_parallel_commands.py +71 -4
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/agents_parallel_run_command.py +9 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/agents_test_runtime.py +2 -2
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/agents_type_fix.py +3 -3
- stackops-26.6.6/src/stackops/scripts/python/ai/initai.py +140 -0
- stackops-26.6.6/src/stackops/scripts/python/ai/initai_frameworks.py +57 -0
- stackops-26.6.6/src/stackops/scripts/python/ai/initai_models.py +33 -0
- stackops-26.6.6/src/stackops/scripts/python/ai/initai_rich_output.py +114 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/scripts/dashboard.py +1 -4
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/scripts/lint_and_type_check.py +4 -8
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/scripts/models.py +8 -20
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/scripts/models_config.py +1 -4
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/scripts/models_diagnostics.py +4 -10
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/scripts/models_reports.py +6 -14
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/codex/config.toml +0 -6
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/utils/generic.instructions.md +2 -3
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/cloud.py +2 -1
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/devops.py +15 -7
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/cli_graph.json +2555 -5831
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/cli_graph_apps.py +81 -14
- stackops-26.6.6/src/stackops/scripts/python/graph/python_api_graph.py +506 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/visualize/cli_graph_app.py +6 -6
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/visualize/dot_export.py +8 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/visualize/graph_data.py +2 -1
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/visualize/helpers_navigator/devops_navigator.py +1 -1
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/visualize/plotly_views.py +18 -3
- stackops-26.6.6/src/stackops/scripts/python/graph/visualize/python_api_graph_app.py +209 -0
- stackops-26.6.6/src/stackops/scripts/python/graph/visualize/python_api_graph_search.py +236 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/visualize/rich_tree.py +8 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agent_impl_interactive/create_options.py +22 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agent_impl_interactive/main.py +16 -1
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agents_create_artifacts.py +7 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agents_impl.py +17 -34
- stackops-26.6.6/src/stackops/scripts/python/helpers/helpers_agents/agents_iter_impl.py +389 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agents_mcp_impl.py +15 -14
- stackops-26.6.6/src/stackops/scripts/python/helpers/helpers_agents/agents_parallel_aoe_backend.py +51 -0
- stackops-26.6.6/src/stackops/scripts/python/helpers/helpers_agents/agents_parallel_backend.py +175 -0
- stackops-26.6.6/src/stackops/scripts/python/helpers/helpers_agents/agents_parallel_layouts.py +20 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agents_parallel_run_config.py +8 -2
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agents_parallel_run_impl.py +1 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agents_parallel_run_yaml.py +18 -1
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agents_parallel_yaml_defaults.py +5 -2
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agents_rich_output.py +5 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agents_skill_impl.py +99 -14
- stackops-26.6.6/src/stackops/scripts/python/helpers/helpers_agents/agents_skill_stackops_backend.py +148 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/mcp_install.py +41 -11
- stackops-26.6.6/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/codex/codex_privacy.py +37 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_cloud/cloud_mount.py +6 -3
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_config.py +3 -1
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_config_terminal.py +7 -7
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_config_tmux.py +7 -6
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_self.py +12 -6
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_self_export.py +1 -1
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_self_info.py +11 -3
- stackops-26.6.6/src/stackops/scripts/python/helpers/helpers_devops/stackops_skill_refs.py +202 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_env/env_manager_tui.py +1 -1
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_env/path_manager_tui.py +1 -1
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_fire_command/fire_jobs_route_helper.py +8 -11
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_preview/preview_impl.py +3 -3
- stackops-26.6.6/src/stackops/scripts/python/helpers/helpers_preview/preview_read.py +64 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_repos/cloud_repo_sync.py +3 -3
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_repos/sync.py +10 -5
- stackops-26.6.6/src/stackops/scripts/python/helpers/helpers_sessions/_aoe_backend.py +284 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_sessions/_herdr_backend.py +160 -17
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_sessions/_tmux_backend.py +11 -1
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_sessions/attach_impl.py +5 -1
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_sessions/kill_impl.py +11 -2
- stackops-26.6.6/src/stackops/scripts/python/helpers/helpers_sessions/session_trace_aoe.py +317 -0
- stackops-26.6.6/src/stackops/scripts/python/helpers/helpers_sessions/session_trace_herdr.py +435 -0
- stackops-26.6.6/src/stackops/scripts/python/helpers/helpers_sessions/session_trace_models.py +78 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_sessions/session_trace_tmux.py +9 -80
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_sessions/sessions_aoe_impl.py +2 -2
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_sessions/sessions_cli_common.py +18 -11
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_sessions/sessions_cli_run.py +38 -1
- stackops-26.6.6/src/stackops/scripts/python/helpers/helpers_sessions/sessions_herdr.py +216 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_sessions/sessions_impl.py +21 -82
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_sessions/sessions_layout_source.py +19 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_sessions/sessions_trace.py +55 -18
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_sessions/sessions_trace_render.py +1 -1
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_sessions/terminal_cli_helpers.py +7 -2
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_utils/file_utils_app.py +4 -7
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/stackops_entry.py +4 -2
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/terminal.py +47 -73
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/terminal_summarize.py +47 -8
- stackops-26.6.6/src/stackops/scripts/python/terminal_summary.py +726 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/utils.py +3 -1
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/setup/linux/interactive.sh +8 -8
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/setup/windows/interactive.ps1 +9 -9
- stackops-26.6.6/src/stackops/settings/helix/yazi-picker.sh +37 -0
- stackops-26.6.6/src/stackops/settings/herdr/config.toml +75 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/yazi/keymap_darwin.toml +7 -7
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/yazi/keymap_linux.toml +7 -7
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/yazi/keymap_windows.toml +7 -7
- stackops-26.6.6/src/stackops/utils/cli_utils/alias_markers.py +69 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/cli_utils/hierarchy.py +2 -60
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/cli_utils/hierarchy_types.py +2 -74
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/installer_utils/install_request_logic.py +87 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/installer_utils/installer_class.py +28 -8
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/installer_utils/installer_cli.py +44 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/installer_utils/installer_locator_utils.py +13 -4
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/options_utils/options_tv_linux.py +26 -6
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/agents/parallel.schema.json +9 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/fire_agents/fire_agents_types.py +2 -1
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/installer/installer_data.json +118 -54
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/mapper/dotfiles.yaml +7 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/ssh_utils/abc.py +1 -1
- {stackops-26.6.4 → stackops-26.6.6/src/stackops.egg-info}/PKG-INFO +10 -1
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops.egg-info/SOURCES.txt +23 -27
- stackops-26.6.4/src/manual/test_stackops_skill_refs.py +0 -74
- stackops-26.6.4/src/stackops/cluster/sessions_managers/windows_terminal/wt_local.py +0 -250
- stackops-26.6.4/src/stackops/cluster/sessions_managers/windows_terminal/wt_local_manager.py +0 -366
- stackops-26.6.4/src/stackops/cluster/sessions_managers/windows_terminal/wt_local_manager_demo.py +0 -78
- stackops-26.6.4/src/stackops/cluster/sessions_managers/windows_terminal/wt_remote.py +0 -211
- stackops-26.6.4/src/stackops/cluster/sessions_managers/windows_terminal/wt_remote_manager.py +0 -314
- stackops-26.6.4/src/stackops/cluster/sessions_managers/windows_terminal/wt_utils/__init__.py +0 -1
- stackops-26.6.4/src/stackops/cluster/sessions_managers/windows_terminal/wt_utils/layout_generator.py +0 -175
- stackops-26.6.4/src/stackops/cluster/sessions_managers/windows_terminal/wt_utils/local_monitoring.py +0 -83
- stackops-26.6.4/src/stackops/cluster/sessions_managers/windows_terminal/wt_utils/manager_persistence.py +0 -52
- stackops-26.6.4/src/stackops/cluster/sessions_managers/windows_terminal/wt_utils/monitoring_helpers.py +0 -50
- stackops-26.6.4/src/stackops/cluster/sessions_managers/windows_terminal/wt_utils/process_monitor.py +0 -322
- stackops-26.6.4/src/stackops/cluster/sessions_managers/windows_terminal/wt_utils/remote_executor.py +0 -141
- stackops-26.6.4/src/stackops/cluster/sessions_managers/windows_terminal/wt_utils/session_manager.py +0 -270
- stackops-26.6.4/src/stackops/cluster/sessions_managers/windows_terminal/wt_utils/status_reporter.py +0 -204
- stackops-26.6.4/src/stackops/cluster/sessions_managers/windows_terminal/wt_utils/status_reporting.py +0 -76
- stackops-26.6.4/src/stackops/cluster/sessions_managers/windows_terminal/wt_utils/wt_helpers.py +0 -210
- stackops-26.6.4/src/stackops/scripts/python/ai/initai.py +0 -188
- stackops-26.6.4/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/codex/codex_privacy.py +0 -33
- stackops-26.6.4/src/stackops/scripts/python/helpers/helpers_devops/cli_self_ai/app.py +0 -35
- stackops-26.6.4/src/stackops/scripts/python/helpers/helpers_devops/cli_self_ai/update_docs.py +0 -232
- stackops-26.6.4/src/stackops/scripts/python/helpers/helpers_devops/cli_self_ai/update_installer.py +0 -175
- stackops-26.6.4/src/stackops/scripts/python/helpers/helpers_devops/cli_self_ai/update_logic.py +0 -253
- stackops-26.6.4/src/stackops/scripts/python/helpers/helpers_devops/cli_self_ai/update_test.py +0 -186
- stackops-26.6.4/src/stackops/scripts/python/helpers/helpers_devops/cli_self_ai/workflow_capture.py +0 -99
- stackops-26.6.4/src/stackops/scripts/python/helpers/helpers_devops/cli_self_ai/workflows_yaml.py +0 -165
- stackops-26.6.4/src/stackops/scripts/python/helpers/helpers_devops/stackops_skill_refs.py +0 -248
- stackops-26.6.4/src/stackops/scripts/python/helpers/helpers_preview/preview_read.py +0 -39
- stackops-26.6.4/src/stackops/scripts/python/helpers/helpers_sessions/sessions_cli_run_aoe.py +0 -175
- stackops-26.6.4/src/stackops/scripts/python/terminal_summary.py +0 -149
- stackops-26.6.4/src/stackops/utils/files/ouch/__init__.py +0 -0
- stackops-26.6.4/src/stackops/utils/options_utils/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/MANIFEST.in +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/setup.cfg +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/manual/test_path_references.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/manual/test_secrets_schema.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/manual/test_stackops_versioning.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/architecture_graph/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/architecture_graph/__main__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/architecture_graph/cli.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/architecture_graph/graph.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/architecture_graph/graph_css.txt +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/architecture_graph/graph_css_continued.txt +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/architecture_graph/graph_js.txt +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/architecture_graph/graph_js_continued.txt +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/architecture_graph/models.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/architecture_graph/renderer.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/architecture_graph/scanner.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/remote/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/remote/cloud_manager.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/remote/data_transfer.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/remote/distribute.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/remote/execution_script.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/remote/file_manager.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/remote/job_params.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/remote/models.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/remote/notification.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/remote/notifications.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/remote/remote_machine.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/scheduler.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/sessions_managers/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/sessions_managers/helpers/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/sessions_managers/helpers/enhanced_command_runner.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/sessions_managers/helpers/load_balancer_helper.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/sessions_managers/monitoring_types.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/sessions_managers/session_exit_mode.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/sessions_managers/tmux/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/sessions_managers/tmux/tmux_local.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/sessions_managers/tmux/tmux_utils/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/sessions_managers/tmux/tmux_utils/tmux_common.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/sessions_managers/tmux/tmux_utils/tmux_layout.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/sessions_managers/tmux/tmux_utils/tmux_status.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/sessions_managers/utils/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/sessions_managers/utils/load_balancer.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/sessions_managers/utils/maker.py +0 -0
- {stackops-26.6.4/src/stackops/cluster/sessions_managers/windows_terminal → stackops-26.6.6/src/stackops/jobs}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/agents/mcps/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/agents/mcps/mcp.json +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/agents/mcps/mcp.schema.json +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/__init__.py +0 -0
- {stackops-26.6.4/src/stackops/cluster/sessions_managers/windows_terminal/wt_utils/examples → stackops-26.6.6/src/stackops/jobs/installer/checks}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/checks/check_installations.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/checks/install_utils.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/checks/report_utils.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/checks/security_cli.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/checks/security_helper.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/checks/vt_utils.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/linux_scripts/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/linux_scripts/brave.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/linux_scripts/cloudflare_warp_cli.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/linux_scripts/edge.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/linux_scripts/network.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/linux_scripts/ngrok.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/linux_scripts/oz.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/linux_scripts/q.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/linux_scripts/redis.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/linux_scripts/sysabc_macos.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/linux_scripts/sysabc_ubuntu.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/linux_scripts/vscode.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/linux_scripts/wezterm.sh +0 -0
- {stackops-26.6.4/src/stackops/jobs → stackops-26.6.6/src/stackops/jobs/installer/macos_scripts}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/powershell_scripts/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/powershell_scripts/nerdfonts.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/powershell_scripts/sysabc.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/powershell_scripts/texlive.ps1 +0 -0
- {stackops-26.6.4/src/stackops/jobs/installer/checks → stackops-26.6.6/src/stackops/jobs/installer/python_scripts}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/python_scripts/alacritty.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/python_scripts/boxes.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/python_scripts/brave.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/python_scripts/bypass_paywall.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/python_scripts/cloudflare_warp_cli.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/python_scripts/code.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/python_scripts/cursor.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/python_scripts/docker.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/python_scripts/dubdb_adbc.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/python_scripts/espanso.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/python_scripts/goes.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/python_scripts/hx.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/python_scripts/lvim.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/python_scripts/nerdfont.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/python_scripts/orca.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/python_scripts/poppler.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/python_scripts/redis.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/python_scripts/rmpc.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/python_scripts/sysabc.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/python_scripts/termusic.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/python_scripts/wezterm.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/python_scripts/winget.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/python_scripts/yazi.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/python_scripts/youtube_tui.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/python_scripts/ytui_music.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/installer/todo.md +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/scripts/bash_scripts/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/scripts/bash_scripts/hollywood.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/scripts/bash_scripts/lid.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/scripts/bash_scripts/weather +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/scripts/powershell_scripts/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/scripts/powershell_scripts/cmatrix.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/scripts/powershell_scripts/weather.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/scripts_dynamic/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/scripts_dynamic/download_stackops_offline_installer.json +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/jobs/scripts_dynamic/system_compute_analyzer.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/logger.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/paths.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/profile/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/profile/create_links.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/profile/create_links_export.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/profile/create_shell_profile.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/profile/dotfiles_mapper.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/profile/linking/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/profile/linking/conflict.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/profile/linking/operations.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/profile/linking/options.py +0 -0
- {stackops-26.6.4/src/stackops/jobs/installer/macos_scripts → stackops-26.6.6/src/stackops/scripts}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/linux/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/linux/wrap_stackops +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/nu/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/nu/wrap_stackops.nu +0 -0
- {stackops-26.6.4/src/stackops/jobs/installer/python_scripts → stackops-26.6.6/src/stackops/scripts/python}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/agents_browser.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/agents_parallel.py +0 -0
- {stackops-26.6.4/src/stackops/scripts → stackops-26.6.6/src/stackops/scripts/python/ai}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/scripts/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/scripts/command_runner.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/scripts/command_runner.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/scripts/models_core.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/scripts/models_json.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/scripts/paths.py +0 -0
- {stackops-26.6.4/src/stackops/scripts/python → stackops-26.6.6/src/stackops/scripts/python/ai/solutions}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/antigravity/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/antigravity/antigravity.py +0 -0
- {stackops-26.6.4/src/stackops/scripts/python/ai → stackops-26.6.6/src/stackops/scripts/python/ai/solutions/auggie}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/auggie/auggie.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/claude/claude.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/cline/cline.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/codex/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/codex/codex.py +0 -0
- {stackops-26.6.4/src/stackops/scripts/python/ai/solutions → stackops-26.6.6/src/stackops/scripts/python/ai/solutions/copilot}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/copilot/agents/Thinking-Beast-Mode.agent.md +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/copilot/agents/Ultimate-Transparent-Thinking-Beast-Mode.agent.md +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/copilot/agents/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/copilot/agents/deepResearch.agent.md +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/copilot/github_copilot.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/copilot/instructions/archive/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/copilot/instructions/archive/watch_exec.prompt.md +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/copilot/instructions/python/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/copilot/instructions/python/dev.instructions.md +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/copilot/prompts/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/copilot/prompts/pyright_fix.md +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/copilot/prompts/research-report-skeleton.prompt.md +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/crush/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/crush/crush.json +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/crush/crush.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/crush/privacy.md +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/cursor/cursors.py +0 -0
- {stackops-26.6.4/src/stackops/scripts/python/ai/solutions/auggie → stackops-26.6.6/src/stackops/scripts/python/ai/solutions/droid}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/droid/droid.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/forge/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/forge/forge.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/kilocode/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/kilocode/kilocode.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/kilocode/privacy.md +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/opencode/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/opencode/opencode.jsonc +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/opencode/opencode.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/oz/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/oz/oz.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/pi/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/pi/pi.py +0 -0
- {stackops-26.6.4/src/stackops/scripts/python/ai/solutions/copilot → stackops-26.6.6/src/stackops/scripts/python/ai/solutions/q}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/q/amazon_q.py +0 -0
- {stackops-26.6.4/src/stackops/scripts/python/ai/solutions/droid → stackops-26.6.6/src/stackops/scripts/python/ai/solutions/qwen_code}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/qwen_code/qwen_code.py +0 -0
- {stackops-26.6.4/src/stackops/scripts/python/ai/solutions/q → stackops-26.6.6/src/stackops/scripts/python/ai/solutions/warp}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/solutions/warp/warp.py +0 -0
- {stackops-26.6.4/src/stackops/scripts/python/ai/solutions/qwen_code → stackops-26.6.6/src/stackops/scripts/python/ai/utils}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/utils/generate_files.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/utils/generate_files_content.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/utils/generate_files_utils.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/utils/generic.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/utils/shared.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ai/utils/vscode_tasks.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/enums.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/fire_jobs.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/ftpx.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/cli_graph_eval.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/cli_graph_node_utils.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/cli_graph_nodes.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/cli_graph_registration.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/cli_graph_resolver.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/cli_graph_shared.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/cli_graph_signature.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/cli_graph_targets.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/cli_graph_tree.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/cli_graph_values.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/generate_cli_graph.py +0 -0
- {stackops-26.6.4/src/stackops/scripts/python/ai/solutions/warp → stackops-26.6.6/src/stackops/scripts/python/graph/visualize}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/visualize/cli_graph_search.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/visualize/cli_graph_typer_app.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/visualize/graph_paths.py +0 -0
- {stackops-26.6.4/src/stackops/scripts/python/ai/utils → stackops-26.6.6/src/stackops/scripts/python/graph/visualize/helpers_navigator}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/visualize/helpers_navigator/cli_graph_loader.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/visualize/helpers_navigator/command_builder.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/visualize/helpers_navigator/command_detail.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/visualize/helpers_navigator/command_tree.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/visualize/helpers_navigator/data_models.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/visualize/helpers_navigator/main_app.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/visualize/helpers_navigator/search_bar.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/graph/visualize/plotly_browser.py +0 -0
- {stackops-26.6.4/src/stackops/scripts/python/graph/visualize → stackops-26.6.6/src/stackops/scripts/python/helpers}/__init__.py +0 -0
- {stackops-26.6.4/src/stackops/scripts/python/graph/visualize/helpers_navigator → stackops-26.6.6/src/stackops/scripts/python/helpers/helpers_agents}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agent_impl_interactive/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agent_impl_interactive/common.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agentic_frameworks/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agentic_frameworks/fire_codex.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agentic_frameworks/fire_copilot.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agentic_frameworks/fire_crush.json +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agentic_frameworks/fire_crush.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agentic_frameworks/fire_cursor_agents.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agentic_frameworks/fire_pi.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agentic_frameworks/fire_qwen.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agents_ask_impl.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agents_browser_constants.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agents_browser_guides.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agents_browser_impl.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agents_browser_resolution.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agents_create_inputs.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agents_parallel_add_entry.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agents_run_context.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agents_run_impl.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agents_run_types.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agents_shell.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agents_skill_types.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/agents_yaml_schemas.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/browser_guides/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/browser_guides/agent-browser.md +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/browser_guides/chrome-devtools-mcp-browser-url.mcp.json +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/browser_guides/chrome-devtools-mcp.mcp.json +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/browser_guides/chrome-devtools-mcp.md +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/browser_guides/playwright-cli.md +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/browser_guides/playwright-mcp-cdp.mcp.json +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/browser_guides/playwright-mcp-extension.mcp.json +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/browser_guides/playwright-mcp-storage-state.mcp.json +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/browser_guides/playwright-mcp-user-data-dir.mcp.json +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/browser_guides/playwright-mcp.mcp.json +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/browser_guides/playwright-mcp.md +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/fire_agents_help_launch.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/fire_agents_help_search.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/fire_agents_load_balancer.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/mcp_catalog.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/mcp_types.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/aichat/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/aichat/config.yaml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/aider/.aider.conf.yml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/auggie/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/auggie/auggie_privacy.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/chatgpt/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/chatgpt/chatgpt_privacy.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/cline/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/cline/cline_privacy.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/codex/__init__.py +0 -0
- {stackops-26.6.4/src/stackops/scripts/python/helpers → stackops-26.6.6/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/common}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/common/privacy_orchestrator.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/copilot/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/copilot/config.yml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/crush/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/crush/crush.json +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/cursor/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/cursor/cursor_privacy.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/droid/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/droid/droid_privacy.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/kilocode/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/kilocode/kilocode_privacy.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/mods/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/mods/mods_privacy.py +0 -0
- {stackops-26.6.4/src/stackops/scripts/python/helpers/helpers_agents → stackops-26.6.6/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/opencode}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/q/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/q/q_privacy.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/qwen/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/qwen/qwen_privacy.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/privacy/privacy.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/reasoning_capabilities.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/templates/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/templates/prompt.txt +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/templates/template.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_agents/templates/template.sh +0 -0
- {stackops-26.6.4/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/common → stackops-26.6.6/src/stackops/scripts/python/helpers/helpers_cloud}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_cloud/backup_config.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_cloud/backup_registration.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_cloud/cloud_copy.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_cloud/cloud_helpers.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_cloud/cloud_mount_tmux.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_cloud/cloud_path_resolver.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_cloud/cloud_sync.py +0 -0
- {stackops-26.6.4/src/stackops/scripts/python/helpers/helpers_agents/privacy/configs/opencode → stackops-26.6.6/src/stackops/scripts/python/helpers/helpers_devops}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_backup_retrieve.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_config_dotfile_mapper.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_config_dotfile_transfer.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_config_mount.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_config_secrets.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_config_secrets_actions.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_config_secrets_candidates.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_config_secrets_interactive.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_config_secrets_prompts.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_config_secrets_support.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_data.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_device.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_nw.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_nw_vscode_share.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_repos.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_repos_viz.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_self_assets.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_self_clone.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_self_docker.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_self_docs.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_share_file.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_share_server.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_share_temp.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_share_terminal.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_ssh.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/cli_vault.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/devops_status.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/devops_status_checks.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/devops_status_display.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/devops_update_repos.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/interactive.py +0 -0
- {stackops-26.6.4/src/stackops/scripts/python/helpers/helpers_cloud → stackops-26.6.6/src/stackops/scripts/python/helpers/helpers_devops/mount_helpers}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/mount_helpers/commands.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/mount_helpers/device_entry.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/mount_helpers/devices.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/mount_helpers/linux.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/mount_helpers/macos.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/mount_helpers/selection.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/mount_helpers/utils.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/mount_helpers/windows.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/register_interactive.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/run_script.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/themes/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/themes/choose_pwsh_theme.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/themes/choose_starship_theme.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/themes/choose_starship_theme.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/themes/choose_wezterm_theme.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/themes/choose_windows_terminal_theme.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_devops/vault.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_env/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_env/path_manager_backend.py +0 -0
- {stackops-26.6.4/src/stackops/scripts/python/helpers/helpers_devops → stackops-26.6.6/src/stackops/scripts/python/helpers/helpers_fire_command}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_fire_command/cloud_manager.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_fire_command/f.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_fire_command/file_wrangler.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_fire_command/fire_jobs_args_helper.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_fire_command/fire_jobs_impl.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_fire_command/fire_jobs_streamlit_helper.py +0 -0
- {stackops-26.6.4/src/stackops/scripts/python/helpers/helpers_devops/mount_helpers → stackops-26.6.6/src/stackops/scripts/python/helpers/helpers_network}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_network/address_switch.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_network/ftpx_impl.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_network/onetimeshare.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_network/ssh/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_network/ssh/ssh_add_key_windows.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_network/ssh/ssh_add_ssh_key.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_network/ssh/ssh_cloud_init.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_network/ssh/ssh_debug_darwin.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_network/ssh/ssh_debug_darwin_utils.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_network/ssh/ssh_debug_linux.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_network/ssh/ssh_debug_linux_utils.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_network/ssh/ssh_debug_windows.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_network/ssh/ssh_debug_windows_utils.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_network/ssh/ssh_deploy_key_remote.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_network/wifi_conn.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_network/wifi_conn_platforms/common.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_network/wifi_conn_platforms/darwin.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_network/wifi_conn_platforms/linux.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_network/wifi_conn_platforms/unsupported.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_network/wifi_conn_platforms/windows.py +0 -0
- {stackops-26.6.4/src/stackops/scripts/python/helpers/helpers_fire_command → stackops-26.6.6/src/stackops/scripts/python/helpers/helpers_preview}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_preview/pomodoro.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_preview/scheduler.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_preview/start_slidev.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_preview/viewer.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_preview/viewer_template.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_repos/action.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_repos/action_helper.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_repos/clone.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_repos/cloud_repo_sync_conflicts.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_repos/grource.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_repos/record.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_repos/repo_analyzer_1.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_repos/repo_analyzer_2.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_repos/spec_store.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_repos/update.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_search/ast_search.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_search/qr_code.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_search/repo_rag.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_search/script_help.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_search/semantic_search.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_seek/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_seek/scripts_linux/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_seek/scripts_linux/fzfg +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_seek/scripts_linux/search_with_context.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_seek/scripts_macos/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_seek/scripts_macos/fzfg +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_seek/scripts_windows/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_seek/scripts_windows/fzfg.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_seek/seek_impl.py +0 -0
- {stackops-26.6.4/src/stackops/scripts/python/helpers/helpers_network → stackops-26.6.6/src/stackops/scripts/python/helpers/helpers_sessions}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_sessions/_attach_common.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_sessions/_tmux_backend_options.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_sessions/_tmux_backend_preview.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_sessions/_tmux_backend_processes.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_sessions/sessions_cli_run_all.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_sessions/sessions_dynamic.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_sessions/sessions_dynamic_display.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_sessions/sessions_dynamic_tmux.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_sessions/sessions_multiprocess.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_sessions/sessions_test_layouts.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_sessions/utils.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_utils/machine_utils_app.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_utils/path_helper.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_utils/path_reference_validation.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_utils/pdf.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_utils/processes.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_utils/pyproject_utils_app.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_utils/pyproject_utils_commands_check.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_utils/pyproject_utils_commands_setup.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_utils/pyproject_utils_helpers.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_utils/python.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_utils/python_env.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_utils/python_init.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_utils/read_db_cli_tui.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_utils/read_db_cli_tui_backend.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_utils/scrape.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_utils/specs.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_utils/surya.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/helpers/helpers_utils/upgrade_packages.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/preview.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/python/seek.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/setup/linux/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/setup/linux/apps_desktop.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/setup/linux/live_from_github.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/setup/linux/uv.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/setup/macos/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/setup/macos/uv.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/setup/windows/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/setup/windows/live_from_github.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/setup/windows/quick_init.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/setup/windows/uv.ps1 +0 -0
- {stackops-26.6.4/src/stackops/scripts/python/helpers/helpers_devops/cli_self_ai → stackops-26.6.6/src/stackops/scripts/windows}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/scripts/windows/wrap_stackops.ps1 +0 -0
- {stackops-26.6.4/src/stackops/scripts/windows → stackops-26.6.6/src/stackops/secrets}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/secrets/assets.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/secrets/loader.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/secrets/models.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/secrets/paths.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/secrets/readers.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/secrets/search.py +0 -0
- {stackops-26.6.4/src/stackops/scripts/python/helpers/helpers_preview → stackops-26.6.6/src/stackops/settings}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/atuin/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/atuin/config.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/atuin/themes/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/atuin/themes/catppuccin-mocha-mauve.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/broot/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/broot/br.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/broot/brootcd.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/broot/conf.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/glow/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/glow/glow.yml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/gromit-mpx/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/gromit-mpx/gromit-mpx.cfg +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/helix/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/helix/config.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/helix/languages.toml +0 -0
- {stackops-26.6.4/src/stackops/secrets → stackops-26.6.6/src/stackops/settings/herdr}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/keras/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/keras/keras.json +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/keyboard/espanso/config/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/keyboard/espanso/config/default.yml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/keyboard/espanso/match/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/keyboard/espanso/match/base.yml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/keyboard/kanata/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/keyboard/kanata/kanata.kbd +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/linux/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/linux/autocall/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/linux/autocall/delete.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/linux/autocall/on-cd.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/linux/autocall/on-quit.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/linux/autocall/open.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/linux/autocall/paste.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/linux/autocall/pre-cd.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/linux/autocall/rename.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/linux/colors +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/linux/exe/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/linux/exe/cleaner.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/linux/exe/leftpane_previewer.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/linux/exe/lfcd.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/linux/exe/previewer.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/linux/exe/previewer_archive.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/linux/icons +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/linux/lfrc +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/windows/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/windows/autocall/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/windows/autocall/delete.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/windows/autocall/on-cd.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/windows/autocall/on-quit.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/windows/autocall/open.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/windows/autocall/paste.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/windows/autocall/pre-cd.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/windows/autocall/rename.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/windows/cd_tere.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/windows/cd_zoxide.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/windows/cd_zoxide2.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/windows/colors +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/windows/icons +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/windows/leftpane_previewer.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/windows/lfcd.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/windows/lfrc +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/windows/mkdir.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/windows/mkfile.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lf/windows/previewer.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/linters/.flake8 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/linters/.mypy.ini +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/linters/.pylintrc +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/linters/.ruff.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/linters/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/linters/pyrefly.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/linters/ty.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lvim/linux/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lvim/linux/config.lua +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lvim/windows/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lvim/windows/archive/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lvim/windows/archive/config_additional.lua +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lvim/windows/config.lua +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lvim/windows/lua/user/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/lvim/windows/lua/user/custom_config.lua +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/marimo/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/marimo/marimo.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/marimo/snippets/globalize.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/mprocs/windows/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/mprocs/windows/mprocs.yaml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/mprocs/windows/other +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/ollama/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/ollama/server.json +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/pistol/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/pistol/pistol.conf +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/presenterm/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/presenterm/config.yaml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/procs/.procs.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/psmux/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/psmux/description.md +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/psmux/install-ppm.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/psmux/psmux.bindings.conf +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/psmux/psmux.conf +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/psmux/psmux.local.conf +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/psmux/psmux.plugins.conf +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/psmux/psmux.powerline.conf +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/psmux/psmux.theme.conf +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/pudb/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/pudb/pudb.cfg +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/rofi/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/rofi/config.rasi +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/rofi/config_default.rasi +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/shells/alacritty/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/shells/alacritty/alacritty.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/shells/alacritty/alacritty.yml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/shells/bash/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/shells/bash/init.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/shells/ghostty/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/shells/ghostty/config +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/shells/hyper/.hyper.js +0 -0
- {stackops-26.6.4/src/stackops/scripts/python/helpers/helpers_sessions → stackops-26.6.6/src/stackops/settings/shells/ipy/profiles/default}/__init__.py +0 -0
- {stackops-26.6.4/src/stackops/settings → stackops-26.6.6/src/stackops/settings/shells/ipy/profiles/default/startup}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/shells/ipy/profiles/default/startup/playext.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/shells/kitty/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/shells/kitty/kitty.conf +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/shells/nushell/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/shells/nushell/config.nu +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/shells/nushell/env.nu +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/shells/nushell/init.nu +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/shells/pwsh/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/shells/pwsh/init.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/shells/pwsh/search_pwsh_history.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/shells/starship/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/shells/starship/starship.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/shells/vtm/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/shells/vtm/settings.xml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/shells/wezterm/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/shells/wezterm/wezterm.lua +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/shells/wt/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/shells/wt/settings.json +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/shells/zsh/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/shells/zsh/init.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/streamlit/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/streamlit/config.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/svim/linux/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/svim/linux/init.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/svim/windows/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/svim/windows/init.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/alias.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/apt-packages.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/aws-buckets.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/aws-instances.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/bash-history.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/brew-packages.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/channels.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/dirs.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/diskutil.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/distrobox-list.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/docker-images.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/dotfiles.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/downloads.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/env.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/figlet-fonts.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/files.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/fish-history.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/fonts.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/git-branch.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/git-diff.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/git-files.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/git-log.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/git-reflog.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/git-repos.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/git-tags.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/git-worktrees.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/guix.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/images.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/just-recipes.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/k8s-deployments.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/k8s-pods.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/k8s-services.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/linux-disks.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/man-pages.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/mounts.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/npm-packages.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/nu-history.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/path.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/ports.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/procs.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/python-venvs.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/recent-files.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/sesh.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/text.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/tldr.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/tmux-sessions.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/tmux-windows.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/todo-comments.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/trash.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/unicode.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/wifi.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/zoxide.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_unix/zsh-history.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_windows/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_windows/alias.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_windows/dirs.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_windows/docker-images.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_windows/dotfiles.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_windows/env.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_windows/files.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_windows/git-branch.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_windows/git-diff.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_windows/git-log.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_windows/git-reflog.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_windows/git-repos.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_windows/nu-history.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_windows/pwsh-history.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/television/cable_windows/text.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/tere/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/tere/terecd.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/tere/terecd.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/tmux/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/tmux/tmux.conf.local +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/tv/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/tv/config.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/tv/themes/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/tv/themes/catppuccin-mocha-sky.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/wsl/.wslconfig +0 -0
- {stackops-26.6.4/src/stackops/settings/shells/ipy/profiles/default → stackops-26.6.6/src/stackops/settings/wt}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/wt/set_wt_settings.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/yazi/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/yazi/init.lua +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/yazi/scripts/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/yazi/scripts/compress_selected.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/yazi/scripts/copy_file_content.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/yazi/scripts/fullscreen_preview.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/yazi/scripts/interactive_view.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/yazi/scripts/open_db_readonly.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/yazi/scripts/open_default_app.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/yazi/scripts/serve_browser_file.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/yazi/shell/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/yazi/shell/yazi_cd.ps1 +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/yazi/shell/yazi_cd.sh +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/yazi/theme.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/yazi/yazi_darwin.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/yazi/yazi_linux.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/yazi/yazi_windows.toml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/zed/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/settings/zed/settings.json +0 -0
- {stackops-26.6.4/src/stackops/settings/shells/ipy/profiles/default/startup → stackops-26.6.6/src/stackops/utils}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/accessories.py +0 -0
- {stackops-26.6.4/src/stackops/settings/wt → stackops-26.6.6/src/stackops/utils/cli_utils}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/cli_utils/command_lookup.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/cli_utils/terminal.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/cloud/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/cloud/defaults.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/cloud/encryption.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/cloud/onedrive/README.md +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/cloud/onedrive/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/cloud/onedrive/auth.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/cloud/onedrive/file_ops.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/cloud/onedrive/setup_oauth.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/cloud/rclone.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/cloud/rclone_wrapper.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/code.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/files/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/files/art/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/files/art/fat_croco.txt +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/files/art/halfwit_croco.txt +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/files/art/happy_croco.txt +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/files/art/water_croco.txt +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/files/ascii_art.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/files/compression.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/files/dbms.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/files/download.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/files/f.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/files/headers.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/files/notebook.py +0 -0
- {stackops-26.6.4/src/stackops/utils → stackops-26.6.6/src/stackops/utils/files/ouch}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/files/ouch/decompress.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/files/read.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/installer_utils/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/installer_utils/github_release_bulk.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/installer_utils/github_release_scraper.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/installer_utils/install_from_url.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/installer_utils/installer_explore.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/installer_utils/installer_helper.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/installer_utils/installer_main_protocol.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/installer_utils/installer_offline.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/installer_utils/installer_offline_constants.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/installer_utils/installer_offline_models.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/installer_utils/installer_offline_publish.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/installer_utils/installer_offline_render.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/installer_utils/installer_offline_scripts.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/installer_utils/installer_offline_steps.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/installer_utils/installer_offline_uv.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/installer_utils/installer_runner.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/installer_utils/installer_summary.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/io.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/machine/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/machine/specs.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/meta.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/network/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/network/address.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/optional_dependencies.py +0 -0
- {stackops-26.6.4/src/stackops/utils/cli_utils → stackops-26.6.6/src/stackops/utils/options_utils}/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/options_utils/options.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/options_utils/options_tv_windows.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/options_utils/textual_options_form.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/options_utils/textual_options_form_types.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/options_utils/tv_options.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/path_core.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/path_reference.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/python/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/python/imports.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/repos/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/repos/stackops_paths.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/agents/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/agents/prompts.schema.json +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/config/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/config/config.json +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/config/config.schema.json +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/config/config_types.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/fire_agents/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/fire_agents/fire_agents_input.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/installer/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/installer/installer_type.schema.json +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/installer/installer_types.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/installer/package_groups.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/layouts/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/layouts/layout.json +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/layouts/layout.schema.json +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/layouts/layout_types.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/mapper/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/mapper/data.schema.json +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/mapper/data.yaml +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/mapper/dotfiles.schema.json +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/repos/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/repos/repos_schema.json +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/repos/repos_types.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/schemas/yaml_schema.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/source_of_truth.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/ssh_utils/__init__.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/ssh_utils/ssh.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/ssh_utils/wsl.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/utils/ssh_utils/wsl_helper.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops/version.py +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops.egg-info/dependency_links.txt +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops.egg-info/entry_points.txt +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops.egg-info/requires.txt +0 -0
- {stackops-26.6.4 → stackops-26.6.6}/src/stackops.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: stackops
|
|
3
|
-
Version: 26.6.
|
|
3
|
+
Version: 26.6.6
|
|
4
4
|
Summary: Developer Stack Manager
|
|
5
5
|
Author-email: Alex Al-Saffar <programmer@usa.com>
|
|
6
6
|
License: Apache 2.0
|
|
@@ -91,6 +91,15 @@ stackops --help
|
|
|
91
91
|
</details>
|
|
92
92
|
|
|
93
93
|
|
|
94
|
+
## Codex Skill
|
|
95
|
+
|
|
96
|
+
Install the StackOps skill for Codex with:
|
|
97
|
+
|
|
98
|
+
```bash
|
|
99
|
+
bunx skills add thisismygitrepo/stackops --skill stackops --global --agent codex --yes
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
|
|
94
103
|
## Quick Init
|
|
95
104
|
|
|
96
105
|
Run these once StackOps is installed.
|
|
@@ -64,6 +64,15 @@ stackops --help
|
|
|
64
64
|
</details>
|
|
65
65
|
|
|
66
66
|
|
|
67
|
+
## Codex Skill
|
|
68
|
+
|
|
69
|
+
Install the StackOps skill for Codex with:
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
bunx skills add thisismygitrepo/stackops --skill stackops --global --agent codex --yes
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
|
|
67
76
|
## Quick Init
|
|
68
77
|
|
|
69
78
|
Run these once StackOps is installed.
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
from pathlib import Path
|
|
2
|
+
|
|
3
|
+
import yaml
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
REPO_ROOT = Path(__file__).resolve().parents[2]
|
|
7
|
+
MAPPER_PATH = REPO_ROOT / "src" / "stackops" / "utils" / "schemas" / "mapper" / "dotfiles.yaml"
|
|
8
|
+
SETTINGS_ROOT = REPO_ROOT / "src" / "stackops" / "settings"
|
|
9
|
+
CONFIG_SETTINGS_PREFIX = "CONFIG_ROOT/settings/"
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
def test_library_mapper_config_settings_targets_are_packaged() -> None:
|
|
13
|
+
mapper = yaml.safe_load(MAPPER_PATH.read_text(encoding="utf-8")) or {}
|
|
14
|
+
missing_assets: list[str] = []
|
|
15
|
+
|
|
16
|
+
for program_name, entries in mapper.items():
|
|
17
|
+
for entry_name, entry in entries.items():
|
|
18
|
+
self_managed = entry["self_managed"]
|
|
19
|
+
if not self_managed.startswith(CONFIG_SETTINGS_PREFIX):
|
|
20
|
+
continue
|
|
21
|
+
|
|
22
|
+
relative_asset_path = self_managed.removeprefix(CONFIG_SETTINGS_PREFIX)
|
|
23
|
+
packaged_asset_path = SETTINGS_ROOT / relative_asset_path
|
|
24
|
+
if not packaged_asset_path.exists():
|
|
25
|
+
missing_assets.append(
|
|
26
|
+
f"{program_name}.{entry_name}: {self_managed} -> {packaged_asset_path.relative_to(REPO_ROOT)}"
|
|
27
|
+
)
|
|
28
|
+
|
|
29
|
+
assert missing_assets == [], "Missing packaged settings assets:\n" + "\n".join(missing_assets)
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
from datetime import date
|
|
2
|
+
|
|
3
|
+
from typer.testing import CliRunner
|
|
4
|
+
|
|
5
|
+
from stackops.scripts.python.graph.cli_graph_apps import load_app_model
|
|
6
|
+
from stackops.scripts.python.graph.cli_graph_nodes import build_children
|
|
7
|
+
from stackops.scripts.python.graph.cli_graph_shared import AppRef
|
|
8
|
+
from stackops.scripts.python.helpers.helpers_devops import cli_self_assets, stackops_skill_refs
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
SAMPLE_GRAPH = {
|
|
12
|
+
"root": {
|
|
13
|
+
"kind": "root",
|
|
14
|
+
"name": "stackops",
|
|
15
|
+
"source": {"file": "src/stackops/scripts/python/stackops_entry.py"},
|
|
16
|
+
"children": [
|
|
17
|
+
{
|
|
18
|
+
"kind": "group",
|
|
19
|
+
"name": "devops",
|
|
20
|
+
"fullPath": "devops",
|
|
21
|
+
"source": {
|
|
22
|
+
"file": "src/stackops/scripts/python/stackops_entry.py",
|
|
23
|
+
"dispatches_to": "stackops.scripts.python.devops.get_app",
|
|
24
|
+
},
|
|
25
|
+
"aliases": [{"name": "d", "hidden": True}],
|
|
26
|
+
"children": [
|
|
27
|
+
{
|
|
28
|
+
"kind": "command",
|
|
29
|
+
"name": "install",
|
|
30
|
+
"fullPath": "devops install",
|
|
31
|
+
"source": {"file": "src/stackops/scripts/python/devops.py", "callable": "install"},
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"kind": "group",
|
|
35
|
+
"name": "data",
|
|
36
|
+
"fullPath": "devops data",
|
|
37
|
+
"source": {
|
|
38
|
+
"file": "src/stackops/scripts/python/devops.py",
|
|
39
|
+
"dispatches_to": "stackops.scripts.python.helpers.helpers_devops.cli_data.get_app",
|
|
40
|
+
},
|
|
41
|
+
"children": [
|
|
42
|
+
{
|
|
43
|
+
"kind": "command",
|
|
44
|
+
"name": "sync",
|
|
45
|
+
"fullPath": "devops data sync",
|
|
46
|
+
"source": {
|
|
47
|
+
"file": "src/stackops/scripts/python/helpers/helpers_devops/cli_data.py",
|
|
48
|
+
"callable": "sync",
|
|
49
|
+
},
|
|
50
|
+
}
|
|
51
|
+
],
|
|
52
|
+
},
|
|
53
|
+
],
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"kind": "group",
|
|
57
|
+
"name": "type-fix",
|
|
58
|
+
"fullPath": "utils pyproject type-fix",
|
|
59
|
+
"source": {
|
|
60
|
+
"file": "src/stackops/scripts/python/helpers/helpers_utils/pyproject_utils_app.py",
|
|
61
|
+
"dispatches_to": "stackops.scripts.python.helpers.helpers_utils.type_fix.get_app",
|
|
62
|
+
},
|
|
63
|
+
"children": [],
|
|
64
|
+
},
|
|
65
|
+
],
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
def test_cli_map_uses_high_level_references_without_alias_nodes() -> None:
|
|
71
|
+
rendered = stackops_skill_refs.render_cli_map(
|
|
72
|
+
cli_graph_payload=SAMPLE_GRAPH,
|
|
73
|
+
project_scripts={"devops": "stackops.scripts.python.devops:main"},
|
|
74
|
+
generated_on=date(2026, 6, 9),
|
|
75
|
+
)
|
|
76
|
+
|
|
77
|
+
assert "Regenerated from `src/stackops/scripts/python/graph/cli_graph.json` on 2026-06-09." in rendered
|
|
78
|
+
assert "- `devops` -> `stackops.scripts.python.devops:main`" in rendered
|
|
79
|
+
assert "- `UV_CACHE_DIR=/tmp/uv-cache uv run stackops --help`" in rendered
|
|
80
|
+
assert "- `UV_CACHE_DIR=/tmp/uv-cache uv run devops --help`" in rendered
|
|
81
|
+
assert "devops install" not in rendered
|
|
82
|
+
assert "devops data sync" not in rendered
|
|
83
|
+
assert "commands/command--" not in rendered
|
|
84
|
+
assert "\n- [`d`" not in rendered
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
def test_source_map_links_root_entrypoints_only() -> None:
|
|
88
|
+
rendered = stackops_skill_refs.render_source_map(cli_graph_payload=SAMPLE_GRAPH, generated_on=date(2026, 6, 9))
|
|
89
|
+
|
|
90
|
+
assert (
|
|
91
|
+
"- `devops` -> `src/stackops/scripts/python/stackops_entry.py` -> "
|
|
92
|
+
"`stackops.scripts.python.devops.get_app` via `devops`"
|
|
93
|
+
) in rendered
|
|
94
|
+
assert "devops install" not in rendered
|
|
95
|
+
assert "devops data sync" not in rendered
|
|
96
|
+
assert "commands/command--" not in rendered
|
|
97
|
+
assert "commands/command--" not in rendered
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
def test_update_skill_refs_command_is_registered() -> None:
|
|
101
|
+
result = CliRunner().invoke(cli_self_assets.get_app(), ["--help"])
|
|
102
|
+
|
|
103
|
+
assert result.exit_code == 0
|
|
104
|
+
assert "update-skill-refs" in result.stdout
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
def test_cli_graph_expands_static_loop_command_registrations() -> None:
|
|
108
|
+
app_model = load_app_model(
|
|
109
|
+
AppRef(
|
|
110
|
+
module="stackops.scripts.python.helpers.helpers_devops.cli_config_tmux",
|
|
111
|
+
factory="get_app",
|
|
112
|
+
)
|
|
113
|
+
)
|
|
114
|
+
|
|
115
|
+
children = build_children(
|
|
116
|
+
app_model=app_model,
|
|
117
|
+
parent_full_tokens=("devops", "config", "terminal", "tmux-style"),
|
|
118
|
+
parent_short_tokens=("d", "c", "t", "s"),
|
|
119
|
+
)
|
|
120
|
+
child_names = {child["name"] for child in children}
|
|
121
|
+
|
|
122
|
+
assert {
|
|
123
|
+
"install-oh-my-tmux",
|
|
124
|
+
"apply-stackops-local",
|
|
125
|
+
"preset",
|
|
126
|
+
"set-option",
|
|
127
|
+
"reload",
|
|
128
|
+
"status",
|
|
129
|
+
} <= child_names
|
{stackops-26.6.4 → stackops-26.6.6}/src/stackops/cluster/sessions_managers/session_conflict.py
RENAMED
|
@@ -5,7 +5,7 @@ import subprocess
|
|
|
5
5
|
from typing import Literal, NotRequired, TypedDict
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
SessionBackend = Literal["tmux", "
|
|
8
|
+
SessionBackend = Literal["tmux", "herdr"]
|
|
9
9
|
SessionConflictActionLoose = Literal[
|
|
10
10
|
"restart", "r",
|
|
11
11
|
"rename", "n",
|
|
@@ -48,13 +48,13 @@ SUPPORTED_SESSION_CONFLICT_ACTIONS = frozenset(
|
|
|
48
48
|
"mergeSkip",
|
|
49
49
|
}
|
|
50
50
|
)
|
|
51
|
-
|
|
51
|
+
MERGE_SESSION_CONFLICT_ACTIONS = frozenset(
|
|
52
52
|
{
|
|
53
53
|
"mergeOverwrite",
|
|
54
54
|
"mergeSkip",
|
|
55
55
|
}
|
|
56
56
|
)
|
|
57
|
-
|
|
57
|
+
MERGE_SUPPORTED_BACKENDS = frozenset({"tmux"})
|
|
58
58
|
|
|
59
59
|
|
|
60
60
|
class SessionLaunchPlan(TypedDict):
|
|
@@ -102,7 +102,7 @@ def _build_launch_plan(
|
|
|
102
102
|
|
|
103
103
|
|
|
104
104
|
def _existing_conflict_hint(backend: SessionBackend) -> str:
|
|
105
|
-
if backend in
|
|
105
|
+
if backend in MERGE_SUPPORTED_BACKENDS:
|
|
106
106
|
return (
|
|
107
107
|
"Use --on-conflict restart, --on-conflict rename, --on-conflict skip, "
|
|
108
108
|
"--on-conflict mergeOverwrite, or "
|
|
@@ -112,7 +112,7 @@ def _existing_conflict_hint(backend: SessionBackend) -> str:
|
|
|
112
112
|
|
|
113
113
|
|
|
114
114
|
def _duplicate_conflict_hint(backend: SessionBackend) -> str:
|
|
115
|
-
if backend in
|
|
115
|
+
if backend in MERGE_SUPPORTED_BACKENDS:
|
|
116
116
|
return (
|
|
117
117
|
"Use unique layout names, --on-conflict rename, --on-conflict skip, "
|
|
118
118
|
"--on-conflict mergeOverwrite, or "
|
|
@@ -138,16 +138,9 @@ def list_existing_sessions(backend: SessionBackend) -> set[str]:
|
|
|
138
138
|
return set()
|
|
139
139
|
return {line.strip() for line in result.stdout.splitlines() if line.strip()}
|
|
140
140
|
|
|
141
|
-
if backend == "
|
|
142
|
-
from stackops.cluster.sessions_managers.windows_terminal.wt_utils.wt_helpers import POWERSHELL_CMD
|
|
143
|
-
|
|
144
|
-
ps_script = """
|
|
145
|
-
Get-Process -Name 'WindowsTerminal' -ErrorAction SilentlyContinue |
|
|
146
|
-
Select-Object MainWindowTitle |
|
|
147
|
-
ConvertTo-Json -Depth 2
|
|
148
|
-
"""
|
|
141
|
+
if backend == "herdr":
|
|
149
142
|
result = subprocess.run(
|
|
150
|
-
[
|
|
143
|
+
["herdr", "workspace", "list"],
|
|
151
144
|
capture_output=True,
|
|
152
145
|
text=True,
|
|
153
146
|
timeout=10,
|
|
@@ -159,14 +152,17 @@ ConvertTo-Json -Depth 2
|
|
|
159
152
|
if not output:
|
|
160
153
|
return set()
|
|
161
154
|
payload = json.loads(output)
|
|
162
|
-
if
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
155
|
+
result_payload = payload.get("result") if isinstance(payload, dict) else None
|
|
156
|
+
if not isinstance(result_payload, dict):
|
|
157
|
+
return set()
|
|
158
|
+
workspaces = result_payload.get("workspaces")
|
|
159
|
+
if not isinstance(workspaces, list):
|
|
160
|
+
return set()
|
|
161
|
+
return {
|
|
162
|
+
str(item.get("label", "")).strip()
|
|
163
|
+
for item in workspaces
|
|
164
|
+
if isinstance(item, dict) and str(item.get("label", "")).strip()
|
|
168
165
|
}
|
|
169
|
-
return titles
|
|
170
166
|
except Exception:
|
|
171
167
|
return set()
|
|
172
168
|
|
|
@@ -174,13 +170,7 @@ ConvertTo-Json -Depth 2
|
|
|
174
170
|
|
|
175
171
|
|
|
176
172
|
def session_exists(session_name: str, existing_sessions: set[str], backend: SessionBackend) -> bool:
|
|
177
|
-
|
|
178
|
-
return session_name in existing_sessions
|
|
179
|
-
session_name_lc = session_name.casefold()
|
|
180
|
-
return any(
|
|
181
|
-
candidate.casefold() == session_name_lc or session_name_lc in candidate.casefold()
|
|
182
|
-
for candidate in existing_sessions
|
|
183
|
-
)
|
|
173
|
+
return session_name in existing_sessions
|
|
184
174
|
|
|
185
175
|
|
|
186
176
|
def build_session_launch_plan(
|
|
@@ -189,16 +179,15 @@ def build_session_launch_plan(
|
|
|
189
179
|
on_conflict: SessionConflictAction,
|
|
190
180
|
) -> list[SessionLaunchPlan]:
|
|
191
181
|
if (
|
|
192
|
-
on_conflict in
|
|
193
|
-
and backend not in
|
|
182
|
+
on_conflict in MERGE_SESSION_CONFLICT_ACTIONS
|
|
183
|
+
and backend not in MERGE_SUPPORTED_BACKENDS
|
|
194
184
|
):
|
|
195
|
-
supported_backends_text = ", ".join(sorted(
|
|
185
|
+
supported_backends_text = ", ".join(sorted(MERGE_SUPPORTED_BACKENDS))
|
|
196
186
|
raise SessionConflictError(
|
|
197
187
|
f"{on_conflict} is only supported for {supported_backends_text} backends."
|
|
198
188
|
)
|
|
199
189
|
existing_sessions = list_existing_sessions(backend)
|
|
200
190
|
planned_sessions: set[str] = set()
|
|
201
|
-
restarted_sessions: set[str] = set()
|
|
202
191
|
plans: list[SessionLaunchPlan] = []
|
|
203
192
|
|
|
204
193
|
for requested_name in requested_session_names:
|
|
@@ -211,18 +200,11 @@ def build_session_launch_plan(
|
|
|
211
200
|
|
|
212
201
|
match on_conflict:
|
|
213
202
|
case "mergeOverwrite":
|
|
214
|
-
should_restart_existing = (
|
|
215
|
-
backend == "windows-terminal"
|
|
216
|
-
and conflict_with_existing
|
|
217
|
-
and requested_name not in restarted_sessions
|
|
218
|
-
)
|
|
219
|
-
if should_restart_existing:
|
|
220
|
-
restarted_sessions.add(requested_name)
|
|
221
203
|
plans.append(
|
|
222
204
|
_build_launch_plan(
|
|
223
205
|
requested_name=requested_name,
|
|
224
206
|
session_name=requested_name,
|
|
225
|
-
restart_required=
|
|
207
|
+
restart_required=False,
|
|
226
208
|
conflict_source=conflict_source,
|
|
227
209
|
skip_launch=False,
|
|
228
210
|
)
|
|
@@ -230,17 +212,6 @@ def build_session_launch_plan(
|
|
|
230
212
|
planned_sessions.add(requested_name)
|
|
231
213
|
continue
|
|
232
214
|
case "mergeSkip":
|
|
233
|
-
if backend == "windows-terminal" and conflict_with_existing:
|
|
234
|
-
plans.append(
|
|
235
|
-
_build_launch_plan(
|
|
236
|
-
requested_name=requested_name,
|
|
237
|
-
session_name=requested_name,
|
|
238
|
-
restart_required=False,
|
|
239
|
-
conflict_source="existing",
|
|
240
|
-
skip_launch=True,
|
|
241
|
-
)
|
|
242
|
-
)
|
|
243
|
-
continue
|
|
244
215
|
plans.append(
|
|
245
216
|
_build_launch_plan(
|
|
246
217
|
requested_name=requested_name,
|
|
@@ -342,22 +313,40 @@ def kill_existing_session(backend: SessionBackend, session_name: str) -> None:
|
|
|
342
313
|
)
|
|
343
314
|
return
|
|
344
315
|
|
|
345
|
-
if backend == "
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
safe_name = session_name.replace("'", "''")
|
|
349
|
-
ps_script = f"""
|
|
350
|
-
$name = '{safe_name}'
|
|
351
|
-
Get-Process -Name 'WindowsTerminal' -ErrorAction SilentlyContinue |
|
|
352
|
-
Where-Object {{ $_.MainWindowTitle -like "*$name*" }} |
|
|
353
|
-
Stop-Process -Force -ErrorAction SilentlyContinue
|
|
354
|
-
"""
|
|
355
|
-
subprocess.run(
|
|
356
|
-
[POWERSHELL_CMD, "-Command", ps_script],
|
|
316
|
+
if backend == "herdr":
|
|
317
|
+
result = subprocess.run(
|
|
318
|
+
["herdr", "workspace", "list"],
|
|
357
319
|
capture_output=True,
|
|
358
320
|
text=True,
|
|
359
321
|
timeout=10,
|
|
360
322
|
check=False,
|
|
361
323
|
)
|
|
324
|
+
if result.returncode != 0:
|
|
325
|
+
return
|
|
326
|
+
output = result.stdout.strip()
|
|
327
|
+
if not output:
|
|
328
|
+
return
|
|
329
|
+
payload = json.loads(output)
|
|
330
|
+
result_payload = payload.get("result") if isinstance(payload, dict) else None
|
|
331
|
+
if not isinstance(result_payload, dict):
|
|
332
|
+
return
|
|
333
|
+
workspaces = result_payload.get("workspaces")
|
|
334
|
+
if not isinstance(workspaces, list):
|
|
335
|
+
return
|
|
336
|
+
for item in workspaces:
|
|
337
|
+
if not isinstance(item, dict):
|
|
338
|
+
continue
|
|
339
|
+
if str(item.get("label", "")).strip() != session_name:
|
|
340
|
+
continue
|
|
341
|
+
workspace_id = str(item.get("workspace_id", "")).strip()
|
|
342
|
+
if workspace_id == "":
|
|
343
|
+
continue
|
|
344
|
+
subprocess.run(
|
|
345
|
+
["herdr", "workspace", "close", workspace_id],
|
|
346
|
+
capture_output=True,
|
|
347
|
+
text=True,
|
|
348
|
+
timeout=10,
|
|
349
|
+
check=False,
|
|
350
|
+
)
|
|
362
351
|
except Exception:
|
|
363
352
|
return
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
from typing import Any
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
def calculate_global_summary_from_status(
|
|
5
|
+
all_status: dict[str, dict[str, Any]],
|
|
6
|
+
include_remote_machines: bool = False,
|
|
7
|
+
) -> dict[str, Any]:
|
|
8
|
+
total_sessions = len(all_status)
|
|
9
|
+
healthy_sessions = sum(
|
|
10
|
+
1
|
|
11
|
+
for status in all_status.values()
|
|
12
|
+
if status.get("summary", {}).get("session_healthy", False)
|
|
13
|
+
)
|
|
14
|
+
total_commands = sum(
|
|
15
|
+
status.get("summary", {}).get("total_commands", 0)
|
|
16
|
+
for status in all_status.values()
|
|
17
|
+
)
|
|
18
|
+
total_running = sum(
|
|
19
|
+
status.get("summary", {}).get("running_commands", 0)
|
|
20
|
+
for status in all_status.values()
|
|
21
|
+
)
|
|
22
|
+
|
|
23
|
+
result: dict[str, Any] = {
|
|
24
|
+
"total_sessions": total_sessions,
|
|
25
|
+
"healthy_sessions": healthy_sessions,
|
|
26
|
+
"unhealthy_sessions": total_sessions - healthy_sessions,
|
|
27
|
+
"total_commands": total_commands,
|
|
28
|
+
"running_commands": total_running,
|
|
29
|
+
"stopped_commands": total_commands - total_running,
|
|
30
|
+
"all_sessions_healthy": healthy_sessions == total_sessions,
|
|
31
|
+
"all_commands_running": total_running == total_commands,
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
if include_remote_machines:
|
|
35
|
+
result["remote_machines"] = list(
|
|
36
|
+
{
|
|
37
|
+
status.get("remote_name", "")
|
|
38
|
+
for status in all_status.values()
|
|
39
|
+
if "remote_name" in status
|
|
40
|
+
}
|
|
41
|
+
)
|
|
42
|
+
|
|
43
|
+
return result
|
|
@@ -22,7 +22,7 @@ from stackops.cluster.sessions_managers.tmux.tmux_utils.tmux_status import (
|
|
|
22
22
|
check_tmux_session_status,
|
|
23
23
|
)
|
|
24
24
|
from stackops.cluster.sessions_managers.monitoring_types import CommandStatus, StartResult
|
|
25
|
-
from stackops.cluster.sessions_managers.
|
|
25
|
+
from stackops.cluster.sessions_managers.status_reporting import calculate_global_summary_from_status
|
|
26
26
|
|
|
27
27
|
|
|
28
28
|
logger = get_logger("cluster.sessions_managers.tmux_local_manager")
|