Package uno.anahata.ai.nb.tools


package uno.anahata.ai.nb.tools
This package contains the heart of the Anahata NetBeans AI Plugin's unique capabilities. It provides a suite of AI-callable tools that grant the model the ability to programmatically "see" and interact with the Apache NetBeans IDE in a deep and context-aware manner.

Core Tool Categories:

  • Project & IDE Interaction:
    • Projects: Tools for discovering, querying, and getting detailed overviews of open NetBeans projects.
    • IDE: General tools for interacting with the IDE itself, most notably providing real-time access to all compilation errors and warnings via getAllIDEAlerts.
    • TopComponents: Allows the AI to list and get detailed information about all open windows and tabs in the IDE.
    • Output: Provides tools to read and interact with the content of the NetBeans Output Window.
  • Code Analysis & Manipulation:
    • Coding: Provides the critical suggestChange tool, which presents a modal diff view to the user for approving code modifications.
    • Editor: Allows the AI to open files in the editor and navigate to specific lines.
    • Refactor: Exposes the NetBeans refactoring engine, allowing the AI to perform safe, programmatic renames and other refactoring operations.
    • JavaIntrospection, JavaSources, JavaDocs, and JavaAnalysis: A powerful suite for deep code analysis. They allow the AI to inspect class structures, find types, retrieve Javadoc, and read source code from projects, dependency JARs, or the JDK itself.
  • Build & Execution:
    • invalid reference
      uno.anahata.ai.nb.tools.deprecated.MavenTools
      : A consolidated "super-tool" for all Maven-related operations, including searching for dependencies, modifying the pom.xml, and executing build goals. This class replaces the functionality of the now-deprecated Maven, MavenPom, and MavenSearch tools.
    • NetBeansProjectJVM: A powerful tool that enables a "hot-reload" workflow by compiling and executing code within the specific classpath and context of a NetBeans project.
    • Git: Integrates with the IDE's Git support to perform actions like opening the commit dialog.
These tools collectively transform the AI from a simple text generator into a true development partner integrated into the NetBeans environment.
  • Classes
    Class
    Description
    Tools related to coding tasks and modifying source files.
    Provides tools for interacting with the NetBeans editor, such as opening files and navigating to specific lines.
    A Core Function provider that groups all functions for interacting with Git.
    Provides tools for interacting with the NetBeans IDE, such as reading logs and scanning for project alerts.
    Provides advanced Java code analysis tools that inspect relationships and usages within the source code.
    Provides tools for retrieving Javadoc and source information for classes and methods.
    Provides robust, API-driven tools for Java type introspection, similar to the NetBeans Navigator.
    Provides tools for retrieving Java source code.
    Consolidated "super-tool" class for all Maven-related AI operations.
    A NetBeans-aware wrapper around the core RunningJVM tool.
     
     
    A tool for performing programmatic refactoring operations within the NetBeans IDE.
    A tool for managing and inspecting active Anahata AI sessions within NetBeans.