Updated Display to wait for Ollama to return before continuing
Updated GeniusTools.java to reflect correctly after "The Great Refector"
Temporarly comented out things from API after making Ollama be more threaded pending correction and expantion
Replaces ad-hoc system-prompt string construction with a structured
builder (Identity, Context, Capabilities, Behavior, Output), plus
OllamaObject#setSystemMessage/setSystemPrompt for replacing the
system message post-construction instead of only at build time.
- Renamed package from me.zacharias.chat to me.neurodock across all 8 modules
- Updated Gradle group from me.zacharias.neurodock to me.neurodock
- Updated README and other files to reflect new Gitea org URL (Chat_things → neurodock)
Dev note: 95 files touched. The Great Refactor is complete, long may it rest.
- Extracted Core#constructCore into: initDirectories(), ensureDir(String),
initOllamaUrl(), initLogWriter(), rotateLogFile(), initScheduler(),
initShutdownHook(), closeLogWriter(), saveMessages(),
buildMessagesArray(), writeMessagesTo(File, JSONArray)
- Overloaded constructors for Core
- Cleaned up some Javadocs
Fixed error(AddArrayMemory)
- Line 51 used the wrong value
Updated minor version for(::Core)
Dev note: Long overdue — that generic init block was ugly and is finally
laid to rest.
- Refactored `CoreMemory` to support versioning (v2) and dual-memory types: `MAPPED_MEMORY` (key-value) and `ARRAYED_MEMORY` (sequential).
- Added automatic migration logic for v1 memory files to v2.
- Introduced new memory tools: `AddArrayMemory`, `GetArrayMemory`, and `GetArrayedMemories`.
- Renamed `OllamaToolRespnce` to `OllamaToolResponse` and added `empty()` factory methods for better error handling.
- Updated multiple function tools (e.g., `GetMemoryFunction`, `GetMemoriesFunction`, `APITool`, `GetWikiPageText`) to use the new `OllamaToolResponse` and `Optional`-based memory retrieval.
- Improved null safety by adding `@NotNull` annotations to tool implementations.
`OllamaPerameter.OllamaPerameterBuilder#addProperty(String, Type, String, boolean)` did not respect whether it's required or not
Corrected so `OllamaPerameter.OllamaPerameterBuilder#removeProperty(String)` also removes it from the required list
Corrected Javadocs
made OllamaPerameter.OllamaPerameterBuilder.Type#type a final
- Move plugin and tool-related classes to a dedicated `Plugin-API` module.
- Introduce a new plugin lifecycle (`onInit`, `onEnable`, `onDisable`) and a more robust `Tool` API.
- Refactor `Core` to use `PrintAdvanceMessageHandler` for improved handling of assistant messages, tool responses, and errors.
- Rename `PluginLoader` to `Loader` and migrate it to `me.zacharias.chat.plugin.loader`.
- Update build configurations and Java toolchains across modules.
- Clean up obsolete plugin annotations and interfaces in the `Core` module.