Table of Contents
Fetching ...

MOOSEnger -- a Domain-Specific AI Agent for the MOOSE Ecosystem

Mengnan Li, Jason Miller, Zachary Prince, Alexander Lindsay, Cody Permann

TL;DR

MOOSEnger offers a conversational workflow that turns natural-language intent into runnable inputs by combining retrieval-augmented generation over curated docs/examples with deterministic, MOOSE-aware parsing, validation, and execution tools.

Abstract

MOOSEnger is a tool-enabled AI agent tailored to the Multiphysics Object-Oriented Simulation Environment (MOOSE). MOOSE cases are specified in HIT ".i" input files; the large object catalog and strict syntax make initial setup and debugging slow. MOOSEnger offers a conversational workflow that turns natural-language intent into runnable inputs by combining retrieval-augmented generation over curated docs/examples with deterministic, MOOSE-aware parsing, validation, and execution tools. A core-plus-domain architecture separates reusable agent infrastructure (configuration, registries, tool dispatch, retrieval services, persistence, and evaluation) from a MOOSE plugin that adds HIT-based parsing, syntax-preserving ingestion of input files, and domain-specific utilities for input repair and checking. An input precheck pipeline removes hidden formatting artifacts, fixes malformed HIT structure with a bounded grammar-constrained loop, and resolves invalid object types via similarity search over an application syntax registry. Inputs are then validated and optionally smoke-tested with the MOOSE runtime in the loop via an MCP-backed execution backend (with local fallback), translating solver diagnostics into iterative verify-and-correct updates. Built-in evaluation reports RAG metrics (faithfulness, relevancy, context precision/recall) and end-to-end success by actual execution. On a 125-prompt benchmark spanning diffusion, transient heat conduction, solid mechanics, porous flow, and incompressible Navier--Stokes, MOOSEnger achieves a 0.93 execution pass rate versus 0.08 for an LLM-only baseline.

MOOSEnger -- a Domain-Specific AI Agent for the MOOSE Ecosystem

TL;DR

MOOSEnger offers a conversational workflow that turns natural-language intent into runnable inputs by combining retrieval-augmented generation over curated docs/examples with deterministic, MOOSE-aware parsing, validation, and execution tools.

Abstract

MOOSEnger is a tool-enabled AI agent tailored to the Multiphysics Object-Oriented Simulation Environment (MOOSE). MOOSE cases are specified in HIT ".i" input files; the large object catalog and strict syntax make initial setup and debugging slow. MOOSEnger offers a conversational workflow that turns natural-language intent into runnable inputs by combining retrieval-augmented generation over curated docs/examples with deterministic, MOOSE-aware parsing, validation, and execution tools. A core-plus-domain architecture separates reusable agent infrastructure (configuration, registries, tool dispatch, retrieval services, persistence, and evaluation) from a MOOSE plugin that adds HIT-based parsing, syntax-preserving ingestion of input files, and domain-specific utilities for input repair and checking. An input precheck pipeline removes hidden formatting artifacts, fixes malformed HIT structure with a bounded grammar-constrained loop, and resolves invalid object types via similarity search over an application syntax registry. Inputs are then validated and optionally smoke-tested with the MOOSE runtime in the loop via an MCP-backed execution backend (with local fallback), translating solver diagnostics into iterative verify-and-correct updates. Built-in evaluation reports RAG metrics (faithfulness, relevancy, context precision/recall) and end-to-end success by actual execution. On a 125-prompt benchmark spanning diffusion, transient heat conduction, solid mechanics, porous flow, and incompressible Navier--Stokes, MOOSEnger achieves a 0.93 execution pass rate versus 0.08 for an LLM-only baseline.
Paper Structure (60 sections, 4 figures, 1 table)

This paper contains 60 sections, 4 figures, 1 table.

Figures (4)

  • Figure 1: MOOSEnger workflow. Left: offline ingestion imports heterogeneous MOOSE sources into a vector store. Right: at runtime, the CLI assembles a domain-configured, tool-enabled agent that retrieves context, drafts/edits a MOOSE input file, prechecks it, and optionally validates/executes it to provide grounded feedback and runnable artifacts.
  • Figure 2: Core-plus-domain architecture of MOOSEnger. Domain plugins provide prompt packs, agent profiles, tools, import pipelines, and configuration, which the plugin loader registers into core registries. Via the or optional server, the agent orchestrator runs an iterative LLM–tools–context loop using the prompt/context managers, RAG manager (vector store), workspace/session services, and runtime resources, with external backends for LLM inference and optional MOOSE execution (/local).
  • Figure 3: MOOSEnger input-precheck workflow for LLM-generated MOOSE inputs. The initial input file is first sanitized to remove formatting artifacts, then repaired/validated with a grammar-constrained check and a syntax-aware object/type verification step. The resulting input can be further exercised via a lightweight MOOSE syntax check and an optional short simulation smoke test. The loop repeats until the input passes all checks or a maximum iteration budget is reached.
  • Figure 4: Example MOOSEnger evaluation report summarizing RAG performance, including aggregate metrics (e.g., faithfulness, answer relevancy, context recall/precision) and per-query breakdowns.