Agent KB_cli_p4 - grisuno/LazyOwn GitHub Wiki

Subsystem: cli (page 4 of 5)

Previous: KB_cli_p3.md

cli/recommendation.py

  • Doc: Unified next-best-action engine: the single source of truth for "what next".
  • Layer: utility
  • Language: py
  • Symbols:
    • EngineWeights (class, line 67) class EngineWeights
    • RecommendationContext (class, line 101) class RecommendationContext
    • Proposal (class, line 123) class Proposal
    • Recommendation (class, line 150) class Recommendation
    • RecommendationSignal (class, line 177) class RecommendationSignal(Protocol)
    • CategoryResolver (class, line 192) class CategoryResolver
    • RecommendationEngine (class, line 232) class RecommendationEngine
    • _Accumulator (class, line 362) class _Accumulator
    • _clamp01 (function, line 400) def _clamp01(value)
    • _non_negative (function, line 412) def _non_negative(value)
    • _load_command_index (function, line 422) def _load_command_index(path)
    • propose (method, line 187) def propose(self, ctx)
    • __init__ (method, line 201) def __init__(self, index_path, loader)
    • category_for (method, line 227) def category_for(self, action)
    • __init__ (method, line 240) def __init__(self, signals, resolver, weights)
    • recommend (method, line 258) def recommend(self, ctx)
    • _safe_propose (method, line 280) def _safe_propose(signal, ctx)
    • _build_category_priors (method, line 287) def _build_category_priors(self, collected)
    • _fuse_concrete_actions (method, line 302) def _fuse_concrete_actions(self, collected, priors)
    • _category_recommendations (method, line 331) def _category_recommendations(self, collected, concrete)
    • add (method, line 374) def add(self, source, contribution, proposal)
    • build (method, line 386) def build(self)
  • Imported by: cli/commands/misc_migrated.py, cli/recommendation_signals.py, skills/lazyown_mcp.py, tests/test_killchain_gap_signal.py, tests/test_recommendation.py

cli/recommendation_signals.py

  • Doc: Concrete :class:cli.recommendation.RecommendationSignal adapters.
  • Layer: utility
  • Language: py
  • Symbols:
    • _load_world_model (function, line 67) def _load_world_model(sessions_dir)
    • _rank_weight (function, line 90) def _rank_weight(index, total)
    • GraphSignal (class, line 110) class GraphSignal
    • PolicySignal (class, line 148) class PolicySignal
    • ReconPlanSignal (class, line 185) class ReconPlanSignal
    • KillChainSignal (class, line 224) class KillChainSignal
    • read_recent_commands (function, line 275) def read_recent_commands(sessions_dir, window)
    • build_context (function, line 308) def build_context(payload, sessions_dir, target, limit)
    • PlaybookSignal (class, line 337) class PlaybookSignal
    • KillchainGapSignal (class, line 386) class KillchainGapSignal
    • GraphTopologySignal (class, line 531) class GraphTopologySignal
    • _try_build_playbook_signal (function, line 638) def _try_build_playbook_signal()
    • build_default_engine (function, line 649) def build_default_engine(payload, sessions_dir, graph_path, command_index_path, weights)
    • recommend_with_evidence (function, line 705) def recommend_with_evidence(payload, sessions_dir, target, phase, limit, engine)
    • _try_build_graph_signal (function, line 742) def _try_build_graph_signal(graph_path)
    • _try_build_policy_signal (function, line 756) def _try_build_policy_signal()
    • _try_build_recon_signal (function, line 772) def _try_build_recon_signal(payload)
    • _build_killchain_signal (function, line 785) def _build_killchain_signal()
    • __init__ (method, line 115) def __init__(self, advisor)
    • propose (method, line 125) def propose(self, ctx)
    • __init__ (method, line 153) def __init__(self, policy)
    • propose (method, line 162) def propose(self, ctx)
    • __init__ (method, line 190) def __init__(self, engine, builder)
    • propose (method, line 200) def propose(self, ctx)
    • __init__ (method, line 229) def __init__(self, next_table, phase_table)
    • propose (method, line 243) def propose(self, ctx)
    • __init__ (method, line 346) def __init__(self, playbook_engine)
    • propose (method, line 355) def propose(self, ctx)
    • __init__ (method, line 406) def __init__(self, sessions_dir)
    • propose (method, line 409) def propose(self, ctx)
    • _gap_exploited_no_privesc (method, line 425) def _gap_exploited_no_privesc(self, hosts)
    • _gap_owned_no_creds (method, line 465) def _gap_owned_no_creds(self, hosts, wm_data)
    • _gap_scan_no_enum (method, line 485) def _gap_scan_no_enum(self, hosts, recent)
    • _gap_creds_no_lateral (method, line 507) def _gap_creds_no_lateral(self, wm_data, hosts)
    • __init__ (method, line 542) def __init__(self, sessions_dir)
    • propose (method, line 545) def propose(self, ctx)
    • _compute_centrality (method, line 603) def _compute_centrality(graph_data)
  • Depends on: cli/exploration.py, cli/graph_advisor.py, cli/reactive_hints.py, cli/recommendation.py, cli/recon_plan.py, core/logging.py, modules/apt_playbooks.py, skills/lazyown_policy.py
  • Imported by: cli/commands/misc_migrated.py, cli/dashboard_tui.py, cli/tips_engine.py, modules/engage_summary.py, skills/lazyown_mcp.py, tests/test_evidence_hints.py, tests/test_killchain_gap_signal.py, tests/test_phase1_data_gaps.py, tests/test_recommendation.py

cli/recon_plan.py

  • Doc: Reconnaissance plan generator built on top of :mod:cli.exploration.
  • Layer: utility
  • Language: py
  • Symbols:
    • ReconPlanConfig (class, line 62) class ReconPlanConfig
    • ReconPlanItem (class, line 94) class ReconPlanItem
    • ReconPlan (class, line 119) class ReconPlan
    • build_recon_plan (function, line 144) def build_recon_plan(target, engine, payload, config, command_index_loader, clock)
    • render_markdown (function, line 207) def render_markdown(plan)
    • write_plan (function, line 257) def write_plan(plan, sessions_dir, config)
    • render_rich (function, line 299) def render_rich(plan, console)
    • _addon_items (function, line 330) def _addon_items(addons, services, payload)
    • _tool_items (function, line 347) def _tool_items(tools, services, payload)
    • _command_items (function, line 367) def _command_items(index, phase, history, limit)
    • _service_for_trigger (function, line 414) def _service_for_trigger(trigger, services)
    • _tool_command_preview (function, line 428) def _tool_command_preview(tool, payload)
    • _read_tool_command (function, line 449) def _read_tool_command(source_path)
    • _payload_target (function, line 466) def _payload_target(payload, config)
    • _resolve_phase (function, line 474) def _resolve_phase(payload, config)
    • _safe_filename_component (function, line 486) def _safe_filename_component(value)
    • _default_command_index_loader (function, line 494) def _default_command_index_loader(path)
    • is_empty (method, line 139) def is_empty(self)
  • Depends on: cli/exploration.py, modules/killchain.py
  • Imported by: cli/lazynmap_post.py, cli/recommendation_signals.py, tests/test_lazynmap_post.py, tests/test_recon_plan.py

cli/registry.py

cli/scope_guard.py

  • Doc: Authorization scope guard for offensive command execution.
  • Layer: utility
  • Language: py
  • Symbols:
    • ScopeMode (class, line 90) class ScopeMode(StrEnum)
    • ScopeDecision (class, line 125) class ScopeDecision
    • build_offensive_commands (function, line 147) def build_offensive_commands(command_categories)
    • normalize_scope (function, line 163) def normalize_scope(entries)
    • _parse_ip (function, line 195) def _parse_ip(value)
    • _parse_network (function, line 202) def _parse_network(value)
    • _hostname_match (function, line 209) def _hostname_match(target, entry)
    • target_in_scope (function, line 218) def target_in_scope(target, entries)
    • ScopeGuard (class, line 254) class ScopeGuard
    • from_value (method, line 105) def from_value(cls, value)
    • __init__ (method, line 263) def __init__(self, scope_entries, mode, is_offensive)
    • evaluate (method, line 283) def evaluate(self, command, target)
  • Depends on: cli/commands/enum.py
  • Imported by: lazyown.py, tests/test_scope_guard.py

cli/session_hud.py

  • Doc: Compact session HUD: the numbers no other command shows.
  • Layer: utility
  • Language: py
  • Symbols:
    • HudConfig (class, line 25) class HudConfig
    • HudSnapshot (class, line 50) class HudSnapshot
    • count_lines_in_globs (function, line 62) def count_lines_in_globs(root, patterns)
    • count_csv_rows (function, line 83) def count_csv_rows(path)
    • format_elapsed (function, line 100) def format_elapsed(seconds)
    • phase_bar (function, line 115) def phase_bar(phase, width)
    • _engagement_facts (function, line 135) def _engagement_facts()
    • build_snapshot (function, line 155) def build_snapshot(params, config)
    • render_snapshot (function, line 180) def render_snapshot(snapshot, config)
  • Depends on: cli/engagement_hooks.py
  • Imported by: cli/commands/ux.py

cli/session_resumer.py

  • Doc: Session resumer for the LazyOwn shell.
  • Layer: utility
  • Language: py
  • Symbols:
    • SessionSummary (class, line 29) class SessionSummary
    • SessionResumerConfig (class, line 41) class SessionResumerConfig
    • SessionResumer (class, line 51) class SessionResumer
    • __init__ (method, line 58) def __init__(self, config)
    • _discover_targets (method, line 62) def _discover_targets(self)
    • render_startup_panel (method, line 129) def render_startup_panel(self)
  • Depends on: core/console.py, core/logging.py
  • Imported by: cli/commands/session_ops.py

cli/sessions_browser.py

  • Doc: Textual browser for the LazyOwn sessions/ directory.
  • Layer: utility
  • Language: py
  • Symbols:
    • CategorySpec (class, line 33) class CategorySpec
    • SessionsBrowserConfig (class, line 49) class SessionsBrowserConfig
    • SessionEntry (class, line 76) class SessionEntry
    • SessionsIndex (class, line 85) class SessionsIndex
    • SessionPreview (class, line 185) class SessionPreview
    • SessionsBrowserState (class, line 225) class SessionsBrowserState
    • build_state (function, line 258) def build_state(payload, sessions_dir, config)
    • launch_browser (function, line 281) def launch_browser(payload, state, runner)
    • _build_app (function, line 314) def _build_app(state, theme)
    • __init__ (method, line 88) def __init__(self, config, root)
    • root (method, line 100) def root(self)
    • categories (method, line 104) def categories(self)
    • _entries_for (method, line 119) def _entries_for(self, patterns, spec)
    • _collect_other (method, line 142) def _collect_other(self, claimed)
    • _build_entry (method, line 160) def _build_entry(self, path, relative, category)
    • _label (method, line 172) def _label(self, relative)
    • _relative (method, line 178) def _relative(self, path)
    • __init__ (method, line 188) def __init__(self, config, root)
    • read (method, line 193) def read(self, relative)
    • grouped_entries (method, line 233) def grouped_entries(self)
    • category_label (method, line 248) def category_label(self, identifier)
    • _SessionsBrowserApp (class, line 325) class _SessionsBrowserApp(App)
    • __init__ (method, line 340) def __init__(self)
    • compose (method, line 346) def compose(self)
    • on_mount (method, line 356) def on_mount(self)
    • on_input_changed (method, line 359) def on_input_changed(self, event)
    • on_tree_node_selected (method, line 363) def on_tree_node_selected(self, event)
    • action_refresh (method, line 370) def action_refresh(self)
    • action_close (method, line 373) def action_close(self)
    • _rebuild_tree (method, line 376) def _rebuild_tree(self)
    • _show_preview (method, line 399) def _show_preview(self, relative)
  • Depends on: cli/commands/containers.py, cli/themes.py
  • Imported by: cli/commands/misc_migrated.py, tests/test_sessions_browser.py

cli/show.py

cli/splash.py

  • Doc: Animated splash overlay for the LazyOwn first-run experience.
  • Layer: utility
  • Language: py
  • Symbols:
    • SplashConfig (class, line 37) class SplashConfig
    • SplashEffect (class, line 62) class SplashEffect(Protocol)
    • TypewriterEffect (class, line 80) class TypewriterEffect
    • _redraw (function, line 119) def _redraw(console, accumulated, caret, tokens)
    • InstantEffect (class, line 141) class InstantEffect
    • render_splash (function, line 166) def render_splash(console, lines, payload, config, effect_name)
    • render (method, line 71) def render(self, console, lines, tokens, config)
    • render (method, line 90) def render(self, console, lines, tokens, config)
    • render (method, line 150) def render(self, console, lines, tokens, config)
  • Depends on: cli/style.py, core/console.py
  • Imported by: lazyown.py, tests/test_tui_splash.py

cli/status_bar.py

  • Doc: Persistent operator status bar for the LazyOwn cmd2 shell.
  • Layer: utility
  • Language: py
  • Symbols:
    • StatusBarConfig (class, line 41) class StatusBarConfig
    • StatusContext (class, line 127) class StatusContext
    • IStatusSource (class, line 143) class IStatusSource(Protocol)
    • FileSystemReader (class, line 151) class FileSystemReader
    • PayloadTargetSource (class, line 268) class PayloadTargetSource
    • WorldModelPhaseSource (class, line 292) class WorldModelPhaseSource
    • SessionFindingSource (class, line 319) class SessionFindingSource
    • CommandHintSuggestionSource (class, line 416) class CommandHintSuggestionSource
    • GraphSuggestionSource (class, line 508) class GraphSuggestionSource
    • CollabPresenceSource (class, line 590) class CollabPresenceSource
    • StatusBarRenderer (class, line 656) class StatusBarRenderer
    • StatusBarManager (class, line 744) class StatusBarManager
    • _operator_presence_enabled (function, line 948) def _operator_presence_enabled(payload, config)
    • build_default_manager (function, line 969) def build_default_manager(payload, sessions_dir, advisor_factory, config)
    • from_payload (method, line 99) def from_payload(cls, payload)
    • collect (method, line 146) def collect(self)
    • __init__ (method, line 160) def __init__(self, config, root)
    • root (method, line 179) def root(self)
    • read_text (method, line 183) def read_text(self, relative)
    • read_json (method, line 204) def read_json(self, relative)
    • glob_latest (method, line 222) def glob_latest(self, pattern)
    • _safe_path (method, line 247) def _safe_path(self, relative)
    • _is_within_root (method, line 253) def _is_within_root(self, candidate)
    • _has_traversal (method, line 261) def _has_traversal(value)
    • __init__ (method, line 271) def __init__(self, config, payload)
    • collect (method, line 283) def collect(self)
    • __init__ (method, line 295) def __init__(self, config, reader, payload)
    • collect (method, line 306) def collect(self)
    • __init__ (method, line 322) def __init__(self, config, reader)
    • collect (method, line 327) def collect(self)
    • _latest_credential (method, line 335) def _latest_credential(self)
    • _latest_vuln (method, line 345) def _latest_vuln(self)
    • _latest_note (method, line 358) def _latest_note(self)
    • _last_line (method, line 376) def _last_line(self, path)
    • _summarise_credential (method, line 389) def _summarise_credential(self, filename, line)
    • _extract_vuln_items (method, line 396) def _extract_vuln_items(self, payload)
    • __init__ (method, line 426) def __init__(self, config, reader, phase_provider, hint_provider)
    • collect (method, line 451) def collect(self)
    • _latest_command (method, line 476) def _latest_command(self)
    • _default_provider (method, line 500) def _default_provider()
    • __init__ (method, line 511) def __init__(self, config, reader, advisor_factory)
    • collect (method, line 530) def collect(self)
    • _recent_commands (method, line 551) def _recent_commands(self)
    • _suggestion_label (method, line 579) def _suggestion_label(entry)
    • __init__ (method, line 601) def __init__(self, config, reader, clock)
    • collect (method, line 622) def collect(self)
    • _extract_entries (method, line 636) def _extract_entries(payload)
    • _is_active (method, line 646) def _is_active(entry, threshold)
    • __init__ (method, line 659) def __init__(self, config)
    • render_plain (method, line 664) def render_plain(self, ctx)
    • render_prompt (method, line 687) def render_prompt(self, ctx, base_prompt, color_open, color_close, readline_safe)
    • _sanitise (method, line 724) def _sanitise(self, value, max_chars)
    • __init__ (method, line 752) def __init__(self, config, sources, renderer, payload)
    • enabled (method, line 783) def enabled(self)
    • collect_context (method, line 798) def collect_context(self)
    • render_prompt (method, line 811) def render_prompt(self, base_prompt, readline_safe)
    • _resolve_theme_colors (method, line 823) def _resolve_theme_colors(self)
    • render_plain_line (method, line 833) def render_plain_line(self, ctx)
    • set_enabled (method, line 847) def set_enabled(self, enabled)
    • install (method, line 857) def install(self, shell, base_prompt_attribute, prompt_attribute)
    • _build_precmd_hook (method, line 895) def _build_precmd_hook(self, shell, base_prompt, base_prompt_attribute, prompt_attribute)
    • _safe_collect (method, line 929) def _safe_collect(self, key)
    • _fallback_for (method, line 938) def _fallback_for(self, key)
    • _hook (function, line 915) def _hook(data)
  • Depends on: cli/reactive_hints.py, cli/themes.py
  • Imported by: lazyown.py, tests/test_improvements_spec.py, tests/test_status_bar_operators.py

cli/style.py

cli/surface_graph.py

  • Doc: Network surface graph reader for the LazyOwn shell.
  • Layer: utility
  • Language: py
  • Symbols:
    • _slug_host (function, line 75) def _slug_host(ip)
    • _slug_port (function, line 80) def _slug_port(host_id, port, protocol)
    • SurfaceNode (class, line 87) class SurfaceNode
    • SurfaceEdge (class, line 113) class SurfaceEdge
    • SurfaceGraph (class, line 126) class SurfaceGraph
    • SurfaceGraphConfig (class, line 174) class SurfaceGraphConfig
    • SurfaceGraphBuilder (class, line 196) class SurfaceGraphBuilder
    • build_surface_graph (function, line 633) def build_surface_graph(sessions_dir, payload_path)
    • iter_descendants (function, line 650) def iter_descendants(graph, root_id)
    • to_dict (method, line 102) def to_dict(self)
    • to_dict (method, line 120) def to_dict(self)
    • to_dict (method, line 135) def to_dict(self)
    • stats (method, line 146) def stats(self)
    • children_of (method, line 153) def children_of(self, node_id)
    • get (method, line 165) def get(self, node_id)
    • __init__ (method, line 199) def __init__(self, config)
    • build (method, line 202) def build(self)
    • _kind_order (method, line 331) def _kind_order(kind)
    • _build_c2_node (method, line 341) def _build_c2_node(self, local_ips, payload)
    • _discover_local_ips (method, line 359) def _discover_local_ips(self)
    • _fallback_local_ips (method, line 380) def _fallback_local_ips()
    • _load_payload (method, line 386) def _load_payload(self)
    • _read_os_hint (method, line 399) def _read_os_hint(self)
    • _read_hostsdiscovery (method, line 414) def _read_hostsdiscovery(self, local_ips)
    • _read_scan_discovery (method, line 436) def _read_scan_discovery(self, local_ips)
    • _read_scan_csv (method, line 442) def _read_scan_csv(self, local_ips)
    • _read_scan_nmap (method, line 467) def _read_scan_nmap(self, local_ips)
    • _read_implants (method, line 525) def _read_implants(self)
    • _read_last_implant_row (method, line 542) def _read_last_implant_row(self, path)
    • _parse_implant_row (method, line 559) def _parse_implant_row(self, row)
    • _parse_port_scan (method, line 580) def _parse_port_scan(self, raw)
    • _is_ipv4 (method, line 616) def _is_ipv4(value)
    • _client_label (method, line 622) def _client_label(client_id, meta)
  • Imported by: cli/surface_tui.py, modules/attack_surface3d.py, tests/test_surface_graph.py

cli/surface_tui.py

  • Doc: Terminal renderer for the LazyOwn network surface graph.
  • Layer: utility
  • Language: py
  • Symbols:
    • TextualNotInstalled (class, line 61) class TextualNotInstalled(RuntimeError)
    • render_static (function, line 65) def render_static(graph, sessions_dir, payload_path, console)
    • render_json (function, line 92) def render_json(graph, sessions_dir, payload_path)
    • launch_tui (function, line 112) def launch_tui(sessions_dir, payload_path)
    • _build_rich_tree (function, line 214) def _build_rich_tree(graph)
    • _attach_children (function, line 223) def _attach_children(parent, graph, parent_id, seen)
    • _styled_label (function, line 232) def _styled_label(node)
    • _stats_table (function, line 241) def _stats_table(graph)
    • _render_node_detail (function, line 260) def _render_node_detail(data)
    • SurfaceExplorer (class, line 130) class SurfaceExplorer(App)
    • __init__ (method, line 148) def __init__(self, sessions_dir, payload_path)
    • compose (method, line 154) def compose(self)
    • on_mount (method, line 161) def on_mount(self)
    • action_refresh (method, line 164) def action_refresh(self)
    • action_expand_all (method, line 168) def action_expand_all(self)
    • action_collapse_all (method, line 172) def action_collapse_all(self)
    • on_tree_node_selected (method, line 176) def on_tree_node_selected(self, event)
    • _reload_graph (method, line 185) def _reload_graph(self)
    • _add_children (method, line 205) def _add_children(self, parent_node, graph, parent_id)
  • Depends on: cli/commands/containers.py, cli/surface_graph.py, core/console.py
  • Imported by: cli/commands/recon_migrated.py

cli/themes.py

cli/timeline_browser.py

  • Doc: Textual scrubber over [sessions/LazyOwn_session_report.csv](https://github.com/grisuno/LazyOwn/blob/146a52570ef792d1ec01ec4d3709b0c159990e47/sessions/LazyOwn_session_report.csv).
  • Layer: utility
  • Language: py
  • Symbols:
    • TimelineColumn (class, line 33) class TimelineColumn
    • TimelineConfig (class, line 43) class TimelineConfig
    • TimelineEntry (class, line 65) class TimelineEntry
    • TimelineReader (class, line 72) class TimelineReader
    • TimelineState (class, line 122) class TimelineState
    • build_state (function, line 157) def build_state(payload, sessions_dir, config)
    • launch_scrubber (function, line 169) def launch_scrubber(payload, state, runner)
    • _build_app (function, line 202) def _build_app(state, theme)
    • __init__ (method, line 75) def __init__(self, config, root)
    • root (method, line 81) def root(self)
    • read (method, line 85) def read(self)
    • _coerce_row (method, line 103) def _coerce_row(self, row)
    • reload (method, line 130) def reload(self)
    • entries (method, line 134) def entries(self)
    • column_value (method, line 148) def column_value(self, entry, column)
    • _TimelineBrowserApp (class, line 213) class _TimelineBrowserApp(App)
    • __init__ (method, line 228) def __init__(self)
    • compose (method, line 234) def compose(self)
    • on_mount (method, line 242) def on_mount(self)
    • on_input_changed (method, line 249) def on_input_changed(self, event)
    • on_data_table_row_highlighted (method, line 253) def on_data_table_row_highlighted(self, event)
    • action_refresh (method, line 259) def action_refresh(self)
    • action_close (method, line 263) def action_close(self)
    • _rebuild_rows (method, line 266) def _rebuild_rows(self)
    • _refresh_detail (method, line 278) def _refresh_detail(self, row_index)
  • Depends on: cli/commands/containers.py, cli/themes.py
  • Imported by: cli/commands/misc_migrated.py, tests/test_timeline_browser.py

cli/tips_engine.py

  • Doc: Unified post-command tips engine: single coordination point for all suggestion surfaces.
  • Layer: utility
  • Language: py
  • Symbols:
    • _noop (function, line 132) def _noop()
    • TipsConfig (class, line 137) class TipsConfig
    • TipsEngine (class, line 186) class TipsEngine
    • _render_streak (function, line 1103) def _render_streak(ctx, state, config)
    • _render_exploration (function, line 1124) def _render_exploration(ctx, state, config)
    • _render_phase_badge (function, line 1142) def _render_phase_badge(ctx, state, config)
    • _render_hidden_feature (function, line 1160) def _render_hidden_feature(ctx, state, config)
    • _render_arsenal_tip (function, line 1180) def _render_arsenal_tip(ctx, state, config)
    • build_default_tips_config (function, line 1240) def build_default_tips_config()
    • __init__ (method, line 194) def __init__(self, config, autosuggest_engine)
    • enabled (method, line 221) def enabled(self)
    • set_enabled (method, line 225) def set_enabled(self, value)
    • render (method, line 229) def render(self, cmd, phase)
    • _maybe_auto_show_killchain (method, line 272) def _maybe_auto_show_killchain(self, phase)
    • _resolve_theme (method, line 300) def _resolve_theme(self)
    • _flush_suggestions_panel (method, line 311) def _flush_suggestions_panel(self)
    • _get_hints_level (method, line 344) def _get_hints_level(self)
    • _resolve_phase (method, line 355) def _resolve_phase(self, cmd, fallback)
    • _read_world_model_phase (method, line 378) def _read_world_model_phase(self)
    • _read_os_id_from_session (method, line 388) def _read_os_id_from_session(self)
    • render_session_start (method, line 408) def render_session_start(self, phase, os_id)
    • get_state_snapshot (method, line 440) def get_state_snapshot(self)
    • reset_session (method, line 455) def reset_session(self)
    • heal_commands_seen (method, line 460) def heal_commands_seen(self, known)
    • _render_kill_chain_hints (method, line 475) def _render_kill_chain_hints(self, cmd, phase)
    • _load_payload (method, line 492) def _load_payload(self)
    • _get_rec_engine (method, line 505) def _get_rec_engine(self)
    • _compute_evidence_hints (method, line 529) def _compute_evidence_hints(self, cmd, phase)
    • _collect_killchain_progress (method, line 575) def _collect_killchain_progress(self, current_phase)
    • _maybe_show_full_killchain (method, line 605) def _maybe_show_full_killchain(self, cmd)
    • _compute_command_hints (method, line 616) def _compute_command_hints(self, cmd, phase)
    • _render_contextual_tip (method, line 633) def _render_contextual_tip(self, cmd, phase)
    • _safe_tip_trigger (method, line 672) def _safe_tip_trigger(tip, ctx)
    • _run_curiosity_reveal (method, line 683) def _run_curiosity_reveal(self, cmd, phase)
    • _commands_in_exploration_phase (method, line 707) def _commands_in_exploration_phase(self, phase)
    • _summary_for_exploration_cmd (method, line 713) def _summary_for_exploration_cmd(self, cmd)
    • _refresh_autosuggest (method, line 726) def _refresh_autosuggest(self, cmd, phase)
    • _render_autosuggest_hint (method, line 750) def _render_autosuggest_hint(self, engine)
    • _update_engagement_state (method, line 767) def _update_engagement_state(self, cmd, phase)
    • _award_elo (method, line 808) def _award_elo(self, cmd, first_time, new_phase, phase)
    • _check_karma_up (method, line 819) def _check_karma_up(self)
    • _print_separator (method, line 836) def _print_separator(self, width)
    • _check_badges (method, line 840) def _check_badges(self, cmd, first_time)
    • _print_badge (method, line 867) def _print_badge(self, name, description)
    • _fire_vri_reward (method, line 877) def _fire_vri_reward(self, ctx)
    • _pick_weighted (method, line 907) def _pick_weighted(rewards, weights)
    • _ensure_state_and_index (method, line 926) def _ensure_state_and_index(self)
    • _load_state (method, line 932) def _load_state(self)
    • _save_state (method, line 952) def _save_state(self)
    • _load_command_index (method, line 977) def _load_command_index(self)
    • _is_recordable_command (method, line 987) def _is_recordable_command(self, cmd)
    • _sanitize_seen (method, line 991) def _sanitize_seen(self, names, known)
    • _read_run_commands (method, line 1005) def _read_run_commands(self)
    • _read_recent_commands_for_autosuggest (method, line 1010) def _read_recent_commands_for_autosuggest(self, limit)
    • _phase_for_cmd (method, line 1028) def _phase_for_cmd(self, cmd)
    • _truncate (method, line 1039) def _truncate(value, max_len)
    • _get_karma_name (method, line 1045) def _get_karma_name(elo)
    • _next_threshold (method, line 1051) def _next_threshold(self, current)
    • _sync_user_elo (method, line 1055) def _sync_user_elo(self, delta)
  • Depends on: cli/autosuggest.py, cli/engagement_hooks.py, cli/noise_verbs.py, cli/ops_commands.py, cli/palette.py, cli/phase_labels.py, cli/reactive_hints.py, cli/recommendation_signals.py, cli/themes.py, core/console.py, core/logging.py, core/safe_console.py, core/text_utils.py, modules/cli_auth.py, modules/killchain.py, modules/lazy_rbac.py
  • Imported by: lazyown.py, tests/test_evidence_hints.py, tests/test_killchain_auto_refresh.py, tests/test_phase_labels.py, tests/test_tips_engine.py

Next: KB_cli_p5.md