Component Diagrams
Details
Static architecture map of 1627 files (asm, c, cpp, cs, h, js, lua, php, py, sh) in 29 components: skills/mcp_tools, modules: lazy_loop, cli/commands, modules: lazyown, modules: lazyc2, cli, modules: world_model, modules: lazyown_facts. Structure is extracted statically without LLM calls; component prose may be enriched locally.
Relations
- skills/mcp_tools calls into static/js — 0 imports, 12 calls across the boundary
cli/commands/exploitgym.py::do_exploitgym@88 → static/js/html2pdf.bundle.min.js::handler·modules/atomic_enricher.py::query_atomic@272 → static/js/html2pdf.bundle.min.js::contains·modules/atomic_enricher.py::query_atomic@273 → static/js/html2pdf.bundle.min.js::contains - skills/mcp_tools calls into modules: llm_budget — 10 imports, 18 calls across the boundary
modules/mcp_agent_bridge.py::_make_client@54 → modules/llm_factory.py::groq_model_chain·skills/autonomous_daemon.py::_llm_candidate@833 → modules/llm_pool.py::complete·skills/autonomous_daemon.py::_run_objective@2022 → modules/goals.py::blocked - skills/mcp_tools calls into modules: bof_registry — 6 imports, 19 calls across the boundary
skills/autonomous_daemon.py::register_output@718 → lazyc2/security/command_allowlist.py::CommandDecision·skills/autonomous_daemon.py::_llm_candidate@843 → lazyc2/security/command_allowlist.py::CommandDecision·skills/autonomous_daemon.py::_swan_candidate@913 → lazyc2/security/command_allowlist.py::CommandDecision - skills/mcp_tools calls into modules/selection — 4 imports, 5 calls across the boundary
skills/autonomous_daemon.py::select@1212 → modules/selection/base.py::SelectionContext·skills/autonomous_daemon.py::select@1222 → modules/selection/registry.py::propose_next·skills/autonomous_daemon.py::_run_objective@2047 → modules/selection/base.py::propose - skills/mcp_tools calls into skills/claude_md_orchestrator — 1 imports, 50 calls across the boundary
modules/atomic_enricher.py::_parse_scope@138 → skills/claude_md_orchestrator/validators.py::group·modules/exploitgym_gym.py::_extract_flag@497 → skills/claude_md_orchestrator/validators.py::group·modules/mcp_agent_bridge.py::_ollama_chat@130 → skills/claude_md_orchestrator/validators.py::group - skills/mcp_tools calls into modules: kerberos_core — 0 imports, 2 calls across the boundary
modules/atomic_enricher.py@377 → modules/kerberos_core.py::to_string·modules/atomic_enricher.py@379 → modules/kerberos_core.py::to_string - skills/mcp_tools calls into modules: polymorphic_engine — 0 imports, 46 calls across the boundary
modules/atomic_enricher.py@112 → modules/dotnet_payload.py::compile·modules/exploitgym_gym.py@53 → modules/dotnet_payload.py::compile·modules/pipeline_engine.py@75 → modules/dotnet_payload.py::compile - skills/mcp_tools calls into modules: lazy_loop — 6 imports, 115 calls across the boundary
modules/cve_matcher.py::_save_cache@114 → modules/workspace.py::write_text·modules/event_engine.py::save_rules@111 → modules/workspace.py::write_text·modules/event_engine.py::_write_watermark@138 → modules/workspace.py::write_text - skills/mcp_tools calls into modules: memory_store — 0 imports, 13 calls across the boundary
skills/mcp_tools/memory_recall.py::handle@54 → modules/memory_store.py::get_memory_store·skills/mcp_tools/memory_recall.py::handle@55 → modules/memory_store.py::recall_by_host·skills/mcp_tools/memory_store.py::handle@47 → modules/memory_store.py::get_memory_store - skills/mcp_tools calls into scripts: journal — 0 imports, 3 calls across the boundary
modules/mcp_agent_bridge.py::_ollama_chat@110 → scripts/journal.py::post·tests/test_core_modules.py::test_collab_endpoints@333 → scripts/journal.py::post·tests/test_core_modules.py::test_collab_endpoints@335 → scripts/journal.py::post - skills/mcp_tools calls into poc_tui — 0 imports, 71 calls across the boundary
cli/commands/exploitgym.py::_egym_status@104 → poc_tui/config.py::items·cli/commands/exploitgym.py::_egym_setup@137 → poc_tui/config.py::items·modules/atomic_enricher.py::_parse_keyword_tags@160 → poc_tui/config.py::items - skills/mcp_tools depends on cli/commands — 19 imports, 9 calls across the boundary
modules/evasion_engine.py::morph_traffic@291 → cli/banner_config.py::choices·skills/autonomous_daemon.py::_objective_proven@377 → cli/commands/database.py::_get_db·skills/autonomous_daemon.py::_run_objective@2069 → modules/intercept.py::check - skills/mcp_tools calls into modules: lazyown — 9 imports, 16 calls across the boundary
modules/exploitgym_gym.py::score_task@587 → modules/redteam_gym.py::record_external_attempt·modules/reactive_engine.py::_default_config_loader@57 → core/config.py::load_payload·skills/autonomous_daemon.py::_record_discarded_vector@2694 → modules/sinks/findings.py::ingest_discarded - skills/mcp_tools calls into modules: lazyc2 — 43 imports, 113 calls across the boundary
modules/asset_graph.py::coverage_for@29 → modules/db.py::host_list·modules/pipeline_engine.py::_now_iso@235 → modules/engagement_hooks.py::now·modules/pipeline_engine.py::_validate@718 → modules/engagement_hooks.py::add - skills/mcp_tools calls into cli — 4 imports, 202 calls across the boundary
cli/commands/exploitgym.py::do_exploitgym@67 → core/console.py::print_msg·cli/commands/exploitgym.py::do_exploitgym@68 → core/console.py::print_msg·cli/commands/exploitgym.py::do_exploitgym@86 → core/console.py::print_error - skills/mcp_tools calls into modules: world_model — 27 imports, 93 calls across the boundary
modules/golden_path.py::build@369 → modules/world_model.py::WorldModel·modules/golden_path.py::build@369 → modules/world_model.py::WorldModel·modules/golden_path.py::build@371 → modules/world_model.py::to_dict - skills/mcp_tools calls into modules: lazyown_facts — 9 imports, 22 calls across the boundary
skills/lazyown_groq_agents.py::_t_facts_show@202 → skills/lazyown_facts.py::FactStore·skills/lazyown_groq_agents.py::_t_facts_show@202 → skills/lazyown_facts.py::summary·skills/lazyown_llm.py::read_facts@384 → skills/lazyown_facts.py::FactStore - skills/mcp_tools calls into lazygui/panels — 0 imports, 10 calls across the boundary
modules/evasion_engine.py::_pick_uri_pool@212 → lazygui/services/event_log.py::extend·modules/reactive_engine.py::analyse@856 → lazygui/services/event_log.py::extend·modules/reactive_engine.py::analyse@867 → lazygui/services/event_log.py::extend - static/js depends on skills/mcp_tools — 12 imports, 6 calls across the boundary
cli/commands/session_ops.py::do_engage@925 → modules/pipeline_engine.py::resolve·cli/commands/session_ops.py::do_engage@926 → modules/pipeline_engine.py::resolve·cli/commands/session_ops.py::do_pipeline@1040 → modules/pipeline_engine.py::resolve - static/js calls into modules: llm_budget — 3 imports, 313 calls across the boundary
static/js/3d-force-graph-1.73.4.min.js::zs@2 → modules/ai_fallback.py::call·static/js/3d-force-graph-1.73.4.min.js::zs@2 → modules/ai_fallback.py::call·static/js/3d-force-graph-1.73.4.min.js::zs@2 → modules/ai_fallback.py::call - static/js depends on modules: bof_registry — 1 imports, 0 calls across the boundary
- static/js depends on modules/selection — 1 imports, 0 calls across the boundary
- static/js calls into skills/claude_md_orchestrator — 1 imports, 4 calls across the boundary
cli/commands/session_ops.py::do_qa@1450 → contrib/legacy/lazyhttpreverseshell.py::encrypt·tests/test_cli_assign.py::_extract_method_body@261 → skills/claude_md_orchestrator/validators.py::group·tests/test_param_registry.py::test_skill_key_list_drops_the_migrated_parameter@345 → skills/claude_md_orchestrator/validators.py::group - static/js calls into modules: polymorphic_engine — 0 imports, 23 calls across the boundary
core/param_registry.py@69 → modules/dotnet_payload.py::compile·core/payload_schema.py@63 → modules/dotnet_payload.py::compile·core/payload_schema.py@64 → modules/dotnet_payload.py::compile - static/js calls into modules: lazy_loop — 8 imports, 68 calls across the boundary
cli/commands/session_ops.py::do_l00t@152 → modules/lazy_loop.py::get·cli/commands/session_ops.py::do_l00t@161 → modules/lazy_loop.py::get·cli/commands/session_ops.py::do_pivot@196 → modules/lazy_loop.py::get - static/js calls into poc_tui — 0 imports, 12 calls across the boundary
cli/commands/session_ops.py::do_show@511 → poc_tui/config.py::items·cli/commands/session_ops.py::do_payload@651 → poc_tui/config.py::items·core/param_registry.py::load_entries@249 → poc_tui/config.py::items - static/js calls into cli/commands — 9 imports, 20 calls across the boundary
cli/commands/params_ops.py::do_param@144 → cli/commands/_base.py::_resolve_shell·cli/commands/params_ops.py::do_param@193 → cli/commands/_base.py::_resolve_shell·cli/commands/session_ops.py::do_assign@288 → cli/commands/_base.py::_resolve_shell - static/js calls into modules: lazyown — 34 imports, 99 calls across the boundary
cli/commands/session_ops.py::do_assign@321 → lazyown.py::refresh_prompt·cli/commands/session_ops.py::do_scope@428 → lazyown.py::_scope_entries·cli/commands/session_ops.py::do_scope@432 → lazyown.py::_scope_render - static/js calls into modules: lazyc2 — 4 imports, 48 calls across the boundary
cli/commands/session_ops.py::do_tenant@353 → modules/lazy_rbac.py::get_tenant_manager·cli/commands/session_ops.py::do_tenant@357 → modules/lazy_rbac.py::list_tenants·cli/commands/session_ops.py::do_tenant@358 → modules/lazy_rbac.py::get_active - static/js calls into cli — 9 imports, 211 calls across the boundary
cli/commands/params_ops.py::do_param@74 → core/console.py::print_msg·cli/commands/params_ops.py::do_param@79 → core/console.py::print_msg·cli/commands/params_ops.py::do_param@81 → core/console.py::print_msg - static/js calls into modules: world_model — 18 imports, 45 calls across the boundary
cli/commands/session_ops.py::do_frontier@738 → modules/planner.py::TodoList·cli/commands/session_ops.py::do_frontier@739 → modules/planner.py::refill·cli/session_resumer.py::_discover_targets@99 → modules/world_model.py::read_state_dict - static/js calls into modules: lazyown_facts — 0 imports, 1 calls across the boundary
static/js/jquery-3.5.1.slim.min.js::p@2 → tests/test_lazy_adaptive_replan.py::first - static/js calls into lazygui/panels — 3 imports, 35 calls across the boundary
lazyc2/addon_creator.py::validate@519 → lazygui/services/event_log.py::extend·lazyc2/addon_creator.py::validate@520 → lazygui/services/event_log.py::extend·lazyc2/addon_creator.py::validate@521 → lazygui/services/event_log.py::extend - modules: llm_budget calls into skills/mcp_tools — 3 imports, 5 calls across the boundary
modules/loop_ai_bridge.py::_open@107 → skills/hive_mind.py::EpisodicStore·modules/loop_ai_bridge.py::_hive_store@113 → skills/hive_mind.py::store·modules/loop_ai_bridge.py::_open@427 → skills/swan_agent.py::get_swan - modules: llm_budget calls into static/js — 0 imports, 4 calls across the boundary
modules/agent_runner.py::execute@91 → static/js/3d-force-graph-1.73.4.min.js::signature·modules/agent_runner.py::register_tool_from_instance@227 → static/js/3d-force-graph-1.73.4.min.js::signature·tests/test_llm_adapter_parity.py::test_direct_variants_report_missing_key@95 → static/js/3d-force-graph-1.73.4.min.js::fn - modules: llm_budget calls into modules: bof_registry — 2 imports, 4 calls across the boundary
modules/loop_ai_bridge.py::assess_opsec@152 → modules/opsec_scorer.py::OpsecContext·modules/loop_ai_bridge.py::assess_opsec@153 → modules/opsec_scorer.py::OpsecScorerV2·tests/conftest.py::_reset_guard_harness@85 → modules/guardrails/harness.py::reset_global_harness - modules: llm_budget calls into skills/claude_md_orchestrator — 1 imports, 7 calls across the boundary
contrib/legacy/lazyaddon_creator.py::extract_json_from_response@176 → skills/claude_md_orchestrator/validators.py::group·contrib/legacy/lazyaddon_creator.py::extract_json_from_response@183 → skills/claude_md_orchestrator/validators.py::group·modules/ai_fallback.py::_ollama_call@187 → skills/claude_md_orchestrator/validators.py::group - modules: llm_budget calls into modules: polymorphic_engine — 0 imports, 3 calls across the boundary
core/parsers.py::strip_ansi@29 → modules/dotnet_payload.py::compile·modules/goals.py@44 → modules/dotnet_payload.py::compile·modules/session_state.py@112 → modules/dotnet_payload.py::compile - modules: llm_budget calls into modules: lazy_loop — 36 imports, 187 calls across the boundary
core/llm_budget.py::_save@223 → modules/workspace.py::write_text·modules/agent_runner.py::_emit_delta@430 → modules/lazy_loop.py::sink·modules/agent_runner.py::_emit_delta@436 → modules/lazy_loop.py::sink - modules: llm_budget calls into scripts: journal — 0 imports, 5 calls across the boundary
contrib/legacy/lazyphishingai.py::process_prompt_local_yaml@143 → scripts/journal.py::post·modules/ai_fallback.py::_ollama_call@171 → scripts/journal.py::post·modules/ai_model.py::generate@270 → scripts/journal.py::post - modules: llm_budget calls into poc_tui — 0 imports, 21 calls across the boundary
contrib/legacy/lazyphishingai.py::get_relevant_knowledge@127 → poc_tui/config.py::items·core/llm_budget.py::_coerce_price_table@510 → poc_tui/config.py::items·core/llm_budget.py::read_budget_status@610 → poc_tui/config.py::items - modules: llm_budget calls into cli/commands — 10 imports, 24 calls across the boundary
cli/commands/ai.py::do_ai_playbook@297 → utils.py::parse_nmap_csv·cli/commands/ai.py::do_ai_playbook@303 → utils.py::load_knowledge_base·cli/commands/ai.py::do_ai_playbook@321 → utils.py::query_ollama - modules: llm_budget calls into modules: lazyown — 14 imports, 24 calls across the boundary
cli/commands/ai.py::do_ai_playbook@309 → lazyown.py::_create_strict_yaml_prompt·cli/commands/ai.py::do_ai_toggle@375 → tests/test_cli_enhancements.py::poutput·discord_c2.py@19 → lazyown.py::default - modules: llm_budget calls into modules: lazyc2 — 26 imports, 38 calls across the boundary
modules/agent_runner.py::configure_logging@66 → modules/logging_config.py::configure·modules/ai_fallback.py::_toposwarm_call@251 → modules/toposwarm_bridge.py::get_bridge·modules/ai_fallback.py::_toposwarm_call@256 → modules/toposwarm_bridge.py::execute_via_orchestrator - modules: llm_budget calls into cli — 14 imports, 79 calls across the boundary
cli/commands/ai.py::do_ask@102 → core/console.py::print_error·cli/commands/ai.py::do_ask@108 → core/console.py::print_error·cli/commands/ai.py::do_ask@159 → core/console.py::print_msg - modules: llm_budget calls into modules: world_model — 6 imports, 15 calls across the boundary
cli/commands/ai.py::do_ask@127 → modules/killchain.py::current_phase·tests/test_lazy_parity.py::test_frontier_emits_then_dedupes@140 → modules/planner.py::Frontier·tests/test_lazy_parity.py::test_frontier_emits_then_dedupes@140 → modules/planner.py::Planner - modules: llm_budget calls into lazygui/panels — 0 imports, 6 calls across the boundary
core/llm_key_pool.py::build_from_config@229 → lazygui/services/event_log.py::extend·modules/goals.py::load_constraints@93 → lazygui/services/event_log.py::extend·modules/goals.py::load_constraints@99 → lazygui/services/event_log.py::extend - modules: bof_registry calls into skills/mcp_tools — 5 imports, 28 calls across the boundary
skills/tests/test_harness_e2e.py::check@40 → skills/lazyown_session.py::append·skills/tests/test_harness_e2e.py::test_compaction@102 → skills/lazyown_context.py::ContextCompactor·skills/tests/test_harness_e2e.py::test_compaction@106 → skills/lazyown_context.py::compact - modules: bof_registry calls into static/js — 0 imports, 4 calls across the boundary
cli/commands/opsec_cleanup.py::do_network_opsec@364 → static/js/html2pdf.bundle.min.js::output·modules/guardrails/harness.py::run_guarded@115 → static/js/3d-force-graph-1.73.4.min.js::fn·modules/guardrails/harness.py::_on_failure@216 → static/js/3d-force-graph-1.73.4.min.js::fn - modules: bof_registry calls into modules: polymorphic_engine — 0 imports, 8 calls across the boundary
modules/beacon_config_builder.py@421 → modules/dotnet_payload.py::compile·modules/beacon_config_builder.py@422 → modules/dotnet_payload.py::compile·modules/bof_admin.py@31 → modules/dotnet_payload.py::compile - modules: bof_registry calls into modules: lazy_loop — 0 imports, 20 calls across the boundary
modules/bof_admin.py::_write_atomic@250 → modules/workspace.py::write_text·modules/bof_delivery.py::write_client_config@366 → modules/workspace.py::write_text·modules/bof_delivery.py::write_client_config@369 → modules/workspace.py::write_text - modules: bof_registry calls into scripts: journal — 0 imports, 5 calls across the boundary
tests/test_bsb_fileless_compat.py::test_poll_post_marks_bsb_and_delegates@301 → scripts/journal.py::post·tests/test_bsb_fileless_compat.py::test_report_recovers_client_from_payload@331 → scripts/journal.py::post·tests/test_bsb_fileless_compat.py::test_report_garbage_is_rejected@339 → scripts/journal.py::post - modules: bof_registry calls into poc_tui — 0 imports, 13 calls across the boundary
cli/commands/opsec_cleanup.py::do_log_tamper@126 → poc_tui/config.py::items·cli/commands/opsec_cleanup.py::do_forensic_clean@191 → poc_tui/config.py::items·cli/scope_guard.py::build_offensive_commands@160 → poc_tui/config.py::items - modules: bof_registry calls into cli/commands — 8 imports, 18 calls across the boundary
cli/commands/bof_registry.py::do_bsb_stage@651 → utils.py::copy2clip·cli/commands/enum.py::do_smbclient@57 → utils.py::get_domain·cli/commands/enum.py::do_smbclient@96 → utils.py::copy2clip - modules: bof_registry calls into modules: lazyown — 17 imports, 105 calls across the boundary
cli/commands/bof_registry.py::_ensure_beacon_staged@560 → core/config.py::load_payload·cli/commands/opsec_cleanup.py::do_opsec_score@75 → tests/test_cli_enhancements.py::poutput·cli/commands/opsec_cleanup.py::do_opsec_score@76 → tests/test_cli_enhancements.py::poutput - modules: bof_registry calls into modules: lazyc2 — 12 imports, 22 calls across the boundary
modules/bof_delivery.py::_stage_payload_b64@110 → lazyc2/security/services.py::read_bytes·modules/bof_delivery.py::beacon_runtime_config@295 → lazyc2/security/services.py::read_bytes·modules/bof_delivery.py::wait_for_beacon@845 → modules/beacon_history.py::read_records - modules: bof_registry calls into cli — 1 imports, 143 calls across the boundary
cli/commands/bof_registry.py::_stage_bof@75 → core/console.py::print_error·cli/commands/bof_registry.py::_stage_bof@83 → core/console.py::print_succ·cli/commands/bof_registry.py::do_bof_search@97 → core/console.py::print_msg - modules: bof_registry calls into modules: world_model — 1 imports, 1 calls across the boundary
modules/opsec_scorer.py::_phase_mismatch_penalty@459 → modules/killchain.py::current_phase - modules: bof_registry depends on modules: lazyown_facts — 1 imports, 0 calls across the boundary
- modules: bof_registry calls into lazygui/panels — 0 imports, 24 calls across the boundary
modules/bof_registry.py::find_client_artifact@393 → lazygui/services/event_log.py::extend·modules/bof_registry.py::find_client_artifact@396 → lazygui/services/event_log.py::extend·modules/log_tamper.py::windows_clear_commands@121 → lazygui/services/event_log.py::extend - modules/selection calls into skills/mcp_tools — 4 imports, 5 calls across the boundary
modules/selection/bridge.py::propose@41 → modules/lazyown_bridge.py::get_dispatcher·modules/selection/bridge.py::propose@51 → modules/lazyown_bridge.py::suggest·modules/selection/parquet.py::_get_pdb@41 → skills/lazyown_parquet_db.py::get_pdb - modules/selection calls into static/js — 1 imports, 120 calls across the boundary
static/js/select2-4.1.0.min.js::t@2 → static/js/html2pdf.bundle.min.js::D·static/js/select2-4.1.0.min.js::t@2 → static/js/html2pdf.bundle.min.js::D·static/js/select2-4.1.0.min.js::t@2 → static/js/html2pdf.bundle.min.js::D - modules/selection calls into modules: llm_budget — 0 imports, 66 calls across the boundary
static/js/select2-4.1.0.min.js::t@2 → modules/ai_fallback.py::call·static/js/select2-4.1.0.min.js::t@2 → modules/ai_fallback.py::call·static/js/select2-4.1.0.min.js::t@2 → modules/ai_fallback.py::call - modules/selection calls into modules: bof_registry — 0 imports, 1 calls across the boundary
static/js/select2-4.1.0.min.js::t@2 → modules/c2_profile_engine.py::transport - modules/selection calls into modules: polymorphic_engine — 0 imports, 4 calls across the boundary
modules/selection/adversary.py@22 → modules/dotnet_payload.py::compile·modules/selection/atomic.py@16 → modules/dotnet_payload.py::compile·modules/selection/intel.py@26 → modules/dotnet_payload.py::compile - modules/selection calls into modules: lazy_loop — 21 imports, 64 calls across the boundary
static/js/select2-4.1.0.min.js::t@2 → modules/lazy_loop.py::abort·static/js/select2-4.1.0.min.js::t@2 → modules/lazy_loop.py::children·static/js/select2-4.1.0.min.js::t@2 → modules/lazy_loop.py::children - modules/selection calls into poc_tui — 0 imports, 1 calls across the boundary
modules/selection/playbook.py::_summaries_with_binding@112 → poc_tui/config.py::items - modules/selection depends on cli/commands — 10 imports, 5 calls across the boundary
modules/selection/module.py::propose@28 → modules/module_registry.py::get·modules/selection/module.py::propose@29 → modules/module_registry.py::get_instance·modules/selection/module.py::propose@29 → modules/module_registry.py::proposal_intents - modules/selection calls into modules: lazyown — 2 imports, 2 calls across the boundary
modules/selection/registry.py::default_selectors@93 → modules/orchestrator_config.py::selector_enabled·tests/test_intel_selector.py::test_orchestrator_toggle_honours_intel@59 → modules/orchestrator_config.py::selector_enabled - modules/selection calls into modules: lazyc2 — 2 imports, 4 calls across the boundary
static/js/select2-4.1.0.min.js::t@2 → tests/test_collab_and_onboarding.py::html·static/js/select2-4.1.0.min.js::t@2 → tests/test_collab_and_onboarding.py::html·static/js/select2-4.1.0.min.js::t@2 → tests/test_collab_and_onboarding.py::html - modules/selection calls into cli — 0 imports, 8 calls across the boundary
static/js/select2-4.1.0.min.js::t@2 → cli/autosuggest.py::current·static/js/select2-4.1.0.min.js::t@2 → cli/autosuggest.py::current·static/js/select2-4.1.0.min.js::t@2 → cli/autosuggest.py::current - modules/selection calls into modules: world_model — 4 imports, 11 calls across the boundary
modules/selection/technique.py::propose@31 → modules/playbook_engine.py::phase_techniques·modules/selection/technique_chain.py::_ordered_techniques@49 → modules/playbook_engine.py::phase_techniques·tests/test_selection_technique.py::fake_stix@69 → modules/playbook_engine.py::get_engine - modules/selection calls into modules: lazyown_facts — 10 imports, 36 calls across the boundary
modules/chain_match.py::normalize_tags@61 → modules/chain_registry.py::get·modules/chain_match.py::service_tokens@71 → modules/chain_registry.py::get·modules/chain_match.py::score@97 → modules/chain_registry.py::get - modules/selection calls into lazygui/panels — 0 imports, 17 calls across the boundary
static/js/select2-4.1.0.min.js::t@2 → lazygui/services/event_log.py::extend·static/js/select2-4.1.0.min.js::t@2 → lazygui/services/event_log.py::extend·static/js/select2-4.1.0.min.js::t@2 → lazygui/services/event_log.py::extend - skills/claude_md_orchestrator calls into skills/mcp_tools — 0 imports, 2 calls across the boundary
skills/hermes-lazyown/executor.py::_run_with_pty@217 → skills/autonomous_daemon.py::poll·tests/test_security_sanitizers.py::test_real_payload_file_builds_config@321 → skills/lazyown_objective.py::skip - skills/claude_md_orchestrator calls into modules: llm_budget — 1 imports, 2 calls across the boundary
skills/claude_md_orchestrator/sdd_agent.py::_ask_llm@164 → modules/llm_factory.py::try_get_llm_backend·skills/hermes-lazyown/mcp_server.py::_intel_recommend_next@556 → modules/recommender.py::recommend_and_save - skills/claude_md_orchestrator depends on modules: bof_registry — 1 imports, 0 calls across the boundary
- skills/claude_md_orchestrator calls into modules: polymorphic_engine — 0 imports, 34 calls across the boundary
modules/browser_sync.py::apply_rules@443 → modules/dotnet_payload.py::compile·modules/browser_sync.py::apply_rules@465 → modules/dotnet_payload.py::compile·modules/security_sanitizers.py::__init__@126 → modules/dotnet_payload.py::compile - skills/claude_md_orchestrator calls into modules: lazy_loop — 0 imports, 23 calls across the boundary
modules/browser_sync.py::token@131 → modules/workspace.py::write_text·modules/browser_sync.py::write_netscape_jar@355 → modules/workspace.py::write_text·modules/browser_sync.py::do_GET@652 → tests/test_lazy_runner.py::send_error - skills/claude_md_orchestrator calls into scripts: journal — 0 imports, 1 calls across the boundary
contrib/legacy/lazyhttpreverseshell.py::reverse_http_shell_client@43 → scripts/journal.py::post - skills/claude_md_orchestrator calls into modules/backdoor — 0 imports, 2 calls across the boundary
modules/backdoor/server.c::main@55 → modules/backdoor/backdoor.c::bzero·modules/backdoor/server.c::main@56 → modules/backdoor/backdoor.c::bzero - skills/claude_md_orchestrator calls into poc_tui — 0 imports, 12 calls across the boundary
modules/browser_sync.py::build_cookie_header@311 → poc_tui/config.py::items·modules/browser_sync.py::build_cookie_header@314 → poc_tui/config.py::items·modules/browser_sync.py::apply_rules@444 → poc_tui/config.py::items - skills/claude_md_orchestrator depends on cli/commands — 4 imports, 1 calls across the boundary
contrib/legacy/lazygalazy.py::rand_word@94 → cli/banner_config.py::choices - skills/claude_md_orchestrator calls into modules: lazyown — 1 imports, 1 calls across the boundary
skills/claude_md_orchestrator/validators.py::finditer@85 → core/hardening.py::iter_emoji_spans - skills/claude_md_orchestrator calls into cli — 0 imports, 2 calls across the boundary
modules/backdoor/server.c::main@43 → cli/autosuggest.py::accept·modules/security_sanitizers.py::from_payload@87 → cli/command_form.py::fields - skills/claude_md_orchestrator calls into modules: world_model — 1 imports, 2 calls across the boundary
skills/hermes-lazyown/constants.py::PhaseNames@69 → modules/killchain.py::phases·skills/hermes-lazyown/mcp_server.py::_intel_facts_show@524 → modules/lazy_timeline.py::show - skills/claude_md_orchestrator calls into modules: lazyown_facts — 0 imports, 1 calls across the boundary
skills/hermes-lazyown/mcp_server.py::_intel_facts_show@521 → skills/lazyown_facts.py::FactStore - skills/claude_md_orchestrator calls into lazygui/panels — 0 imports, 36 calls across the boundary
skills/claude_md_orchestrator/boy_scout.py::_inspect@51 → lazygui/services/event_log.py::extend·skills/claude_md_orchestrator/boy_scout.py::run@102 → lazygui/services/event_log.py::extend·skills/claude_md_orchestrator/orchestrator.py::_load_seed_contracts@389 → lazygui/services/event_log.py::extend - modules: defense_eval calls into modules: lazy_loop — 0 imports, 11 calls across the boundary
modules/defense_stages.py::_activity@33 → modules/lazy_loop.py::ActivityLog·modules/defense_stages.py::_write_json@235 → modules/workspace.py::write_text·tests/test_defense_stages.py::test_defense_validate_writes_result@54 → modules/workspace.py::write_text - modules: defense_eval depends on cli/commands — 1 imports, 0 calls across the boundary
- modules: defense_eval calls into modules: lazyown — 1 imports, 2 calls across the boundary
modules/defense_stages.py::_params@47 → modules/orchestrator_config.py::stage_params·tests/test_defense_stages.py::test_yaml_profiles_load@38 → modules/orchestrator_config.py::profiles - modules: defense_eval depends on modules: lazyc2 — 1 imports, 0 calls across the boundary
- modules: defense_eval calls into lazygui/panels — 0 imports, 4 calls across the boundary
modules/hunt_verify.py::_assess_stage@366 → lazygui/services/event_log.py::extend·modules/hunt_verify.py::_assess_stage@367 → lazygui/services/event_log.py::extend·modules/hunt_verify.py::_assess_stage@368 → lazygui/services/event_log.py::extend - modules: kerberos_core calls into skills/claude_md_orchestrator — 0 imports, 1 calls across the boundary
modules/dacl_abuse.py::_extract_cn@416 → skills/claude_md_orchestrator/validators.py::group - modules: kerberos_core calls into poc_tui — 0 imports, 2 calls across the boundary
cli/commands/active_directory.py::do_kerberoast@313 → poc_tui/config.py::items·modules/dacl_abuse.py::summary@437 → poc_tui/config.py::items - modules: kerberos_core depends on cli/commands — 1 imports, 0 calls across the boundary
- modules: kerberos_core calls into modules: lazyown — 0 imports, 81 calls across the boundary
cli/commands/active_directory.py::do_kerberos_ticket@83 → tests/test_cli_enhancements.py::poutput·cli/commands/active_directory.py::do_kerberos_ticket@84 → tests/test_cli_enhancements.py::poutput·cli/commands/active_directory.py::do_kerberos_ticket@85 → tests/test_cli_enhancements.py::poutput - modules: kerberos_core calls into lazygui/panels — 0 imports, 52 calls across the boundary
modules/gpo_abuse.py::generate_all_plans@395 → lazygui/services/event_log.py::extend·modules/kerberos_core.py::aes_encrypt@356 → lazygui/services/event_log.py::extend·modules/kerberos_core.py::aes_decrypt@383 → lazygui/services/event_log.py::extend - modules: saas_attacks calls into scripts: journal — 0 imports, 2 calls across the boundary
modules/entra_id_attacks.py::device_code_phish@112 → scripts/journal.py::post·modules/entra_id_attacks.py::poll_device_code@149 → scripts/journal.py::post - modules: saas_attacks calls into poc_tui — 0 imports, 12 calls across the boundary
cli/commands/cloud_attacks.py::do_entra_attack@95 → poc_tui/config.py::items·cli/commands/cloud_attacks.py::do_entra_attack@119 → poc_tui/config.py::items·cli/commands/cloud_attacks.py::do_aws_privesc@163 → poc_tui/config.py::items - modules: saas_attacks depends on cli/commands — 1 imports, 0 calls across the boundary
- modules: saas_attacks calls into modules: lazyown — 0 imports, 151 calls across the boundary
cli/commands/cloud_attacks.py::do_entra_attack@47 → tests/test_cli_enhancements.py::poutput·cli/commands/cloud_attacks.py::do_entra_attack@56 → tests/test_cli_enhancements.py::poutput·cli/commands/cloud_attacks.py::do_entra_attack@57 → tests/test_cli_enhancements.py::poutput - modules: saas_attacks calls into lazygui/panels — 0 imports, 1 calls across the boundary
modules/entra_id_attacks.py::__init__@94 → lazygui/services/models.py::Session - modules: polymorphic_engine calls into skills/claude_md_orchestrator — 0 imports, 1 calls across the boundary
modules/polymorphic_engine.py::_compress_data@325 → contrib/legacy/lazyhttpreverseshell.py::compress - modules: polymorphic_engine calls into modules: lazy_loop — 0 imports, 8 calls across the boundary
modules/linux_advanced_payloads.py::generate_all@759 → modules/workspace.py::write_text·modules/linux_advanced_payloads.py::generate_all@766 → modules/workspace.py::write_text·modules/linux_advanced_payloads.py::generate_all@785 → modules/workspace.py::write_text - modules: polymorphic_engine calls into poc_tui — 0 imports, 5 calls across the boundary
cli/commands/payload_arsenal.py::do_staged_delivery@228 → poc_tui/config.py::items·cli/commands/payload_arsenal.py::do_macos_payload@375 → poc_tui/config.py::items·cli/commands/payload_arsenal.py::do_linux_advanced_payload@448 → poc_tui/config.py::items - modules: polymorphic_engine depends on cli/commands — 1 imports, 0 calls across the boundary
- modules: polymorphic_engine calls into modules: lazyown — 0 imports, 75 calls across the boundary
cli/commands/payload_arsenal.py::do_dotnet_payload@45 → tests/test_cli_enhancements.py::poutput·cli/commands/payload_arsenal.py::do_dotnet_payload@92 → tests/test_cli_enhancements.py::poutput·cli/commands/payload_arsenal.py::do_dotnet_payload@93 → tests/test_cli_enhancements.py::poutput - modules: polymorphic_engine calls into modules: lazyc2 — 0 imports, 4 calls across the boundary
modules/dotnet_payload.py::generate@477 → lazyc2/security/services.py::read_bytes·modules/staged_delivery.py::generate_all@445 → lazyc2/security/services.py::write_bytes·modules/staged_delivery.py::generate_all@450 → lazyc2/security/services.py::write_bytes - modules: polymorphic_engine calls into lazygui/panels — 0 imports, 15 calls across the boundary
modules/dotnet_payload.py::compile@439 → lazygui/services/event_log.py::extend·modules/linux_advanced_payloads.py::compile_c_source@730 → lazygui/services/event_log.py::extend·modules/linux_advanced_payloads.py::compile_c_source@731 → lazygui/services/event_log.py::extend - contrib/legacy calls into modules: lazy_loop — 0 imports, 1 calls across the boundary
contrib/legacy/lazylogpoisoning.py@50 → modules/loop_guardrails.py::signal - contrib/legacy calls into poc_tui — 0 imports, 6 calls across the boundary
contrib/legacy/lazycreate_webshell.py@17 → poc_tui/config.py::items·contrib/legacy/lazylogpoisoning.py::main@136 → poc_tui/config.py::items·contrib/legacy/lazylogpoisoning.py::main@141 → poc_tui/config.py::items - modules: lazy_loop depends on skills/mcp_tools — 25 imports, 23 calls across the boundary
cli/commands/lazyops.py::do_lazy_addon@2232 → modules/pipeline_engine.py::_run_command·cli/commands/mcp_bridge.py::do_rag_query@298 → modules/session_rag.py::get_rag·cli/commands/mcp_bridge.py::do_rag_query@299 → modules/session_rag.py::index_new - modules: lazy_loop calls into static/js — 1 imports, 2 calls across the boundary
tests/test_lazy_runner.py::test_do_qa_runs_shutdown_and_dedupes_killall@1430 → cli/commands/session_ops.py::SessionOpsCommandSet·tests/test_lazy_runner.py::test_do_qa_runs_shutdown_and_dedupes_killall@1434 → cli/commands/session_ops.py::do_qa - modules: lazy_loop calls into modules: llm_budget — 47 imports, 85 calls across the boundary
cli/commands/lazyops.py::do_lazy_dispatch@138 → modules/lazy_agent.py::run_external_opencode·cli/commands/lazyops.py::do_lazy_dispatch@140 → modules/lazy_agent.py::run_external_hermes·cli/commands/lazyops.py::do_lazy_agent@1798 → modules/lazy_agent.py::ConversationStore - modules: lazy_loop depends on modules: bof_registry — 3 imports, 0 calls across the boundary
- modules: lazy_loop calls into modules/selection — 3 imports, 3 calls across the boundary
modules/lazy_loop.py::_selector_candidates@4138 → modules/selection/base.py::SelectionContext·modules/lazy_loop.py::_selector_candidates@4147 → modules/selection/registry.py::propose_next·tests/test_lazy_loop.py::test_planner_proposes_chain_from_discovered_services@116 → modules/chain_match.py::reset_cache - modules: lazy_loop calls into skills/claude_md_orchestrator — 5 imports, 42 calls across the boundary
cli/commands/exploit_migrated.py::do_createcookie@118 → skills/claude_md_orchestrator/validators.py::group·modules/adcs_attacks.py::authenticate_with_certificate@407 → skills/claude_md_orchestrator/validators.py::group·modules/auto_registry.py::_parse_trigger_lines@540 → skills/claude_md_orchestrator/validators.py::group - modules: lazy_loop depends on modules: defense_eval — 3 imports, 0 calls across the boundary
- modules: lazy_loop calls into modules: polymorphic_engine — 0 imports, 45 calls across the boundary
core/atomic_store.py::update_json@153 → modules/polymorphic_engine.py::mutate·modules/adcs_attacks.py::authenticate_with_certificate@404 → modules/dotnet_payload.py::compile·modules/auto_registry.py@758 → modules/dotnet_payload.py::compile - modules: lazy_loop calls into scripts: journal — 0 imports, 12 calls across the boundary
cli/commands/exploit_migrated.py::do_lol@2279 → scripts/journal.py::post·cli/commands/exploit_migrated.py::do_lol@2300 → scripts/journal.py::post·cli/commands/exploit_migrated.py::do_lol@2327 → scripts/journal.py::post - modules: lazy_loop calls into modules: lazy_netattack — 0 imports, 3 calls across the boundary
modules/loop_triggers.py::due@336 → modules/lazy_netattack.py::SurfaceEvidence·modules/loop_triggers.py::due@342 → modules/lazy_netattack.py::surface_decision·modules/loop_triggers.py::due@363 → modules/lazy_netattack.py::hint_text - modules: lazy_loop calls into poc_tui — 0 imports, 89 calls across the boundary
cli/commands/exploit_migrated.py::do_unicode_WAFbypass@1916 → poc_tui/config.py::items·cli/commands/exploit_migrated.py::do_adcs_check@2617 → poc_tui/config.py::items·cli/commands/lazyops.py::do_lazy_trace@578 → poc_tui/config.py::items - modules: lazy_loop calls into cli/commands — 135 imports, 159 calls across the boundary
cli/commands/exploit_migrated.py::do_cp@80 → utils.py::run·cli/commands/exploit_migrated.py::do_winbase64payload@302 → utils.py::decode·cli/commands/exploit_migrated.py::do_winbase64payload@339 → utils.py::copy2clip - modules: lazy_loop calls into modules: lazyown — 109 imports, 151 calls across the boundary
cli/commands/exploit_migrated.py::do_unicode_WAFbypass@1920 → lazyown.py::logcsv·cli/commands/exploit_migrated.py::do_sqli_mssql_test@1959 → lazyown.py::logcsv·cli/commands/exploit_migrated.py::do_pyoracle2@2040 → lazyown.py::logcsv - modules: lazy_loop calls into modules: lazyc2 — 14 imports, 47 calls across the boundary
cli/commands/lazyops.py::do_lazy_addon@2147 → modules/addon_updater.py::update_all·core/atomic_store.py::write_bytes_atomic@62 → lazyc2/security/services.py::write_bytes·modules/lazy_proxy.py::ca_trusted@505 → lazyc2/security/services.py::read_bytes - modules: lazy_loop calls into cli — 14 imports, 847 calls across the boundary
cli/commands/exploit_migrated.py::do_cp@68 → core/console.py::print_error·cli/commands/exploit_migrated.py::do_cp@74 → core/console.py::print_msg·cli/commands/exploit_migrated.py::do_cp@78 → core/console.py::print_error - modules: lazy_loop calls into modules: world_model — 47 imports, 104 calls across the boundary
cli/commands/exploit_migrated.py::do_exploit_recommend@2780 → modules/world_model.py::WorldModel·cli/commands/exploit_migrated.py::do_exploit_recommend@2791 → modules/world_model.py::WorldModel·cli/commands/exploit_migrated.py::do_exploit_recommend@2792 → modules/exploit_recommender.py::ExploitRecommender - modules: lazy_loop calls into modules: lazyown_facts — 11 imports, 99 calls across the boundary
cli/commands/exploit_migrated.py::do_shellshock@616 → modules/chain_registry.py::get·cli/commands/exploit_migrated.py::do_pyoracle2@1994 → modules/chain_registry.py::get·cli/commands/exploit_migrated.py::do_pyoracle2@1995 → modules/chain_registry.py::get - modules: lazy_loop calls into lazygui/panels — 0 imports, 21 calls across the boundary
cli/commands/exploit_migrated.py::do_lol@2298 → lazygui/services/models.py::Session·modules/adcs_attacks.py::find_certificate_authorities@146 → lazygui/services/event_log.py::extend·modules/adcs_attacks.py::enumerate_templates@223 → lazygui/services/event_log.py::extend - tests calls into modules: lazy_loop — 0 imports, 3 calls across the boundary
tests/mutation_common.py::restore_files@34 → modules/workspace.py::write_text·tests/mutation_common.py::run_all@76 → modules/workspace.py::write_text·tests/mutation_common.py::run_all@78 → modules/workspace.py::write_text - tests calls into poc_tui — 0 imports, 3 calls across the boundary
tests/mutation_common.py::backup_files@23 → poc_tui/config.py::items·tests/mutation_common.py::restore_files@32 → poc_tui/config.py::items·tests/mutation_common.py::run_all@67 → poc_tui/config.py::items - modules: memory_store calls into modules: polymorphic_engine — 0 imports, 1 calls across the boundary
modules/memory_embeddings.py@26 → modules/dotnet_payload.py::compile - modules: memory_store calls into modules: lazy_loop — 0 imports, 1 calls across the boundary
modules/memory_store.py::save@172 → modules/selfupdate.py::rollback - scripts: journal calls into poc_tui — 0 imports, 2 calls across the boundary
scripts/journal.py::_graphql@175 → poc_tui/config.py::items·tests/test_journal.py::__call__@28 → poc_tui/config.py::items - scripts: journal calls into lazygui/panels — 0 imports, 1 calls across the boundary
scripts/journal.py::_graphql@177 → lazygui/services/event_log.py::extend - modules: lazy_triage calls into modules: lazy_loop — 0 imports, 1 calls across the boundary
modules/lazy_triage.py::_save@180 → modules/workspace.py::write_text - modules: lazy_triage calls into poc_tui — 0 imports, 2 calls across the boundary
modules/lazy_triage.py::_load@171 → poc_tui/config.py::items·modules/lazy_triage.py::_save@178 → poc_tui/config.py::items - poc_tui calls into skills/claude_md_orchestrator — 0 imports, 2 calls across the boundary
poc_tui/plugin_loader.py::_subst@53 → skills/claude_md_orchestrator/validators.py::group·poc_tui/plugin_loader.py::_subst@54 → skills/claude_md_orchestrator/validators.py::group - poc_tui calls into modules: polymorphic_engine — 0 imports, 2 calls across the boundary
poc_tui/plugin_loader.py@24 → modules/dotnet_payload.py::compile·poc_tui/plugin_loader.py@25 → modules/dotnet_payload.py::compile - poc_tui calls into modules: lazy_loop — 0 imports, 1 calls across the boundary
poc_tui/config.py::save@30 → modules/workspace.py::write_text - scripts: check_contract_manifest calls into skills/claude_md_orchestrator — 0 imports, 2 calls across the boundary
scripts/check_contract_manifest.py::_collect_doc_imports@170 → skills/claude_md_orchestrator/validators.py::group·scripts/check_contract_manifest.py::_collect_doc_imports@171 → skills/claude_md_orchestrator/validators.py::group - scripts: check_contract_manifest calls into modules: polymorphic_engine — 0 imports, 4 calls across the boundary
scripts/check_contract_manifest.py@27 → modules/dotnet_payload.py::compile·scripts/check_contract_manifest.py@28 → modules/dotnet_payload.py::compile·scripts/check_contract_manifest.py@29 → modules/dotnet_payload.py::compile - scripts: check_contract_manifest calls into modules: lazy_loop — 0 imports, 5 calls across the boundary
tests/test_contract_manifest.py::test_missing_module_reference_is_reported@28 → modules/workspace.py::write_text·tests/test_contract_manifest.py::test_missing_module_reference_is_reported@32 → modules/workspace.py::write_text·tests/test_contract_manifest.py::test_missing_public_import_is_reported@40 → modules/workspace.py::write_text - scripts: check_contract_manifest calls into lazygui/panels — 0 imports, 1 calls across the boundary
scripts/check_contract_manifest.py::_iter_table_cells@134 → lazygui/services/event_log.py::extend - scripts: migrate_lazyown calls into modules: lazy_loop — 0 imports, 1 calls across the boundary
scripts/migrate_lazyown.py::main@225 → modules/workspace.py::write_text - scripts: migrate_lazyown calls into tests — 0 imports, 1 calls across the boundary
scripts/migrate_lazyown.py::build_migrated_module@143 → tests/mutation_common.py::title - scripts: migrate_lazyown calls into poc_tui — 0 imports, 3 calls across the boundary
scripts/migrate_lazyown.py::rewrite_globals@111 → poc_tui/config.py::items·scripts/migrate_lazyown.py::rewrite_globals@118 → poc_tui/config.py::items·scripts/migrate_lazyown.py::main@217 → poc_tui/config.py::items - cli/commands calls into skills/mcp_tools — 13 imports, 49 calls across the boundary
cli/commands/daemon_ctl.py::do_daemon_mode@47 → skills/daemon_control.py::load·cli/commands/daemon_ctl.py::do_daemon_mode@55 → skills/daemon_control.py::set_mode·cli/commands/daemon_ctl.py::do_daemon_pause@76 → skills/daemon_control.py::pause - cli/commands calls into static/js — 2 imports, 11 calls across the boundary
banner.py::image_to_bash@30 → static/js/html2pdf.bundle.min.js::convert·cli/commands/database.py::do_db_status@557 → static/js/html2pdf.bundle.min.js::capitalize·cli/commands/exfiltration.py::do_exfil_auto@1540 → static/js/html2pdf.bundle.min.js::handler - cli/commands calls into modules: llm_budget — 4 imports, 49 calls across the boundary
cli/banner_config.py::_git_dirty@916 → modules/ai_fallback.py::call·cli/banner_config.py::_git_dirty@917 → modules/ai_fallback.py::call·cli/banner_config.py::_render@1194 → core/parsers.py::strip_ansi - cli/commands calls into modules: bof_registry — 12 imports, 34 calls across the boundary
cli/commands/c2_profile.py::do_c2_profiles@32 → modules/c2_profile_engine.py::ProfileEngine·cli/commands/c2_profile.py::do_c2_profiles@33 → modules/c2_profile_engine.py::get_all_profiles_dict·cli/commands/c2_profile.py::do_c2_tls@57 → modules/c2_profile_engine.py::TlsProfile - cli/commands calls into skills/claude_md_orchestrator — 4 imports, 108 calls across the boundary
cli/commands/browser_sync.py::do_browsersync@59 → modules/browser_sync.py::start_receiver·cli/commands/browser_sync.py::do_browsersync@69 → modules/browser_sync.py::stop_receiver·cli/commands/browser_sync.py::do_browsersync@76 → modules/browser_sync.py::get_receiver - cli/commands calls into modules: polymorphic_engine — 0 imports, 20 calls across the boundary
cli/banner_config.py::_readline_safe@1371 → modules/dotnet_payload.py::compile·cli/commands/dns_exfil.py@29 → modules/dotnet_payload.py::compile·cli/commands/dns_exfil.py@33 → modules/dotnet_payload.py::compile - cli/commands calls into contrib/legacy — 1 imports, 1 calls across the boundary
utils.py::copy2clip@839 → modules/lazyencoder_decoder.py::encode - cli/commands calls into modules: lazy_loop — 19 imports, 232 calls across the boundary
cli/banner_config.py::_tty_available@1083 → modules/lazy_runner.py::isatty·cli/banner_config.py::_tty_available@1083 → modules/lazy_runner.py::isatty·cli/commands/c2_session.py::do_c2_server@171 → modules/workspace.py::write_text - cli/commands calls into tests — 0 imports, 4 calls across the boundary
cli/commands/phishing_wizard.py::do_phish_wizard@290 → tests/mutation_common.py::title·cli/commands/phishing_wizard.py::do_phish_wizard@290 → tests/mutation_common.py::title·cli/commands/phishing_wizard.py::do_phish_wizard@309 → tests/mutation_common.py::title - cli/commands calls into scripts: journal — 0 imports, 11 calls across the boundary
cli/commands/c2_session.py::_issue@113 → scripts/journal.py::post·cli/commands/exfiltration.py::_send_telegram_file@219 → scripts/journal.py::post·cli/commands/exfiltration.py::_send_discord_file@240 → scripts/journal.py::post - cli/commands calls into modules: lazy_netattack — 0 imports, 2 calls across the boundary
cli/commands/netattack.py::_plan@128 → modules/lazy_netattack.py::SurfaceEvidence·cli/commands/netattack.py::_plan@134 → modules/lazy_netattack.py::surface_decision - cli/commands calls into poc_tui — 0 imports, 70 calls across the boundary
cli/banner_config.py::from_payload@674 → poc_tui/config.py::items·cli/banner_config.py::from_payload@680 → poc_tui/config.py::items·cli/banner_config.py::_select_iface@893 → poc_tui/config.py::items - cli/commands calls into modules: lazyown — 53 imports, 198 calls across the boundary
cli/banner_config.py::_engagement_stats@836 → modules/cli_auth.py::get_current_operator·cli/banner_config.py::_engagement_stats@846 → cli/engagement_hooks.py::get_karma_name·cli/banner_config.py::_engagement_stats@853 → cli/engagement_hooks.py::get_karma_name - cli/commands calls into modules: lazyc2 — 9 imports, 78 calls across the boundary
cli/commands/c2_session.py::do_c2_loot@423 → lazyc2/security/services.py::read_bytes·cli/commands/c2_session.py::do_c2_loot@423 → lazyc2/security/services.py::write_bytes·cli/commands/campaign.py::_gather_campaign_manifest@98 → modules/db.py::LazyOwnDB - cli/commands calls into cli — 16 imports, 2981 calls across the boundary
banner.py::list_png_files@53 → core/console.py::print_error·banner.py::main@77 → core/console.py::print_error·banner.py::main@85 → core/console.py::print_error - cli/commands calls into modules: world_model — 15 imports, 104 calls across the boundary
cli/commands/campaign.py::_gather_campaign_manifest@107 → modules/world_model.py::read_state_dict·cli/commands/estorides.py::do_estorides_seed@138 → modules/estorides_importer.py::extract_seeds_from_world_model·cli/commands/estorides.py::do_estorides_seed@140 → modules/estorides_importer.py::extract_seeds_from_hosts_file - cli/commands calls into modules: lazyown_facts — 2 imports, 87 calls across the boundary
cli/commands/retry_ops.py::_arm_elevation@121 → cli/retry_support.py::consent_to_elevate·cli/commands/retry_ops.py::_retry_status@134 → cli/retry_support.py::status_snapshot·cli/commands/retry_ops.py::_retry_chain@163 → cli/retry_support.py::retry_chain - cli/commands calls into lazygui/panels — 0 imports, 38 calls across the boundary
cli/commands/anti_forensics.py::do_wipe_logs@69 → lazygui/services/event_log.py::extend·cli/commands/cred_migrated.py::expand_regex@579 → lazygui/services/event_log.py::extend·cli/commands/cred_migrated.py::expand_regex@581 → lazygui/services/event_log.py::extend - modules: lazyown calls into skills/mcp_tools — 10 imports, 12 calls across the boundary
cli/commands/diagnostics.py::do_sys_runtime@35 → modules/session_reader.py::platform·core/safe_exec.py::_kill_process_tree@121 → skills/autonomous_daemon.py::poll·core/safe_exec.py::safe_run_argv@219 → skills/autonomous_daemon.py::poll - modules: lazyown calls into static/js — 17 imports, 23 calls across the boundary
cli/commands/persist_migrated.py::_ensure_backdoor_creds@81 → cli/assign.py::apply_assign·cli/commands/persist_migrated.py::_ensure_backdoor_creds@82 → cli/assign.py::apply_assign·cli/lazy_orchestrator.py::_refresh_params@619 → core/param_registry.py::list_params - modules: lazyown calls into modules: llm_budget — 1 imports, 1 calls across the boundary
modules/command_executor.py::run_passthrough@192 → modules/ai_fallback.py::call - modules: lazyown calls into modules: bof_registry — 20 imports, 65 calls across the boundary
cli/commands/security.py::do_opsec@50 → modules/opsec_scorer.py::OpsecScorer·cli/commands/security.py::do_opsec@52 → modules/opsec_scorer.py::score·cli/commands/security.py::do_opsec@87 → modules/opsec_scorer.py::OpsecScorer - modules: lazyown calls into skills/claude_md_orchestrator — 2 imports, 67 calls across the boundary
cli/auto_crypto.py::encrypt_session@156 → contrib/legacy/lazyhttpreverseshell.py::encrypt·cli/auto_crypto.py::decrypt_session@217 → contrib/legacy/lazyhttpreverseshell.py::decrypt·cli/cli_enhancements.py::_sub@257 → skills/claude_md_orchestrator/validators.py::group - modules: lazyown calls into modules: polymorphic_engine — 0 imports, 102 calls across the boundary
cli/cli_enhancements.py::DynamicAliasResolver@253 → modules/dotnet_payload.py::compile·cli/cli_enhancements.py::LiveStatusTail@378 → modules/dotnet_payload.py::compile·cli/cli_enhancements.py::LiveStatusTail@379 → modules/dotnet_payload.py::compile - modules: lazyown calls into modules: lazy_loop — 77 imports, 340 calls across the boundary
cli/commands/audit.py::do_hygiene_audit@330 → modules/workspace.py::write_text·cli/commands/lazyloop.py::_engine@26 → modules/lazy_engine.py::LazyEngine·cli/commands/lazyloop.py::do_lazy_intents@64 → modules/lazy_loop.py::ExplorationGraph - modules: lazyown calls into tests — 0 imports, 3 calls across the boundary
cli/commands/persist_migrated.py::do_ivy@679 → tests/mutation_common.py::title·cli/commands/persist_migrated.py::do_veil@756 → tests/mutation_common.py::title·cli/engagement_hooks.py::_render_phase_badge@519 → tests/mutation_common.py::title - modules: lazyown calls into scripts: journal — 0 imports, 5 calls across the boundary
contrib/legacy/lazydeepseekcli.py::transform_knowledge_base@199 → scripts/journal.py::post·contrib/legacy/lazydeepseekcli.py::_ollama_stream@225 → scripts/journal.py::post·lazyown.py::upload_file_to_c2@4162 → scripts/journal.py::post - modules: lazyown calls into poc_tui — 0 imports, 130 calls across the boundary
cli/aliases.py::load_aliases@140 → poc_tui/config.py::items·cli/cli_enhancements.py::poll_once@323 → poc_tui/config.py::items·cli/cli_enhancements.py::commands_from_cmd2_shell@670 → poc_tui/config.py::items - modules: lazyown calls into cli/commands — 80 imports, 206 calls across the boundary
cli/commands/lazyloop.py::do_lazy_delete@86 → cli/commands/_base.py::extract_flag·cli/commands/lazyloop.py::do_lazy_verdict@206 → cli/commands/_base.py::extract_flag·cli/commands/lazyloop.py::do_lazy_orchestrator@361 → cli/commands/_base.py::_resolve_shell - modules: lazyown calls into modules: lazyc2 — 48 imports, 110 calls across the boundary
cli/auto_crypto.py::_load_or_create_salt@262 → lazyc2/security/services.py::read_bytes·cli/auto_crypto.py::_load_or_create_salt@280 → lazyc2/security/services.py::read_bytes·cli/commands/security.py::do_crack_hashes@205 → modules/hash_cracker.py::HashCracker - modules: lazyown calls into cli — 53 imports, 868 calls across the boundary
cli/commands/containers.py::do_docker_enum@51 → core/console.py::print_error·cli/commands/containers.py::do_docker_enum@55 → core/console.py::print_msg·cli/commands/containers.py::do_docker_enum@64 → core/console.py::print_msg - modules: lazyown calls into modules: world_model — 28 imports, 58 calls across the boundary
cli/commands/lazyloop.py::do_lazy_sync@47 → modules/lazy_bridge.py::sync_all·cli/lazy_orchestrator.py::_poll_now@476 → modules/killchain.py::current_phase·cli/lazy_orchestrator.py::_poll_now@477 → modules/killchain.py::phases - modules: lazyown calls into modules: lazyown_facts — 30 imports, 188 calls across the boundary
cli/commands/redteam_gym.py::do_gym_ms2@170 → modules/chain_registry.py::get·cli/commands/redteam_gym.py::do_gym_ms2@179 → modules/chain_registry.py::chain_preview_lines·cli/commands/redteam_gym.py::_gym_list@205 → modules/chain_registry.py::get - modules: lazyown calls into lazygui/panels — 0 imports, 47 calls across the boundary
cli/cli_enhancements.py::complete@183 → lazygui/services/event_log.py::extend·cli/cli_enhancements.py::complete@185 → lazygui/services/event_log.py::extend·cli/cli_enhancements.py::complete@187 → lazygui/services/event_log.py::extend - modules: lazyc2 calls into skills/mcp_tools — 33 imports, 108 calls across the boundary
lazyc2.py::_resolve_bind_address@426 → modules/metrics.py::append·lazyc2.py::_resolve_bind_address@430 → modules/metrics.py::append·lazyc2.py::_resolve_bind_address@436 → modules/metrics.py::append - modules: lazyc2 calls into static/js — 3 imports, 206 calls across the boundary
browser_sync_extension/background.js::collectProfile@75 → static/js/html2pdf.bundle.min.js::from·browser_sync_extension/background.js::armAlarm@156 → static/js/html2pdf.bundle.min.js::then·browser_sync_extension/background.js::armAlarm@160 → static/js/html2pdf.bundle.min.js::then - modules: lazyc2 calls into modules: llm_budget — 3 imports, 79 calls across the boundary
core/scheduler.py::stop@117 → modules/sidequestion.py::cancel·lazyc2.py@455 → modules/llm_adapter.py::_configure_logging·lazyc2.py@457 → modules/llm_adapter.py::_configure_logging - modules: lazyc2 calls into modules: bof_registry — 10 imports, 11 calls across the boundary
lazyc2.py@257 → lazyc2/security/command_allowlist.py::CommandAllowlist·lazyc2.py::execute_command@1839 → modules/bof_delivery.py::run·lazyc2.py::get_local_ip_addresses@2206 → modules/bof_delivery.py::run - modules: lazyc2 calls into skills/claude_md_orchestrator — 3 imports, 30 calls across the boundary
lazyc2.py@207 → modules/security_sanitizers.py::build_default_config·lazyc2.py@208 → modules/security_sanitizers.py::OutputSanitizer·lazyc2.py::_listen_address@285 → modules/security_sanitizers.py::BindAddressResolver - modules: lazyc2 calls into modules: polymorphic_engine — 0 imports, 33 calls across the boundary
contrib/legacy/lazyseo.py::analyze_seo@131 → modules/dotnet_payload.py::compile·lazyc2.py@645 → modules/dotnet_payload.py::compile·lazyc2.py::parse_access_log_for_short_url@2349 → modules/dotnet_payload.py::compile - modules: lazyc2 calls into modules: lazy_loop — 7 imports, 161 calls across the boundary
contrib/legacy/lazygptcli.py@71 → modules/loop_guardrails.py::signal·contrib/legacy/lazyhoneypot.py::alert_admin@156 → tests/test_lazy_loop.py::starttls·contrib/legacy/lazyproxy.py@198 → modules/loop_guardrails.py::signal - modules: lazyc2 calls into scripts: journal — 0 imports, 46 calls across the boundary
contrib/legacy/lazygptcli_unified.py::_deepseek_fallback@395 → scripts/journal.py::post·contrib/legacy/lazyseo.py::analyze_seo@234 → scripts/journal.py::post·contrib/legacy/lazyseo.py::analyze_seo@236 → scripts/journal.py::post - modules: lazyc2 calls into poc_tui — 0 imports, 60 calls across the boundary
contrib/legacy/lazygptcli.py::get_relevant_knowledge@136 → poc_tui/config.py::items·contrib/legacy/lazygptcli.py::transform_knowledge_base@145 → poc_tui/config.py::items·contrib/legacy/lazysearch_bot.py::get_relevant_knowledge@130 → poc_tui/config.py::items - modules: lazyc2 calls into cli/commands — 19 imports, 50 calls across the boundary
contrib/legacy/lazyseo.py::make_request@38 → tests/test_lazyshortener.py::raise_for_status·lazyc2.py@167 → utils.py::anti_debug·lazyc2.py::resolve@1900 → utils.py::decode - modules: lazyc2 depends on modules: lazyown — 33 imports, 24 calls across the boundary
lazyc2.py@199 → core/config.py::load_payload·lazyc2.py@200 → core/config.py::Config·lazyc2.py::aicmd_deepseek@1562 → lazyown.py::one_cmd - modules: lazyc2 calls into cli — 9 imports, 118 calls across the boundary
contrib/legacy/lazyhoneypot.py::handle_connection@86 → cli/autosuggest.py::accept·contrib/legacy/lazyhoneypot.py::main@191 → cli/autosuggest.py::accept·contrib/legacy/lazyproxy.py::start_proxy@191 → cli/autosuggest.py::accept - modules: lazyc2 depends on modules: world_model — 33 imports, 31 calls across the boundary
lazyc2.py::send_command@3581 → modules/killchain.py::advance_phase·lazyc2.py::send_command@3582 → modules/killchain.py::advance_phase·lazyc2.py::receive_result@4050 → modules/killchain.py::advance_phase - modules: lazyc2 calls into modules: lazyown_facts — 5 imports, 18 calls across the boundary
lazyc2.py::aicmd@1739 → modules/chain_approval.py::create·lazyc2.py::aicmd@1773 → modules/chain_approval.py::create·lazyc2.py::_ingest_beacon@4213 → skills/lazyown_facts.py::ingest_text - modules: lazyc2 calls into lazygui/panels — 0 imports, 8 calls across the boundary
contrib/legacy/lazyseo.py::analyze_seo@214 → lazygui/services/models.py::Session·modules/conditional_hooks.py::load_rules@315 → lazygui/services/event_log.py::extend·modules/detection_feed.py::_extract_keywords@197 → lazygui/services/event_log.py::extend - cli calls into skills/mcp_tools — 22 imports, 33 calls across the boundary
cli/commands/help_ui.py::do_wizard@61 → modules/atomic_enricher.py::_parse_scope·cli/recommendation_signals.py::propose@168 → skills/lazyown_policy.py::get_recommendations·cli/recommendation_signals.py::_try_build_policy_signal@768 → skills/lazyown_policy.py::LazyOwnPolicyIntegration - cli calls into static/js — 10 imports, 15 calls across the boundary
cli/chain_mode.py::_suggest@454 → static/js/html2pdf.bundle.min.js::resolver·cli/splash.py::render_splash@198 → cli/style.py::active_tokens·cli/status_bar.py::collect@332 → static/js/html2pdf.bundle.min.js::resolver - cli calls into modules: llm_budget — 5 imports, 12 calls across the boundary
cli/status_bar.py::collect@545 → tests/test_ai_commands_llm.py::_factory·cli/wizard.py::_ask_llm@662 → modules/llm_factory.py::model_config_key·cli/wizard.py::_ask_llm@663 → modules/llm_factory.py::default_model_for - cli calls into modules: bof_registry — 3 imports, 3 calls across the boundary
tests/test_scope_deny_priority.py::test_deny_blocks_even_warn@61 → cli/scope_guard.py::ScopeGuard·tests/test_scope_deny_priority.py::test_deny_outside_allow_equal@68 → cli/scope_guard.py::ScopeGuard·tests/test_scope_deny_priority.py::test_deny_spares_off_command@74 → cli/scope_guard.py::ScopeGuard - cli calls into skills/claude_md_orchestrator — 0 imports, 27 calls across the boundary
cli/commands/misc_migrated.py::do_EOF@145 → contrib/legacy/lazyhttpreverseshell.py::encrypt·cli/commands/misc_migrated.py::do_exit@712 → contrib/legacy/lazyhttpreverseshell.py::encrypt·cli/graph_advisor.py::_tokens@351 → skills/claude_md_orchestrator/validators.py::finditer - cli calls into modules: polymorphic_engine — 0 imports, 16 calls across the boundary
cli/graph_advisor.py::GraphScorer@302 → modules/dotnet_payload.py::compile·cli/status_bar.py::__init__@671 → modules/dotnet_payload.py::compile·cli/tips_engine.py@115 → modules/dotnet_payload.py::compile - cli calls into modules: lazy_loop — 4 imports, 101 calls across the boundary
cli/chain_mode.py::_prompt_line@442 → modules/lazy_runner.py::isatty·cli/commands/misc_migrated.py::do_EOF@139 → modules/lazy_loop.py::shutdown_loop_runtime·cli/commands/misc_migrated.py::do_exit@706 → modules/lazy_loop.py::shutdown_loop_runtime - cli calls into tests — 0 imports, 4 calls across the boundary
cli/contextual_help.py::render_command_help@223 → tests/mutation_common.py::title·cli/contextual_help.py::render_phase_commands@263 → tests/mutation_common.py::title·cli/phase_labels.py::phase_label@39 → tests/mutation_common.py::title - cli calls into scripts: journal — 0 imports, 2 calls across the boundary
core/http.py::send_command@99 → scripts/journal.py::post·lazy_sentinel4.py::process_file@472 → scripts/journal.py::post - cli calls into poc_tui — 0 imports, 57 calls across the boundary
cli/command_explorer.py::render_goal_commands@253 → poc_tui/config.py::items·cli/command_explorer.py::render_search@265 → poc_tui/config.py::items·cli/commands/help_ui.py::do_help_phase@195 → poc_tui/config.py::items - cli calls into cli/commands — 42 imports, 42 calls across the boundary
cli/commands/misc_migrated.py::_handle_killchain_auto@152 → cli/commands/_base.py::_resolve_shell·cli/commands/misc_migrated.py::do_graph_search@223 → cli/banner_config.py::get·cli/commands/misc_migrated.py::do_neighbors@254 → cli/banner_config.py::get - cli calls into modules: lazyown — 32 imports, 99 calls across the boundary
cli/commands/help_ui.py::do_karma@384 → cli/engagement_hooks.py::get_state_snapshot·cli/commands/misc_migrated.py::do_config_banner@770 → core/config.py::load_payload·cli/commands/misc_migrated.py::do_config_banner@785 → lazyown.py::refresh_prompt - cli calls into modules: lazyc2 — 7 imports, 9 calls across the boundary
cli/status_bar.py::_latest_vuln@354 → lazyc2/security/services.py::read_bytes·cli/tips_engine.py::_sync_user_elo@1074 → modules/lazy_rbac.py::get_rbac_store·cli/tips_engine.py::_sync_user_elo@1075 → modules/lazy_rbac.py::find_by_username - cli calls into modules: world_model — 51 imports, 150 calls across the boundary
cli/commands/help_ui.py::do_killchain@481 → modules/world_model.py::get_world_model·cli/commands/help_ui.py::do_killchain@482 → modules/world_model.py::to_context_string·cli/commands/misc_migrated.py::do_suggest_next@349 → cli/exploration.py::ExplorationEngine - cli calls into modules: lazyown_facts — 1 imports, 10 calls across the boundary
cli/doctor.py::check_command_index@317 → modules/atomic_resolver.py::build_index·cli/recommendation_signals.py::propose@361 → modules/apt_playbooks.py::list_playbooks·cli/recommendation_signals.py::_try_build_playbook_signal@645 → modules/apt_playbooks.py::AptPlaybookEngine - cli calls into lazygui/panels — 0 imports, 28 calls across the boundary
cli/doctor.py::gather_report@393 → lazygui/services/event_log.py::extend·cli/doctor.py::gather_report@394 → lazygui/services/event_log.py::extend·cli/palette_command.py::_ordered_phases@380 → lazygui/services/event_log.py::extend - modules: world_model depends on skills/mcp_tools — 16 imports, 15 calls across the boundary
modules/dashboard_engine.py::build_snapshot@247 → modules/evasion_engine.py::get_active_profile·modules/unified_dashboard.py::_collect_hive_status@105 → skills/hive_mind.py::get_hive·modules/unified_dashboard.py::_collect_hive_status@106 → skills/hive_mind.py::status - modules: world_model calls into static/js — 0 imports, 8 calls across the boundary
modules/compliance.py::export_pdf@471 → static/js/bootstrap-5.3.0.bundle.min.js::ln·modules/compliance.py::export_pdf@476 → static/js/bootstrap-5.3.0.bundle.min.js::ln·modules/compliance.py::export_pdf@494 → static/js/bootstrap-5.3.0.bundle.min.js::ln - modules: world_model calls into modules: llm_budget — 3 imports, 5 calls across the boundary
contrib/legacy/lazypwn.py::exploit_with_pwntools@175 → modules/ai_fallback.py::call·modules/planner.py::_llm_tiebreak@393 → modules/llm_client.py::LLMClient·modules/planner.py::_llm_tiebreak@402 → modules/llm_client.py::ask - modules: world_model calls into modules: bof_registry — 3 imports, 3 calls across the boundary
tests/test_daemon_loop.py::next_command@68 → lazyc2/security/command_allowlist.py::CommandDecision·tests/test_lazy_intel_wiring.py::test_refresh_stale_contract@29 → modules/c2_profile_engine.py::touch·tests/test_lazy_intel_wiring.py::test_refresh_stale_contract@39 → modules/c2_profile_engine.py::touch - modules: world_model calls into skills/claude_md_orchestrator — 0 imports, 81 calls across the boundary
cli/ops_commands.py::_highlight_match@268 → skills/claude_md_orchestrator/validators.py::finditer·cli/ops_commands.py::scans_list@1237 → skills/claude_md_orchestrator/validators.py::finditer·cli/ops_commands.py::scans_list@1237 → skills/claude_md_orchestrator/validators.py::group - modules: world_model calls into modules: polymorphic_engine — 0 imports, 56 calls across the boundary
cli/ops_commands.py::tgrep@141 → modules/dotnet_payload.py::compile·cli/ops_commands.py::scans_list@1226 → modules/dotnet_payload.py::compile·cli/surface_graph.py@72 → modules/dotnet_payload.py::compile - modules: world_model calls into modules: lazy_loop — 13 imports, 167 calls across the boundary
contrib/legacy/sql.py@13 → modules/loop_guardrails.py::signal·modules/finding_lifecycle.py::_save@89 → modules/workspace.py::write_text·modules/finding_lifecycle.py::_save_retests@343 → modules/workspace.py::write_text - modules: world_model calls into scripts: journal — 0 imports, 2 calls across the boundary
contrib/legacy/sql.py::makeRequest@29 → scripts/journal.py::post·modules/integrations/misp_export.py::push_to_misp@347 → scripts/journal.py::post - modules: world_model calls into poc_tui — 0 imports, 109 calls across the boundary
cli/commands/caldera.py::do_op_status@245 → poc_tui/config.py::items·cli/ops_commands.py::_search_csv@224 → poc_tui/config.py::items·cli/ops_commands.py::loot_graph@911 → poc_tui/config.py::items - modules: world_model depends on cli/commands — 23 imports, 7 calls across the boundary
cli/commands/caldera.py::_shell@73 → cli/commands/_base.py::_resolve_shell·cli/commands/pwn.py::do_auto_pwn@76 → modules/loop_preflight.py::lab_state_for·cli/commands/surface.py::do_scandiscovery@74 → cli/commands/_base.py::_resolve_shell - modules: world_model calls into modules: lazyown — 14 imports, 28 calls across the boundary
cli/commands/pwn.py::do_auto_pwn@90 → modules/autonomous_exploit_engine.py::AutonomousExploitEngine·cli/commands/pwn.py::do_auto_pwn@91 → modules/autonomous_exploit_engine.py::enable_stealth·cli/commands/pwn.py::do_auto_pwn@93 → modules/autonomous_exploit_engine.py::profile - modules: world_model calls into modules: lazyc2 — 30 imports, 55 calls across the boundary
modules/compliance.py::add_file@388 → lazyc2/security/services.py::read_bytes·modules/compliance.py::verify@419 → lazyc2/security/services.py::read_bytes·modules/estorides_fusion.py::run_export@115 → lazyc2/security/services.py::read_bytes - modules: world_model calls into cli — 6 imports, 200 calls across the boundary
cli/commands/caldera.py::do_op_list@88 → core/console.py::print_msg·cli/commands/caldera.py::do_op_list@90 → core/console.py::print_msg·cli/commands/caldera.py::do_op_list@91 → core/console.py::print_msg - modules: world_model calls into modules: lazyown_facts — 3 imports, 5 calls across the boundary
contrib/legacy/lazypwn.py::exploit_with_pwntools@176 → modules/atomic_resolver.py::chain·modules/lazy_autofire.py::consider_report@94 → modules/chain_synth.py::write_generated_chain·modules/playbook_engine.py::execute@553 → modules/emulation_runner.py::EmulationStep - modules: world_model calls into lazygui/panels — 0 imports, 41 calls across the boundary
cli/exploration.py::discover@193 → lazygui/services/event_log.py::extend·cli/recon_plan.py::build_recon_plan@186 → lazygui/services/event_log.py::extend·cli/recon_plan.py::build_recon_plan@187 → lazygui/services/event_log.py::extend - modules: lazyown_facts calls into skills/mcp_tools — 3 imports, 4 calls across the boundary
cli/apt_chain_support.py::replan@740 → modules/reactive_engine.py::get_engine·cli/apt_chain_support.py::replan@745 → modules/reactive_engine.py::analyse·modules/ttpscope_bridge.py::do_chain@618 → skills/lazyown_parquet_db.py::get_pdb - modules: lazyown_facts calls into static/js — 1 imports, 3 calls across the boundary
modules/lazy_deviations.py::list@137 → static/js/html2pdf.bundle.min.js::reverse·modules/lazy_scope.py::scope_verdict@290 → static/js/html2pdf.bundle.min.js::resolver·tests/test_failure_verdict.py::test_unknown_output_keeps_default_retry@81 → static/js/html2pdf.bundle.min.js::capitalize - modules: lazyown_facts calls into modules: llm_budget — 0 imports, 1 calls across the boundary
modules/chain_runner.py::_call@1559 → modules/sidequestion.py::cancel - modules: lazyown_facts calls into modules: bof_registry — 2 imports, 2 calls across the boundary
cli/apt_chain_support.py::build_llm_recovery_chain@854 → modules/guardrails/harness.py::global_harness·tests/test_chain_runner.py::test_runner_resolves_newest_and_skip_if_exists@163 → modules/c2_profile_engine.py::touch - modules: lazyown_facts calls into skills/claude_md_orchestrator — 1 imports, 66 calls across the boundary
modules/chain_registry.py::step_gate_verdict@286 → skills/claude_md_orchestrator/validators.py::group·modules/chain_runner.py::run@365 → modules/browser_sync.py::ensure_wiring·modules/chain_runner.py::_store_capture@1310 → skills/claude_md_orchestrator/validators.py::group - modules: lazyown_facts calls into modules: defense_eval — 1 imports, 1 calls across the boundary
modules/chain_runner.py::_verify_evidence@1265 → modules/hunt_verify.py::field_present - modules: lazyown_facts calls into modules: polymorphic_engine — 0 imports, 51 calls across the boundary
modules/atomic_cli.py@34 → modules/dotnet_payload.py::compile·modules/atomic_resolver.py@40 → modules/dotnet_payload.py::compile·modules/atomic_resolver.py@41 → modules/dotnet_payload.py::compile - modules: lazyown_facts calls into modules: lazy_loop — 15 imports, 122 calls across the boundary
cli/apt_chain_support.py::resolve_invocation@299 → modules/auto_registry.py::_looks_like_target·cli/apt_chain_support.py::resolve_invocation@308 → modules/auto_registry.py::_looks_like_target·cli/apt_chain_support.py::resolve_admin@362 → modules/chain_family.py::default_registry - modules: lazyown_facts calls into tests — 0 imports, 1 calls across the boundary
cli/commands/command_and_control_migrated.py::do_empire@881 → tests/mutation_common.py::title - modules: lazyown_facts calls into scripts: journal — 0 imports, 6 calls across the boundary
cli/commands/command_and_control_migrated.py::_api@577 → scripts/journal.py::post·tests/test_chain_approval_c2.py::test_list_filter_and_decide_roundtrip@204 → scripts/journal.py::post·tests/test_chain_approval_c2.py::test_list_filter_and_decide_roundtrip@206 → scripts/journal.py::post - modules: lazyown_facts calls into poc_tui — 0 imports, 39 calls across the boundary
cli/apt_chain_support.py::render_result@533 → poc_tui/config.py::items·cli/commands/command_and_control_migrated.py::do_apt_chain@1891 → poc_tui/config.py::items·cli/commands/command_and_control_migrated.py::do_apt_chain@1897 → poc_tui/config.py::items - modules: lazyown_facts calls into cli/commands — 19 imports, 26 calls across the boundary
cli/commands/command_and_control_migrated.py::do_c2@506 → modules/c2_builder.py::C2Builder·cli/commands/command_and_control_migrated.py::do_sliver_server@809 → utils.py::copy2clip·cli/commands/command_and_control_migrated.py::do_sliver_server@823 → utils.py::copy2clip - modules: lazyown_facts calls into modules: lazyown — 29 imports, 55 calls across the boundary
cli/commands/command_and_control_migrated.py::do_msf@155 → modules/atomic_exploit_bridge.py::run·cli/commands/command_and_control_migrated.py::do_msf@256 → modules/atomic_exploit_bridge.py::run·cli/commands/command_and_control_migrated.py::do_msf@298 → modules/atomic_exploit_bridge.py::run - modules: lazyown_facts calls into modules: lazyc2 — 14 imports, 23 calls across the boundary
cli/commands/command_and_control_migrated.py::do_msf@158 → modules/listener_manager.py::remove·cli/commands/command_and_control_migrated.py::do_msf@258 → modules/listener_manager.py::remove·cli/commands/command_and_control_migrated.py::do_msf@418 → modules/listener_manager.py::remove - modules: lazyown_facts calls into cli — 3 imports, 298 calls across the boundary
cli/commands/command_and_control_migrated.py::do_msf@117 → core/validators.py::check_rhost·cli/commands/command_and_control_migrated.py::do_msf@160 → core/console.py::print_msg·cli/commands/command_and_control_migrated.py::do_msf@170 → core/console.py::print_msg - modules: lazyown_facts calls into modules: world_model — 5 imports, 13 calls across the boundary
modules/verb_manifest.py::facts_for_target@427 → modules/world_model.py::get_world_model·modules/verb_manifest.py::facts_for_target@428 → modules/world_model.py::get_host·modules/verb_manifest.py::facts_for_target@429 → modules/world_model.py::snapshot - modules: lazyown_facts calls into lazygui/panels — 0 imports, 20 calls across the boundary
cli/apt_chain_support.py::render_result@511 → lazygui/services/event_log.py::extend·modules/atomic_cli.py::run_atomic_tests@248 → lazygui/services/event_log.py::extend·modules/atomic_resolver.py::chain@412 → lazygui/services/event_log.py::extend - lazygui/panels calls into skills/mcp_tools — 0 imports, 24 calls across the boundary
lazygui/panels/sessions_panel.py::SessionsPanel@42 → modules/reactive_engine.py::Signal·lazygui/panels/sessions_panel.py::SessionsPanel@43 → modules/reactive_engine.py::Signal·lazygui/services/backend.py::Backend@70 → modules/reactive_engine.py::Signal - lazygui/panels calls into static/js — 0 imports, 12 calls across the boundary
lazygui/services/teamserver_backend.py::_on_pty_connect@466 → static/js/chart.min.js::on·lazygui/services/teamserver_backend.py::_on_pty_output@470 → static/js/chart.min.js::on·lazygui/services/teamserver_backend.py::_on_terminal_connect@476 → static/js/chart.min.js::on - lazygui/panels depends on modules: bof_registry — 2 imports, 0 calls across the boundary
- lazygui/panels calls into skills/claude_md_orchestrator — 0 imports, 2 calls across the boundary
lazygui/config/c2_credentials.py::load_c2_credentials_from_file@64 → skills/claude_md_orchestrator/validators.py::group·lazygui/config/c2_credentials.py::load_c2_credentials_from_file@65 → skills/claude_md_orchestrator/validators.py::group - lazygui/panels calls into modules: polymorphic_engine — 0 imports, 6 calls across the boundary
lazygui/config/c2_credentials.py@19 → modules/dotnet_payload.py::compile·lazygui/config/c2_credentials.py@20 → modules/dotnet_payload.py::compile·lazygui/widgets/terminal_view.py@18 → modules/dotnet_payload.py::compile - lazygui/panels calls into modules: lazy_loop — 0 imports, 2 calls across the boundary
lazygui/config/settings.py::save@52 → modules/workspace.py::write_text·lazygui/services/local_backend.py::_exec_child_process@154 → tests/test_lazy_runner.py::_exit - lazygui/panels calls into tests — 0 imports, 1 calls across the boundary
lazygui/panels/marketplace_panel.py::_fetch_yara_rules@120 → tests/mutation_common.py::title - lazygui/panels calls into scripts: journal — 0 imports, 1 calls across the boundary
lazygui/services/teamserver_backend.py::_http_post_form@338 → scripts/journal.py::post - lazygui/panels calls into poc_tui — 0 imports, 6 calls across the boundary
lazygui/panels/killchain_panel.py::_apply_visuals@129 → poc_tui/config.py::items·lazygui/services/teamserver_backend.py::_poll_beacon_results@254 → poc_tui/config.py::items·lazygui/services/teamserver_backend.py::_connect_sio@507 → poc_tui/config.py::items - lazygui/panels calls into cli/commands — 0 imports, 2 calls across the boundary
lazygui/services/teamserver_backend.py::_http_get_json@329 → tests/test_lazyshortener.py::raise_for_status·lazygui/services/teamserver_backend.py::_http_post_form@347 → tests/test_lazyshortener.py::raise_for_status - lazygui/panels calls into modules: lazyown — 0 imports, 3 calls across the boundary
lazygui/widgets/terminal_view.py::_translate_key_event@87 → modules/outcome_bus.py::key·lazygui/widgets/terminal_view.py::_translate_key_event@95 → modules/outcome_bus.py::key·lazygui/windows/command_palette_window.py::keyPressEvent@50 → modules/outcome_bus.py::key - lazygui/panels calls into modules: lazyc2 — 7 imports, 14 calls across the boundary
lazygui/panels/campaign_panel.py::__init__@76 → lazyc2/security/csrf.py::header·lazygui/panels/campaign_panel.py::__init__@77 → lazyc2/security/csrf.py::header·lazygui/panels/cve_panel.py::__init__@80 → lazyc2/security/csrf.py::header - lazygui/panels calls into cli — 0 imports, 6 calls across the boundary
lazygui/widgets/graph_view.py::mousePressEvent@253 → cli/autosuggest.py::accept·lazygui/widgets/terminal_view.py::keyPressEvent@80 → cli/autosuggest.py::accept·lazygui/windows/command_palette_window.py::keyPressEvent@53 → cli/autosuggest.py::accept - lazygui/panels calls into modules: world_model — 2 imports, 6 calls across the boundary
lazygui/app.py::run@67 → modules/lazy_timeline.py::show·lazygui/app.py::_swap_backend@191 → modules/lazy_timeline.py::show·lazygui/panels/killchain_panel.py::_get_phases@27 → modules/killchain.py::phases_for_display
skills/mcp_tools (1) [Expand]
skills/mcp_tools groups 206 files (py) around MCPContext, _try_import, _update_task_status, _credential_worth_task, _task_title_open. ExploitGym CLI command set — real-world exploit benchmark harness.
Related Classes/Methods:
skills/mcp_tools/_context.py::MCPContext#L21-L74skills/autonomous_daemon.py::_try_import#L128-L185skills/autonomous_daemon.py::_update_task_status#L186-L206skills/autonomous_daemon.py::_credential_worth_task#L207-L228skills/autonomous_daemon.py::_task_title_open#L229-L247skills/autonomous_daemon.py::_inject_to_tasks_json#L248-L290skills/autonomous_daemon.py::_emit#L291-L313skills/autonomous_daemon.py::_record_intent#L314-L328
Sub-components
cli (1.1)
cli groups 1 files (py) around ExploitGymCommandSet, do_exploitgym, _egym_status, _egym_setup, _egym_list. ExploitGym CLI command set — real-world exploit benchmark harness.
modules (1.2)
modules groups 18 files (py) around PipelineError, PipelineSchemaError, PipelineNotFoundError, PipelineCycleError, PipelineStep. Campaign scope coverage query for the autonomous loop.
scripts (1.3)
scripts groups 1 files (py) around _backup, _opencode_path, _hermes_path, patch_opencode, patch_hermes. Patch operator agent configs to use the Lazy llama.cpp server.
skills (1.4)
skills groups 167 files (py) around MCPContext, _try_import, _update_task_status, _credential_worth_task, _task_title_open. Autonomous Campaign Intelligence (ACI) Planner
tests (1.5)
tests groups 19 files (py) around _make_goal, _patched_paths, _start_patches, _stop_patches, _make_planner. tests/test_aci_planner.py
Files
cli/commands/exploitgym.pymodules/asset_graph.pymodules/atomic_enricher.pymodules/cve_matcher.pymodules/evasion_engine.pymodules/event_engine.pymodules/exploitgym_gym.pymodules/golden_path.pymodules/lazyown_bridge.pymodules/llm_evaluator.pymodules/mcp_agent_bridge.pymodules/metrics.pymodules/pipeline_engine.pymodules/playbook_executor.pymodules/reactive_engine.pymodules/session_rag.pymodules/session_reader.pymodules/timeline_narrator.pymodules/toolset.pyscripts/lazy_opencode_config.pyskills/aci_planner.pyskills/autonomous_daemon.pyskills/autonomous_replay.pyskills/daemon_control.pyskills/heartbeat.pyskills/hive_mind.pyskills/lazyown_automapper.pyskills/lazyown_context.pyskills/lazyown_groq_agents.pyskills/lazyown_llm.pyskills/lazyown_mcp.pyskills/lazyown_mcp_helpers.pyskills/lazyown_objective.pyskills/lazyown_parquet_db.pyskills/lazyown_policy.pyskills/lazyown_session.pyskills/mcp_lazy.pyskills/mcp_tools/__init__.pyskills/mcp_tools/_context.pyskills/mcp_tools/aci_plan.pyskills/mcp_tools/aci_replan.pyskills/mcp_tools/aci_status.pyskills/mcp_tools/ack_event.pyskills/mcp_tools/add_rule.pyskills/mcp_tools/add_target.pyskills/mcp_tools/agent_result.pyskills/mcp_tools/agent_status.pyskills/mcp_tools/apt_chain.pyskills/mcp_tools/atomic_resolve.pyskills/mcp_tools/atomic_search.pyskills/mcp_tools/auto_populate.pyskills/mcp_tools/autonomous_events.pyskills/mcp_tools/autonomous_inject.pyskills/mcp_tools/autonomous_replay.pyskills/mcp_tools/autonomous_start.pyskills/mcp_tools/autonomous_status.pyskills/mcp_tools/autonomous_stop.pyskills/mcp_tools/bridge_suggest.pyskills/mcp_tools/c2_adversary.pyskills/mcp_tools/c2_command.pyskills/mcp_tools/c2_notes.pyskills/mcp_tools/c2_profile.pyskills/mcp_tools/c2_redop.pyskills/mcp_tools/c2_script.pyskills/mcp_tools/c2_search_agent.pyskills/mcp_tools/c2_status.pyskills/mcp_tools/c2_vuln_analysis.pyskills/mcp_tools/campaign_lessons.pyskills/mcp_tools/campaign_sitrep.pyskills/mcp_tools/campaign_tasks.pyskills/mcp_tools/claudemd.pyskills/mcp_tools/command_help.pyskills/mcp_tools/create_addon.pyskills/mcp_tools/create_tool.pyskills/mcp_tools/credentials.pyskills/mcp_tools/cron_schedule.pyskills/mcp_tools/cve_search.pyskills/mcp_tools/daemon.pyskills/mcp_tools/daemon_approve.pyskills/mcp_tools/daemon_focus.pyskills/mcp_tools/daemon_mode.pyskills/mcp_tools/daemon_pause.pyskills/mcp_tools/daemon_resume.pyskills/mcp_tools/daemon_status.pyskills/mcp_tools/daemon_veto.pyskills/mcp_tools/deploy_beacon.pyskills/mcp_tools/discover_commands.pyskills/mcp_tools/engage_approve.pyskills/mcp_tools/engage_list_pending.pyskills/mcp_tools/engage_status.pyskills/mcp_tools/engage_target.pyskills/mcp_tools/eval_quality.pyskills/mcp_tools/evasion_generate.pyskills/mcp_tools/evasion_rotate.pyskills/mcp_tools/evidence_grep.pyskills/mcp_tools/exploitgym_list.pyskills/mcp_tools/exploitgym_run.pyskills/mcp_tools/exploitgym_score.pyskills/mcp_tools/exploitgym_status.pyskills/mcp_tools/facts_show.pyskills/mcp_tools/fast_run.pyskills/mcp_tools/generate_report.pyskills/mcp_tools/get_beacons.pyskills/mcp_tools/get_config.pyskills/mcp_tools/groq_agent.pyskills/mcp_tools/harness_status.pyskills/mcp_tools/heartbeat_status.pyskills/mcp_tools/hive_collect.pyskills/mcp_tools/hive_forget.pyskills/mcp_tools/hive_plan.pyskills/mcp_tools/hive_recall.pyskills/mcp_tools/hive_recover.pyskills/mcp_tools/hive_result.pyskills/mcp_tools/hive_spawn.pyskills/mcp_tools/hive_status.pyskills/mcp_tools/inject_objective.pyskills/mcp_tools/job_status.pyskills/mcp_tools/lazy_workspace.pyskills/mcp_tools/list_addons.pyskills/mcp_tools/list_agents.pyskills/mcp_tools/list_event_rules.pyskills/mcp_tools/list_plugins.pyskills/mcp_tools/list_sessions.pyskills/mcp_tools/list_targets.pyskills/mcp_tools/llm_ask.pyskills/mcp_tools/lolbas_list.pyskills/mcp_tools/lolbas_use.pyskills/mcp_tools/manage_permissions.pyskills/mcp_tools/memory_recall.pyskills/mcp_tools/memory_store.pyskills/mcp_tools/metrics_summary.pyskills/mcp_tools/misp_export.pyskills/mcp_tools/next_objective.pyskills/mcp_tools/opencode_config.pyskills/mcp_tools/parquet_annotate.pyskills/mcp_tools/parquet_query.pyskills/mcp_tools/phase_guide.pyskills/mcp_tools/pipeline_list.pyskills/mcp_tools/pipeline_run.pyskills/mcp_tools/pipeline_status.pyskills/mcp_tools/pipeline_validate.pyskills/mcp_tools/policy_status.pyskills/mcp_tools/poll_events.pyskills/mcp_tools/rag_index.pyskills/mcp_tools/rag_query.pyskills/mcp_tools/rea.pyskills/mcp_tools/reactive_suggest.pyskills/mcp_tools/read_prompt.pyskills/mcp_tools/read_session_file.pyskills/mcp_tools/run_agent.pyskills/mcp_tools/run_api.pyskills/mcp_tools/run_command.pyskills/mcp_tools/run_command_async.pyskills/mcp_tools/search_tools.pyskills/mcp_tools/searchsploit.pyskills/mcp_tools/session_diff.pyskills/mcp_tools/session_init.pyskills/mcp_tools/session_resume.pyskills/mcp_tools/session_state.pyskills/mcp_tools/session_status.pyskills/mcp_tools/set_active_target.pyskills/mcp_tools/soul.pyskills/mcp_tools/subagent_run.pyskills/mcp_tools/swan_ensemble.pyskills/mcp_tools/swan_route.pyskills/mcp_tools/swan_run.pyskills/mcp_tools/swan_status.pyskills/mcp_tools/target_context.pyskills/mcp_tools/tasks_cleanup.pyskills/mcp_tools/threat_model.pyskills/mcp_tools/timeline.pyskills/mcp_tools/winbox_eventlogs.pyskills/mcp_tools/winbox_exec.pyskills/mcp_tools/winbox_gym_list.pyskills/mcp_tools/winbox_gym_plan.pyskills/mcp_tools/winbox_gym_run.pyskills/mcp_tools/winbox_snapshot.pyskills/mcp_tools/winbox_status.pyskills/mcp_tools/winbox_tools.pyskills/mcp_tools/winbox_vm.pyskills/swan_agent.pyskills/tests/test_autonomous_daemon.pyskills/tests/test_hive_mind.pyskills/tests/test_mcp_smoke.pyskills/tests/test_objectives.pyskills/tests/test_parquet_db.pyskills/update_knowledge.pytests/test_aci_planner.pytests/test_autonomous_replay.pytests/test_boyscout_contracts.pytests/test_bridge_catalog_filtered.pytests/test_core_modules.pytests/test_daemon_control.pytests/test_engage_orchestrator.pytests/test_exploitgym_gym.pytests/test_golden_path.pytests/test_mcp_improvements.pytests/test_mcp_lazy.pytests/test_mcp_tools_registry.pytests/test_metrics.pytests/test_metrics_aware_selector.pytests/test_pipeline_engine.pytests/test_rea_mcp.pytests/test_reactive_engine_semantic.pytests/test_reactive_lateral_data.pytests/test_scope_bound_auto_gate.py
modules: lazy_loop (2) [Expand]
modules: lazy_loop groups 166 files (py) around _record_deviation, planner_temperature, wire_capture_enabled, plausible_command, looks_like_prose. exploit commands migrated from lazyown.py.
Related Classes/Methods:
modules/lazy_loop.py::_record_deviation#L59-L131modules/lazy_loop.py::planner_temperature#L132-L154modules/lazy_loop.py::wire_capture_enabled#L155-L274modules/lazy_loop.py::plausible_command#L275-L306modules/lazy_loop.py::looks_like_prose#L307-L333modules/lazy_loop.py::_is_host_like_target#L334-L415modules/lazy_loop.py::_sudo_unavailable#L416-L421modules/lazy_loop.py::_is_ip_literal#L422-L435
Sub-components
cli (2.1)
cli groups 6 files (py) around ExploitMigratedCommandSet, do_cp, do_createcookie, do_py3ttyup, do_pyautomate. exploit commands migrated from lazyown.py.
core (2.2)
core groups 3 files (py) around _unique_tmp, _ensure_parent, write_bytes_atomic, write_text_atomic, file_lock. Shared atomic file primitives for the loop's small JSON and blob stores.
lazyc2 (2.3)
lazyc2 groups 1 files (py) around _error, _namespaced_path, _world_snapshot, _status_payload, status. Orchestrator REST + web panel for the LazyOwn C2 dashboard.
modules (2.4)
modules groups 71 files (py) around _record_deviation, planner_temperature, wire_capture_enabled, plausible_command, looks_like_prose. Active Directory Certificate Services (AD CS) attack module.
skills (2.5)
skills groups 11 files (py) around _loop_line, _render, handle, handle, handle. MCP tool ``lazyown_auto_loop`` (single runner, one path with the CLI).
tests (2.6)
tests groups 74 files (py) around TestFailureMemory, test_counts_persist_across_reload, test_blocked_after_threshold_by_base, test_veto_blocks_immediately_and_persists, test_trims_to_capacity. BDD tests for the auto-loop persistent memory and selector cascade.
Files
cli/commands/exploit_migrated.pycli/commands/lazyops.pycli/commands/mcp_bridge.pycli/exploit_advisor.pycli/lazy_monitor.pycli/session_brief.pycore/atomic_store.pycore/autonomous.pycore/terminal_guard.pylazyc2/blueprints/orchestrator.pymodules/adcs_attacks.pymodules/auto_loop_memory.pymodules/auto_registry.pymodules/chain_family.pymodules/custom_tools.pymodules/digest.pymodules/evidence_store.pymodules/exploit_chain.pymodules/finding_enrich.pymodules/guard_rules.pymodules/jsonl_tail.pymodules/lazy_blindspot.pymodules/lazy_cli_bridge.pymodules/lazy_commander.pymodules/lazy_drafts.pymodules/lazy_engine.pymodules/lazy_hostscore.pymodules/lazy_installer.pymodules/lazy_intel.pymodules/lazy_loop.pymodules/lazy_mentions.pymodules/lazy_objective_queue.pymodules/lazy_orchestrator_feedback.pymodules/lazy_osinfer.pymodules/lazy_proxy.pymodules/lazy_reaper.pymodules/lazy_roles.pymodules/lazy_runner.pymodules/lazy_sandbox.pymodules/lazy_skill_mirror.pymodules/lazy_skills.pymodules/lazy_world_diff.pymodules/loop/__init__.pymodules/loop/engine_proxy.pymodules/loop/triage_scheduler.pymodules/loop/worker_agentic.pymodules/loop/worker_execution.pymodules/loop/worker_memory.pymodules/loop_guardrails.pymodules/loop_limits.pymodules/loop_progress.pymodules/loop_triggers.pymodules/mediation/__init__.pymodules/mediation/chain_mediator.pymodules/mediation/contracts.pymodules/mediation/engine_mediator.pymodules/mediation/feedback_mediator.pymodules/mediation/hub.pymodules/mediation/intel_mediator.pymodules/mediation/telemetry_mediator.pymodules/nmap_fingerprint.pymodules/notify.pymodules/outcome_attribution.pymodules/progress_ledger.pymodules/reaction_bridge.pymodules/scan_brief.pymodules/selector_manager.pymodules/selfupdate.pymodules/service_aliases.pymodules/sidequest.pymodules/sinks/chain_feed.pymodules/sinks/world_diff.pymodules/threat_model.pymodules/tools/__init__.pymodules/tools/loop_smoke.pymodules/tools/monitor_smoke.pymodules/traffic_recorder.pymodules/trigger_policy.pymodules/verb_catalog.pymodules/wire_capture.pymodules/workspace.pyskills/mcp_tools/auto_loop.pyskills/mcp_tools/lazy_addon.pyskills/mcp_tools/lazy_board.pyskills/mcp_tools/lazy_compact.pyskills/mcp_tools/lazy_delete.pyskills/mcp_tools/lazy_finding.pyskills/mcp_tools/lazy_hint.pyskills/mcp_tools/lazy_mention.pyskills/mcp_tools/lazy_proxy.pyskills/mcp_tools/lazy_trace.pyskills/mcp_tools/loop_smoke.pytests/test_auto_loop_memory.pytests/test_auto_registry.pytests/test_autonomous_ops.pytests/test_chain_family.pytests/test_chain_list_command.pytests/test_engine_mediator.pytests/test_evidence_store.pytests/test_exploration_graph_concurrency.pytests/test_failure_memory_veto.pytests/test_finding_enrich.pytests/test_guard_rules.pytests/test_harness_mode.pytests/test_lazy_agent.pytests/test_lazy_blindspot.pytests/test_lazy_bridge_traffic.pytests/test_lazy_commander.pytests/test_lazy_continuation.pytests/test_lazy_engine.pytests/test_lazy_evidence.pytests/test_lazy_hostscore.pytests/test_lazy_loop.pytests/test_lazy_proxy.pytests/test_lazy_reaper.pytests/test_lazy_runner.pytests/test_lazy_scope.pytests/test_lazy_world_diff.pytests/test_loop_auto_orchestrator.pytests/test_loop_broadcast.pytests/test_loop_budget.pytests/test_loop_cli_catalog.pytests/test_loop_cold_overview.pytests/test_loop_decision_log.pytests/test_loop_deterministic_mode.pytests/test_loop_force_graph.pytests/test_loop_guard_audit.pytests/test_loop_guardrails.pytests/test_loop_intent_delete.pytests/test_loop_llm_resilience.pytests/test_loop_multi_target.pytests/test_loop_nmap_guard.pytests/test_loop_objective_wiring.pytests/test_loop_preflight.pytests/test_loop_progress.pytests/test_loop_scope_traffic_evidence.pytests/test_loop_spawn_side.pytests/test_loop_store_race.pytests/test_loop_supervision.pytests/test_loop_target_authority.pytests/test_loop_trigger_hints.pytests/test_loop_worker_traces.pytests/test_mcp_auto_loop_wrapper.pytests/test_mediation.pytests/test_orchestrator_api.pytests/test_orchestrator_pacing.pytests/test_orchestrator_triggers.pytests/test_outcome_attribution.pytests/test_pacing.pytests/test_pi_leg.pytests/test_planner_initial_access.pytests/test_policy_planner_signal.pytests/test_progress_ledger.pytests/test_reaction_bridge.pytests/test_repeat_shapes.pytests/test_scan_brief.pytests/test_security_codeql_batch.pytests/test_session_brief.pytests/test_sidequest.pytests/test_sink_chain_feed.pytests/test_stall_dump.pytests/test_triage_scheduler.pytests/test_trigger_policy.pytests/test_wire_capture.pytests/test_world_diff_retest.pytests/test_writeback_hygiene.py
cli/commands (3) [Expand]
cli/commands groups 139 files (py) around lazyown_set_config, resolve_alias, needs_sudo, sudo_available, _retry_sudo_gate. Autor: Gris Iscomeback Correo electrónico: grisiscomeback[at]gmail[dot]com Fecha de...
Related Classes/Methods:
utils.py::lazyown_set_config#L324-L357utils.py::resolve_alias#L358-L384utils.py::needs_sudo#L385-L408utils.py::sudo_available#L409-L444utils.py::_retry_sudo_gate#L445-L460utils.py::redact_secrets#L461-L480utils.py::parse_ip_mac#L481-L502utils.py::create_arp_packet#L503-L537
Sub-components
cli (3.1)
cli groups 79 files (py) around extract_flag, LazyOwnCommandSet, _resolve_shell, params, payload. Configurable Neon Box banner for the LazyOwn interactive shell.
core (3.2)
core groups 2 files (py) around load_defaults, clear_cache, get, default_lport, default_rport. Build-time default constants loaded from ``config/defaults.toml``.
modules (3.3)
modules groups 18 files (py) around _classify, _classify_module_source, _extract_docstring_summary, ModuleInfo, __init__. Browser-in-the-Middle (BitM) attack engine.
root (3.4)
root groups 2 files (py) around lazyown_set_config, resolve_alias, needs_sudo, sudo_available, _retry_sudo_gate. Autor: Gris Iscomeback Correo electrónico: grisiscomeback[at]gmail[dot]com Fecha de...
skills (3.5)
skills groups 1 files (py) around handle. MCP tool ``lazyown_list_modules``: list modules and scripts in modules/.
tests (3.6)
tests groups 37 files (py) around AdLabCatalogueSpec, test_matrix_validates, test_summary_shape, test_all_vectors_resolve, test_get_unknown_is_none. Contract tests for the AD lab gym (Docker Samba DC) matrix and capture.
Files
banner.pycli/banner_config.pycli/commands/_base.pycli/commands/anti_forensics.pycli/commands/applocker_bypass.pycli/commands/bitm.pycli/commands/browser_sync.pycli/commands/c2_profile.pycli/commands/c2_session.pycli/commands/campaign.pycli/commands/catalog.pycli/commands/cicd.pycli/commands/cli_auth.pycli/commands/cloud.pycli/commands/collaboration.pycli/commands/command_and_control.pycli/commands/cred.pycli/commands/cred_migrated.pycli/commands/crystal_ball.pycli/commands/daemon_ctl.pycli/commands/database.pycli/commands/defaults.pycli/commands/demo.pycli/commands/dns_exfil.pycli/commands/dpapi.pycli/commands/edr_detect.pycli/commands/encoding.pycli/commands/estorides.pycli/commands/evasive_payload.pycli/commands/exfiltration.pycli/commands/exploit.pycli/commands/exploitdb.pycli/commands/exposure_autofire.pycli/commands/exposure_intel.pycli/commands/exposure_inventory.pycli/commands/exposure_sentinel.pycli/commands/exposure_timeline.pycli/commands/golden_paths.pycli/commands/gym_matrix.pycli/commands/infra.pycli/commands/lab.pycli/commands/lateral.pycli/commands/lateral_migrated.pycli/commands/lazy_creds.pycli/commands/lazy_dorks.pycli/commands/lazy_oob.pycli/commands/lazy_passgen.pycli/commands/lazy_poc.pycli/commands/loop_audit.pycli/commands/marketplace.pycli/commands/mobile_macos.pycli/commands/module_manager.pycli/commands/netattack.pycli/commands/nethelpers.pycli/commands/payload_generation.pycli/commands/persist.pycli/commands/phishing_wizard.pycli/commands/pivoting.pycli/commands/postexp.pycli/commands/postexp_migrated.pycli/commands/privilege_escalation.pycli/commands/recon.pycli/commands/resource_scripting.pycli/commands/retry_ops.pycli/commands/scan.pycli/commands/scan_migrated.pycli/commands/shellsys.pycli/commands/sidequest.pycli/commands/sleep_obfuscation.pycli/commands/socks_proxy.pycli/commands/supply_chain.pycli/commands/ux.pycli/commands/verb_admin.pycli/commands/winbox_gym.pycli/config_history.pycli/confirm.pycli/fuzzy_match.pycli/fuzzy_picker.pycli/output_mode.pycli/session_hud.pycore/defaults.pycore/safe_import.pymodules/__init__.pymodules/bitm_engine.pymodules/c2_builder.pymodules/categories.pymodules/cicd_enumerator.pymodules/cloud_enum.pymodules/dpapi_harvester.pymodules/edr_detector.pymodules/evasive_payloads.pymodules/intercept.pymodules/lab_runtime.pymodules/lazycloud.pymodules/lazypassgen.pymodules/loop/worker_gating.pymodules/loop_preflight.pymodules/mfa_bypass.pymodules/module_registry.pymodules/professional_report.pyskills/mcp_tools/list_modules.pytests/test_ad_lab_gym.pytests/test_api_key_resolution.pytests/test_banner_config.pytests/test_bdd_infra_range_report.pytests/test_browser_sync.pytests/test_c2_agent_dual.pytests/test_campaign_import_safety.pytests/test_categories.pytests/test_credentials_rotation.pytests/test_fuzzy_picker.pytests/test_gym_matrix_ctf.pytests/test_implant_session_secrets.pytests/test_infra_disposable.pytests/test_lab_target_visibility.pytests/test_lazy_autofire.pytests/test_lazy_creds.pytests/test_lazy_finalizer.pytests/test_lazy_inventory.pytests/test_lazy_oob.pytests/test_lazy_runner_fallback.pytests/test_lazy_timeline.pytests/test_lazy_worker_safety.pytests/test_lazydorks.pytests/test_lazypassgen.pytests/test_lazypoophish.pytests/test_lazyshortener.pytests/test_loop_audit.pytests/test_loop_manager_outcome.pytests/test_loop_mentions.pytests/test_module_registry.pytests/test_module_registry_bridge.pytests/test_prompt_readline_markers.pytests/test_prompt_refresh.pytests/test_safety_gates.pytests/test_ttpscope_bridge.pytests/test_unified_bridge_delegate.pytests/test_verb_catalog.pyutils.py
modules: lazyown (4) [Expand]
modules: lazyown groups 139 files (js, py) around _apply_env_overrides, _coerce_env_value, _mask_if_sensitive, _log_config_change, _calling_frame. Declarative cmd2 alias loader.
Related Classes/Methods:
core/config.py::_apply_env_overrides#L75-L107core/config.py::_coerce_env_value#L108-L132core/config.py::_mask_if_sensitive#L133-L150core/config.py::_log_config_change#L151-L172core/config.py::_calling_frame#L173-L186core/config.py::_collect_validation_warnings#L187-L210core/config.py::Config#L211-L223core/config.py::__init__#L224-L232
Sub-components
cli (4.1)
cli groups 19 files (py) around EngagementState, _load_state, _save_state, _load_index, _normalize_command. Declarative cmd2 alias loader.
contrib (4.2)
contrib groups 1 files (py) around truncate_message, configure_logging, _load_payload_kv, _load_report_context, _prompt_redteam. Unified Ollama/DeepSeek client for LazyOwn — merges lazydeepseekcli_local +...
core (4.3)
core groups 11 files (py) around _apply_env_overrides, _coerce_env_value, _mask_if_sensitive, _log_config_change, _calling_frame. Lightweight command execution bridge between C2 bots and the LazyOwn CLI shell.
modules (4.4)
modules groups 45 files (py) around _load_users, _save_users, _load_payload, _save_payload, user_exists. AD lab gym catalogue (Docker Samba DC): index, exploits, chains.
poc_tui (4.5)
poc_tui groups 3 files (py) around ShellBackend, __init__, import_shell_class, start, run. Entry point: python3 -m poc_tui
root (4.6)
root groups 1 files (py) around _ux_debug, _parse_bool_setting, _PayloadSettableProxy, __init__, __getattr__. lazyown Author: Gris Iscomeback Email: grisiscomeback at gmail dot com Creation Date...
scripts (4.7)
scripts groups 2 files (py) around AuditConfig, argparser_commands, audit, main, SmokeConfig. Audit every registered shell command for dispatch and parser errors.
skills (4.8)
skills groups 7 files (py) around _sync_harness, _harness_result, _call_harness_tool, list_tools, call_tool. LazyOwn MCP OpenCode bridge.
static (4.9)
static groups 1 files (js) around pJS, draw, d, init, process.
tests (4.10)
tests groups 49 files (py) around TestHexSource, test_valid_hex_decodes_to_32_bytes, test_wrong_length_raises, test_non_hex_raises, TestDiskSource. TDD tests for the AES key resolution contract.
Files
cli/aliases.pycli/auto_crypto.pycli/cli_enhancements.pycli/commands/audit.pycli/commands/containers.pycli/commands/diagnostics.pycli/commands/lazyloop.pycli/commands/persist_migrated.pycli/commands/purple_team.pycli/commands/recon_migrated.pycli/commands/redteam_gym.pycli/commands/security.pycli/engagement_hooks.pycli/headless.pycli/lazy_orchestrator.pycli/orchestrator_assets_tabs.pycli/purple_tui.pycli/surface_tui.pycli/tui_forms.pycontrib/legacy/lazydeepseekcli.pycore/command_bridge.pycore/config.pycore/credential_vault.pycore/crypto.pycore/hardening.pycore/process.pycore/protocols.pycore/reverse_shell_secret.pycore/safe_exec.pycore/safe_subprocess.pycore/session_secrets.pylazyown.pymodules/ad_gym.pymodules/ai_exploit_chain.pymodules/askpass.pymodules/atomic_exploit_bridge.pymodules/auto_pivot.pymodules/auto_purple.pymodules/autonomous_exploit_engine.pymodules/c2_agent.pymodules/c2_surfaces.pymodules/cli_auth.pymodules/command_executor.pymodules/ctf_capture.pymodules/ctf_signalman.pymodules/dns_beacon.pymodules/domain_dominance.pymodules/gym_cleanup.pymodules/gym_registry.pymodules/harness.pymodules/lazy_findings.pymodules/lazy_ledger.pymodules/lazy_verify.pymodules/lazyk8s.pymodules/lazypoophish.pymodules/lazyshortener.pymodules/metasploitable_gym.pymodules/metasploitable_migrations.pymodules/orchestrator_config.pymodules/outcome_bus.pymodules/payload_factory.pymodules/phishing_orchestrator.pymodules/redteam_gym.pymodules/resource_script.pymodules/session_cleanup.pymodules/sinks/__init__.pymodules/sinks/attack_graph.pymodules/sinks/beacon_dispatch.pymodules/sinks/c2_surfaces.pymodules/sinks/findings.pymodules/sinks/intel_graph.pymodules/sinks/killchain.pymodules/sinks/objectives.pymodules/sinks/routing.pymodules/traffic_morpher.pymodules/websocket_beacon.pymodules/winbox_gym.pypoc_tui/__main__.pypoc_tui/app.pypoc_tui/test_app.pyscripts/devtools/command_audit.pyscripts/devtools/core_smoke.pyskills/lazyown_mcp_opencode.pyskills/mcp_tools/atomic_clean.pyskills/mcp_tools/atomic_shell.pyskills/mcp_tools/auto_pwn.pyskills/mcp_tools/exploit_chain.pyskills/mcp_tools/pivot_status.pyskills/mcp_tools/stealth.pystatic/js/particles.jstests/test_aes_key_propagation.pytests/test_askpass.pytests/test_atomic_exploit_bridge.pytests/test_audit_remediation.pytests/test_auto_pwn_success.pytests/test_backdoor_random.pytests/test_c2_agent.pytests/test_c2_surfaces.pytests/test_cli_auth_remember.pytests/test_cli_command_sets.pytests/test_cli_enhancements.pytests/test_core.pytests/test_core_command_bridge.pytests/test_credential_vault.pytests/test_ctf_signalman.pytests/test_engagement_and_ping.pytests/test_engagement_command_gate.pytests/test_engagement_elo_and_methodology.pytests/test_executor_kernel.pytests/test_findings_gate.pytests/test_group_kill.pytests/test_guardrails.pytests/test_gym_cleanup_policy.pytests/test_gym_cli.pytests/test_gym_lifecycle.pytests/test_gym_ms2_cli.pytests/test_gym_registry.pytests/test_lazy_findings.pytests/test_lazy_ledger.pytests/test_lazy_orchestrator.pytests/test_loop_evidence_wiring.pytests/test_loop_exit_gate.pytests/test_metasploitable_gym.pytests/test_metasploitable_migrations.pytests/test_opencode_mcp_harness.pytests/test_orchestrator_yaml.pytests/test_outcome_bus.pytests/test_payload_factory.pytests/test_resource_script.pytests/test_safe_subprocess.pytests/test_safe_subprocess_behavior.pytests/test_security_alerts_fix.pytests/test_security_hardening.pytests/test_security_hardening_v3.pytests/test_security_hardening_v4.pytests/test_session_secrets.pytests/test_shell_semantics.pytests/test_sink_lazy_intel.pytests/test_winbox_gym.py
modules: lazyc2 (5) [Expand]
modules: lazyc2 groups 135 files (js, py) around StructuredLogConfig, _JsonLineFormatter, __init__, format, _ConsoleFormatter. Automation command set — credential reuse, conditional hooks, operator profiles.
Related Classes/Methods:
core/logging.py::StructuredLogConfig#L42-L70core/logging.py::_JsonLineFormatter#L71-L73core/logging.py::__init__#L74-L77core/logging.py::format#L78-L120core/logging.py::_ConsoleFormatter#L121-L131core/logging.py::format#L132-L138core/logging.py::StructuredLogger#L139-L147core/logging.py::makeRecord#L148-L179
Sub-components
browser_sync_extension (5.1)
browser_sync_extension groups 1 files (js) around config, domainAllowed, highEntropyHints, sanitizeHeader, collectProfile.
cli (5.2)
cli groups 1 files (py) around AutomationCommandSet, do_cred_reuse, do_cred_mark_failed, do_hooks_list, do_hooks_enable. Automation command set — credential reuse, conditional hooks, operator profiles.
contrib (5.3)
contrib groups 9 files (py) around _ret_model, truncate_message, _configure_logging, _load_knowledge_base, _save_knowledge_base. Autor: Gris Iscomeback Correo electrónico: grisiscomeback[at]gmail[dot]com Fecha de...
core (5.4)
core groups 5 files (py) around StructuredLogConfig, _JsonLineFormatter, __init__, format, _ConsoleFormatter. Tenant-bound API authorization for the LazyOwn C2 dashboard.
lazyc2 (5.5)
lazyc2 groups 31 files (py) around CSRFPolicy, __init__, header, cookie_name, issue. Flask application factory for the LazyOwn C2 server.
modules (5.6)
modules groups 38 files (py) around Role, valid_roles, Permission, _UsersFileUnreadable, RBACUser. Git update contract for lazyaddons.
root (5.7)
root groups 1 files (py) around _env_tag, is_insecure_credential, _listen_address, _is_unspecified_bind_literal, _select_specific_bind_address. is_insecure_credential: Check for weak or default credentials
skills (5.8)
skills groups 9 files (py) around _now_iso, is_ip_in_scope, Campaign, is_active, to_dict. Daemon health monitor — watchdog for the autonomous daemon and C2 listeners.
static (5.9)
static groups 2 files (js) around as, as, as, as, as. as: !
tests (5.10)
tests groups 38 files (py) around test_autonomous_flow_integration, _valid_draft, TestConfig, test_name_pattern_rejects_traversal, test_patterns_accept_canonical_values. test_autonomous_flow_integration: Simulates a simplified autonomous flow to verify...
Files
browser_sync_extension/background.jscli/commands/automation.pycontrib/legacy/lazygptcli.pycontrib/legacy/lazygptcli_unified.pycontrib/legacy/lazyhoneypot.pycontrib/legacy/lazyopenssh77enum2.pycontrib/legacy/lazyproxy.pycontrib/legacy/lazysearch_bot.pycontrib/legacy/lazyseo.pycontrib/legacy/lazysmbrelay.pycontrib/legacy/lazyssh.pycore/api_authz.pycore/executor.pycore/logging.pycore/scheduler.pycore/security.pylazyc2.pylazyc2/__init__.pylazyc2/app_factory.pylazyc2/blueprints/__init__.pylazyc2/blueprints/addons.pylazyc2/blueprints/api.pylazyc2/blueprints/api_v1.pylazyc2/blueprints/auth.pylazyc2/blueprints/beacon.pylazyc2/blueprints/gym.pylazyc2/blueprints/loops.pylazyc2/blueprints/operations.pylazyc2/blueprints/phishing.pylazyc2/blueprints/session_auth.pylazyc2/extensions/__init__.pylazyc2/extensions/decoy.pylazyc2/extensions/short_urls.pylazyc2/extensions/storage.pylazyc2/extensions/users.pylazyc2/models.pylazyc2/security/__init__.pylazyc2/security/cli_credentials.pylazyc2/security/constants.pylazyc2/security/cors.pylazyc2/security/csrf.pylazyc2/security/csrf_flow.pylazyc2/security/health.pylazyc2/security/html_sanitizer.pylazyc2/security/https_redirect.pylazyc2/security/services.pylazyc2/security/trusted_proxy.pylazyc2/security/validators.pymodules/addon_updater.pymodules/beacon_history.pymodules/c2_profile.pymodules/collab_bp.pymodules/colors.pymodules/conditional_hooks.pymodules/config_store.pymodules/credential_reuse.pymodules/dashboard_bp.pymodules/db.pymodules/detection_feed.pymodules/detection_oracle.pymodules/engagement_hooks.pymodules/event_bus.pymodules/event_consumers.pymodules/gym_winbox_runner.pymodules/hash_cracker.pymodules/hive_invoke.pymodules/ia_code_analysis.pymodules/ia_logs_analysis.pymodules/ia_network_analysis.pymodules/lazy_rbac.pymodules/lazy_search.pymodules/lazyownerweb.pymodules/lesson_ingestor.pymodules/lilsplunky.pymodules/listener_manager.pymodules/logging_config.pymodules/loop_manager.pymodules/moe_router.pymodules/operator_profiles.pymodules/rl_trainer.pymodules/sinks/campaign_db.pymodules/sinks/event_bus.pymodules/state_manager.pymodules/sudo_tiocsti.pymodules/toposwarm_bridge.pymodules/unified_bridge.pyskills/daemon_health.pyskills/lazyown_campaign.pyskills/lazyown_daemon.pyskills/mcp_tools/campaign.pyskills/mcp_tools/collab_publish.pyskills/mcp_tools/db.pyskills/mcp_tools/lazysearch.pyskills/sessions_watcher.pyskills/toposwarm_autonomous.pystatic/js/socket.io-4.0.0.min.jsstatic/js/socket.io-4.3.2.min.jstests/integration_autonomous_flow.pytests/test_addon_creator.pytests/test_addon_updater.pytests/test_api_authz.pytests/test_api_v1.pytests/test_beacon_history.pytests/test_c2_credential_bootstrap.pytests/test_collab_and_onboarding.pytests/test_conditional_hooks_extended.pytests/test_core_defaults.pytests/test_core_executor.pytests/test_cors_behavior.pytests/test_cors_policy.pytests/test_cors_socketio_regression.pytests/test_csrf_behavior.pytests/test_csrf_cookie_flags.pytests/test_csrf_flow_e2e.pytests/test_csrf_policy.pytests/test_dashboard_routes.pytests/test_db.pytests/test_detection_dampening.pytests/test_detection_feed.pytests/test_gym_blueprint.pytests/test_hash_cracker.pytests/test_health_report.pytests/test_html_sanitizer.pytests/test_https_redirect.pytests/test_lazy_search.pytests/test_lesson_ingestor.pytests/test_logging_config.pytests/test_loop_manager.pytests/test_moe_rl_swan.pytests/test_moe_router_check_regression.pytests/test_mutation_verification.pytests/test_security_lazyc2.pytests/test_short_url_file_containment.pytests/test_structured_logging.pytests/test_trusted_proxy.py
cli (6) [Expand]
cli groups 123 files (py) around check_rhost, check_lhost, check_lport, check_port, require_rhost. LazyOwn CLI infrastructure.
Related Classes/Methods:
core/validators.py::check_rhost#L26-L39core/validators.py::check_lhost#L40-L53core/validators.py::check_lport#L54-L63core/validators.py::check_port#L64-L76core/validators.py::require_rhost#L77-L93core/validators.py::require_lhost#L94-L106core/validators.py::require_lport#L107-L119core/validators.py::require_rport#L120-L142
Sub-components
cli (6.1)
cli groups 45 files (py) around Theme, get_theme, theme_from_payload, PendingCommandSet, is_pending. LazyOwn CLI infrastructure.
core (6.2)
core groups 12 files (py) around check_rhost, check_lhost, check_lport, check_port, require_rhost. Core primitives for the LazyOwn framework.
modules (6.3)
modules groups 4 files (py) around EvidenceConfig, hash_bytes, _validate_hash, EvidenceStore, __init__. Rich per-step engagement summaries from evidence and sessions artefacts.
root (6.4)
root groups 1 files (py) around sanitize_content, RAGManager, __init__, initialize_cache_table, get_cache_key. RAGManager: Manages RAG functionality with CAG caching for document processing and...
skills (6.5)
skills groups 7 files (py) around OrchestratorConfig, from_payload, OrchestratorGoal, with_defaults, OrchestratorResult. MCP tool ``lazyown_graph_neighbors`` (migrated from the call_tool dispatch chain).
tests (6.6)
tests groups 54 files (py) around _StaticProvider, __init__, suggest, _RaisingProvider, suggest. Unit tests for cli.autosuggest.
Files
cli/__init__.pycli/autosuggest.pycli/chain_mode.pycli/command_explorer.pycli/command_form.pycli/commands/__init__.pycli/commands/_dormancy.pycli/commands/help_ui.pycli/commands/misc_migrated.pycli/commands/orchestration.pycli/config_status.pycli/contextual_help.pycli/dashboard_layout.pycli/dashboard_tui.pycli/doctor.pycli/exploration_view.pycli/graph_advisor.pycli/graph_overlay.pycli/killchain.pycli/marketplace_config.pycli/noise_verbs.pycli/palette.pycli/palette_command.pycli/palette_graph.pycli/palette_overlay.pycli/palette_telemetry.pycli/phase_labels.pycli/plugin_tiers.pycli/protips.pycli/reactive_hints.pycli/reasoning_stream.pycli/recommendation.pycli/recommendation_signals.pycli/registry.pycli/sessions_browser.pycli/splash.pycli/status_bar.pycli/themes.pycli/timeline_browser.pycli/tips_engine.pycli/toast_bus.pycli/tui_theme.pycli/tutorial.pycli/wizard.pycli/wizard_scope.pycore/__init__.pycore/console.pycore/dependencies.pycore/error_advice.pycore/errors.pycore/host_policy.pycore/http.pycore/network.pycore/profiles.pycore/safe_console.pycore/text_utils.pycore/validators.pylazy_sentinel4.pymodules/engage_summary.pymodules/enrich.pymodules/evidence.pymodules/privesc_predictor.pyskills/mcp_tools/graph_neighbors.pyskills/mcp_tools/graph_search.pyskills/mcp_tools/graph_suggest_next.pyskills/mcp_tools/graph_summary.pyskills/mcp_tools/palette.pyskills/mcp_tools/recommend_next.pyskills/unified_orchestrator.pytests/test_autosuggest.pytests/test_chain_mode.pytests/test_command_form.pytests/test_command_palette.pytests/test_command_set_migration.pytests/test_console_stdio.pytests/test_daemon_ctl_command_set.pytests/test_dashboard_tui.pytests/test_dependencies.pytests/test_doctor.pytests/test_encoding_command_set.pytests/test_engage_gates.pytests/test_engage_summary.pytests/test_evidence_hints.pytests/test_exploration_and_addons.pytests/test_exposure_command_sets.pytests/test_graph_advisor.pytests/test_graph_overlay.pytests/test_help_ui_command_set.pytests/test_host_policy.pytests/test_improvements_spec.pytests/test_input_fuzz.pytests/test_killchain_auto_refresh.pytests/test_killchain_gap_signal.pytests/test_marketplace_config.pytests/test_nethelpers_command_set.pytests/test_palette_overlay.pytests/test_phase1_data_gaps.pytests/test_phase_labels.pytests/test_plugin_tiers.pytests/test_profiles.pytests/test_reactive_hints.pytests/test_reactive_hints_expanded.pytests/test_reasoning_stream.pytests/test_recommendation.pytests/test_require_guards.pytests/test_safe_console.pytests/test_scope_deny_priority.pytests/test_scope_guard_integration.pytests/test_session_ops_command_set.pytests/test_sessions_browser.pytests/test_shellsys_command_set.pytests/test_status_bar_operators.pytests/test_themes.pytests/test_timeline_browser.pytests/test_tips_engine.pytests/test_toast_bus.pytests/test_toastr_unify.pytests/test_tui_splash.pytests/test_tui_style.pytests/test_tui_theme_command.pytests/test_tui_themes.pytests/test_wizard_binary_check.pytests/test_wizard_llm.py
modules: world_model (7) [Expand]
modules: world_model groups 99 files (py) around _derive_crypto_key, _machine_password, _master_password, _load_or_create_salt, _encrypt_payload. Command chain registry: explicit prerequisites and dynamic next steps.
Related Classes/Methods:
modules/world_model.py::_derive_crypto_key#L78-L86modules/world_model.py::_machine_password#L87-L127modules/world_model.py::_master_password#L128-L156modules/world_model.py::_load_or_create_salt#L157-L199modules/world_model.py::_encrypt_payload#L200-L219modules/world_model.py::_decrypt_payload_text#L220-L258modules/world_model.py::_read_encrypted_dict#L259-L291modules/world_model.py::read_state_dict#L292-L326
Sub-components
cli (7.1)
cli groups 9 files (py) around ExplorationConfig, DiscoveredService, label, AddonEntry, ToolEntry. Command chain registry: explicit prerequisites and dynamic next steps.
contrib (7.2)
contrib groups 3 files (py) around BinaryFinder, __init__, find_suid_binaries, find_capabilities_binaries, find_executable_binaries.
lazygui (7.3)
lazygui groups 2 files (py). LazyOwn Operator Console.
modules (7.4)
modules groups 45 files (py) around _derive_crypto_key, _machine_password, _master_password, _load_or_create_salt, _encrypt_payload. Attack-surface 3D intel module: C2-centred campaign graph.
skills (7.5)
skills groups 11 files (py) around handle, handle, handle, _has_data, handle. MCP tool ``lazyown_command_next`` (migrated from the call_tool dispatch chain).
tests (7.6)
tests groups 29 files (py) around gate_env, test_gate_exact_and_fuzzy_match, test_gate_cidr_match, test_gate_task_allow_is_closed_whitelist, test_gate_blocks_asset_insert. Asset gate + un-nerfed outputs + IntelGraph CSP regression tests.
Files
cli/command_chain.pycli/commands/caldera.pycli/commands/pwn.pycli/commands/surface.pycli/exploration.pycli/lazynmap_post.pycli/ops_commands.pycli/recon_plan.pycli/surface_graph.pycontrib/legacy/lazypwn.pycontrib/legacy/lazyvsftp.pycontrib/legacy/sql.pylazygui/__init__.pylazygui/version.pymodules/attack_surface3d.pymodules/beacon_recon.pymodules/compliance.pymodules/dashboard_engine.pymodules/estorides_fusion.pymodules/estorides_importer.pymodules/exploit_recommender.pymodules/factsio.pymodules/finding_lifecycle.pymodules/integrations/__init__.pymodules/integrations/misp_export.pymodules/integrations/nuclei_bridge.pymodules/integrations/nuclei_parser.pymodules/integrations/searchsploit.pymodules/intel_fusion.pymodules/intelligence_engine.pymodules/kill_chain_viz.pymodules/killchain.pymodules/lazy_autofire.pymodules/lazy_bridge.pymodules/lazy_checks.pymodules/lazy_cve_feed.pymodules/lazy_exposure.pymodules/lazy_feedmatch.pymodules/lazy_heat.pymodules/lazy_inventory.pymodules/lazy_match_policy.pymodules/lazy_probes.pymodules/lazy_sentinel.pymodules/lazy_surface_diff.pymodules/lazy_timeline.pymodules/live_surface.pymodules/obs_parser.pymodules/operation.pymodules/osint_enrich.pymodules/planner.pymodules/playbook_engine.pymodules/rich_tui.pymodules/sinks/lazy_intel.pymodules/sinks/world_model.pymodules/surface_ops.pymodules/ttp_coverage.pymodules/unified_dashboard.pymodules/world_model.pymodules/yara_scanner.pyskills/mcp_tools/command_next.pyskills/mcp_tools/command_prev.pyskills/mcp_tools/dashboard_snapshot.pyskills/mcp_tools/exploit_recommend.pyskills/mcp_tools/lazy_intel.pyskills/mcp_tools/lazy_status.pyskills/mcp_tools/lazy_sync.pyskills/mcp_tools/playbook_generate.pyskills/mcp_tools/playbook_run.pyskills/mcp_tools/rich_tui_snapshot.pyskills/mcp_tools/unified_dashboard.pytests/test_asset_gate.pytests/test_attack_surface3d.pytests/test_beacon_recon_sink.pytests/test_command_chain.pytests/test_cve_pipeline.pytests/test_daemon_loop.pytests/test_estorides_fusion.pytests/test_finding_lifecycle.pytests/test_intel_fusion.pytests/test_intelligence_engine.pytests/test_killchain_snapshot.pytests/test_killchain_unified.pytests/test_killchain_unified_v2.pytests/test_lazy_checks.pytests/test_lazy_exposure.pytests/test_lazy_feedmatch.pytests/test_lazy_intel_wiring.pytests/test_lazy_match_policy.pytests/test_lazy_probes.pytests/test_lazy_sentinel.pytests/test_lazynmap_post.pytests/test_live_surface.pytests/test_nuclei_parser.pytests/test_ops_loot_phase.pytests/test_recon_plan.pytests/test_single_source_of_truth.pytests/test_surface_graph.pytests/test_unified_dashboard.pytests/test_world_model_extended.py
modules: lazyown_facts (8) [Expand]
modules: lazyown_facts groups 63 files (py) around skip_pending, ChainStep, identifier, Chain, resolve. Parsing, printing and replanning support for the ``apt_chain`` CLI.
Related Classes/Methods:
modules/chain_registry.py::skip_pending#L69-L103modules/chain_registry.py::ChainStep#L104-L151modules/chain_registry.py::identifier#L152-L157modules/chain_registry.py::Chain#L158-L175modules/chain_registry.py::resolve#L176-L218modules/chain_registry.py::render_text#L219-L241modules/chain_registry.py::step_gate_verdict#L242-L310modules/chain_registry.py::_when_tree#L311-L337
Sub-components
cli (8.1)
cli groups 4 files (py) around _apply_limit, _parse_admin_flags, _token_name_ok, ChainArgs, parse_chain_args. Parsing, printing and replanning support for the ``apt_chain`` CLI.
modules (8.2)
modules groups 24 files (py) around skip_pending, ChainStep, identifier, Chain, resolve. APT Playbook Engine — map public APT reports to executable Atomic Red Team chains.
skills (8.3)
skills groups 3 files (py) around Config, default, ServiceFact, CredentialFact, ShareFact. LazyOwn FactStore
tests (8.4)
tests groups 32 files (py) around _make_shell, _Set, _Shell, __init__, _write_chain. apt_chain admin & run options BDD contract.
Files
cli/apt_chain_support.pycli/commands/command_and_control_migrated.pycli/commands/lazy_adaptive.pycli/retry_support.pymodules/apt_playbooks.pymodules/atomic_cli.pymodules/atomic_resolver.pymodules/chain_approval.pymodules/chain_distill.pymodules/chain_facts.pymodules/chain_loop.pymodules/chain_registry.pymodules/chain_runner.pymodules/chain_state.pymodules/chain_synth.pymodules/chain_tokens.pymodules/emulation_runner.pymodules/failure_verdict.pymodules/gym_matrix_runner.pymodules/lazy_deviations.pymodules/lazy_fallback.pymodules/lazy_finalizer.pymodules/lazy_scope.pymodules/playbook_admin.pymodules/playbook_chain.pymodules/retry_session.pymodules/ttpscope_bridge.pymodules/verb_manifest.pyskills/lazyown_facts.pyskills/mcp_tools/ttp_chain.pyskills/tests/test_facts.pytests/test_apt_chain_admin.pytests/test_apt_chain_integration.pytests/test_atomic_loop.pytests/test_atomic_resolver.pytests/test_chain_approval_c2.pytests/test_chain_approval_cli_wiring.pytests/test_chain_distill.pytests/test_chain_distill_custody.pytests/test_chain_distill_scope.pytests/test_chain_evidence.pytests/test_chain_finalizer.pytests/test_chain_freshness_guard.pytests/test_chain_loop.pytests/test_chain_parallel_fallback.pytests/test_chain_registry.pytests/test_chain_runner.pytests/test_chain_step_streaming.pytests/test_chain_synth.pytests/test_chain_token_hardening.pytests/test_chain_v24_core.pytests/test_codeql_alert_fixes.pytests/test_command_control_agent.pytests/test_emulation_runner.pytests/test_f4_hardening.pytests/test_failure_verdict.pytests/test_lazy_adaptive_replan.pytests/test_lazy_deviations.pytests/test_lazy_fallback.pytests/test_playbook_admin.pytests/test_playbook_chain.pytests/test_retry_session.pytests/test_verb_manifest.py
lazygui/panels (9) [Expand]
lazygui/panels groups 54 files (py) around WindowConstants, TimingConstants, NetworkConstants, PtyConstants, FontConstants. Entry point for ``python -m lazygui``.
Related Classes/Methods:
lazygui/config/constants.py::WindowConstants#L18-L33lazygui/config/constants.py::TimingConstants#L34-L47lazygui/config/constants.py::NetworkConstants#L48-L87lazygui/config/constants.py::PtyConstants#L88-L100lazygui/config/constants.py::FontConstants#L101-L125lazygui/config/constants.py::KeybindingConstants#L126-L143lazygui/config/constants.py::IdentifierConstants#L144-L162lazygui/config/constants.py::ThemeConstants#L163-L177
Sub-components
lazygui (9.1)
lazygui groups 51 files (py) around WindowConstants, TimingConstants, NetworkConstants, PtyConstants, FontConstants. Entry point for ``python -m lazygui``.
tests (9.2)
tests groups 3 files (py) around TestBackendDescriptor, test_construction, test_immutable, TestBackendStatus, test_values. Tests for lazygui backend services.
Files
lazygui/__main__.pylazygui/app.pylazygui/config/__init__.pylazygui/config/c2_credentials.pylazygui/config/constants.pylazygui/config/paths.pylazygui/config/settings.pylazygui/panels/__init__.pylazygui/panels/base.pylazygui/panels/campaign_panel.pylazygui/panels/credentials_panel.pylazygui/panels/cve_panel.pylazygui/panels/event_log_panel.pylazygui/panels/graph_panel.pylazygui/panels/history_panel.pylazygui/panels/killchain_panel.pylazygui/panels/listeners_panel.pylazygui/panels/marketplace_panel.pylazygui/panels/registry.pylazygui/panels/sessions_panel.pylazygui/panels/terminal_panel.pylazygui/services/__init__.pylazygui/services/backend.pylazygui/services/event_log.pylazygui/services/factory.pylazygui/services/local_backend.pylazygui/services/models.pylazygui/services/teamserver_backend.pylazygui/theme/__init__.pylazygui/theme/manager.pylazygui/theme/palettes/__init__.pylazygui/theme/palettes/catppuccin_mocha.pylazygui/theme/palettes/cobalt_clone.pylazygui/theme/palettes/gruvbox_dark.pylazygui/theme/palettes/solarized_light.pylazygui/theme/palettes/tactical_green.pylazygui/theme/palettes/tokyo_night.pylazygui/theme/qss_builder.pylazygui/theme/tokens.pylazygui/widgets/__init__.pylazygui/widgets/beacon_command_modal.pylazygui/widgets/command_palette_list.pylazygui/widgets/event_log_view.pylazygui/widgets/filter_bar.pylazygui/widgets/graph_view.pylazygui/widgets/status_badge.pylazygui/widgets/terminal_view.pylazygui/windows/__init__.pylazygui/windows/command_palette_window.pylazygui/windows/connect_dialog.pylazygui/windows/main_window.pytests/test_lazygui_backend.pytests/test_lazygui_graph_widget.pytests/test_lazygui_models.py
static/js (10) [Expand]
static/js groups 43 files (c, js, php, py, sh) around FieldKind, Severity, FieldSpec, ValidationIssue, _validate_string. ``assign`` business logic.
Related Classes/Methods:
core/payload_schema.py::FieldKind#L77-L95core/payload_schema.py::Severity#L96-L104core/payload_schema.py::FieldSpec#L105-L146core/payload_schema.py::ValidationIssue#L147-L169core/payload_schema.py::_validate_string#L170-L175core/payload_schema.py::_validate_int#L176-L189core/payload_schema.py::_validate_port#L190-L199core/payload_schema.py::_validate_bool#L200-L216
Sub-components
cli (10.1)
cli groups 6 files (py) around apply_assign, format_payload, style, active_tokens, paint. ``assign`` business logic.
core (10.2)
core groups 3 files (py) around FieldKind, Severity, FieldSpec, ValidationIssue, _validate_string. Operator-managed parameter registry.
gyms (10.3)
gyms groups 1 files (php).
lazyc2 (10.4)
lazyc2 groups 2 files (py) around AddonCreatorConfig, live_placeholders, ParamSpec, to_dict, AddonDraft. LazyAddon creator contract for the LazyOwn C2 web interface.
lazyown-docker (10.5)
lazyown-docker groups 1 files (sh).
modules (10.6)
modules groups 2 files (c, py) around _GNU_SOURCE, MQUEUE_NUM, INBOUND, OUTBOUND, DESC_MAX. gcc exp.c -o exp -l mnl -l nftnl -w
poc_tui (10.7)
poc_tui groups 1 files (py) around main. Convenience launcher that symlinks LazyOwn dirs and starts the TUI.
root (10.8)
root groups 1 files (py) around main.
skills (10.9)
skills groups 4 files (py) around handle, handle, handle, handle, coerce_value. MCP tool ``lazyown_create_param`` (migrated from the call_tool dispatch chain).
static (10.10)
static groups 15 files (js) around rand, clamp, Terminal, constructor, push. Version 1.73.4 3d-force-graph - https://github.com/vasturiano/3d-force-graph...
tests (10.11)
tests groups 7 files (py) around crypto_module, tmp_sessions, TestAutoCryptoConfig, test_default_config, test_custom_config. Tests for cli.auto_crypto — automatic session data encryption.
Files
cli/assign.pycli/commands/params_ops.pycli/commands/session_ops.pycli/session_resumer.pycli/show.pycli/style.pycore/param_registry.pycore/payload_schema.pycore/prompt.pygyms/docker/php2shell/src/info.phpkey.pylazyc2/addon_creator.pylazyc2/state.pylazyown-docker/init.shmodules/exp.cmodules/search.pypoc_tui/run.pyskills/mcp_tools/create_param.pyskills/mcp_tools/delete_param.pyskills/mcp_tools/list_params.pyskills/mcp_tools/set_config.pystatic/hexabot/hexabot-spinner.jsstatic/js/3d-force-graph-1.73.4.min.jsstatic/js/bootstrap-4.5.2.min.jsstatic/js/bootstrap-5.3.0.bundle.min.jsstatic/js/chart.min.jsstatic/js/force-graph-1.43.5.min.jsstatic/js/html2pdf.bundle.min.jsstatic/js/jquery-3.5.1.slim.min.jsstatic/js/popper-2.5.4.min.jsstatic/js/quill-2.0.3.jsstatic/js/showdown-2.1.0.min.jsstatic/js/tippy-6.jsstatic/js/vis-network-9.1.2.min.jsstatic/js/vis-network.min.jsstatic/js/xterm.jstests/test_auto_crypto.pytests/test_cli_assign.pytests/test_core_config.pytests/test_param_registry.pytests/test_payload_schema.pytests/test_php2shell_addon.pytests/test_placeholder_coverage.py
modules: llm_budget (11) [Expand]
modules: llm_budget groups 43 files (py) around is_model_missing_error, groq_model_chain, LLMBackendUnavailableError, LLMBackendNotSupportedError, default_model_for. Artificial Intelligence command set.
Related Classes/Methods:
modules/llm_factory.py::is_model_missing_error#L121-L140modules/llm_factory.py::groq_model_chain#L141-L189modules/llm_factory.py::LLMBackendUnavailableError#L190-L193modules/llm_factory.py::LLMBackendNotSupportedError#L194-L223modules/llm_factory.py::default_model_for#L224-L244modules/llm_factory.py::model_config_key#L245-L265modules/llm_factory.py::api_key_config_key#L266-L290modules/llm_factory.py::backend_requires_api_key#L291-L308
Sub-components
cli (11.1)
cli groups 1 files (py) around AiCommandSet, do_ask, do_groq, do_poolcheck, _serve. Artificial Intelligence command set.
contrib (11.2)
contrib groups 3 files (py) around clean_think, clean_yaml, truncate_message, configure_logging, create_complex_prompt. parse_github_url: Extrae (owner, repo) de una URL de GitHub.
core (11.3)
core groups 3 files (py) around strip_ansi, BudgetExceeded, LLMBackendLike, generate, stream_generate. LLM budget cap and per call token counter.
modules (11.4)
modules groups 19 files (py) around is_model_missing_error, groq_model_chain, LLMBackendUnavailableError, LLMBackendNotSupportedError, default_model_for. LazyOwn AI Agent - Ultimate Edition Improvements: anti-hang timeout, memory...
root (11.5)
root groups 4 files (py) around SecureSessionManager, __init__, register_failed_attempt, check_lockout, check_rate_limit. download_c2: Handle the /download_c2 command to download a file from the C2.
skills (11.6)
skills groups 1 files (py) around handle. MCP tool ``lazyown_get_llm_budget``: read the LLM cost budget status.
tests (11.7)
tests groups 12 files (py) around _isolated_llm_health, _isolated_path, _fast_llm_connect_backoff, _reset_world_model_singleton, _reset_guard_harness. Global pytest isolation hooks.
Files
cli/commands/ai.pycontrib/legacy/lazyaddon_creator.pycontrib/legacy/lazyllmchat.pycontrib/legacy/lazyphishingai.pycore/llm_budget.pycore/llm_key_pool.pycore/parsers.pydiscord_c2.pymodules/agent_runner.pymodules/ai_fallback.pymodules/ai_model.pymodules/goals.pymodules/lazy_agent.pymodules/llm_adapter.pymodules/llm_client.pymodules/llm_factory.pymodules/llm_orchestrator.pymodules/llm_pool.pymodules/llm_prompts.pymodules/loop_ai_bridge.pymodules/loop_audit.pymodules/recommender.pymodules/session_state.pymodules/sidequestion.pymodules/vuln_bot_cli.pymodules/vulnbot.pymodules/yaml_generator.pyskills/mcp_tools/get_llm_budget.pyslack_c2_bot.pytelegram_c2.pytelegram_hermes.pytests/conftest.pytests/test_ai_commands_llm.pytests/test_lazy_parity.pytests/test_lazy_streaming.pytests/test_llm_adapter_parity.pytests/test_llm_budget.pytests/test_llm_key_pool.pytests/test_llm_orchestrator.pytests/test_llm_prompts.pytests/test_loop_ai_bridge.pytests/test_single_implementation.pytests/test_vulnbot_fallback.py
modules: bof_registry (12) [Expand]
modules: bof_registry groups 43 files (py) around EnumCommandSet, do_smbclient, do_smbclient_impacket, do_smbclient_py, do_smbmap. BOF marketplace CommandSet — Beacon Object File discovery, staging and delivery.
Related Classes/Methods:
cli/commands/enum.py::EnumCommandSet#L31-L37cli/commands/enum.py::do_smbclient#L38-L107cli/commands/enum.py::do_smbclient_impacket#L108-L177cli/commands/enum.py::do_smbclient_py#L178-L224cli/commands/enum.py::do_smbmap#L225-L344cli/commands/enum.py::do_getnpusers#L345-L389cli/commands/enum.py::do_psexec#L390-L445cli/commands/enum.py::do_psexec_py#L446-L501
Sub-components
cli (12.1)
cli groups 4 files (py) around EnumCommandSet, do_smbclient, do_smbclient_impacket, do_smbclient_py, do_smbmap. BOF marketplace CommandSet — Beacon Object File discovery, staging and delivery.
lazyc2 (12.2)
lazyc2 groups 1 files (py) around CommandRejectionReason, CommandDecision, to_dict, CommandAllowlist, __init__. Command allowlist policy for the LazyOwn C2 ``/api/run`` endpoint.
modules (12.3)
modules groups 20 files (py) around RiskLevel, GateAction, _risk_bucket, _risk_label, _risk_level. Beacon configuration builder — wires profile engines into beacon compile-time config.
skills (12.4)
skills groups 4 files (py) around HookEvent, HookRegistry, __init__, register, run. LazyOwn CLAUDE.md Hierarchical Loader (Claude Code style) 4-level hierarchy (highest...
tests (12.5)
tests groups 14 files (py) around TestBeaconConfig, test_default_construction, test_to_gen_beacon_args, test_to_go_implant_vars, test_to_config_json. Tests for modules/beacon_config_builder.py — BeaconConfig, BeaconConfigBuilder, and...
Files
cli/commands/bof_registry.pycli/commands/enum.pycli/commands/opsec_cleanup.pycli/scope_guard.pylazyc2/security/command_allowlist.pymodules/beacon_config_builder.pymodules/bof_admin.pymodules/bof_delivery.pymodules/bof_registry.pymodules/bsb_compat.pymodules/c2_profile_engine.pymodules/forensic_cleaner.pymodules/guardrails/__init__.pymodules/guardrails/advisories.pymodules/guardrails/budget.pymodules/guardrails/checkpoints.pymodules/guardrails/contracts.pymodules/guardrails/harness.pymodules/log_tamper.pymodules/memory_cleaner.pymodules/network_opsec.pymodules/opsec_scorer.pymodules/sleep_obfuscation.pymodules/socks_proxy.pymodules/timestomper.pyskills/lazyown_claudemd.pyskills/lazyown_hooks.pyskills/lazyown_permissions.pyskills/tests/test_harness_e2e.pytests/test_beacon_config_builder.pytests/test_bof_admin.pytests/test_bof_delivery.pytests/test_bof_registry.pytests/test_bof_repo_contract.pytests/test_bsb_fileless_compat.pytests/test_c2_profile_engine.pytests/test_command_allowlist.pytests/test_command_allowlist_behavior.pytests/test_opsec_scorer.pytests/test_opsec_scorer_consolidated.pytests/test_scope_guard.pytests/test_sleep_obfuscation.pytests/test_socks_proxy.py
modules/selection (13) [Expand]
modules/selection groups 37 files (c, js, py) around SelectionContext, ActionDecision, Selector, propose, ModuleSelector. Campaign command blacklist loaded from ``sessions/campaign_lessons.jsonl``.
Related Classes/Methods:
modules/selection/base.py::SelectionContext#L20-L47modules/selection/base.py::ActionDecision#L48-L66modules/selection/base.py::Selector#L67-L76modules/selection/base.py::propose#L77-L82modules/selection/module.py::ModuleSelector#L16-L20modules/selection/module.py::propose#L21-L47modules/selection/parquet.py::_get_pdb#L27-L45modules/selection/parquet.py::ParquetSelector#L46-L50
Sub-components
modules (13.1)
modules groups 22 files (c, py) around SelectionContext, ActionDecision, Selector, propose, ModuleSelector. Campaign command blacklist loaded from ``sessions/campaign_lessons.jsonl``.
static (13.2)
static groups 1 files (js) around d, e, t. !
tests (13.3)
tests groups 14 files (py) around _rows, test_tie_break_is_name_ascending_regardless_of_order, test_higher_score_still_wins_over_name_order, test_excluded_chain_is_skipped_deterministically, test_no_service_match_returns_none. Determinism tests for chain selection tie-breaking and selector resilience.
Files
modules/campaign_blacklist.pymodules/chain_match.pymodules/reverse-shell.cmodules/rootkit/rootkit.cmodules/selection/__init__.pymodules/selection/_phase_categories.pymodules/selection/adversary.pymodules/selection/atomic.pymodules/selection/base.pymodules/selection/bridge.pymodules/selection/chain.pymodules/selection/cred_spray.pymodules/selection/edb.pymodules/selection/intel.pymodules/selection/lazyscript.pymodules/selection/module.pymodules/selection/parquet.pymodules/selection/playbook.pymodules/selection/poc.pymodules/selection/registry.pymodules/selection/technique.pymodules/selection/technique_chain.pystatic/js/select2-4.1.0.min.jstests/test_chain_match_determinism.pytests/test_chain_selector.pytests/test_intel_selector.pytests/test_loop_fire_pending.pytests/test_poc_registry.pytests/test_selection_bridge.pytests/test_selection_lazyscript.pytests/test_selection_module.pytests/test_selection_parquet.pytests/test_selection_technique.pytests/test_selection_technique_chain.pytests/test_selection_wiring.pytests/test_selectors_base.pytests/test_selectors_capabilities.py
skills/claude_md_orchestrator (14) [Expand]
skills/claude_md_orchestrator groups 30 files (c, py) around main, _now_iso, Stage, Severity, Contract.
Related Classes/Methods:
modules/backdoor/server.c::main#L10-L84skills/claude_md_orchestrator/models.py::_now_iso#L19-L27skills/claude_md_orchestrator/models.py::Stage#L28-L49skills/claude_md_orchestrator/models.py::Severity#L50-L67skills/claude_md_orchestrator/models.py::Contract#L68-L90skills/claude_md_orchestrator/models.py::to_dict#L91-L95skills/claude_md_orchestrator/models.py::from_dict#L96-L108skills/claude_md_orchestrator/models.py::SadPath#L109-L119
Sub-components
contrib (14.1)
contrib groups 2 files (py) around SamsungKnoxExploitServer, do_GET, apk_bytes, launch_html, exploit_js.
modules (14.2)
modules groups 5 files (c, py) around main, SecurityConfig, from_payload, HeaderValueSanitizer, __init__. Browser identity sync between the operator browser and the recorder proxy.
root (14.3)
root groups 1 files (py) around _build_substitutions, _fix_sessions_owner, _run_tool. This software must not be used by military or secret service organisations.
skills (14.4)
skills groups 20 files (py) around _now_iso, Stage, Severity, Contract, to_dict. Public API for the claude_md_orchestrator skill.
tests (14.5)
tests groups 2 files (py) around EchoHandler, do_GET, do_POST, _reply, log_message. Contract tests: browser identity inheritance in the lazy burp fuzzer.
Files
contrib/legacy/lazygalazy.pycontrib/legacy/lazyhttpreverseshell.pymodules/backdoor/server.cmodules/browser_sync.pymodules/lazy_oob.pymodules/lazyown_bprfuzzer.pymodules/security_sanitizers.pypwntomate.pyskills/claude_md_orchestrator/__init__.pyskills/claude_md_orchestrator/bdd_agent.pyskills/claude_md_orchestrator/boy_scout.pyskills/claude_md_orchestrator/cicd_agent.pyskills/claude_md_orchestrator/config.pyskills/claude_md_orchestrator/documentation_agent.pyskills/claude_md_orchestrator/models.pyskills/claude_md_orchestrator/orchestrator.pyskills/claude_md_orchestrator/parser.pyskills/claude_md_orchestrator/reviewer_agent.pyskills/claude_md_orchestrator/sdd_agent.pyskills/claude_md_orchestrator/tdd_agent.pyskills/claude_md_orchestrator/validators.pyskills/hermes-lazyown/claudemd_rules.pyskills/hermes-lazyown/config_bridge.pyskills/hermes-lazyown/constants.pyskills/hermes-lazyown/executor.pyskills/hermes-lazyown/hermes_sync.pyskills/hermes-lazyown/mcp_server.pyskills/hermes-lazyown/output_compactor.pytests/test_bprfuzzer_identity.pytests/test_security_sanitizers.py
modules: defense_eval (15) [Expand]
modules: defense_eval groups 8 files (py) around RuleEvaluationError, Condition, Evaluation, to_dict, DatasetSummary. Closed-loop detection rule tuning: baseline vs candidate comparison.
Related Classes/Methods:
modules/defense_eval.py::RuleEvaluationError#L39-L43modules/defense_eval.py::Condition#L44-L52modules/defense_eval.py::Evaluation#L53-L61modules/defense_eval.py::to_dict#L62-L73modules/defense_eval.py::DatasetSummary#L74-L81modules/defense_eval.py::to_dict#L82-L92modules/defense_eval.py::RuleResult#L93-L102modules/defense_eval.py::to_dict#L103-L114
Sub-components
modules (15.1)
modules groups 4 files (py) around RuleEvaluationError, Condition, Evaluation, to_dict, DatasetSummary. Closed-loop detection rule tuning: baseline vs candidate comparison.
tests (15.2)
tests groups 4 files (py) around test_candidate_with_false_positive_regresses, test_both_pass_is_equivalent, test_both_fail_is_equivalent_fail, test_inconclusive_datasets, test_candidate_fixes_baseline_failure. Closed-loop tuning: baseline vs candidate comparison and suggestions.
Files
modules/closedloop.pymodules/defense_eval.pymodules/defense_stages.pymodules/hunt_verify.pytests/test_closedloop.pytests/test_defense_eval.pytests/test_defense_stages.pytests/test_hunt_verify.py
modules: kerberos_core (16) [Expand]
modules: kerberos_core groups 7 files (py) around KerberosPrincipal, to_string, EncryptedData, KerberosTicket, has_flag. Active Directory attack commands — Kerberos, tickets, delegation, DACL, GPO...
Related Classes/Methods:
modules/kerberos_core.py::KerberosPrincipal#L139-L151modules/kerberos_core.py::to_string#L152-L156modules/kerberos_core.py::EncryptedData#L157-L171modules/kerberos_core.py::KerberosTicket#L172-L206modules/kerberos_core.py::has_flag#L207-L212modules/kerberos_core.py::PACSignature#L213-L227modules/kerberos_core.py::PACInfo#L228-L248modules/kerberos_core.py::TGSRequest#L249-L270
Sub-components
cli (16.1)
cli groups 1 files (py) around ActiveDirectoryCommandSet, do_kerberos_ticket, do_delegation_enum, do_delegation_attack, do_dacl_abuse. Active Directory attack commands — Kerberos, tickets, delegation, DACL, GPO...
modules (16.2)
modules groups 6 files (py) around KerberosPrincipal, to_string, EncryptedData, KerberosTicket, has_flag. DACL/SACL abuse module — ACL manipulation for AD privilege escalation.
Files
cli/commands/active_directory.pymodules/dacl_abuse.pymodules/delegation_attacks.pymodules/gpo_abuse.pymodules/kerberoasting.pymodules/kerberos_core.pymodules/kerberos_tickets.py
modules: saas_attacks (17) [Expand]
modules: saas_attacks groups 7 files (py) around AWSConfig, AWSAttackEngine, __init__, enumerate_iam_permissions, lambda_backdoor. Cloud attack commands — Azure AD/Entra ID, AWS, GCP, Kubernetes, cross-cloud, SaaS.
Related Classes/Methods:
modules/aws_attacks.py::AWSConfig#L58-L79modules/aws_attacks.py::AWSAttackEngine#L80-L90modules/aws_attacks.py::__init__#L91-L94modules/aws_attacks.py::enumerate_iam_permissions#L95-L126modules/aws_attacks.py::lambda_backdoor#L127-L154modules/aws_attacks.py::sts_role_chain#L155-L180modules/aws_attacks.py::ec2_user_data_exfil#L181-L205modules/aws_attacks.py::s3_enumeration#L206-L241
Sub-components
cli (17.1)
cli groups 1 files (py) around CloudAttackCommandSet, do_entra_attack, do_aws_privesc, do_gcp_privesc, do_k8s_attack. Cloud attack commands — Azure AD/Entra ID, AWS, GCP, Kubernetes, cross-cloud, SaaS.
modules (17.2)
modules groups 6 files (py) around AWSConfig, AWSAttackEngine, __init__, enumerate_iam_permissions, lambda_backdoor. AWS privilege escalation — IAM enumeration, Lambda backdoors, STS role chaining.
Files
cli/commands/cloud_attacks.pymodules/aws_attacks.pymodules/cross_cloud.pymodules/entra_id_attacks.pymodules/gcp_attacks.pymodules/k8s_attacks.pymodules/saas_attacks.py
modules: polymorphic_engine (18) [Expand]
modules: polymorphic_engine groups 6 files (py) around DotNetPayloadConfig, DotNetPayloadFactory, __init__, _detect_compiler, list_templates. Payload arsenal commands — dotnet, reflective DLL, staged delivery, polymorphic...
Related Classes/Methods:
modules/dotnet_payload.py::DotNetPayloadConfig#L293-L314modules/dotnet_payload.py::DotNetPayloadFactory#L315-L326modules/dotnet_payload.py::__init__#L327-L332modules/dotnet_payload.py::_detect_compiler#L333-L363modules/dotnet_payload.py::list_templates#L364-L367modules/dotnet_payload.py::_resolve_template#L368-L388modules/dotnet_payload.py::generate_source#L389-L402modules/dotnet_payload.py::compile#L403-L453
Sub-components
cli (18.1)
cli groups 1 files (py) around PayloadArsenalCommandSet, do_dotnet_payload, do_arsenal_show, do_staged_delivery, do_polymorphic. Payload arsenal commands — dotnet, reflective DLL, staged delivery, polymorphic...
modules (18.2)
modules groups 5 files (py) around DotNetPayloadConfig, DotNetPayloadFactory, __init__, _detect_compiler, list_templates. .NET/C# payload generation — execute-assembly, inline-assembly, Roslyn compilation.
Files
cli/commands/payload_arsenal.pymodules/dotnet_payload.pymodules/linux_advanced_payloads.pymodules/macos_payloads.pymodules/polymorphic_engine.pymodules/staged_delivery.py
contrib/legacy (19)
contrib/legacy groups 5 files (py) around base64_encode, base64_decode, caesar_cipher, caesar_decipher, key_substitution.
Related Classes/Methods:
modules/lazyencoder_decoder.py::base64_encode#L4-L7modules/lazyencoder_decoder.py::base64_decode#L8-L12modules/lazyencoder_decoder.py::caesar_cipher#L13-L26modules/lazyencoder_decoder.py::caesar_decipher#L27-L30modules/lazyencoder_decoder.py::key_substitution#L31-L46modules/lazyencoder_decoder.py::key_substitution_reverse#L47-L62modules/lazyencoder_decoder.py::encode#L63-L74modules/lazyencoder_decoder.py::encode_string#L75-L81
Files
contrib/legacy/lazycreate_webshell.pycontrib/legacy/lazylogpoisoning.pycontrib/legacy/lazyreversentlmv2.pymodules/lazyencoder_decoder.pymodules/test_lazyencoder_decoder.py
tests (20)
tests groups 4 files (py) around backup_files, restore_files, run_tests, title, run_all. Shared driver for curated mutation runners.
Related Classes/Methods:
tests/mutation_common.py::backup_files#L20-L29tests/mutation_common.py::restore_files#L30-L36tests/mutation_common.py::run_tests#L37-L48tests/mutation_common.py::title#L49-L55tests/mutation_common.py::run_all#L56-L96tests/run_mutation_loop_cli_catalog.py::main#L50-L56tests/run_mutation_trigger_policy.py::main#L52-L58tests/run_mutation_verb_catalog.py::main#L52-L58
Files
tests/mutation_common.pytests/run_mutation_loop_cli_catalog.pytests/run_mutation_trigger_policy.pytests/run_mutation_verb_catalog.py
modules: memory_store (21)
modules: memory_store groups 3 files (py) around EmbeddingError, _fnv1a, _tokens, embed, cosine. Hashing-trick text embeddings for episodic memory recall.
Related Classes/Methods:
modules/memory_embeddings.py::EmbeddingError#L30-L33modules/memory_embeddings.py::_fnv1a#L34-L40modules/memory_embeddings.py::_tokens#L41-L49modules/memory_embeddings.py::embed#L50-L74modules/memory_embeddings.py::cosine#L75-L84modules/memory_embeddings.py::semantic_top_k#L85-L108modules/memory_embeddings.py::as_floats#L109-L113modules/memory_store.py::MemoryEntry#L84-L96
Files
modules/memory_embeddings.pymodules/memory_store.pytests/test_memory_semantics.py
scripts: journal (22)
scripts: journal groups 3 files (py) around JournalError, JournalConfig, from_git_remote, _run_git, _git_remote_slug. Read-before-you-write journal over GitHub Discussions.
Related Classes/Methods:
scripts/journal.py::JournalError#L48-L52scripts/journal.py::JournalConfig#L53-L70scripts/journal.py::from_git_remote#L71-L89scripts/journal.py::_run_git#L90-L113scripts/journal.py::_git_remote_slug#L114-L123scripts/journal.py::_default_runner#L124-L148scripts/journal.py::Journal#L149-L162scripts/journal.py::_graphql#L163-L183
Files
scripts/journal.pyscripts/read_journal.pytests/test_journal.py
modules/backdoor (23)
modules/backdoor groups 2 files (c, h) around logg, bzero, RUNKEY_NAME, bootRun, str_cut.
Related Classes/Methods:
modules/backdoor/keylogger.h::logg#L1-L106modules/backdoor/backdoor.c::bzero#L14-L16modules/backdoor/backdoor.c::RUNKEY_NAME#L17-L21modules/backdoor/backdoor.c::bootRun#L22-L52modules/backdoor/backdoor.c::str_cut#L53-L87modules/backdoor/backdoor.c::Shell#L88-L128modules/backdoor/backdoor.c::WinMain#L129-L163
Files
modules/backdoor/backdoor.cmodules/backdoor/keylogger.h
modules: lazy_netattack (24)
modules: lazy_netattack groups 2 files (py) around AttackVectorVerdict, as_dict, SurfaceEvidence, _svc_blob, _windows_hosts. Windows network-attack surface adjudicator for mitm6/LLMNR/SMB relay.
Related Classes/Methods:
modules/lazy_netattack.py::AttackVectorVerdict#L88-L106modules/lazy_netattack.py::as_dict#L107-L119modules/lazy_netattack.py::SurfaceEvidence#L120-L135modules/lazy_netattack.py::_svc_blob#L136-L145modules/lazy_netattack.py::_windows_hosts#L146-L160modules/lazy_netattack.py::_ad_hosts#L161-L172modules/lazy_netattack.py::_signing_not_required#L173-L178modules/lazy_netattack.py::_downgrade_candidates#L179-L183
Files
modules/lazy_netattack.pytests/test_lazy_netattack.py
modules: lazy_triage (25)
modules: lazy_triage groups 2 files (py) around rank, hard_evidence, apply_rules, signature_for, SignatureStore. Triage doctrine: evidence floors, verdict algebra and signature dedup.
Related Classes/Methods:
modules/lazy_triage.py::rank#L42-L46modules/lazy_triage.py::hard_evidence#L47-L79modules/lazy_triage.py::apply_rules#L80-L107modules/lazy_triage.py::signature_for#L108-L134modules/lazy_triage.py::SignatureStore#L135-L137modules/lazy_triage.py::__init__#L138-L143modules/lazy_triage.py::fresh_signature#L144-L161modules/lazy_triage.py::reset#L162-L165
Files
modules/lazy_triage.pytests/test_lazy_triage.py
poc_tui (26)
poc_tui groups 2 files (py) around PayloadConfig, __post_init__, reload, save, get. Payload.json configuration manager for the TUI shell.
Related Classes/Methods:
poc_tui/config.py::PayloadConfig#L12-L17poc_tui/config.py::__post_init__#L18-L20poc_tui/config.py::reload#L21-L27poc_tui/config.py::save#L28-L34poc_tui/config.py::get#L35-L37poc_tui/config.py::set#L38-L40poc_tui/config.py::keys#L41-L43poc_tui/config.py::items#L44-L46
Files
poc_tui/config.pypoc_tui/plugin_loader.py
scripts: check_contract_manifest (27)
scripts: check_contract_manifest groups 2 files (py) around ManifestConfig, __post_init__, _resolve, _top_level_names, _module_path. Verify that documented contracts still exist on disk.
Related Classes/Methods:
scripts/check_contract_manifest.py::ManifestConfig#L34-L52scripts/check_contract_manifest.py::__post_init__#L53-L57scripts/check_contract_manifest.py::_resolve#L58-L71scripts/check_contract_manifest.py::_top_level_names#L72-L99scripts/check_contract_manifest.py::_module_path#L100-L111scripts/check_contract_manifest.py::_dotted_symbol_exists#L112-L126scripts/check_contract_manifest.py::_iter_table_cells#L127-L137scripts/check_contract_manifest.py::_extract_path_tokens#L138-L153
Files
scripts/check_contract_manifest.pytests/test_contract_manifest.py
scripts: migrate_lazyown (28)
scripts: migrate_lazyown groups 2 files (py) around _category_from_decorator, _indent_level, extract_method, rewrite_globals, build_migrated_module. Staged migration script: extract do_* methods from lazyown.py into cli/commands/.
Related Classes/Methods:
scripts/migrate_lazyown.py::_category_from_decorator#L70-L83scripts/migrate_lazyown.py::_indent_level#L84-L87scripts/migrate_lazyown.py::extract_method#L88-L95scripts/migrate_lazyown.py::rewrite_globals#L96-L123scripts/migrate_lazyown.py::build_migrated_module#L124-L172scripts/migrate_lazyown.py::main#L173-L239tests/test_migrate_lazyown_generator.py::_module_all#L27-L56tests/test_migrate_lazyown_generator.py::test_generated_module_parses#L57-L61
Files
scripts/migrate_lazyown.pytests/test_migrate_lazyown_generator.py
tools (29)
tools groups 2 files (py) around font, render, main, main. Generate LazyOwn demo GIFs without external services.
Related Classes/Methods:
tools/gen_demo_gifs.py::font#L14-L21tools/gen_demo_gifs.py::render#L22-L69tools/gen_demo_gifs.py::main#L70-L79tools/gen_demo_gifs_extra.py::main#L49-L58
Files
tools/gen_demo_gifs.pytools/gen_demo_gifs_extra.py