Repository navigation
Agent API_p13
Previous: API_p12.md
Depends on: modules/kerberos_core.py
Imported by: cli/commands/active_directory.py
-
KerberoastingEngine.__init__(method)modules/kerberoasting.py:95def __init__(self, domain, dc_ip, username, password, hash) -
KerberoastingEngine.enumerate_spns(method)modules/kerberoasting.py:112def enumerate_spns(self, ldap_output, bloodhound_data)-- Enumerate kerberoastable service principals. -
priority(function)modules/kerberoasting.py:172def priority(target) -
KerberoastingEngine.request_tgs_aes_only(method)modules/kerberoasting.py:187def request_tgs_aes_only(self, user_spn)-- Request a TGS ticket using only AES encryption (evades RC4 detection). -
KerberoastingEngine.request_tgs_rc4(method)modules/kerberoasting.py:208def request_tgs_rc4(self, user_spn)-- Request a TGS ticket using RC4-HMAC (mode 13100 for Hashcat). -
KerberoastingEngine.request_tgs(method)modules/kerberoasting.py:219def request_tgs(self, user_spn, etype)-- Request a TGS service ticket for kerberoasting. -
KerberoastingEngine.targeted_kerberoast(method)modules/kerberoasting.py:271def targeted_kerberoast(self, high_value_only)-- Perform targeted Kerberoasting on enumerated SPNs. -
KerberoastingEngine.asreproast_check(method)modules/kerberoasting.py:306def asreproast_check(self, usernames)-- Check which users do NOT require Kerberos pre-authentication (AS-REP roastable). -
KerberoastingEngine.extract_hashes_from_pcap(method)modules/kerberoasting.py:321def extract_hashes_from_pcap(self, pcap_path)-- Extract Kerberoast hashes from a PCAP/PCAPNG network capture. -
KerberoastingEngine.detect_kerberoasting_activity(method)modules/kerberoasting.py:336def detect_kerberoasting_activity(self, event_log)-- Analyze Windows Event Logs for signs of Kerberoasting attacks. -
KerberoastingEngine.build_hashcat_batch(method)modules/kerberoasting.py:379def build_hashcat_batch(self, output_path)-- Build a batch file with all extracted hashes for Hashcat cracking. -
KerberoastingEngine.summary(method)modules/kerberoasting.py:401def summary(self)-- Return a summary of kerberoasting operations.
Imported by: modules/kerberoasting.py, modules/kerberos_tickets.py
-
KerberosPrincipal.to_string(method)modules/kerberos_core.py:152def to_string(self) -
KerberosTicket.has_flag(method)modules/kerberos_core.py:207def has_flag(self, flag_name) -
KerberosCrypto.__init__(method)modules/kerberos_core.py:277def __init__(self) -
KerberosCrypto.derive_aes_key(method)modules/kerberos_core.py:282def derive_aes_key(password, salt, etype)-- Derive an AES Kerberos key from a password using string-to-key. -
KerberosCrypto.derive_rc4_key(method)modules/kerberos_core.py:318def derive_rc4_key(password)-- Derive RC4-HMAC Kerberos key from password (hash = MD4(UTF16LE(password))). -
KerberosCrypto.aes_encrypt(method)modules/kerberos_core.py:329def aes_encrypt(self, key, plaintext, usage)-- AES encrypt with Kerberos ciphertext stealing (CTS) mode. -
KerberosCrypto.aes_decrypt(method)modules/kerberos_core.py:361def aes_decrypt(self, key, ciphertext, usage)-- AES decrypt with Kerberos CTS mode. -
KerberosCrypto.compute_checksum(method)modules/kerberos_core.py:389def compute_checksum(key, data, etype)-- Compute a Kerberos checksum using HMAC-SHA1-96-AES. -
KerberosCore.__init__(method)modules/kerberos_core.py:421def __init__(self, domain, dc_host, dc_ip) -
KerberosCore.get_supported_etypes(method)modules/kerberos_core.py:427def get_supported_etypes(self)-- Return encryption types supported by this implementation. -
KerberosCore.build_as_req(method)modules/kerberos_core.py:435def build_as_req(self, username, domain, password, etype)-- Build an AS-REQ message for TGT retrieval. -
KerberosCore.build_tgs_req(method)modules/kerberos_core.py:489def build_tgs_req(self, params)-- Build a TGS-REQ message for service ticket retrieval. -
KerberosCore.parse_as_rep(method)modules/kerberos_core.py:534def parse_as_rep(self, as_rep_data, key, etype)-- Parse an AS-REP response and extract the TGT and session key. -
KerberosCore.parse_tgs_rep(method)modules/kerberos_core.py:550def parse_tgs_rep(self, tgs_rep_data, session_key, etype)-- Parse a TGS-REP response and extract the service ticket. -
KerberosCore.decrypt_ticket(method)modules/kerberos_core.py:563def decrypt_ticket(self, ticket_data, key, etype)-- Decrypt the encrypted portion of a Kerberos ticket. -
KerberosCore.parse_pac(method)modules/kerberos_core.py:588def parse_pac(self, pac_data)-- Parse a Privilege Attribute Certificate (PAC) from decrypted auth data. -
KerberosErrorParser.parse_error(method)modules/kerberos_core.py:687def parse_error(error_data)-- Extract error code, message, and client/server realm from a KRB-ERROR. -
TicketValidator.is_expired(method)modules/kerberos_core.py:706def is_expired(endtime, grace_period)-- Check if a ticket has expired. -
TicketValidator.validate_flags(method)modules/kerberos_core.py:719def validate_flags(ticket, required_flags)-- Check that a ticket has all required flags. -
TicketValidator.validate_pac_checksums(method)modules/kerberos_core.py:735def validate_pac_checksums(pac)-- Validate PAC server and KDC checksums.
Depends on: modules/kerberos_core.py
Imported by: cli/commands/active_directory.py
-
SilverTicketForger.__init__(method)modules/kerberos_tickets.py:131def __init__(self) -
SilverTicketForger.forge(method)modules/kerberos_tickets.py:134def forge(self, config)-- Forge a silver ticket for the specified service. -
GoldenTicketForger.__init__(method)modules/kerberos_tickets.py:272def __init__(self) -
GoldenTicketForger.forge(method)modules/kerberos_tickets.py:275def forge(self, config)-- Forge a golden ticket TGT. -
DiamondTicketForger.__init__(method)modules/kerberos_tickets.py:405def __init__(self) -
DiamondTicketForger.forge(method)modules/kerberos_tickets.py:408def forge(self, config)-- Forge a diamond ticket with PAC enhancement. -
SapphireTicketForger.__init__(method)modules/kerberos_tickets.py:469def __init__(self, kerberos_core) -
SapphireTicketForger.forge_s4u2self(method)modules/kerberos_tickets.py:472def forge_s4u2self(self, tgt, session_key, target_user, target_service, domain)-- Generate a TGS-REQ for S4U2self service ticket. -
SapphireTicketForger.forge_rbcd(method)modules/kerberos_tickets.py:530def forge_rbcd(self, machine_account_hash, target_service, domain, username)-- Generate exploit instructions for resource-based constrained delegation. -
SkeletonKeyInjector.detect_skeleton_key(method)modules/kerberos_tickets.py:578def detect_skeleton_key(target_host, domain, dc_ip)-- Check if skeleton key is active on a DC. -
SkeletonKeyInjector.inject_command(method)modules/kerberos_tickets.py:600def inject_command(target_host)-- Generate mimikatz command for skeleton key injection on a DC. -
SkeletonKeyInjector.cleanup_command(method)modules/kerberos_tickets.py:612def cleanup_command()-- Generate LSASS restart command to remove skeleton key patch.
Depends on: modules/killchain.py
Imported by: lazyc2.py
-
generate_html(function)modules/kill_chain_viz.py:69def generate_html(target, sessions) -
generate_svg(function)modules/kill_chain_viz.py:102def generate_svg(target, sessions)
Depends on: core/logging.py, modules/world_model.py
Imported by: cli/commands/ai.py, cli/dashboard_tui.py, cli/killchain.py, cli/lazynmap_post.py, cli/ops_commands.py, cli/recon_plan.py, cli/tips_engine.py, lazyc2.py, lazyc2/blueprints/orchestrator.py, lazygui/panels/killchain_panel.py, modules/kill_chain_viz.py, modules/lazy_cli_bridge.py, modules/lazyown_bridge.py, modules/opsec_scorer.py, modules/sinks/killchain.py, scripts/devtools/core_smoke.py, skills/autonomous_daemon.py, skills/hermes-lazyown/constants.py, skills/lazyown_mcp.py, tests/test_killchain_snapshot.py, tests/test_killchain_unified_v2.py, tests/test_single_source_of_truth.py
-
KillChainConfig.world_model_path(method)modules/killchain.py:118def world_model_path(self)-- Return the resolved path to world_model.json. -
KillChainConfig.phase_index(method)modules/killchain.py:122def phase_index(self, phase)-- Return the positional index of a canonical phase in the kill chain. -
KillChainConfig.is_valid_phase(method)modules/killchain.py:129def is_valid_phase(self, phase)-- Return True whenphaseis a recognised canonical phase. -
KillChain.config(method)modules/killchain.py:156def config()-- Return the centralised configuration. -
KillChain.phases(method)modules/killchain.py:161def phases()-- Return the canonical 8-phase tuple. -
KillChain.phase_labels(method)modules/killchain.py:166def phase_labels()-- Return the canonical phase label mapping. -
KillChain.phase_colors(method)modules/killchain.py:171def phase_colors()-- Return the canonical phase hex-color mapping. -
KillChain.phase_rich_colors(method)modules/killchain.py:176def phase_rich_colors()-- Return the canonical phase rich-terminal color mapping. -
KillChain.engagement_phase_to_cli(method)modules/killchain.py:181def engagement_phase_to_cli(engagement_value)-- Map aWorldModel.EngagementPhasevalue to the CLI phase key. -
KillChain.cli_phase_to_host_state(method)modules/killchain.py:193def cli_phase_to_host_state(phase)-- Map a CLI phase to aWorldModel.HostStatevalue. -
KillChain.current_phase(method)modules/killchain.py:206def current_phase(world_model_path)-- Derive the current kill-chain phase. -
KillChain.advance_phase(method)modules/killchain.py:253def advance_phase(new_phase, world_model_path, host, extras)-- Advance the kill-chain phase for connected surfaces. -
KillChain.get_progress(method)modules/killchain.py:357def get_progress(world_model_path)-- Return the current kill-chain progress as a list of status objects. -
KillChain.compact_progress(method)modules/killchain.py:406def compact_progress(current_phase, phases_entered)-- Return a compact single-line progress indicator[R>E>X>P>L]. -
KillChain.phases_for_display(method)modules/killchain.py:426def phases_for_display()-- Return an ordered(key, label, hex_color)triple for every phase. -
KillChain.phase_index(method)modules/killchain.py:437def phase_index(phase)-- Return the zero-based index of a canonical phase. -
KillChain.snapshot(method)modules/killchain.py:442def snapshot(world_model_path)-- Return a single, render-agnostic snapshot of the whole kill-chain. -
get_killchain(function)modules/killchain.py:482def get_killchain()-- Return theKillChainclass as a module-level entry point.
-
ReverseShellApp.build(method)modules/kivi.py:12def build(self) -
ReverseShellApp.connect_to_server(method)modules/kivi.py:27def connect_to_server(self, instance)
Depends on: modules/metasploitable_migrations.py
-
docker_available(function)modules/lab_runtime.py:81def docker_available()-- Return whether the Docker daemon is reachable. -
running_containers(function)modules/lab_runtime.py:103def running_containers()-- Return the running lab container names. -
existing_containers(function)modules/lab_runtime.py:119def existing_containers()-- Return every lab container name including stopped ones. -
running_range_containers(function)modules/lab_runtime.py:136def running_range_containers()-- Return the running cyber range container names. -
container_name(function)modules/lab_runtime.py:152def container_name(scenario)-- Return the container name for one lab scenario. -
container_ip(function)modules/lab_runtime.py:157def container_ip(container_name)-- Resolve one container's IPv4 on its Docker network. -
ensure_web(function)modules/lab_runtime.py:171def ensure_web(scenario, name)-- Start Apache inside a metasploitable container that booted without it. -
apply_gym_migrations(function)modules/lab_runtime.py:185def apply_gym_migrations(name)-- Apply the metasploitable gym migrations, returning the report. -
start(function)modules/lab_runtime.py:193def start(scenario)-- Spin up one lab scenario container. -
stop(function)modules/lab_runtime.py:241def stop(scenario)-- Stop one lab scenario container. -
stop_all(function)modules/lab_runtime.py:259def stop_all()-- Stop every running lab container. -
range_compose(function)modules/lab_runtime.py:277def range_compose(profile)-- Return the compose file path for one range profile, or None. -
start_range(function)modules/lab_runtime.py:286def start_range(profile)-- Start one cyber range profile via Docker Compose. -
stop_range(function)modules/lab_runtime.py:305def stop_range(profile)-- Stop one cyber range profile (compose down). -
stop_ranges(function)modules/lab_runtime.py:316def stop_ranges()-- Stop every running cyber range. -
ensure_range_secret(function)modules/lab_runtime.py:357def ensure_range_secret(profile_dir)-- Generate the DC admin secret file when missing.
Depends on: core/config.py, modules/__init__.py, modules/agent_runner.py, modules/auto_registry.py, modules/lazy_loop.py, modules/llm_factory.py, modules/loop_ai_bridge.py
Imported by: cli/commands/lazyops.py, tests/conftest.py, tests/test_lazy_agent.py
-
model_timeout_sec(function)modules/lazy_agent.py:41def model_timeout_sec()-- Return the hard per-turn model timeout from configuration. -
tool_calling_enabled(function)modules/lazy_agent.py:57def tool_calling_enabled()-- Return whether agentic tool calling is enabled by configuration. -
max_iterations(function)modules/lazy_agent.py:72def max_iterations()-- Return the bounded agent step budget from configuration. -
resolve_agentic_model(function)modules/lazy_agent.py:83def resolve_agentic_model(exclude)-- Return a raw tool-calling backend for the best pool member, or None. -
ObservableAgentRunner.__init__(method)modules/lazy_agent.py:148def __init__(self, model, system_prompt, max_iterations, on_event)-- Bind the model and the optional event sink (kind, name, text). -
ObservableAgentRunner.run(method)modules/lazy_agent.py:168def run(self, user_input)-- Base loop plus final-turn persistence for true resume. -
ConversationStore.__init__(method)modules/lazy_agent.py:264def __init__(self, task_id)-- Bind the conversation store for one task (mainwhen empty). -
ConversationStore.intent_messages(method)modules/lazy_agent.py:273def intent_messages(self, intent_id)-- Return the stored messages for one intent (resume seed). -
ConversationStore.save_intent(method)modules/lazy_agent.py:278def save_intent(self, intent_id, messages)-- Persist the tail of one intent conversation. -
ConversationStore.session(method)modules/lazy_agent.py:287def session(self, session_id)-- Return one main-agent session payload (empty when unknown). -
ConversationStore.sessions(method)modules/lazy_agent.py:291def sessions(self)-- List main-agent sessions with title, message count and age. -
ConversationStore.save_session(method)modules/lazy_agent.py:305def save_session(self, session_id, messages, title)-- Persist one main-agent session conversation tail. -
ConversationStore.reset_intents(method)modules/lazy_agent.py:315def reset_intents(self)-- Drop every stored intent conversation (fresh agent start). -
register_tools(function)modules/lazy_agent.py:322def register_tools(runner, specs)-- Register tool specs (name, description, func, parameters, required). -
run_worker_session(function)modules/lazy_agent.py:335def run_worker_session(model, task_id, intent_id, system_prompt, launch_prompt, tools, on_event)-- Run one agentic intent attempt with resume seeding. -
run_main_session(function)modules/lazy_agent.py:374def run_main_session(model, session_id, system_prompt, prompt, tools, on_event)-- Run one main-agent turn, resuming the stored session conversation. -
run_external_opencode(function)modules/lazy_agent.py:396def run_external_opencode(prompt, session_id, agent, cwd, timeout_sec)-- Run one headlessopencode runtask with MCP tooling. -
run_external_hermes(function)modules/lazy_agent.py:472def run_external_hermes(prompt, session_id, cwd, timeout_sec, max_turns, run_budget)-- Run one detachedhermes chat --oneshottask.
Depends on: modules/finding_lifecycle.py, modules/traffic_recorder.py, modules/world_model.py
Imported by: cli/commands/lazyloop.py, modules/lazy_loop.py, skills/lazyown_mcp.py, tests/conftest.py, tests/test_lazy_loop.py
-
lazy_tasks(function)modules/lazy_bridge.py:88def lazy_tasks()-- Load LAZY task registry. -
lazy_assets(function)modules/lazy_bridge.py:99def lazy_assets()-- Load LAZY asset nodes. -
lazy_graph(function)modules/lazy_bridge.py:110def lazy_graph(task_id)-- Load experiment graph for a task. -
lazy_activity(function)modules/lazy_bridge.py:123def lazy_activity(task_id)-- Load activity transcript for a task. -
lazy_traffic(function)modules/lazy_bridge.py:135def lazy_traffic(task_id)-- Load traffic log for a task. -
lazy_guard_audit(function)modules/lazy_bridge.py:147def lazy_guard_audit(task_id)-- Load guard audit for a task. -
bridge_status(function)modules/lazy_bridge.py:159def bridge_status()-- Summarize LAZY universe and last sync cursor. -
pull_to_world_model(function)modules/lazy_bridge.py:206def pull_to_world_model()-- Sync LAZY graphs and assets into LazyOwn world model. -
pull_to_objectives(function)modules/lazy_bridge.py:251def pull_to_objectives()-- Inject open LAZY tasks as LazyOwn objectives without duplicates. -
pull_findings_to_lifecycle(function)modules/lazy_bridge.py:286def pull_findings_to_lifecycle()-- Confirm LAZY finding nodes in LazyOwn finding lifecycle. -
pull_traffic_to_recorder(function)modules/lazy_bridge.py:361def pull_traffic_to_recorder(progress)-- Mirror new LAZY traffic rows into the LazyOwn recorder index. -
push_objective_to_lazy(function)modules/lazy_bridge.py:429def push_objective_to_lazy(goal, scope)-- Export a LazyOwn objective as an LAZY-compatible task draft. -
push_tasks_to_c2(function)modules/lazy_bridge.py:454def push_tasks_to_c2(only)-- Mirror loop tasks into the lazyc2 Kanban board (sessions/tasks.json). -
sync_all(function)modules/lazy_bridge.py:519def sync_all(progress)-- Run full bidirectional pull plus lifecycle, traffic and board mirror.
Depends on: core/config.py, modules/killchain.py, modules/verb_catalog.py
Imported by: cli/commands/lazyops.py, modules/auto_registry.py, modules/chain_distill.py, modules/lazy_intel.py, modules/lazy_loop.py, modules/lazy_orchestrator_feedback.py, modules/verb_catalog.py, tests/test_loop_cli_catalog.py
-
cli_verbs(function)modules/lazy_cli_bridge.py:106def cli_verbs()-- Return every discovered shell verb, cached by source mtime. -
is_cli_verb(function)modules/lazy_cli_bridge.py:125def is_cli_verb(name)-- Return True when name is a real shell command. -
phase_for(function)modules/lazy_cli_bridge.py:131def phase_for(verb)-- Map a verb to its kill-chain phase via keyword affinity. -
risk_for(function)modules/lazy_cli_bridge.py:140def risk_for(verb)-- Classify a verb as safe, exploit or high risk. -
needs_target_for(function)modules/lazy_cli_bridge.py:150def needs_target_for(verb)-- Return whether the verb usually carries a target argument. -
build_cli_command(function)modules/lazy_cli_bridge.py:158def build_cli_command(verb, target)-- Build a shell line for any CLI verb bound to target. -
search_cli_verbs(function)modules/lazy_cli_bridge.py:185def search_cli_verbs(query, phase, limit)-- Search the full CLI catalog by keyword and phase. -
cli_catalog_for_phase(function)modules/lazy_cli_bridge.py:211def cli_catalog_for_phase(phase, limit)-- Return a compact verb list for LLM prompt injection. -
catalog_cli_for_phase(function)modules/lazy_cli_bridge.py:219def catalog_cli_for_phase(limit)-- Return enabled catalog commands for the current kill-chain phase. -
full_cli_enabled(function)modules/lazy_cli_bridge.py:253def full_cli_enabled()-- Return whether the loop may route any CLI verb. -
set_full_cli(function)modules/lazy_cli_bridge.py:276def set_full_cli(enabled)-- Persist the full-CLI routing flag and return the new value.
Depends on: core/config.py, modules/auto_registry.py
Imported by: cli/commands/lazyops.py, modules/auto_registry.py, modules/lazy_loop.py
-
installer_enabled(function)modules/lazy_installer.py:41def installer_enabled()-- Return whether the loop may resolve install intents. -
set_installer_enabled(function)modules/lazy_installer.py:58def set_installer_enabled(enabled)-- Persist the installer flag and return the stored value. -
install_command_for(function)modules/lazy_installer.py:70def install_command_for(tool)-- Return the allowlisted install recipe for one tool, or None. -
intent_for(function)modules/lazy_installer.py:75def intent_for(tool)-- Build the canonical install intent summary for one tool. -
tool_from_intent(function)modules/lazy_installer.py:80def tool_from_intent(text)-- Extract the tool name from an install intent, else empty string. -
steps_for_install(function)modules/lazy_installer.py:88def steps_for_install(text)-- Resolve an install intent to its recipe, or None.
Depends on: core/config.py, modules/lazy_cli_bridge.py, modules/mediation/__init__.py, modules/world_model.py, utils.py
Imported by: modules/lazy_loop.py, modules/lazy_orchestrator_feedback.py, modules/mediation/intel_mediator.py, modules/sinks/routing.py, tests/test_loop_supervision.py, tests/test_mediation.py
-
infer_source(function)modules/lazy_intel.py:88def infer_source(command, intent_text)-- Classify where a resolved step likely came from. -
describe_command(function)modules/lazy_intel.py:114def describe_command(command)-- Describe a command with phase and risk. -
record_routing_decision(function)modules/lazy_intel.py:129def record_routing_decision(task_id, intent_id, command, intent_text, target, stack)-- Record which verb the loop chose for one intent. -
record_routing_outcome(function)modules/lazy_intel.py:169def record_routing_outcome(task_id, intent_id, command, state, facts, findings, stack)-- Record the terminal outcome of one executed command. -
read_decisions(function)modules/lazy_intel.py:211def read_decisions(task_id, limit)-- Read routing records, optionally filtered by task. -
mask_configured(function)modules/lazy_intel.py:237def mask_configured(text)-- Mask only operator-configured credential values in live text. -
stack_signature(function)modules/lazy_intel.py:272def stack_signature(assets)-- Fingerprint the target stack from service assets. -
fuse_routing_decisions(function)modules/lazy_intel.py:303def fuse_routing_decisions(task_id)-- Fuse routing records into the world model as host notes. -
export_spans(function)modules/lazy_intel.py:342def export_spans(task_id, out)-- Export activity records as trace spans for observability.
Depends on: core/config.py, core/crypto.py, core/hardening.py, core/logging.py, core/process.py, modules/__init__.py, modules/auto_registry.py, modules/autonomous_exploit_engine.py, modules/custom_tools.py, modules/defense_stages.py, modules/digest.py, modules/finding_lifecycle.py, modules/guardrails/__init__.py, modules/harness.py, modules/intercept.py, modules/lazy_bridge.py, modules/lazy_cli_bridge.py, modules/lazy_engine.py, modules/lazy_installer.py, modules/lazy_intel.py, modules/lazy_orchestrator_feedback.py, modules/lazy_roles.py, modules/lazy_skills.py, modules/llm_factory.py, modules/llm_pool.py, modules/loop_ai_bridge.py, modules/loop_guardrails.py, modules/loop_triggers.py, modules/mediation/__init__.py, modules/notify.py, modules/orchestrator_config.py, modules/outcome_bus.py, modules/reaction_bridge.py, modules/reactive_engine.py, modules/selfupdate.py, modules/traffic_recorder.py, modules/trigger_policy.py, modules/world_model.py, utils.py
Imported by: cli/commands/misc_migrated.py, cli/commands/session_ops.py, cli/lazy_orchestrator.py, cli/retry_support.py, lazyc2.py, lazyown.py, modules/custom_tools.py, modules/lazy_agent.py, modules/lazy_engine.py, modules/lazy_mentions.py, modules/lazy_roles.py, modules/lazy_runner.py, modules/loop_triggers.py, modules/mediation/chain_mediator.py, modules/mediation/intel_mediator.py, modules/reaction_bridge.py, modules/tools/loop_smoke.py, modules/tools/monitor_smoke.py, skills/lazyown_mcp.py, tests/conftest.py, tests/test_asset_gate.py, tests/test_auto_crypto.py, tests/test_guardrails.py, tests/test_harness_mode.py, tests/test_intel_fusion.py, tests/test_lazy_agent.py, tests/test_lazy_engine.py, tests/test_lazy_evidence.py, tests/test_lazy_loop.py, tests/test_lazy_orchestrator.py, tests/test_lazy_proxy.py, tests/test_lazy_runner.py, tests/test_lazy_streaming.py, tests/test_lazy_worker_safety.py, tests/test_loop_ai_bridge.py, tests/test_loop_auto_orchestrator.py, tests/test_loop_broadcast.py, tests/test_loop_cli_catalog.py, tests/test_loop_cold_overview.py, tests/test_loop_force_graph.py, tests/test_loop_guard_audit.py, tests/test_loop_intent_delete.py, tests/test_loop_llm_resilience.py, tests/test_loop_nmap_guard.py, tests/test_loop_scope_traffic_evidence.py, tests/test_loop_spawn_side.py, tests/test_loop_store_race.py, tests/test_loop_supervision.py, tests/test_loop_worker_traces.py, tests/test_orchestrator_api.py, tests/test_orchestrator_triggers.py, tests/test_orchestrator_yaml.py, tests/test_pi_leg.py, tests/test_security_alerts_fix.py, tests/test_security_codeql_batch.py, tests/test_session_brief.py, tests/test_trigger_policy.py
-
plausible_command(function)modules/lazy_loop.py:157def plausible_command(command)-- Reject obvious hallucinations such asnmap --block. -
repair_worker_command(function)modules/lazy_loop.py:278def repair_worker_command(command, target)-- Normalize one LLM-proposed worker command. -
loop_exiting(function)modules/lazy_loop.py:408def loop_exiting()-- Return True once the shell is tearing the loop runtime down. -
arm_exit_watchdog(function)modules/lazy_loop.py:425def arm_exit_watchdog(seconds)-- Guarantee process death even with threads stuck in socket reads. -
scrub_secrets(function)modules/lazy_loop.py:466def scrub_secrets(text)-- Mask API keys/tokens before a string reaches logs or the panel. -
wake_task(function)modules/lazy_loop.py:570def wake_task(task_id)-- Signal a running engine that new work landed for its task. -
register_worker(function)modules/lazy_loop.py:604def register_worker(worker)-- Track a live Worker so shell exit can close its side channels. -
unregister_worker(function)modules/lazy_loop.py:610def unregister_worker(worker)-- Drop a finished Worker from the shutdown registry. -
shutdown_loop_runtime(function)modules/lazy_loop.py:616def shutdown_loop_runtime(reason)-- Tear down every loop-owned resource; safe on any exit path. -
task_llm_chain(function)modules/lazy_loop.py:831def task_llm_chain(store, task_id)-- Return the per-task LLM chain members (empty when unbound). -
parse_judge_output(function)modules/lazy_loop.py:841def parse_judge_output(raw)-- Parse strict judge JSON demanding decision and comment. -
judge_command(function)modules/lazy_loop.py:869def judge_command(command, background, fail_action)-- Ask the pool for a guard verdict, applying the configured fail policy. -
AssetGraph.__init__(method)modules/lazy_loop.py:962def __init__(self)-- Load persisted assets or start empty. -
AssetGraph.dedupe_key(method)modules/lazy_loop.py:980def dedupe_key(self, kind, value, parent_id)-- Compute program-owned dedupe key for an asset. -
AssetGraph.insert(method)modules/lazy_loop.py:984def insert(self, kind, value, parent_id, meta, task_id)-- Insert asset or return existing node with same dedupe key. -
AssetGraph.get(method)modules/lazy_loop.py:1014def get(self, asset_id)-- Return asset by id or None. -
AssetGraph.list(method)modules/lazy_loop.py:1018def list(self, kind)-- List assets optionally filtered by kind. -
AssetGraph.mark_tested(method)modules/lazy_loop.py:1025def mark_tested(self, asset_id)-- Flag asset as tested by a worker intent. -
AssetGraph.coverage(method)modules/lazy_loop.py:1035def coverage(self, scope)-- Compute tested/total coverage, optionally scoped. -
AssetGraph.scoped(method)modules/lazy_loop.py:1051def scoped(self, scope, kind)-- List assets owned by the task scope via ownership matching. -
AssetGraph.untested(method)modules/lazy_loop.py:1064def untested(self, limit)-- Return oldest untested assets up to limit. -
AssetGraph.coverage_for(method)modules/lazy_loop.py:1069def coverage_for(self, graph, scope)-- Compute task-scoped coverage like the planner graph_overview. -
AssetGraph.untested_for(method)modules/lazy_loop.py:1097def untested_for(self, graph, scope, limit)-- Return scope-filtered assets not yet covered by this task. -
ExplorationGraph.__init__(method)modules/lazy_loop.py:1125def __init__(self, task_id)-- Load task graph or start empty. -
ExplorationGraph.add_node(method)modules/lazy_loop.py:1159def add_node(self, kind, text, state, priority, meta)-- Append node and return it. -
ExplorationGraph.get(method)modules/lazy_loop.py:1187def get(self, node_id)-- Return node by id or None. -
ExplorationGraph.set_state(method)modules/lazy_loop.py:1191def set_state(self, node_id, state)-- Transition node state and persist. -
ExplorationGraph.add_edge(method)modules/lazy_loop.py:1202def add_edge(self, src, dst, kind)-- Link two existing nodes. -
ExplorationGraph.anchor(method)modules/lazy_loop.py:1215def anchor(self, node_id, asset_id)-- Anchor exploration node to a concrete asset. -
ExplorationGraph.anchors_for(method)modules/lazy_loop.py:1226def anchors_for(self, node_id)-- Return asset ids anchored to node. -
ExplorationGraph.anchored_nodes(method)modules/lazy_loop.py:1230def anchored_nodes(self, asset_id)-- Return exploration node ids anchored to asset. -
ExplorationGraph.list(method)modules/lazy_loop.py:1234def list(self, kind, state)-- List nodes optionally filtered by kind/state. -
ExplorationGraph.children(method)modules/lazy_loop.py:1243def children(self, node_id, kind)-- Return destination ids of outgoing edges. -
ExplorationGraph.parents(method)modules/lazy_loop.py:1250def parents(self, node_id, kind)-- Return source ids of incoming edges. -
ExplorationGraph.overview(method)modules/lazy_loop.py:1257def overview(self)-- Return planner-facing state summary like graph overview. -
ExplorationGraph.reload(method)modules/lazy_loop.py:1280def reload(self)-- Reload graph from disk, discarding in-memory state. -
ExplorationGraph.compare_and_claim(method)modules/lazy_loop.py:1304def compare_and_claim(self, node_id)-- CAS claim: reload, verify still open, then mark running. -
ExplorationGraph.finding_signature(method)modules/lazy_loop.py:1332def finding_signature(self, text)-- Normalize finding text into dedupe signature. -
ExplorationGraph.has_finding(method)modules/lazy_loop.py:1338def has_finding(self, text)-- Return existing finding with same signature or None. -
ExplorationGraph.node_detail(method)modules/lazy_loop.py:1348def node_detail(self, node_id)-- Full node view: text, state, meta, edges, anchors, trace tail. -
ExplorationGraph.list_facts(method)modules/lazy_loop.py:1364def list_facts(self, query, limit, hot_full)-- Keyword-filtered facts like list_facts. -
ExplorationGraph.record_fact(method)modules/lazy_loop.py:1380def record_fact(self, text, evidence, confidence, intent_id, asset_ids)-- Worker fact write like recordFact: deduped, anchored, done. -
Frontier.__init__(method)modules/lazy_loop.py:1405def __init__(self, graph)-- Bind frontier to a task graph. -
Frontier.pending(method)modules/lazy_loop.py:1410def pending(self)-- Return pending intents ordered by priority then id. -
Frontier.claim_next(method)modules/lazy_loop.py:1415def claim_next(self)-- Atomically claim highest-priority pending intent (cross-process CAS). -
ActivityLog.__init__(method)modules/lazy_loop.py:1433def __init__(self, task_id)-- Bind log to task. -
ActivityLog.emit(method)modules/lazy_loop.py:1438def emit(self, worker, kind, text, intent_id, tool_use_id)-- Append one activity record and return it. -
ActivityLog.read(method)modules/lazy_loop.py:1463def read(self, limit)-- Return most recent records up to limit. -
ActivityLog.for_intent(method)modules/lazy_loop.py:1477def for_intent(self, intent_id)-- Return records for one intent. -
ActivityLog.trace(method)modules/lazy_loop.py:1481def trace(self, intent_id, query, step_id, limit)-- Work-scoped trace view like get_worker_trace. -
ActivityLog.search_all(method)modules/lazy_loop.py:1519def search_all(self, query, limit)-- Global keyword search across every work in this task. -
ActivityLog.search(method)modules/lazy_loop.py:1549def search(self, query, exclude_intent)-- Search worker traces by keyword, excluding one intent like the planner. -
TrafficLog.__init__(method)modules/lazy_loop.py:1566def __init__(self, task_id)-- Bind log to task or global stream. -
TrafficLog.record(method)modules/lazy_loop.py:1571def record(self, kind, command, output, meta)-- Append one traffic record and return it. -
TrafficLog.read(method)modules/lazy_loop.py:1593def read(self, limit)-- Return most recent traffic records. -
TrafficLog.search(method)modules/lazy_loop.py:1607def search(self, query, limit)-- Full-text search over command/output like traffic_search. -
TrafficLog.search_host(method)modules/lazy_loop.py:1618def search_host(self, host, port, limit)-- Port-aware host search: same-host/different-port rows never mix. -
TrafficLog.get(method)modules/lazy_loop.py:1646def get(self, digest)-- Fetch one exchange by digest like traffic_get. -
TrafficLog.recorder_body(method)modules/lazy_loop.py:1653def recorder_body(self, digest)-- Return stored request/response bodies for one proxy exchange. -
TrafficLog.recorder_blob(method)modules/lazy_loop.py:1682def recorder_blob(self, digest, part, offset, length)-- Read a proxy body in ranges like the blob API. -
TrafficLog.templates(method)modules/lazy_loop.py:1713def templates(self, limit)-- Group exchanges by URL-template with counts like the proxy index. -
TrafficLog.by_template(method)modules/lazy_loop.py:1722def by_template(self, template, limit)-- Return exchanges matching one template substring. -
TrafficLog.bind(method)modules/lazy_loop.py:1727def bind(self, finding_id, digest, graph, role, note)-- Attach traffic digest to a finding like bind_finding_traffic. -
TrafficLog.evidence(method)modules/lazy_loop.py:1775def evidence(self, finding_id, graph)-- Return a finding's traffic evidences in display order. -
TrafficLog.reorder_evidence(method)modules/lazy_loop.py:1784def reorder_evidence(self, finding_id, digests, graph)-- Sort a finding's evidences; unlisted ones keep their tail order. -
TrafficLog.export(method)modules/lazy_loop.py:1798def export(self, path, limit)-- Dump recent exchanges to a JSON file like traffic archive export. -
TrafficLog.archive(method)modules/lazy_loop.py:1805def archive(self, label)-- Snapshot traffic stream into sessions/lazy/traffic_archive_*. -
TrafficLog.clear(method)modules/lazy_loop.py:1811def clear(self)-- Drop the traffic stream, returning the discarded record count. -
Guard.__init__(method)modules/lazy_loop.py:1824def __init__(self, task_id)-- Load rules and audit trail. -
Guard.add_rule(method)modules/lazy_loop.py:1850def add_rule(self, pattern, action, reason, priority)-- Register an intercept rule; higher priority evaluates first. -
Guard.remove_rule(method)modules/lazy_loop.py:1861def remove_rule(self, pattern)-- Delete rules matching pattern exactly. -
Guard.set_judge(method)modules/lazy_loop.py:1870def set_judge(self, enabled, fail_action)-- Enable/disable the LLM judge fallback for unmatched commands. -
Guard.check(method)modules/lazy_loop.py:1892def check(self, tool, command, tool_use_id, source, intent_id)-- Evaluate tool call and audit it, returning allow/ask/deny. -
Guard.audit(method)modules/lazy_loop.py:1944def audit(self, limit, action, source, query)-- Return recent audit entries with optional status/source/text filters. -
Guard.lookup(method)modules/lazy_loop.py:1972def lookup(self, tool_use_id)-- Jump to the exact execution behind an approval row. -
Guard.stats(method)modules/lazy_loop.py:2014def stats(self)-- Attribution counters over the audit trail. -
AssetGate.__init__(method)modules/lazy_loop.py:2171def __init__(self, task_id)-- Bind global list plus optional per-task lists. -
AssetGate.add(method)modules/lazy_loop.py:2198def add(self, kind, pattern, note, action)-- Register a block (global or task) or allow (task only) rule. -
AssetGate.remove(method)modules/lazy_loop.py:2219def remove(self, rule_id, action)-- Delete a rule by id; returns True when something was removed. -
AssetGate.list(method)modules/lazy_loop.py:2237def list(self)-- Return global block plus per-task block/allow rules. -
AssetGate.evaluate(method)modules/lazy_loop.py:2241def evaluate(self, target)-- Gate one target: allowed flag plus human-readable reason. -
Budget.__init__(method)modules/lazy_loop.py:2259def __init__(self, store)-- Bind budget counters to task store. -
Budget.limits(method)modules/lazy_loop.py:2263def limits(self, task_id)-- Return effective limits for task. -
Budget.set_limits(method)modules/lazy_loop.py:2274def set_limits(self, task_id)-- Persist budget limits for task. -
Budget.usage(method)modules/lazy_loop.py:2287def usage(self, task_id)-- Return consumed toolcalls/findings/rounds. -
Budget.record_toolcall(method)modules/lazy_loop.py:2297def record_toolcall(self, task_id, intent_id)-- Count one executed tool call. -
Budget.record_round(method)modules/lazy_loop.py:2309def record_round(self, task_id)-- Count one orchestrator round. -
Budget.check(method)modules/lazy_loop.py:2327def check(self, task_id)-- Return ok/exceeded decision with reason. -
RuntimeTracker.__init__(method)modules/lazy_loop.py:2343def __init__(self, store)-- Bind runtime to task store. -
RuntimeTracker.heartbeat(method)modules/lazy_loop.py:2347def heartbeat(self, task_id)-- Return live runtime snapshot. -
RuntimeTracker.beat(method)modules/lazy_loop.py:2365def beat(self, task_id, workers)-- Stamp heartbeat. -
RuntimeTracker.abort(method)modules/lazy_loop.py:2380def abort(self, task_id, cause, detail)-- Stamp abort cause like typed AbortCause. -
RuntimeTracker.note_trigger(method)modules/lazy_loop.py:2396def note_trigger(self, task_id, trigger_id)-- Advance scheduler watermark so restarts never re-fire. -
InterceptQueue.__init__(method)modules/lazy_loop.py:2437def __init__(self, task_id)-- Bind queue to task. -
InterceptQueue.request(method)modules/lazy_loop.py:2451def request(self, tool, command, reason, tool_use_id)-- Enqueue one ask decision and return pending entry. -
InterceptQueue.pending(method)modules/lazy_loop.py:2469def pending(self)-- Return pending entries ordered by id. -
InterceptQueue.history(method)modules/lazy_loop.py:2473def history(self, page, per_page, states, query)-- Paginated intercept history; pending stays fully visible. -
InterceptQueue.decide(method)modules/lazy_loop.py:2525def decide(self, item_id, verdict)-- Approve or deny one pending entry and wake its waiter. -
InterceptQueue.wait(method)modules/lazy_loop.py:2539def wait(self, item_id, timeout_sec)-- Block until decided or timeout; timeout denies safely. -
TodoStore.__init__(method)modules/lazy_loop.py:2571def __init__(self, task_id)-- Load persisted todos. -
TodoStore.add(method)modules/lazy_loop.py:2582def add(self, text)-- Append a serial step and return it. -
TodoStore.complete(method)modules/lazy_loop.py:2589def complete(self, item_id)-- Mark step done. -
TodoStore.next_pending(method)modules/lazy_loop.py:2598def next_pending(self)-- Return first pending step. -
TodoStore.as_list(method)modules/lazy_loop.py:2605def as_list(self)-- Return all steps. -
TaskStore.__init__(method)modules/lazy_loop.py:2613def __init__(self)-- Load task registry. -
TaskStore.create(method)modules/lazy_loop.py:2622def create(self, goal, description)-- Create task record and return it. -
TaskStore.get(method)modules/lazy_loop.py:2633def get(self, task_id)-- Return raw task record or None. -
TaskStore.list(method)modules/lazy_loop.py:2637def list(self)-- Return all task records. -
TaskStore.set_status(method)modules/lazy_loop.py:2641def set_status(self, task_id, status)-- Update task status. -
TaskStore.pause(method)modules/lazy_loop.py:2653def pause(self, task_id)-- Pause planner and workers like the planner Engine.Pause. -
TaskStore.resume(method)modules/lazy_loop.py:2657def resume(self, task_id)-- Resume a paused task back to running like the planner resumeTask. -
TaskStore.delete(method)modules/lazy_loop.py:2666def delete(self, task_id)-- Remove task record; per-task graph files are cleaned by caller. -
TaskStore.active_count(method)modules/lazy_loop.py:2675def active_count(self, exclude)-- Return how many tasks are currently running. -
TaskStore.queue(method)modules/lazy_loop.py:2679def queue(self)-- Return queued tasks in FIFO arrival order. -
TaskStore.enqueue(method)modules/lazy_loop.py:2684def enqueue(self, task_id)-- Mark a task queued with its arrival stamp. -
TaskStore.dequeue_next(method)modules/lazy_loop.py:2695def dequeue_next(self)-- Pop the oldest queued task and mark it running. -
TaskStore.set_llm_chain(method)modules/lazy_loop.py:2710def set_llm_chain(self, task_id, members, active)-- Bind a per-task LLM chain with a failover cursor. -
TaskStore.llm_state(method)modules/lazy_loop.py:2738def llm_state(self, task_id)-- Return the task LLM chain state (empty when unbound). -
TaskStore.advance_llm(method)modules/lazy_loop.py:2744def advance_llm(self, task_id)-- Advance the per-task active member after quota exhaustion. -
TaskStore.set_skills(method)modules/lazy_loop.py:2768def set_skills(self, task_id, names, auto)-- Pin skills for prompt injection and optionally toggle auto-match. -
TaskStore.set_deadline(method)modules/lazy_loop.py:2793def set_deadline(self, task_id, timeout_sec)-- Stamp absolute deadline like the planner deadline coordinator. -
TaskStore.expired(method)modules/lazy_loop.py:2803def expired(self, task_id)-- Report whether task deadline passed. -
TaskStore.add_constraint(method)modules/lazy_loop.py:2809def add_constraint(self, task_id, ctype, text, scope)-- Register allow/deny operation constraint like the planner set_constraints. -
TaskStore.add_scope(method)modules/lazy_loop.py:2828def add_scope(self, task_id, kind, value, reason)-- Register authorized asset scope like the planner add_task_scope. -
TaskStore.steer(method)modules/lazy_loop.py:2839def steer(self, task_id, intent_id, message)-- Attach mid-run correction to a running intent like steer_work. -
TaskStore.kill(method)modules/lazy_loop.py:2848def kill(self, task_id, intent_id)-- Flag a running intent for termination like kill_work. -
TaskStore.steer_for(method)modules/lazy_loop.py:2859def steer_for(self, task_id, intent_id)-- Return pending steer message for intent if any. -
TaskStore.clear_steer(method)modules/lazy_loop.py:2864def clear_steer(self, task_id, intent_id)-- Drop the pending steer message for an intent after delivery. -
TaskStore.killed(method)modules/lazy_loop.py:2877def killed(self, task_id, intent_id)-- Report whether intent was flagged for termination. -
extract_scope_items(function)modules/lazy_loop.py:2883def extract_scope_items(goal_text, description)-- Lift explicit asset scope from goal like the planner goalsScopeTail. -
extract_constraint_items(function)modules/lazy_loop.py:2915def extract_constraint_items(goal_text, description)-- Lift explicit allow/deny operation bounds like the planner goals decomposer. -
load_intel_scores(function)modules/lazy_loop.py:2943def load_intel_scores()-- Return host exposure scores from sessions/intel_summary.json. -
resolve_target(function)modules/lazy_loop.py:2958def resolve_target(task_id, store, graph)-- Resolve concrete target for worker commands from scope, assets, goal. -
decompose_goals(function)modules/lazy_loop.py:2981def decompose_goals(goal_text, description)-- Split goal text into verifiable objectives like the planner DecomposeGoals. -
enrich_asset(function)modules/lazy_loop.py:3018def enrich_asset(value)-- Synchronously enrich one asset with DNS and HTTP like the planner enrich. -
Planner.__init__(method)modules/lazy_loop.py:3044def __init__(self, task_id, assets, graph, activity, store)-- Bind planner to task collaborators. -
Planner.plan(method)modules/lazy_loop.py:3072def plan(self, triggers)-- Emit 0..N intents from current situation; most wakeups emit zero. -
Planner.refine(method)modules/lazy_loop.py:3151def refine(self)-- Re-plan pending intents against fresh outcomes, like plan refinement. -
Planner.finalize(method)modules/lazy_loop.py:3376def finalize(self, reason)-- Final planner round: park open intents and record the wrap-up. -
sink(function)modules/lazy_loop.py:3396def sink(text) -
Worker.__init__(method)modules/lazy_loop.py:3502def __init__(self, name, task_id, assets, graph, activity, traffic, guard, store, shell, ephemeral)-- Bind worker to task collaborators. -
Worker.rebind(method)modules/lazy_loop.py:3550def rebind(self, assets, graph, activity, traffic, guard, store, shell)-- Point a pooled worker at the collaborators of the current round. -
Worker.close(method)modules/lazy_loop.py:3574def close(self)-- Release the worker's shell session and shutdown registration. -
Worker.execute(method)modules/lazy_loop.py:3638def execute(self, intent, executor, timeout_sec)-- Run one intent to completion and write facts back. -
run_command(function)modules/lazy_loop.py:4420def run_command(command, background)-- Run one shell probe/verb through scope, guard and audit. -
record_fact(function)modules/lazy_loop.py:4446def record_fact(text)-- Persist one observed or inferred fact on the exploration graph. -
report_finding(function)modules/lazy_loop.py:4455def report_finding(name, evidence, severity)-- Record a verified vulnerability with its evidence. -
traffic_search(function)modules/lazy_loop.py:4466def traffic_search(query)-- Search captured command/traffic records by keyword. -
graph_state(function)modules/lazy_loop.py:4479def graph_state()-- Compact exploration overview: intents, facts, findings. -
shell_open(function)modules/lazy_loop.py:4494def shell_open()-- Open a persistent bash session for multi-step shell work. -
shell_send(function)modules/lazy_loop.py:4498def shell_send(command)-- Run one guarded command in the persistent shell session. -
job_status(function)modules/lazy_loop.py:4502def job_status(job_id)-- Report whether one background job is still running. -
job_output(function)modules/lazy_loop.py:4510def job_output(job_id)-- Return the tail of one background job's output. -
sink(function)modules/lazy_loop.py:4968def sink(text) -
Retester.__init__(method)modules/lazy_loop.py:5335def __init__(self, graph, activity, traffic)-- Bind retester to task collaborators. -
Retester.retest(method)modules/lazy_loop.py:5341def retest(self, finding_id, executor, note)-- Re-execute finding evidence to reproduced/fixed/inconclusive. -
Retester.retest_context(method)modules/lazy_loop.py:5417def retest_context(self, finding_id)-- Return finding + PoC + assets + constraints like get_finding_retest_context. -
ColdCompactor.__init__(method)modules/lazy_loop.py:5439def __init__(self, graph, activity)-- Bind compactor to task graph. -
ColdCompactor.noa_archives(method)modules/lazy_loop.py:5549def noa_archives(self, limit)-- List NOA raw archives for this task (newest first). -
ColdCompactor.hot_set(method)modules/lazy_loop.py:5608def hot_set(self)-- Compute hot nodes by reverse reachability from live intents. -
ColdCompactor.structural_cold(method)modules/lazy_loop.py:5630def structural_cold(self, hot)-- Return foldable non-hot nodes before debounce. -
ColdCompactor.covered_members(method)modules/lazy_loop.py:5715def covered_members(self)-- Return node ids already folded under active digests. -
ColdCompactor.on_planner_round(method)modules/lazy_loop.py:5727def on_planner_round(self)-- Advance round, maintain stamps, trigger background compaction. -
ColdCompactor.compact(method)modules/lazy_loop.py:5768def compact(self, threshold, mode, debounce_sec)-- Fold cold facts into digests like coldgraph minor/major. -
ColdCompactor.expand(method)modules/lazy_loop.py:5895def expand(self, digest_id, role)-- Restore digest members like expandDigest. -
ColdCompactor.cold_index(method)modules/lazy_loop.py:5919def cold_index(self)-- Group active digests by anchored asset. -
ColdCompactor.unfolded(method)modules/lazy_loop.py:5937def unfolded(self, limit)-- Return cold facts unfolded up to cap with a truncated flag. -
ColdCompactor.digest_overview(method)modules/lazy_loop.py:5953def digest_overview(self)-- Digest index: every digest with expandable members plus cold index. -
constraint_block(function)modules/lazy_loop.py:6000def constraint_block(constraints, scope)-- Render allow/deny bounds as highest-priority prompt block. -
settlement_prompt(function)modules/lazy_loop.py:6034def settlement_prompt(agent, reason)-- Build the wrap-up instruction used when a run budget ends. -
build_prompt_context(function)modules/lazy_loop.py:6057def build_prompt_context(task_id, graph, assets, store, budget, top)-- Assemble a bounded prompt context for planner/worker LLM calls. -
finding_severity(function)modules/lazy_loop.py:6146def finding_severity(text, evidence)-- Rank finding severity like the report renderer (critical first). -
FindingService.__init__(method)modules/lazy_loop.py:6163def __init__(self, task_id, graph, activity, store)-- Bind service to task collaborators. -
FindingService.report(method)modules/lazy_loop.py:6170def report(self, name, summary, poc, severity, vulnclass, intent_id, asset_ids, traffic_refs)-- Register a finding with severity/evidence/dedupe like report_finding. -
FindingService.apply_drafts(method)modules/lazy_loop.py:6355def apply_drafts(self)-- Commit finished background reporter drafts onto their findings. -
FindingService.set_status(method)modules/lazy_loop.py:6392def set_status(self, finding_id, status)-- Transition finding status like the workflow disposition. -
FindingService.update_report(method)modules/lazy_loop.py:6409def update_report(self, finding_id, report)-- Write the narrative report and bump the evidence version. -
FindingService.ranked(method)modules/lazy_loop.py:6431def ranked(self)-- Findings ordered critical-first like the Markdown renderer. -
EvidenceStore.__init__(method)modules/lazy_loop.py:6441def __init__(self, task_id)-- Bind vault to task. -
EvidenceStore.add(method)modules/lazy_loop.py:6450def add(self, finding_id, kind, body)-- Attach evidence to a finding and return the record. -
EvidenceStore.verify(method)modules/lazy_loop.py:6467def verify(self)-- Return ids whose body fails the sha256 integrity check. -
EvidenceStore.gc(method)modules/lazy_loop.py:6476def gc(self, valid_findings)-- Drop evidence for findings no longer present; returns removed. -
EvidenceStore.for_finding(method)modules/lazy_loop.py:6492def for_finding(self, finding_id)-- Return evidence attached to one finding. -
EvidenceStore.read(method)modules/lazy_loop.py:6496def read(self, evidence_id, offset, length)-- Read one evidence body in bounded byte ranges. -
EvidenceStore.export(method)modules/lazy_loop.py:6533def export(self, path)-- Dump vault to a file for the report pipeline. -
Notifier.__init__(method)modules/lazy_loop.py:6544def __init__(self, store)-- Bind optional channel config from task store. -
Notifier.channels(method)modules/lazy_loop.py:6548def channels(self)-- Return configured channels (empty = log only). -
Notifier.add_channel(method)modules/lazy_loop.py:6556def add_channel(self, kind, target, min_severity, extra)-- Register a channel: log|webhook|file|slack|email with severity floor. -
Notifier.remove_channel(method)modules/lazy_loop.py:6603def remove_channel(self, index)-- Remove one channel by its 1-based list position. -
Notifier.emit(method)modules/lazy_loop.py:6654def emit(self, task_id, event, data)-- Fan out finding/status/task events; returns deliveries. -
LlmPool.__init__(method)modules/lazy_loop.py:6727def __init__(self)-- Load member list and usage ledger paths. -
LlmPool.members(method)modules/lazy_loop.py:6762def members(self)-- Return configured chain in order, seeding defaults on first use. -
LlmPool.add_member(method)modules/lazy_loop.py:6767def add_member(self, name, model, priority)-- Append a chain member backed by llm_factory at call time. -
LlmPool.remove_member(method)modules/lazy_loop.py:6776def remove_member(self, name)-- Drop a chain member. -
LlmPool.set_priority(method)modules/lazy_loop.py:6786def set_priority(self, name, priority)-- Change one member's failover rank, keeping the rest untouched. -
LlmPool.usage(method)modules/lazy_loop.py:6799def usage(self)-- Return per-member call ledger like llm_usage. -
LlmPool.complete(method)modules/lazy_loop.py:6904def complete(self, prompt, max_tokens, empty_retries, members, task_id, on_delta)-- Fail over across members; empty string when no backend answers. -
LlmPool.health(method)modules/lazy_loop.py:7069def health(self)-- Return per-member health state for lazy_llm health. -
LlmPool.context_budget(method)modules/lazy_loop.py:7080def context_budget(self)-- Return the prompt context character budget (default 2000). -
LlmPool.record_raw(method)modules/lazy_loop.py:7085def record_raw(self)-- Return whether raw prompt/response recording is enabled. -
LlmPool.set_record_raw(method)modules/lazy_loop.py:7090def set_record_raw(self, enabled)-- Toggle raw prompt/response recording in the pool ledger. -
LlmPool.raw_entries(method)modules/lazy_loop.py:7097def raw_entries(self, limit)-- Return the most recent raw LLM exchanges. -
LlmPool.set_context_budget(method)modules/lazy_loop.py:7128def set_context_budget(self, chars)-- Persist the prompt context character budget. -
ToolCatalog.__init__(method)modules/lazy_loop.py:7146def __init__(self)-- Load binding table. -
ToolCatalog.bindings(method)modules/lazy_loop.py:7163def bindings(self, agent)-- Return bindings for one agent or the whole table. -
ToolCatalog.bind(method)modules/lazy_loop.py:7168def bind(self, agent, tool)-- Opt a tool into an agent lane. -
ToolCatalog.unbind(method)modules/lazy_loop.py:7177def unbind(self, agent, tool)-- Remove a tool from an agent lane. -
SideQuestions.ask(method)modules/lazy_loop.py:7197def ask(self, task_id, question, pool, session)-- Answer from graph overview + recent trace within a char budget. -
SideQuestions.history(method)modules/lazy_loop.py:7243def history(self, task_id, session, limit)-- Return persisted side exchanges, optionally one session only. -
SideQuestions.sessions(method)modules/lazy_loop.py:7251def sessions(self, task_id)-- Return side-question session names for a task. -
CompanyScope.__init__(method)modules/lazy_loop.py:7264def __init__(self)-- Load company table. -
CompanyScope.add(method)modules/lazy_loop.py:7272def add(self, name, scope)-- Register a company with an optional scope pattern. -
CompanyScope.list(method)modules/lazy_loop.py:7281def list(self)-- Return companies with asset counts. -
CompanyScope.match(method)modules/lazy_loop.py:7285def match(self, value)-- Return companies whose scope substring hits the value. -
TaskArchive.save(method)modules/lazy_loop.py:7294def save(self, task_id)-- Snapshot task record + graph + activity tail into one archive. -
TaskArchive.list(method)modules/lazy_loop.py:7315def list(self)-- Return archive snapshots with task + node counts. -
TaskArchive.restore(method)modules/lazy_loop.py:7337def restore(self, path)-- Restore one archive as a NEW task; returns the new task id. -
TaskArchive.stats(method)modules/lazy_loop.py:7404def stats(self)-- Aggregate counts across archives like archive aggregate stats. -
TaskTemplate.__init__(method)modules/lazy_loop.py:7413def __init__(self)-- Bind template table. -
TaskTemplate.list(method)modules/lazy_loop.py:7421def list(self)-- Return all templates. -
TaskTemplate.add(method)modules/lazy_loop.py:7425def add(self, name, goal)-- Register a template; names are unique (overwrite on clash). -
TaskTemplate.remove(method)modules/lazy_loop.py:7435def remove(self, name)-- Delete a template by name. -
TaskTemplate.get(method)modules/lazy_loop.py:7445def get(self, name)-- Return one template by name or None. -
TaskCategory.__init__(method)modules/lazy_loop.py:7456def __init__(self, store)-- Bind optional task store. -
TaskCategory.set(method)modules/lazy_loop.py:7461def set(self, task_id, category)-- Label a task; returns the mapping. -
TaskCategory.get(method)modules/lazy_loop.py:7468def get(self, task_id)-- Return the category for a task or empty string. -
TaskCategory.list(method)modules/lazy_loop.py:7472def list(self, category)-- Return task->category rows, optionally filtered. -
TaskChat.say(method)modules/lazy_loop.py:7487def say(self, task_id, text, pool, session)-- Append a human turn and answer from task context; returns both. -
TaskChat.log(method)modules/lazy_loop.py:7530def log(self, task_id, limit, session)-- Return recent conversation turns, optionally one session only. -
TaskChat.sessions(method)modules/lazy_loop.py:7546def sessions(self, task_id)-- Return session names active in a task. -
TaskChat.clear(method)modules/lazy_loop.py:7555def clear(self, task_id, session)-- Drop one session's turns, or the whole log when session is empty. -
LazyLoopEngine.__init__(method)modules/lazy_loop.py:7610def __init__(self, shell)-- Load shared stores. -
LazyLoopEngine.apply_profile(method)modules/lazy_loop.py:7645def apply_profile(self, name)-- Apply one orchestrator profile to this engine. -
LazyLoopEngine.bind_shell(method)modules/lazy_loop.py:7680def bind_shell(self, shell)-- Attach the live shell so workers route auto/addon verbs via it. -
LazyLoopEngine.ensure_target(method)modules/lazy_loop.py:7764def ensure_target(self, task_id, target, reason)-- Register scope + asset for target like lazy_scope/lazy_asset. -
LazyLoopEngine.orchestrate(method)modules/lazy_loop.py:7791def orchestrate(self, goal, task_id, target, max_rounds, workers, timeout_sec, executor)-- Single entry for lazy_loop + auto_loop: create, scope, run, report. -
LazyLoopEngine.create_task(method)modules/lazy_loop.py:7819def create_task(self, goal, description)-- Create task, decompose goals, register scope, return summary. -
LazyLoopEngine.spawn_task(method)modules/lazy_loop.py:7848def spawn_task(self, goal, source_task_ids, description)-- Create a task read-only inheriting assets and findings. -
LazyLoopEngine.list_tasks(method)modules/lazy_loop.py:7898def list_tasks(self)-- Fleet view: every task with live intent/fact/finding counters. -
LazyLoopEngine.pause_task(method)modules/lazy_loop.py:7926def pause_task(self, task_id, reason)-- Pause another task from here (cross-task control). -
LazyLoopEngine.resume_task(method)modules/lazy_loop.py:7937def resume_task(self, task_id)-- Resume a paused task from here (cross-task control). -
LazyLoopEngine.task_graph(method)modules/lazy_loop.py:7947def task_graph(self, task_id)-- Graph overview of another task (get_task_graph parity). -
LazyLoopEngine.task_findings(method)modules/lazy_loop.py:7953def task_findings(self, task_id)-- Findings of another task with severity, status and report size. -
LazyLoopEngine.task_traces(method)modules/lazy_loop.py:7972def task_traces(self, task_id, query, limit)-- Worker traces of another task, keyword-filtered when asked. -
LazyLoopEngine.task_node_detail(method)modules/lazy_loop.py:7981def task_node_detail(self, task_id, node_id)-- Full node view of another task (get_task_node_detail parity). -
LazyLoopEngine.update_finding_report(method)modules/lazy_loop.py:7987def update_finding_report(self, task_id, finding_id, report)-- Write the narrative report of another task's finding. -
LazyLoopEngine.broadcast_events(method)modules/lazy_loop.py:7999def broadcast_events(self, task_id, cursor, batch)-- Return activity records after a line cursor (SSE resume parity). -
LazyLoopEngine.add_hint(method)modules/lazy_loop.py:8032def add_hint(self, task_id, text)-- Inject human steering hint read by the next planner round. -
LazyLoopEngine.add_intent(method)modules/lazy_loop.py:8050def add_intent(self, task_id, summary, asset_ids, parent_ids, priority)-- Directly inject high-priority intent like the planner main-agent add_intent. -
LazyLoopEngine.set_goals(method)modules/lazy_loop.py:8075def set_goals(self, task_id, specs)-- Replace/append decomposed objectives like set_goals; wakes the task. -
LazyLoopEngine.edit_goal(method)modules/lazy_loop.py:8092def edit_goal(self, task_id, goal_id, text)-- Edit a goal node like the goals manager. -
LazyLoopEngine.delete_goal(method)modules/lazy_loop.py:8104def delete_goal(self, task_id, goal_id)-- Delete a goal node; done tasks with no goals left stay done. -
LazyLoopEngine.preview_delete_intent(method)modules/lazy_loop.py:8115def preview_delete_intent(self, task_id, intent_id)-- Estimate hard-delete cascade without mutating anything. -
LazyLoopEngine.delete_intent(method)modules/lazy_loop.py:8138def delete_intent(self, task_id, intent_id, mode, reason)-- Delete an intent in soft (fake) or hard (true) mode. -
LazyLoopEngine.pause_intent(method)modules/lazy_loop.py:8283def pause_intent(self, task_id, intent_id)-- Pause a runnable intent like the lazy worker interrupt. -
LazyLoopEngine.resume_intent(method)modules/lazy_loop.py:8308def resume_intent(self, task_id, intent_id)-- Resume a paused intent back to the claimable queue. -
LazyLoopEngine.send_worker_message(method)modules/lazy_loop.py:8331def send_worker_message(self, task_id, intent_id, message, request_id)-- Continue a paused worker intent with a human message. -
LazyLoopEngine.goal_met(method)modules/lazy_loop.py:8379def goal_met(self, task_id, reason)-- Declare the whole task complete like goal_met (weighted, audited). -
LazyLoopEngine.record_fact(method)modules/lazy_loop.py:8389def record_fact(self, task_id, text, evidence, intent_id)-- Operator-visible fact write like recordFact. -
LazyLoopEngine.record_verdict(method)modules/lazy_loop.py:8396def record_verdict(self, task_id, finding_id, verdict, note)-- Record an operator retest verdict on one finding. -
LazyLoopEngine.run_round(method)modules/lazy_loop.py:8485def run_round(self, task_id, workers, executor, pool)-- Run one orchestrated round invoking every subsystem in order. -
stage_enabled(function)modules/lazy_loop.py:8536def stage_enabled(_name) -
LazyLoopEngine.run(method)modules/lazy_loop.py:8980def run(self, task_id, max_rounds, workers, executor, timeout_sec)-- Drive rounds until goals met, frontier drains, or budget exhausts. -
LazyLoopEngine.prove_goal(method)modules/lazy_loop.py:9225def prove_goal(self, task_id, goal_id, evidence_id, reason)-- Mark goal met with finding/fact evidence like the planner prove_goal. -
LazyLoopEngine.delete_task(method)modules/lazy_loop.py:9271def delete_task(self, task_id)-- Delete a task record plus every store file scoped to it. -
LazyLoopEngine.proxy_start(method)modules/lazy_loop.py:9305def proxy_start(self, host, port, task_id, trust, upstream)-- Start the shared recorder proxy and apply its trust environment. -
LazyLoopEngine.proxy_stop(method)modules/lazy_loop.py:9341def proxy_stop(self)-- Stop the recorder proxy and clear its trust environment. -
LazyLoopEngine.proxy_status(method)modules/lazy_loop.py:9349def proxy_status(self)-- Return recorder proxy state (running, address, CA, exchanges). -
LazyLoopEngine.proxy_env(method)modules/lazy_loop.py:9355def proxy_env(self)-- Return the environment overrides that route tools via proxy. -
LazyLoopEngine.set_concurrency(method)modules/lazy_loop.py:9364def set_concurrency(self, limit)-- Cap concurrently running tasks; 0 disables admission control. -
LazyLoopEngine.admission_check(method)modules/lazy_loop.py:9385def admission_check(self, task_id)-- Return whether a task may run now, queueing it when capped. -
LazyLoopEngine.drain_queue(method)modules/lazy_loop.py:9404def drain_queue(self, max_tasks)-- Run queued tasks FIFO while the concurrency cap allows. -
LazyLoopEngine.ingest_proxy_traffic(method)modules/lazy_loop.py:9432def ingest_proxy_traffic(self, task_id, limit)-- Mirror new recorder exchanges into the task traffic log. -
LazyLoopEngine.search_proxy_body(method)modules/lazy_loop.py:9486def search_proxy_body(self, task_id, query, limit)-- Full-text search proxy bodies scoped to one task's exchanges. -
LazyLoopEngine.export_task_traffic(method)modules/lazy_loop.py:9578def export_task_traffic(self, task_id)-- Export the task's proxy exchanges next to its archive. -
LazyLoopEngine.export_evidence(method)modules/lazy_loop.py:9607def export_evidence(self, task_id, dest)-- Freeze every task artefact into a hash-manifested zip package. -
LazyLoopEngine.export_findings_report(method)modules/lazy_loop.py:9666def export_findings_report(self, task_id, path, fmt)-- Render the severity-ranked report to Markdown, JSON or CSV. -
LazyLoopEngine.status(method)modules/lazy_loop.py:9781def status(self, task_id)-- Return full inspectable state for one task. -
LazyLoopEngine.graph_overview(method)modules/lazy_loop.py:9801def graph_overview(self, task_id)-- Return planner-facing overview plus coverage and scope. -
LazyLoopEngine.broadcast(method)modules/lazy_loop.py:9863def broadcast(self, task_id, kinds, query, order, page, per_page, states)-- Paginated exploration timeline like the lazy broadcast board. -
LazyLoopEngine.loop_graph(method)modules/lazy_loop.py:9987def loop_graph(self, task_id)-- Return task graphs as ForceGraph-ready nodes/links. -
LazyLoopEngine.graph_context(method)modules/lazy_loop.py:10056def graph_context(self, task_id, top)-- Rank exploration topology to steer planner actions.
Depends on: modules/lazy_loop.py
Imported by: cli/commands/lazyloop.py, lazyc2.py, skills/lazyown_mcp.py, tests/test_security_codeql_batch.py
-
search_mentions_page(function)modules/lazy_mentions.py:193def search_mentions_page(kind, query, cursor)-- Search one scroll page of mention candidates. -
parse_mentions(function)modules/lazy_mentions.py:237def parse_mentions(message)-- Parse @[kind#id] tokens trusting type plus numeric id only. -
compose_message(function)modules/lazy_mentions.py:268def compose_message(message)-- Append server-read snapshots for referenced records as data.
Depends on: modules/lazy_cli_bridge.py, modules/lazy_intel.py
Imported by: modules/auto_registry.py, modules/lazy_loop.py, modules/mediation/feedback_mediator.py, tests/test_loop_supervision.py, tests/test_mediation.py
-
adjust_from_usage(function)modules/lazy_orchestrator_feedback.py:61def adjust_from_usage(limit)-- Fold routing outcomes into per-(phase, stack, verb) success priors. -
verb_prior(function)modules/lazy_orchestrator_feedback.py:162def verb_prior(phase, verb, stack)-- Return the success prior for one (phase, stack, verb) triple. -
rank_verbs(function)modules/lazy_orchestrator_feedback.py:189def rank_verbs(phase, verbs, stack)-- Order verbs by learned success rate, stable for cold verbs. -
order_steps(function)modules/lazy_orchestrator_feedback.py:213def order_steps(steps, stack)-- Reorder resolved step lines by stack-aware verb priors. -
export_dataset(function)modules/lazy_orchestrator_feedback.py:238def export_dataset(out, limit)-- Export instruction-tuning rows joined from decisions + outcomes.
Next: API_p14.md
Generated offline by readmenator from commit 804ebc910c1c. Edits here are overwritten by readmenator . --rebuild.
Start
Wiki
- community_0_modules_autonomous_daemon
- community_10_core
- community_11_modules_opsec_scorer
- community_12_modules_defense_eval
- community_13_modules_kerberos_core
- community_14_modules_saas_attacks
- community_15_modules_polymorphic_engine
- community_16_modules_guardrails
- community_17_contrib_legacy
- community_18_tests
- community_19_scripts_journal
- community_1_cli_commands
- community_20_modules_backdoor
- community_21_poc_tui
- community_22_scripts_check_contract_manifest
- community_23_scripts_migrate_lazyown
- community_24_tools
- community_25_orphans
- community_2_cli
- community_3_modules_lazy_loop
- community_4_modules_world_model
- community_5_lazygui_panels
- community_6_lazyc2_security
- community_7_modules_lazyown_facts
- community_8_static_js
- community_9_skills_claude_md_orchestrator
- concepts
- queries
- REPORT
Agent Docs
- API
- API_p10
- API_p11
- API_p12
- API_p13
- API_p14
- API_p15
- API_p16
- API_p17
- API_p18
- API_p19
- API_p2
- API_p20
- API_p21
- API_p22
- API_p23
- API_p24
- API_p3
- API_p4
- API_p5
- API_p6
- API_p7
- API_p8
- API_p9
- ARCHITECTURE
- ARCHITECTURE_p2
- ARCHITECTURE_p3
- ARCHITECTURE_p4
- ARCHITECTURE_p5
- ARCHITECTURE_p6
- ARCHITECTURE_p7
- ARCHITECTURE_p8
- ARCHITECTURE_p9
- CONCEPTS
- GOTCHAS
- INDEX
- INDEX_p2
- INDEX_p3
- KB_backdoor
- KB_blueprints
- KB_cgi-bin
- KB_claude_md_orchestrator
- KB_cli
- KB_cli_p2
- KB_cli_p3
- KB_cli_p4
- KB_cli_p5
- KB_commands
- KB_commands_p2
- KB_commands_p3
- KB_commands_p4
- KB_config
- KB_contract
- KB_core
- KB_core_p2
- KB_devtools
- KB_extensions
- KB_guardrails
- KB_hermes-lazyown
- KB_integrations
- KB_js
- KB_js_p2
- KB_js_p3
- KB_js_p4
- KB_lazyc2
- KB_lazygui
- KB_lazyown-docker
- KB_legacy
- KB_legacy_p2
- KB_mediation
- KB_misc
- KB_modules
- KB_modules_p10
- KB_modules_p11
- KB_modules_p12
- KB_modules_p13
- KB_modules_p14
- KB_modules_p15
- KB_modules_p16
- KB_modules_p2
- KB_modules_p3
- KB_modules_p4
- KB_modules_p5
- KB_modules_p6
- KB_modules_p7
- KB_modules_p8
- KB_modules_p9
- KB_modules_tools
- KB_palettes
- KB_panels
- KB_plugins
- KB_poc_tui
- KB_root
- KB_root_p2
- KB_rootkit
- KB_scripts
- KB_security
- KB_services
- KB_sinks
- KB_skills
- KB_skills_claude_md_orchestrator_tests
- KB_skills_p2
- KB_skills_p3
- KB_skills_p4
- KB_skills_p5
- KB_skills_tests
- KB_tests
- KB_tests_p10
- KB_tests_p11
- KB_tests_p12
- KB_tests_p13
- KB_tests_p14
- KB_tests_p15
- KB_tests_p16
- KB_tests_p17
- KB_tests_p18
- KB_tests_p19
- KB_tests_p2
- KB_tests_p20
- KB_tests_p3
- KB_tests_p4
- KB_tests_p5
- KB_tests_p6
- KB_tests_p7
- KB_tests_p8
- KB_tests_p9
- KB_theme
- KB_tools
- KB_widgets
- KB_win_rootkit
- KB_windows
- MEMORY
- SECURITY
- SYMBOLS
- SYMBOLS_p10
- SYMBOLS_p11
- SYMBOLS_p12
- SYMBOLS_p13
- SYMBOLS_p14
- SYMBOLS_p15
- SYMBOLS_p16
- SYMBOLS_p17
- SYMBOLS_p18
- SYMBOLS_p19
- SYMBOLS_p2
- SYMBOLS_p20
- SYMBOLS_p21
- SYMBOLS_p22
- SYMBOLS_p23
- SYMBOLS_p24
- SYMBOLS_p25
- SYMBOLS_p26
- SYMBOLS_p27
- SYMBOLS_p28
- SYMBOLS_p29
- SYMBOLS_p3
- SYMBOLS_p30
- SYMBOLS_p31
- SYMBOLS_p32
- SYMBOLS_p33
- SYMBOLS_p34
- SYMBOLS_p35
- SYMBOLS_p36
- SYMBOLS_p37
- SYMBOLS_p38
- SYMBOLS_p39
- SYMBOLS_p4
- SYMBOLS_p40
- SYMBOLS_p41
- SYMBOLS_p42
- SYMBOLS_p43
- SYMBOLS_p44
- SYMBOLS_p45
- SYMBOLS_p5
- SYMBOLS_p6
- SYMBOLS_p7
- SYMBOLS_p8
- SYMBOLS_p9
Recipes