All Packages
Package Summary
Package
Description
Provides the core, high-level classes that orchestrate the AI chat application.
Provides the core configuration framework for chat sessions.
Provides the core classes and subpackages for managing the chat conversation's state and history.
Defines the framework for dynamically injecting contextual information into the AI model's prompt.
This package contains a set of concrete implementations of the
ContextProvider
interface, each designed to inject a specific type of information into the system prompt, creating a rich and
dynamic context for the AI.Provides the logic for context pruning.
Manages the persistence of chat sessions.
This package provides a robust framework for managing "stateful resources" local
resources, primarily files, whose state can change independently of the chat
conversation.
This package serves as the primary bridge between the application and the Google Gemini API.
Provides a comprehensive suite of internal utility classes that support the core functionalities of the Gemini client.
Contains custom serializers for the Kryo serialization framework.
Provides a comprehensive framework for handling audio and other media,
neatly separating high-level, AI-callable tools from their low-level
implementations.
Defines the core domain model for the AI assistant, providing a model-agnostic
representation of the conversation and its components.
Defines the domain model for the tool (function) calling subsystem.
Provides a robust, event-driven framework for monitoring and broadcasting the
real-time operational status of the chat application.
Provides a comprehensive and well-structured Swing-based user interface for the AI assistant.
Provides configuration UI components for the AI assistant.
Provides UI-specific implementations of the system instruction framework.
Provides UI components for managing the conversation context.
Provides UI components for managing the conversation context providers.
Provides a framework of specialized renderers for displaying different types of message parts.
Provides an abstraction layer for supplying syntax highlighting engines (EditorKits) to the UI.
Provides UI-specific local tool implementations.
Contains the Service Provider Interface (SPI) for UI-specific local tools.
Provides the core framework for defining and managing local tools (functions) that the AI model can execute.
Provides the logic for generating JSON schemas from Java classes and methods.
Provides a Service Provider Interface (SPI) with a collection of pre-built, general-purpose local tools.
Contains Plain Old Java Objects (POJOs) used as data transfer objects for the tools in the SPI.
