Agent ARCHITECTURE - grisuno/LazyOwn GitHub Wiki
Architecture (page 1 of 7)
Pages: ARCHITECTURE.md, ARCHITECTURE_p2.md, ARCHITECTURE_p3.md, ARCHITECTURE_p4.md, ARCHITECTURE_p5.md, ARCHITECTURE_p6.md, ARCHITECTURE_p7.md
Internal Dependencies
banner.py->utils.pycli/__init__.py->cli/aliases.pycli/__init__.py->cli/registry.pycli/aliases.py->core/config.pycli/apt_chain_support.py->modules/chain_registry.pycli/apt_chain_support.py->modules/chain_runner.pycli/apt_chain_support.py->modules/chain_state.pycli/apt_chain_support.py->modules/chain_synth.pycli/apt_chain_support.py->modules/reactive_engine.pycli/assign.py->core/payload_schema.pycli/auto_crypto.py->core/crypto.pycli/auto_crypto.py->core/logging.pycli/auto_crypto.py->modules/cli_auth.pycli/autosuggest.py->core/safe_console.pycli/autosuggest.py->core/text_utils.pycli/banner_config.py->cli/engagement_hooks.pycli/banner_config.py->core/parsers.pycli/banner_config.py->core/safe_exec.pycli/banner_config.py->modules/cli_auth.pycli/chain_mode.py->cli/noise_verbs.pycli/chain_mode.py->core/logging.pycli/command_chain.py->cli/exploration.pycli/command_chain.py->cli/reactive_hints.pycli/command_explorer.py->cli/palette.pycli/command_explorer.py->core/console.pycli/command_form.py->cli/commands/containers.pycli/command_form.py->cli/palette.pycli/command_form.py->cli/themes.pycli/commands/_base.py->core/validators.pycli/commands/_base.py->utils.pycli/commands/_dormancy.py->cli/commands/_base.pycli/commands/active_directory.py->cli/commands/_base.pycli/commands/active_directory.py->modules/dacl_abuse.pycli/commands/active_directory.py->modules/delegation_attacks.pycli/commands/active_directory.py->modules/gpo_abuse.pycli/commands/active_directory.py->modules/kerberoasting.pycli/commands/active_directory.py->modules/kerberos_tickets.pycli/commands/ai.py->cli/commands/_base.pycli/commands/ai.py->cli/confirm.pycli/commands/ai.py->core/llm_budget.pycli/commands/ai.py->modules/killchain.pycli/commands/ai.py->modules/llm_adapter.pycli/commands/ai.py->modules/llm_factory.pycli/commands/ai.py->modules/llm_pool.pycli/commands/ai.py->modules/llm_prompts.pycli/commands/ai.py->modules/sidequestion.pycli/commands/ai.py->utils.pycli/commands/anti_forensics.py->cli/commands/_base.pycli/commands/anti_forensics.py->cli/confirm.pycli/commands/anti_forensics.py->cli/output_mode.pycli/commands/anti_forensics.py->core/hardening.pycli/commands/anti_forensics.py->utils.pycli/commands/applocker_bypass.py->cli/commands/_base.pycli/commands/applocker_bypass.py->utils.pycli/commands/audit.py->cli/cli_enhancements.pycli/commands/audit.py->cli/commands/_base.pycli/commands/automation.py->cli/commands/_base.pycli/commands/automation.py->modules/categories.pycli/commands/automation.py->modules/conditional_hooks.pycli/commands/automation.py->modules/credential_reuse.pycli/commands/automation.py->modules/operator_profiles.pycli/commands/automation.py->modules/state_manager.pycli/commands/bitm.py->cli/commands/_base.pycli/commands/bitm.py->modules/bitm_engine.pycli/commands/bitm.py->utils.pycli/commands/bof_registry.py->cli/commands/_base.pycli/commands/bof_registry.py->core/config.pycli/commands/bof_registry.py->modules/beacon_config_builder.pycli/commands/bof_registry.py->modules/bof_registry.pycli/commands/bof_registry.py->utils.pycli/commands/c2_profile.py->cli/commands/_base.pycli/commands/c2_profile.py->modules/c2_profile_engine.pycli/commands/c2_profile.py->utils.pycli/commands/c2_session.py->cli/commands/_base.pycli/commands/c2_session.py->modules/c2_agent.pycli/commands/c2_session.py->modules/c2_surfaces.pycli/commands/c2_session.py->utils.pycli/commands/caldera.py->cli/commands/_base.pycli/commands/caldera.py->modules/operation.pycli/commands/caldera.py->modules/planner.pycli/commands/caldera.py->modules/playbook_engine.pycli/commands/caldera.py->modules/ttp_coverage.pycli/commands/caldera.py->utils.pycli/commands/campaign.py->cli/commands/_base.pycli/commands/campaign.py->core/safe_import.pycli/commands/campaign.py->modules/db.pycli/commands/campaign.py->utils.pycli/commands/catalog.py->cli/commands/_base.pycli/commands/catalog.py->utils.pycli/commands/cicd.py->cli/commands/_base.pycli/commands/cicd.py->modules/cicd_enumerator.pycli/commands/cicd.py->modules/mfa_bypass.pycli/commands/cicd.py->utils.pycli/commands/cli_auth.py->cli/commands/_base.pycli/commands/cli_auth.py->modules/cli_auth.pycli/commands/cli_auth.py->utils.pycli/commands/cloud.py->cli/commands/_base.pycli/commands/cloud.py->cli/confirm.pycli/commands/cloud.py->core/hardening.pycli/commands/cloud.py->modules/cloud_enum.pycli/commands/cloud.py->modules/lazycloud.pycli/commands/cloud.py->utils.pycli/commands/cloud_attacks.py->cli/commands/_base.pycli/commands/cloud_attacks.py->modules/aws_attacks.pycli/commands/cloud_attacks.py->modules/cross_cloud.pycli/commands/cloud_attacks.py->modules/entra_id_attacks.pycli/commands/cloud_attacks.py->modules/gcp_attacks.pycli/commands/cloud_attacks.py->modules/k8s_attacks.pycli/commands/cloud_attacks.py->modules/saas_attacks.pycli/commands/collaboration.py->cli/commands/_base.pycli/commands/collaboration.py->modules/collab_bp.pycli/commands/collaboration.py->modules/db.pycli/commands/collaboration.py->utils.pycli/commands/command_and_control.py->cli/commands/_base.pycli/commands/command_and_control.py->utils.pycli/commands/command_and_control_migrated.py->cli/aliases.pycli/commands/command_and_control_migrated.py->cli/apt_chain_support.pycli/commands/command_and_control_migrated.py->cli/assign.pycli/commands/command_and_control_migrated.py->cli/commands/_base.pycli/commands/command_and_control_migrated.py->core/config.pycli/commands/command_and_control_migrated.py->core/hardening.pycli/commands/command_and_control_migrated.py->modules/apt_playbooks.pycli/commands/command_and_control_migrated.py->modules/atomic_cli.pycli/commands/command_and_control_migrated.py->modules/atomic_exploit_bridge.pycli/commands/command_and_control_migrated.py->modules/atomic_resolver.pycli/commands/command_and_control_migrated.py->modules/auto_registry.pycli/commands/command_and_control_migrated.py->modules/c2_builder.pycli/commands/command_and_control_migrated.py->modules/chain_registry.pycli/commands/command_and_control_migrated.py->modules/chain_runner.pycli/commands/command_and_control_migrated.py->modules/chain_state.pycli/commands/command_and_control_migrated.py->modules/chain_tokens.pycli/commands/command_and_control_migrated.py->modules/listener_manager.pycli/commands/command_and_control_migrated.py->modules/outcome_bus.pycli/commands/command_and_control_migrated.py->utils.pycli/commands/containers.py->cli/commands/_base.pycli/commands/containers.py->modules/lazyk8s.pycli/commands/containers.py->utils.pycli/commands/cred.py->cli/commands/_base.pycli/commands/cred.py->modules/categories.pycli/commands/cred.py->utils.pycli/commands/cred_migrated.py->cli/commands/_base.pycli/commands/cred_migrated.py->core/defaults.pycli/commands/cred_migrated.py->utils.pycli/commands/crystal_ball.py->cli/commands/_base.pycli/commands/crystal_ball.py->modules/privesc_predictor.pycli/commands/crystal_ball.py->utils.pycli/commands/daemon_ctl.py->cli/commands/_base.pycli/commands/daemon_ctl.py->modules/goals.pycli/commands/daemon_ctl.py->modules/intercept.pycli/commands/daemon_ctl.py->skills/daemon_control.pycli/commands/daemon_ctl.py->utils.pycli/commands/database.py->cli/commands/_base.pycli/commands/database.py->modules/db.pycli/commands/database.py->modules/finding_lifecycle.pycli/commands/database.py->skills/autonomous_daemon.pycli/commands/database.py->utils.pycli/commands/defaults.py->cli/assign.pycli/commands/defaults.py->cli/commands/_base.pycli/commands/defaults.py->core/config.pycli/commands/defaults.py->core/defaults.pycli/commands/defaults.py->utils.pycli/commands/demo.py->cli/commands/_base.pycli/commands/demo.py->utils.pycli/commands/diagnostics.py->cli/commands/_base.pycli/commands/dns_exfil.py->cli/commands/_base.pycli/commands/dns_exfil.py->modules/backdoor/server.ccli/commands/dns_exfil.py->modules/dns_beacon.pycli/commands/dns_exfil.py->utils.pycli/commands/dpapi.py->cli/commands/_base.pycli/commands/dpapi.py->modules/dpapi_harvester.pycli/commands/dpapi.py->utils.pycli/commands/edr_detect.py->cli/commands/_base.pycli/commands/edr_detect.py->modules/edr_detector.pycli/commands/edr_detect.py->utils.pycli/commands/encoding.py->cli/commands/_base.pycli/commands/encoding.py->utils.pycli/commands/enum.py->cli/commands/_base.pycli/commands/enum.py->core/validators.pycli/commands/enum.py->utils.pycli/commands/estorides.py->cli/commands/_base.pycli/commands/estorides.py->modules/estorides_importer.pycli/commands/estorides.py->utils.pycli/commands/evasive_payload.py->cli/commands/_base.pycli/commands/evasive_payload.py->modules/evasion_engine.pycli/commands/evasive_payload.py->modules/evasive_payloads.pycli/commands/evasive_payload.py->utils.pycli/commands/exfiltration.py->cli/commands/_base.pycli/commands/exfiltration.py->cli/commands/cloud.pycli/commands/exfiltration.py->core/crypto.pycli/commands/exfiltration.py->core/hardening.pycli/commands/exfiltration.py->utils.pycli/commands/exploit.py->cli/commands/_base.pycli/commands/exploit.py->modules/categories.pycli/commands/exploit.py->utils.pycli/commands/exploit_migrated.py->cli/commands/_base.pycli/commands/exploit_migrated.py->core/autonomous.pycli/commands/exploit_migrated.py->modules/adcs_attacks.pycli/commands/exploit_migrated.py->modules/chain_registry.pycli/commands/exploit_migrated.py->modules/exploit_chain.pycli/commands/exploit_migrated.py->modules/exploit_recommender.pycli/commands/exploit_migrated.py->modules/world_model.pycli/commands/exploit_migrated.py->utils.pycli/commands/exploitgym.py->cli/commands/_base.pycli/commands/exploitgym.py->modules/exploitgym_gym.pycli/commands/exploitgym.py->utils.pycli/commands/help_ui.py->cli/aliases.pycli/commands/help_ui.py->cli/assign.pycli/commands/help_ui.py->cli/command_explorer.pycli/commands/help_ui.py->cli/commands/_base.pycli/commands/help_ui.py->cli/config_status.pycli/commands/help_ui.py->cli/contextual_help.pycli/commands/help_ui.py->cli/doctor.pycli/commands/help_ui.py->cli/engagement_hooks.pycli/commands/help_ui.py->cli/ops_commands.pycli/commands/help_ui.py->cli/tui_theme.pycli/commands/help_ui.py->cli/tutorial.pycli/commands/help_ui.py->cli/wizard.pycli/commands/help_ui.py->cli/wizard_scope.pycli/commands/help_ui.py->core/config.pycli/commands/help_ui.py->core/console.pycli/commands/help_ui.py->modules/world_model.pycli/commands/help_ui.py->utils.pycli/commands/infra.py->cli/commands/_base.pycli/commands/infra.py->cli/confirm.pycli/commands/infra.py->utils.pycli/commands/lab.py->cli/commands/_base.pycli/commands/lab.py->utils.pycli/commands/lateral.py->cli/commands/_base.pycli/commands/lateral.py->modules/categories.pycli/commands/lateral.py->utils.pycli/commands/lateral_migrated.py->cli/commands/_base.pycli/commands/lateral_migrated.py->core/hardening.pycli/commands/lateral_migrated.py->modules/domain_dominance.pycli/commands/lateral_migrated.py->utils.pycli/commands/lazyloop.py->cli/commands/_base.pycli/commands/lazyloop.py->cli/lazy_monitor.pycli/commands/lazyloop.py->cli/lazy_orchestrator.pycli/commands/lazyloop.py->modules/lazy_bridge.pycli/commands/lazyloop.py->modules/lazy_engine.pycli/commands/lazyloop.py->modules/lazy_mentions.pycli/commands/lazyloop.py->utils.pycli/commands/lazyops.py->cli/commands/_base.pycli/commands/lazyops.py->core/process.pycli/commands/lazyops.py->modules/__init__.pycli/commands/lazyops.py->modules/addon_updater.pycli/commands/lazyops.py->modules/auto_registry.pycli/commands/lazyops.py->modules/custom_tools.pycli/commands/lazyops.py->modules/lazy_agent.pycli/commands/lazyops.py->modules/lazy_cli_bridge.pycli/commands/lazyops.py->modules/lazy_engine.pycli/commands/lazyops.py->modules/lazy_installer.pycli/commands/lazyops.py->modules/lazy_proxy.pycli/commands/lazyops.py->modules/lazy_roles.pycli/commands/lazyops.py->modules/lazy_runner.pycli/commands/lazyops.py->modules/lazy_sandbox.pycli/commands/lazyops.py->modules/lazy_skill_mirror.pycli/commands/lazyops.py->modules/lazy_skills.pycli/commands/lazyops.py->modules/orchestrator_config.pycli/commands/lazyops.py->modules/selfupdate.pycli/commands/lazyops.py->modules/traffic_recorder.pycli/commands/lazyops.py->utils.pycli/commands/marketplace.py->cli/commands/_base.pycli/commands/marketplace.py->cli/marketplace_config.pycli/commands/marketplace.py->cli/plugin_tiers.pycli/commands/marketplace.py->modules/addon_updater.pycli/commands/marketplace.py->modules/module_registry.pycli/commands/marketplace.py->utils.pycli/commands/mcp_bridge.py->cli/aliases.pycli/commands/mcp_bridge.py->cli/commands/_base.pycli/commands/mcp_bridge.py->core/autonomous.pycli/commands/mcp_bridge.py->core/config.pycli/commands/mcp_bridge.py->modules/intelligence_engine.pycli/commands/mcp_bridge.py->modules/lazy_runner.pycli/commands/mcp_bridge.py->modules/playbook_engine.pycli/commands/mcp_bridge.py->modules/session_rag.pycli/commands/mcp_bridge.py->modules/threat_model.pycli/commands/mcp_bridge.py->modules/world_model.pycli/commands/mcp_bridge.py->skills/lazyown_facts.pycli/commands/mcp_bridge.py->skills/lazyown_parquet_db.pycli/commands/mcp_bridge.py->utils.pycli/commands/misc_migrated.py->cli/aliases.pycli/commands/misc_migrated.py->cli/assign.pycli/commands/misc_migrated.py->cli/autosuggest.pycli/commands/misc_migrated.py->cli/banner_config.pycli/commands/misc_migrated.py->cli/command_chain.pycli/commands/misc_migrated.py->cli/commands/_base.pycli/commands/misc_migrated.py->cli/dashboard_tui.pycli/commands/misc_migrated.py->cli/exploration.pycli/commands/misc_migrated.py->cli/exploration_view.pycli/commands/misc_migrated.py->cli/graph_advisor.pycli/commands/misc_migrated.py->cli/graph_overlay.pycli/commands/misc_migrated.py->cli/ops_commands.pycli/commands/misc_migrated.py->cli/palette.pycli/commands/misc_migrated.py->cli/palette_command.pycli/commands/misc_migrated.py->cli/palette_overlay.pycli/commands/misc_migrated.py->cli/reactive_hints.pycli/commands/misc_migrated.py->cli/recommendation.pycli/commands/misc_migrated.py->cli/recommendation_signals.pycli/commands/misc_migrated.py->cli/sessions_browser.pycli/commands/misc_migrated.py->cli/show.pycli/commands/misc_migrated.py->cli/timeline_browser.pycli/commands/misc_migrated.py->cli/toast_bus.pycli/commands/misc_migrated.py->cli/wizard.pycli/commands/misc_migrated.py->core/config.pycli/commands/misc_migrated.py->core/console.pycli/commands/misc_migrated.py->core/process.pycli/commands/misc_migrated.py->core/safe_exec.pycli/commands/misc_migrated.py->modules/lazy_loop.pycli/commands/misc_migrated.py->modules/module_registry.pycli/commands/misc_migrated.py->modules/payload_factory.pycli/commands/misc_migrated.py->utils.pycli/commands/mobile_macos.py->cli/commands/_base.pycli/commands/mobile_macos.py->core/process.pycli/commands/mobile_macos.py->core/validators.pycli/commands/mobile_macos.py->utils.pycli/commands/module_manager.py->cli/commands/_base.pycli/commands/module_manager.py->modules/module_registry.pycli/commands/module_manager.py->utils.pycli/commands/nethelpers.py->cli/commands/_base.pycli/commands/nethelpers.py->core/hardening.pycli/commands/nethelpers.py->utils.pycli/commands/opsec_cleanup.py->cli/commands/_base.pycli/commands/opsec_cleanup.py->modules/forensic_cleaner.pycli/commands/opsec_cleanup.py->modules/log_tamper.pycli/commands/opsec_cleanup.py->modules/memory_cleaner.pycli/commands/opsec_cleanup.py->modules/network_opsec.pycli/commands/opsec_cleanup.py->modules/opsec_scorer.pycli/commands/opsec_cleanup.py->modules/timestomper.pycli/commands/orchestration.py->cli/commands/_base.pycli/commands/orchestration.py->cli/reasoning_stream.pycli/commands/orchestration.py->core/console.pycli/commands/payload_arsenal.py->cli/commands/_base.pycli/commands/payload_arsenal.py->modules/dotnet_payload.pycli/commands/payload_arsenal.py->modules/linux_advanced_payloads.pycli/commands/payload_arsenal.py->modules/macos_payloads.pycli/commands/payload_arsenal.py->modules/polymorphic_engine.pycli/commands/payload_arsenal.py->modules/staged_delivery.pycli/commands/payload_generation.py->cli/commands/_base.pycli/commands/payload_generation.py->modules/payload_factory.pycli/commands/payload_generation.py->utils.pycli/commands/persist.py->cli/commands/_base.pycli/commands/persist.py->modules/categories.pycli/commands/persist.py->utils.pycli/commands/persist_migrated.py->cli/assign.pycli/commands/persist_migrated.py->cli/commands/_base.pycli/commands/persist_migrated.py->core/config.pycli/commands/persist_migrated.py->core/hardening.pycli/commands/persist_migrated.py->modules/traffic_morpher.pycli/commands/persist_migrated.py->utils.pycli/commands/phishing_wizard.py->cli/commands/_base.pycli/commands/phishing_wizard.py->modules/backdoor/server.ccli/commands/phishing_wizard.py->modules/phishing_orchestrator.pycli/commands/phishing_wizard.py->utils.pycli/commands/pivoting.py->cli/commands/_base.pycli/commands/pivoting.py->core/hardening.pycli/commands/pivoting.py->utils.pycli/commands/postexp.py->cli/commands/_base.pycli/commands/postexp.py->modules/categories.pycli/commands/postexp.py->utils.pycli/commands/postexp_migrated.py->cli/commands/_base.pycli/commands/postexp_migrated.py->modules/yara_scanner.pycli/commands/postexp_migrated.py->utils.pycli/commands/privilege_escalation.py->cli/commands/_base.pycli/commands/privilege_escalation.py->utils.pycli/commands/purple_team.py->cli/commands/_base.pycli/commands/purple_team.py->cli/purple_tui.pycli/commands/purple_team.py->core/config.pycli/commands/purple_team.py->modules/auto_purple.pycli/commands/pwn.py->cli/commands/_base.pycli/commands/pwn.py->core/safe_exec.pycli/commands/pwn.py->core/validators.pycli/commands/pwn.py->modules/ai_exploit_chain.pycli/commands/pwn.py->modules/autonomous_exploit_engine.pycli/commands/pwn.py->modules/dashboard_engine.pycli/commands/pwn.py->modules/enrich.pycli/commands/pwn.py->modules/exploit_recommender.pycli/commands/pwn.py->modules/rich_tui.pycli/commands/pwn.py->modules/world_model.pycli/commands/pwn.py->utils.pycli/commands/recon.py->cli/commands/_base.pycli/commands/recon.py->cli/exploit_advisor.pycli/commands/recon.py->cli/lazynmap_post.pycli/commands/recon.py->core/console.pycli/commands/recon.py->modules/intelligence_engine.pycli/commands/recon.py->utils.pycli/commands/recon_migrated.py->cli/aliases.pycli/commands/recon_migrated.py->cli/assign.pycli/commands/recon_migrated.py->cli/commands/_base.pycli/commands/recon_migrated.py->cli/surface_tui.pycli/commands/recon_migrated.py->core/config.pycli/commands/recon_migrated.py->utils.pycli/commands/redteam_gym.py->cli/commands/_base.pycli/commands/redteam_gym.py->modules/metasploitable_gym.pycli/commands/redteam_gym.py->modules/redteam_gym.pycli/commands/redteam_gym.py->utils.pycli/commands/resource_scripting.py->cli/commands/_base.pycli/commands/resource_scripting.py->modules/resource_script.pycli/commands/resource_scripting.py->utils.pycli/commands/scan.py->cli/commands/_base.pycli/commands/scan.py->utils.pycli/commands/scan_migrated.py->cli/commands/_base.pycli/commands/scan_migrated.py->utils.pycli/commands/security.py->cli/commands/_base.pycli/commands/security.py->core/config.pycli/commands/security.py->core/console.pycli/commands/security.py->core/credential_vault.pycli/commands/security.py->modules/hash_cracker.pycli/commands/security.py->modules/opsec_scorer.pycli/commands/session_ops.py->cli/aliases.pycli/commands/session_ops.py->cli/assign.pycli/commands/session_ops.py->cli/autosuggest.pycli/commands/session_ops.py->cli/chain_mode.pycli/commands/session_ops.py->cli/commands/_base.pycli/commands/session_ops.py->cli/config_history.pycli/commands/session_ops.py->cli/ops_commands.pycli/commands/session_ops.py->cli/session_resumer.pycli/commands/session_ops.py->cli/show.pycli/commands/session_ops.py->core/config.pycli/commands/session_ops.py->core/payload_schema.pycli/commands/session_ops.py->modules/autonomous_exploit_engine.pycli/commands/session_ops.py->modules/enrich.pycli/commands/session_ops.py->modules/lazy_loop.pycli/commands/session_ops.py->modules/lazy_rbac.pycli/commands/session_ops.py->modules/module_registry.pycli/commands/session_ops.py->modules/payload_factory.pycli/commands/session_ops.py->modules/pipeline_engine.pycli/commands/session_ops.py->modules/planner.pycli/commands/session_ops.py->skills/autonomous_daemon.pycli/commands/session_ops.py->utils.pycli/commands/shellsys.py->cli/commands/_base.pycli/commands/shellsys.py->core/safe_exec.pycli/commands/shellsys.py->utils.pycli/commands/sleep_obfuscation.py->cli/commands/_base.pycli/commands/sleep_obfuscation.py->modules/sleep_obfuscation.pycli/commands/sleep_obfuscation.py->utils.pycli/commands/socks_proxy.py->cli/commands/_base.pycli/commands/socks_proxy.py->modules/socks_proxy.pycli/commands/socks_proxy.py->utils.pycli/commands/supply_chain.py->cli/commands/_base.pycli/commands/supply_chain.py->utils.pycli/commands/surface.py->cli/commands/_base.pycli/commands/surface.py->modules/attack_surface3d.pycli/commands/surface.py->modules/estorides_fusion.pycli/commands/surface.py->modules/surface_ops.pycli/commands/surface.py->utils.pycli/commands/ux.py->cli/commands/_base.pycli/commands/ux.py->cli/config_history.pycli/commands/ux.py->cli/fuzzy_match.pycli/commands/ux.py->cli/output_mode.pycli/commands/ux.py->cli/session_hud.pycli/commands/ux.py->cli/toast_bus.pycli/commands/ux.py->core/config.pycli/commands/ux.py->core/console.pycli/commands/ux.py->utils.pycli/config_status.py->core/console.pycli/contextual_help.py->cli/palette.pycli/contextual_help.py->cli/phase_labels.pycli/contextual_help.py->core/console.pycli/dashboard_tui.py->cli/commands/containers.pycli/dashboard_tui.py->cli/dashboard_layout.pycli/dashboard_tui.py->cli/graph_advisor.pycli/dashboard_tui.py->cli/killchain.pycli/dashboard_tui.py->cli/ops_commands.pycli/dashboard_tui.py->cli/reactive_hints.pycli/dashboard_tui.py->cli/reasoning_stream.pycli/dashboard_tui.py->cli/recommendation_signals.pycli/dashboard_tui.py->cli/toast_bus.pycli/dashboard_tui.py->modules/killchain.pycli/doctor.py->cli/wizard.pycli/doctor.py->core/console.pycli/doctor.py->core/profiles.pycli/engagement_hooks.py->cli/palette.pycli/engagement_hooks.py->core/config.pycli/engagement_hooks.py->modules/cli_auth.pycli/engagement_hooks.py->modules/lazy_rbac.pycli/exploit_advisor.py->core/console.pycli/exploration_view.py->cli/exploration.pycli/exploration_view.py->core/console.pycli/fuzzy_match.py->cli/fuzzy_picker.pycli/graph_overlay.py->cli/commands/containers.pycli/graph_overlay.py->cli/commands/enum.pycli/graph_overlay.py->cli/graph_advisor.pycli/graph_overlay.py->cli/themes.pycli/graph_overlay.py->core/text_utils.pycli/killchain.py->modules/killchain.pycli/lazy_monitor.py->cli/commands/containers.pycli/lazy_monitor.py->modules/jsonl_tail.pycli/lazy_monitor.py->modules/lazy_engine.pycli/lazy_monitor.py->modules/lazy_runner.pycli/lazy_monitor.py->modules/loop_progress.pycli/lazy_orchestrator.py->cli/commands/containers.pycli/lazy_orchestrator.py->cli/palette.pycli/lazy_orchestrator.py->cli/tui_forms.py
Next: ARCHITECTURE_p2.md