- Project: /home/tom/github/wronai/nlp2cmd/src/nlp2cmd
- Analysis Mode: static
- Total Functions: 3567
- Total Classes: 398
- Modules: 197
- Entry Points: 3330
- Functions: 128
- Classes: 2
- File:
template_generator.py
- Functions: 84
- Classes: 2
- File:
__init__.py
- Functions: 76
- Classes: 1
- File:
form_data_loader.py
- Functions: 64
- Classes: 3
- File:
site_explorer.py
- Functions: 60
- Classes: 1
- File:
toon_integration.py
- Functions: 60
- Classes: 11
- File:
__init__.py
- Functions: 50
- Classes: 3
- File:
action_planner.py
- Functions: 49
- Classes: 3
- File:
semantic_matcher_optimized.py
- Functions: 47
- Classes: 7
- File:
password_store.py
- Functions: 46
- Classes: 3
- File:
kubernetes.py
- Functions: 45
- Classes: 1
- File:
core_transform.py
- Functions: 45
- Classes: 2
- File:
browser.py
- Functions: 43
- Classes: 4
- File:
fuzzy_schema_matcher.py
- Functions: 43
- Classes: 3
- File:
evolutionary_cache.py
- Functions: 43
- Classes: 2
- File:
browser_config.py
- Functions: 43
- Classes: 3
- File:
toon_parser.py
- Functions: 42
- Classes: 8
- File:
__init__.py
- Functions: 42
- Classes: 2
- File:
dynamic.py
- Functions: 41
- Classes: 6
- File:
__init__.py
- Functions: 40
- Classes: 5
- File:
thermodynamic_components.py
Main execution flows into the system:
Execute a single ActionPlan step. Returns extracted value or None.
- Calls: self._resolve_plan_variables, Console, pipeline_runner_utils._MarkdownConsoleWrapper.print, params.get, page.goto, page.wait_for_timeout, ValueError, url.startswith
Execute a single ActionPlan step. Returns extracted value or None.
- Calls: self._resolve_plan_variables, Console, pipeline_runner_utils._MarkdownConsoleWrapper.print, params.get, page.goto, page.wait_for_timeout, ValueError, url.startswith
Execute multiple browser actions in sequence.
- Calls: payload.get, Console, _MarkdownConsoleWrapper, payload.get, RunnerResult, RunnerResult, sync_playwright, p.chromium.launch
Execute multiple browser actions in sequence.
- Calls: payload.get, Console, _MarkdownConsoleWrapper, payload.get, RunnerResult, RunnerResult, sync_playwright, p.chromium.launch
Execute an ActionPlan step by step using Playwright.
Args: plan: ActionPlan instance with steps to execute dry_run: If True, only show the pl
- Calls: Console, frozenset, console.print, console.print, enumerate, None.strip, RunnerResult, any
Execute an ActionPlan step by step using Playwright.
Args: plan: ActionPlan instance with steps to execute dry_run: If True, only show the pl
- Calls: Console, frozenset, console.print, console.print, enumerate, None.strip, RunnerResult, any
Execute a canvas drawing plan on a Playwright page.
IMPROVED: Added detailed diagnostic logging for each step.
- Calls: plan.get, MouseController, enumerate, json.loads, step.get, step.get, pipeline_runner_utils._MarkdownConsoleWrapper.print, pipeline_runner_utils._MarkdownConsoleWrapper.print
Execute a canvas drawing plan on a Playwright page.
IMPROVED: Added detailed diagnostic logging for each step.
- Calls: plan.get, MouseController, enumerate, json.loads, step.get, step.get, pipeline_runner_utils._MarkdownConsoleWrapper.print, pipeline_runner_utils._MarkdownConsoleWrapper.print
Execute a shell command with real-time output.
Args: command: Shell command to execute cwd: Working directory env: Environment variables
- Calls: time.time, self.print_markdown_block, ExecutionResult, self.execution_history.append, subprocess.Popen, None.join, None.join, subprocess.run
Register built-in actions.
- Calls: self.register, self.register, self.register, self.register, self.register, self.register, self.register, self.register
Register built-in actions.
- Calls: self.register, self.register, self.register, self.register, self.register, self.register, self.register, self.register
Execute an ActionPlan step via local desktop automation.
Supports three backends:
- ydotool: works on Wayland (requires ydotoold daemon)
- xdotool: w
- Calls: self._resolve_plan_variables, str, self._detect_desktop_backend, ValueError, ValueError, str, str, int
Execute an ActionPlan step via local desktop automation.
Supports three backends:
- ydotool: works on Wayland (requires ydotoold daemon)
- xdotool: w
- Calls: self._resolve_plan_variables, str, self._detect_desktop_backend, ValueError, ValueError, str, str, int
Generate a drawing plan for an arbitrary object using rules.
This is a fallback when LLM is not available. Uses object name to determine shape compos
- Calls: re.search, None.strip, object_name.lower, any, ActionPlan, None.strip, ActionStep, ActionStep
Generate a drawing plan for an arbitrary object using rules.
This is a fallback when LLM is not available. Uses object name to determine shape compos
- Calls: re.search, None.strip, object_name.lower, any, ActionPlan, None.strip, ActionStep, ActionStep
Detect all form fields on a page.
Args: page: Playwright page object
Returns: List of FormField objects
- Calls: page.query_selector_all, self._print_yaml, page.query_selector_all, self._print_yaml, page.query_selector_all, self._print_yaml, page.query_selector_all, self._print_yaml
Find a form on the website matching the intent.
Args: url: Starting URL (homepage) intent: Type of form to find (contact, search, newsletter,
- Calls: time.perf_counter, executor.ExecutionContext.set, self._find_best_form_candidate, ExplorationResult, None.start, p.chromium.launch, browser.new_context, context.new_page
Find a form on the website matching the intent.
Args: url: Starting URL (homepage) intent: Type of form to find (contact, search, newsletter,
- Calls: time.perf_counter, executor.ExecutionContext.set, self._find_best_form_candidate, ExplorationResult, None.start, p.chromium.launch, browser.new_context, context.new_page
Analyze a page for forms, iframes, and links.
- Calls: PageInfo, self._score_page, executor.ExecutionContext.set, page.query_selector_all, page.query_selector_all, page.query_selector_all, self._normalize_url, page.title
Analyze a page for forms, iframes, and links.
- Calls: PageInfo, self._score_page, executor.ExecutionContext.set, page.query_selector_all, page.query_selector_all, page.query_selector_all, self._normalize_url, page.title
Build action sequence based on intent.
- Calls: entities.get, self.APP_COMMANDS.get, pipeline_runner_utils._debug, actions.append, self._detect_followup_actions, actions.extend, self._extract_app_name, app_name.lower
Build action sequence based on intent.
- Calls: entities.get, self.APP_COMMANDS.get, pipeline_runner_utils._debug, actions.append, self._detect_followup_actions, actions.extend, self._extract_app_name, app_name.lower
Fast path detection for common patterns.
- Calls: None.join, text_lower.strip, _SQL_EXACT.items, any, _SHELL_TERMS.items, re.search, re.search, re.search
Fast path detection for common patterns.
- Calls: None.join, text_lower.strip, _SQL_EXACT.items, any, _SHELL_TERMS.items, re.search, re.search, re.search
- Calls: str, pipeline_runner_utils._debug, isinstance, pipeline_runner_utils._debug, self._has_fill_form_action, self._should_explore_for_forms, self._should_explore_for_content, self._has_type_action
- Calls: str, pipeline_runner_utils._debug, isinstance, pipeline_runner_utils._debug, self._has_fill_form_action, self._should_explore_for_forms, self._should_explore_for_content, self._has_type_action
Find content on the website (articles, products, docs, etc.).
Args: url: Starting URL (homepage) content_type: Type of content to find (artic
- Calls: time.perf_counter, self._resolve_platform_url, self._try_github_api, executor.ExecutionContext.set, self._explore_recursive, pipeline_runner_utils._debug, self._find_best_content_candidate, ExplorationResult
Find content on the website (articles, products, docs, etc.).
Args: url: Starting URL (homepage) content_type: Type of content to find (artic
- Calls: time.perf_counter, self._resolve_platform_url, self._try_github_api, executor.ExecutionContext.set, self._explore_recursive, pipeline_runner_utils._debug, self._find_best_content_candidate, ExplorationResult
4-tier lookup: cache → template → regex → LLM teacher. Returns LookupResult with command and timing.
- Calls: time.perf_counter, generation.evolutionary_cache.fingerprint, generation.evolutionary_cache.fuzzy_fingerprint, LookupResult, self.stats.get, None.lower, None.isoformat, self.save
4-tier lookup: cache → template → regex → LLM teacher. Returns LookupResult with command and timing.
- Calls: time.perf_counter, generation.evolutionary_cache.fingerprint, generation.evolutionary_cache.fuzzy_fingerprint, LookupResult, self.stats.get, None.lower, None.isoformat, self.save
Key execution flows identified:
_execute_plan_step [pipeline_runner_plans.PlanExecutionMixin
└─ →> print
_execute_plan_step [pipeline_runner_plans
└─ →> print
_run_dom_multi_action [pipeline_runner_browser.BrowserExecutionMixin
_run_dom_multi_action [pipeline_runner_browser
execute_action_plan [pipeline_runner_plans.PlanExecutionMixin
execute_action_plan [pipeline_runner_plans
execute_drawing_plan [adapters.canvas.CanvasAdapter
execute_drawing_plan [adapters.canvas
run_command [execution.runner.ExecutionRunner
_register_builtin_actions [registry.ActionRegistry
Generate DSL commands from templates.
Uses predefined templates filled with extracted entities. Fal
- Methods: 100
- Key Methods: generation.template_generator.TemplateGenerator.init, generation.template_generator.TemplateGenerator._load_defaults_from_json, generation.template_generator.TemplateGenerator._load_templates_from_json, generation.template_generator.TemplateGenerator._get_default, generation.template_generator.TemplateGenerator.generate, generation.template_generator.TemplateGenerator._find_alternative_template, generation.template_generator.TemplateGenerator._get_intent_aliases, generation.template_generator.TemplateGenerator._prepare_entities, generation.template_generator.TemplateGenerator._prepare_sql_entities, generation.template_generator.TemplateGenerator._prepare_shell_entities
Loads form field data from multiple sources:
- .env file (for sensitive data like email, name, phon
- Methods: 45
- Key Methods: web_schema.form_data_loader.FormDataLoader.init, web_schema.form_data_loader.FormDataLoader._dedupe_preserve_order, web_schema.form_data_loader.FormDataLoader.dedupe_selectors, web_schema.form_data_loader.FormDataLoader._parse_domain, web_schema.form_data_loader.FormDataLoader._safe_domain_filename, web_schema.form_data_loader.FormDataLoader._user_sites_dir, web_schema.form_data_loader.FormDataLoader._project_sites_dir, web_schema.form_data_loader.FormDataLoader._site_profile_paths, web_schema.form_data_loader.FormDataLoader.get_site_profile_write_path, web_schema.form_data_loader.FormDataLoader._load_site_profile_payload
Registry for file format schemas with validation and repair capabilities.
- Methods: 37
- Key Methods: schemas.SchemaRegistry.init, schemas.SchemaRegistry._register_builtin_schemas, schemas.SchemaRegistry.register, schemas.SchemaRegistry.get, schemas.SchemaRegistry.has_schema, schemas.SchemaRegistry.list_schemas, schemas.SchemaRegistry.unregister, schemas.SchemaRegistry.find_schema_for_file, schemas.SchemaRegistry.find_schema_by_mime_type, schemas.SchemaRegistry.find_extension_conflicts
Unified data manager using TOON format
- Methods: 27
- Key Methods: core.toon_integration.ToonDataManager.init, core.toon_integration.ToonDataManager._ensure_loaded, core.toon_integration.ToonDataManager.get_all_commands, core.toon_integration.ToonDataManager.get_shell_commands, core.toon_integration.ToonDataManager.get_browser_commands, core.toon_integration.ToonDataManager.get_command_by_name, core.toon_integration.ToonDataManager.search_commands, core.toon_integration.ToonDataManager.get_config, core.toon_integration.ToonDataManager.get_llm_config, core.toon_integration.ToonDataManager.get_test_commands
Explores website to find forms, contact pages, and other content.
Usage: explorer = SiteExplore
- Methods: 27
- Key Methods: web_schema.site_explorer.SiteExplorer.init, web_schema.site_explorer.SiteExplorer._setup_resource_blocking, web_schema.site_explorer.SiteExplorer._resolve_platform_url, web_schema.site_explorer.SiteExplorer._goto_with_retry, web_schema.site_explorer.SiteExplorer._try_github_api, web_schema.site_explorer.SiteExplorer._detect_docs_framework, web_schema.site_explorer.SiteExplorer._record_timing, web_schema.site_explorer.SiteExplorer.get_timing_stats, web_schema.site_explorer.SiteExplorer._fallback_static_scrape, web_schema.site_explorer.SiteExplorer.find_content
Main class for Natural Language to Command transformation.
This class orchestrates the transformati
- Methods: 23
- Key Methods: core.core_transform.NLP2CMD.init, core.core_transform.NLP2CMD.transform, core.core_transform.NLP2CMD.transform_ir, core.core_transform.NLP2CMD._normalize_entities, core.core_transform.NLP2CMD._normalize_entities_sql, core.core_transform.NLP2CMD._normalize_entities_shell, core.core_transform.NLP2CMD._normalize_entities_docker, core.core_transform.NLP2CMD._normalize_entities_kubernetes, core.core_transform.NLP2CMD._normalize_entities_dql, core.core_transform.NLP2CMD._normalize_shell_entities
Minimal adapter that turns NL into dom_dql.v1 navigation (Playwright).
- Methods: 22
- Key Methods: adapters.browser.BrowserAdapter.init, adapters.browser.BrowserAdapter._extract_url, adapters.browser.BrowserAdapter._extract_type_text, adapters.browser.BrowserAdapter._has_type_action, adapters.browser.BrowserAdapter._should_explore_for_content, adapters.browser.BrowserAdapter._should_explore_for_forms, adapters.browser.BrowserAdapter._has_fill_form_action, adapters.browser.BrowserAdapter._has_press_enter, adapters.browser.BrowserAdapter._has_form_action, adapters.browser.BrowserAdapter._has_submit_action
- Inherits: BaseDSLAdapter
Kubernetes adapter for kubectl commands and manifests.
Transforms natural language into kubectl com
- Methods: 22
- Key Methods: adapters.kubernetes.KubernetesAdapter.init, adapters.kubernetes.KubernetesAdapter._parse_cluster_context, adapters.kubernetes.KubernetesAdapter._normalize_resource, adapters.kubernetes.KubernetesAdapter.generate, adapters.kubernetes.KubernetesAdapter._generate_get, adapters.kubernetes.KubernetesAdapter._generate_describe, adapters.kubernetes.KubernetesAdapter._generate_apply, adapters.kubernetes.KubernetesAdapter._generate_delete, adapters.kubernetes.KubernetesAdapter._generate_scale, adapters.kubernetes.KubernetesAdapter._generate_logs
- Inherits: BaseDSLAdapter
Decomposes complex NL commands into ActionPlan via rules or LLM.
Costs:
- Rule match (known service
- Methods: 21
- Key Methods: automation.action_planner.ActionPlanner.init, automation.action_planner.ActionPlanner.decompose, automation.action_planner.ActionPlanner.decompose_sync, automation.action_planner.ActionPlanner._try_rule_decomposition, automation.action_planner.ActionPlanner._resolve_service, automation.action_planner.ActionPlanner._wants_new_tab, automation.action_planner.ActionPlanner._wants_existing_firefox, automation.action_planner.ActionPlanner._wants_create_key, automation.action_planner.ActionPlanner._build_navigation_steps, automation.action_planner.ActionPlanner._build_session_check_steps
Optimized semantic similarity matcher using sentence embeddings.
Features:
- Handles typos and para
- Methods: 20
- Key Methods: generation.semantic_matcher_optimized.OptimizedSemanticMatcher.init, generation.semantic_matcher_optimized.OptimizedSemanticMatcher._preload_models, generation.semantic_matcher_optimized.OptimizedSemanticMatcher._get_model, generation.semantic_matcher_optimized.OptimizedSemanticMatcher._get_polish_model, generation.semantic_matcher_optimized.OptimizedSemanticMatcher._load_model, generation.semantic_matcher_optimized.OptimizedSemanticMatcher.add_intent, generation.semantic_matcher_optimized.OptimizedSemanticMatcher.add_intents_batch, generation.semantic_matcher_optimized.OptimizedSemanticMatcher._encode_text, generation.semantic_matcher_optimized.OptimizedSemanticMatcher._encode_batch, generation.semantic_matcher_optimized.OptimizedSemanticMatcher._encode_with_cache
Manages the .nlp2cmd/ learned schema cache.
Usage: cache = EvolutionaryCache() result = cac
- Methods: 20
- Key Methods: generation.evolutionary_cache.EvolutionaryCache.init, generation.evolutionary_cache.EvolutionaryCache._ensure_dir, generation.evolutionary_cache.EvolutionaryCache._load, generation.evolutionary_cache.EvolutionaryCache.save, generation.evolutionary_cache.EvolutionaryCache.lookup, generation.evolutionary_cache.EvolutionaryCache._ask_teacher, generation.evolutionary_cache.EvolutionaryCache._clean, generation.evolutionary_cache.EvolutionaryCache._try_template_pipeline, generation.evolutionary_cache.EvolutionaryCache._try_english_pipeline, generation.evolutionary_cache.EvolutionaryCache._try_polish_template
Unified TOON format parser with hierarchical access
- Methods: 20
- Key Methods: parsing.toon_parser.ToonParser.init, parsing.toon_parser.ToonParser.parse_file, parsing.toon_parser.ToonParser.parse_content, parsing.toon_parser.ToonParser._parse_lines, parsing.toon_parser.ToonParser._parse_array_node, parsing.toon_parser.ToonParser._parse_object_node, parsing.toon_parser.ToonParser._parse_key_value, parsing.toon_parser.ToonParser._parse_value, parsing.toon_parser.ToonParser._extract_categories, parsing.toon_parser.ToonParser.get_category
Validates pre/post conditions for ActionPlan steps.
Checks clipboard state, DOM elements, environme
- Methods: 19
- Key Methods: automation.step_validator.StepValidator.init, automation.step_validator.StepValidator.metrics, automation.step_validator.StepValidator.start_step, automation.step_validator.StepValidator.finish_step, automation.step_validator.StepValidator.get_clipboard, automation.step_validator.StepValidator.set_clipboard, automation.step_validator.StepValidator.snapshot_clipboard, automation.step_validator.StepValidator.clipboard_changed, automation.step_validator.StepValidator.validate_pre_navigate, automation.step_validator.StepValidator.validate_pre_check_session
Advanced mouse control via Playwright with human-like movements.
Supports:
- Click, double-click, r
- Methods: 19
- Key Methods: automation.mouse_controller.MouseController.init, automation.mouse_controller.MouseController._jitter, automation.mouse_controller.MouseController._human_delay, automation.mouse_controller.MouseController.click, automation.mouse_controller.MouseController.double_click, automation.mouse_controller.MouseController.right_click, automation.mouse_controller.MouseController.move_to, automation.mouse_controller.MouseController.drag, automation.mouse_controller.MouseController._compute_bezier, automation.mouse_controller.MouseController.bezier_move
Language-agnostic fuzzy matcher using JSON schemas.
Works with any language by using character-leve
- Methods: 19
- Key Methods: generation.fuzzy_schema_matcher.FuzzySchemaMatcher.init, generation.fuzzy_schema_matcher.FuzzySchemaMatcher.load_schema, generation.fuzzy_schema_matcher.FuzzySchemaMatcher.add_phrase, generation.fuzzy_schema_matcher.FuzzySchemaMatcher.add_phrases_from_dict, generation.fuzzy_schema_matcher.FuzzySchemaMatcher._build_index, generation.fuzzy_schema_matcher.FuzzySchemaMatcher._index_phrase, generation.fuzzy_schema_matcher.FuzzySchemaMatcher._normalize, generation.fuzzy_schema_matcher.FuzzySchemaMatcher._remove_spaces, generation.fuzzy_schema_matcher.FuzzySchemaMatcher._get_ngrams, generation.fuzzy_schema_matcher.FuzzySchemaMatcher._ngram_similarity
Dynamic adapter that uses extracted schemas instead of hardcoded patterns.
This adapter can work wi
- Methods: 19
- Key Methods: adapters.dynamic.DynamicAdapter.init, adapters.dynamic.DynamicAdapter.check_safety, adapters.dynamic.DynamicAdapter._load_common_commands, adapters.dynamic.DynamicAdapter.register_schema_source, adapters.dynamic.DynamicAdapter.generate, adapters.dynamic.DynamicAdapter._find_matching_commands, adapters.dynamic.DynamicAdapter._generate_from_schema, adapters.dynamic.DynamicAdapter._generate_make_command, adapters.dynamic.DynamicAdapter._generate_web_dql, adapters.dynamic.DynamicAdapter._generate_from_template
- Inherits: BaseDSLAdapter
Adapter for desktop GUI automation via VNC/noVNC + xdotool/wmctrl.
- Methods: 19
- Key Methods: adapters.desktop.DesktopAdapter.init, adapters.desktop.DesktopAdapter.generate, adapters.desktop.DesktopAdapter._build_actions, adapters.desktop.DesktopAdapter._build_email_actions, adapters.desktop.DesktopAdapter._build_email_compose, adapters.desktop.DesktopAdapter._detect_followup_actions, adapters.desktop.DesktopAdapter.detect_intent, adapters.desktop.DesktopAdapter._extract_app_name, adapters.desktop.DesktopAdapter._extract_quoted_text, adapters.desktop.DesktopAdapter._extract_shortcut
- Inherits: BaseAdapter
Complete rule-based NL → DSL pipeline.
Combines intent detection, entity extraction, and template g
- Methods: 18
- Key Methods: generation.pipeline.RuleBasedPipeline.init, generation.pipeline.RuleBasedPipeline.complex_detector, generation.pipeline.RuleBasedPipeline.action_planner, generation.pipeline.RuleBasedPipeline.evolutionary_cache, generation.pipeline.RuleBasedPipeline.enhanced_detector, generation.pipeline.RuleBasedPipeline.process, generation.pipeline.RuleBasedPipeline.process_steps, generation.pipeline.RuleBasedPipeline._process_with_detection, generation.pipeline.RuleBasedPipeline._split_sentences, generation.pipeline.RuleBasedPipeline._persist_result
Single source of truth for browser automation config.
Loads from data/browser_config/*.yaml wit
- Methods: 18
- Key Methods: web_schema.browser_config.BrowserConfigLoader.init, web_schema.browser_config.BrowserConfigLoader._ensure_loaded, web_schema.browser_config.BrowserConfigLoader.get_dismiss_selectors, web_schema.browser_config.BrowserConfigLoader.get_submit_selectors, web_schema.browser_config.BrowserConfigLoader.get_type_selectors, web_schema.browser_config.BrowserConfigLoader.get_contact_page_link_selectors, web_schema.browser_config.BrowserConfigLoader.get_common_contact_paths, web_schema.browser_config.BrowserConfigLoader.get_contact_url_keywords, web_schema.browser_config.BrowserConfigLoader.get_contact_page_keywords, web_schema.browser_config.BrowserConfigLoader.get_junk_field_types
Docker adapter for CLI and Compose operations.
Transforms natural language into Docker commands wit
- Methods: 18
- Key Methods: adapters.docker.DockerAdapter.init, adapters.docker.DockerAdapter._parse_compose_context, adapters.docker.DockerAdapter.generate, adapters.docker.DockerAdapter._generate_run, adapters.docker.DockerAdapter._generate_stop, adapters.docker.DockerAdapter._generate_remove, adapters.docker.DockerAdapter._generate_build, adapters.docker.DockerAdapter._generate_pull, adapters.docker.DockerAdapter._generate_compose_up, adapters.docker.DockerAdapter._generate_compose_down
- Inherits: BaseDSLAdapter
Key functions that process and transform data:
- Output to: command.strip, cmd.lower, any, any, re.search
- Output to: command.strip, cmd.lower, any, any, re.search
Return process CPU time in seconds (user+system).
- Output to: self.process.cpu_times, float, float, getattr, getattr
Format metrics for display.
- Output to: None.join, lines.append
Format metrics from last execution for display.
- Output to: monitoring.resources.ResourceMonitor.get_last_metrics, _monitor.format_metrics
Return process CPU time in seconds (user+system).
- Output to: self.process.cpu_times, float, float, getattr, getattr
Format metrics for display.
- Output to: None.join, lines.append
- Output to: _ProcessStub, _MemInfo, _CpuTimes
- Output to: _ProcessStub, _MemInfo, _CpuTimes
Format token cost estimate for display.
- Output to: None.join, lines.append
Format token cost estimate for display.
- Output to: _estimator.format_estimate
Parse metrics string like '⏱️ Time: 2.6ms | 💻 CPU: 0.0% | 🧠 RAM: 53.5MB (0.1%) | ⚡ Energy: 0.022mJ'
- Output to: None.strip, None.strip, None.strip, None.strip, float
Format token cost estimate for display.
- Output to: None.join, lines.append
- Output to: self._select_action, self._extract_params, self._render_dsl, str, ActionIR
- Output to: self._select_action, self._extract_params, self._render_dsl, str, ActionIR
Parse LLM response into step dictionaries.
- Output to: isinstance, json.loads, isinstance, s.get, s.get
Parse LLM response into step dictionaries.
- Output to: isinstance, json.loads, isinstance, s.get, s.get
Validate before navigation step.
- Output to: params.get, ValidationResult, ValidationResult, url.startswith, ValidationResult
Validate before session check — page must be loaded.
- Output to: ValidationResult, ValidationResult, ValidationResult
Validate before key extraction — must be on correct page.
- Output to: self.snapshot_clipboard, ValidationResult, ValidationResult, params.get, ValidationResult
Validate before prompting for secret — check if already available.
- Output to: params.get, None.strip, os.environ.get, variables.items, ValidationResult
Validate after navigation — page loaded?
- Output to: ValidationResult, params.get, page.title, ValidationResult, ValidationResult
Validate after session check — is user logged in?
- Output to: ValidationResult, ValidationResult, params.get, ValidationResult
Validate after key extraction — did we get a valid key?
- Output to: params.get, self.clipboard_changed, ValidationResult, ValidationResult, re.match
Validate after saving to .env — does file contain the variable?
- Output to: params.get, params.get, ValidationResult, ValidationResult, open
Functions exposed as public API (no underscore prefix):
pipeline_runner_plans.PlanExecutionMixin.execute_action_plan- 261 callspipeline_runner_plans.execute_action_plan- 261 callscli.commands.run.handle_run_mode- 261 callsadapters.canvas.CanvasAdapter.execute_drawing_plan- 193 callsadapters.canvas.execute_drawing_plan- 193 callscli.main.main- 115 callsexecution.runner.ExecutionRunner.run_command- 109 callsexecution.runner.run_command- 109 callsgeneration.train_model.train_all_models- 86 callsweb_schema.form_handler.FormHandler.detect_form_fields- 83 callsweb_schema.form_handler.detect_form_fields- 83 callsweb_schema.site_explorer.SiteExplorer.find_form- 77 callsweb_schema.site_explorer.find_form- 77 callsadapters.browser.BrowserAdapter.generate- 66 callsadapters.browser.generate- 66 callscli.commands.generate.handle_generate_query- 66 callsweb_schema.site_explorer.SiteExplorer.find_content- 60 callsweb_schema.site_explorer.find_content- 60 callsgeneration.evolutionary_cache.EvolutionaryCache.lookup- 57 callsgeneration.evolutionary_cache.lookup- 57 callscli.debug_info.show_schema_info- 57 callscli.debug_info.show_decision_tree_info- 56 callsvalidators.DockerValidator.validate- 52 callsfeedback.FeedbackAnalyzer.analyze- 51 callsfeedback.analyze- 51 callsschema_extraction.script_extractors.ShellScriptExtractor.extract_from_source- 51 callsstorage.versioned_store.demonstrate_version_management- 50 callsexecution.runner.ExecutionRunner.run_with_recovery- 50 callsexecution.runner.run_with_recovery- 50 callsservice.cli.add_service_command- 45 callsgeneration.pipeline.RuleBasedPipeline.process- 43 callsgeneration.pipeline.process- 43 callsvalidators.KubernetesValidator.validate- 43 callsutils.yaml_compat.safe_load- 42 callsschema_extraction.script_extractors.MakefileExtractor.extract_from_source- 41 callsschema_extraction.script_extractors.extract_from_source- 41 callscli.history.show_stats- 39 callsgeneration.thermodynamic.ThermodynamicGenerator.generate- 38 callscli.commands.doctor.doctor_command- 37 callsweb_schema.form_handler.FormHandler.fill_form- 35 calls
How components interact:
graph TD
_execute_plan_step --> _resolve_plan_variab
_execute_plan_step --> Console
_execute_plan_step --> print
_execute_plan_step --> get
_execute_plan_step --> goto
_run_dom_multi_actio --> get
_run_dom_multi_actio --> Console
_run_dom_multi_actio --> _MarkdownConsoleWrap
_run_dom_multi_actio --> RunnerResult
execute_action_plan --> Console
execute_action_plan --> frozenset
execute_action_plan --> print
execute_action_plan --> enumerate
execute_drawing_plan --> get
execute_drawing_plan --> MouseController
execute_drawing_plan --> enumerate
execute_drawing_plan --> loads
run_command --> time
run_command --> print_markdown_block
run_command --> ExecutionResult
run_command --> append
run_command --> Popen
_register_builtin_ac --> register
_execute_desktop_pla --> _resolve_plan_variab
_execute_desktop_pla --> str
_execute_desktop_pla --> _detect_desktop_back
_execute_desktop_pla --> ValueError
_generate_rule_based --> search
_generate_rule_based --> strip
_generate_rule_based --> lower
When working with this codebase:
- Entry Points: Start analysis from the entry points listed above
- Core Logic: Focus on classes with many methods (top of 'Key Classes' section)
- Data Flow: Follow data transformation functions for understanding data pipeline
- Process Flows: Use the flow diagrams to understand execution paths
- API Surface: Public API functions show intended external interface
- Patterns: Behavioral patterns indicate reusable design approaches
You are analyzing a Python codebase with the above architecture.
- Respond with code changes that preserve existing call graph structure
- Maintain the architectural patterns identified
- Respect the public API surface
- Consider the process flows when suggesting modifications