NetBeans platform version: RELEASE230
*/
-package io.github.nbclaudecodegui;
+package io.github.nbplugins.claudecodegui;
diff --git a/src/main/java/io/github/nbclaudecodegui/process/ClaudeProcess.java b/src/main/java/io/github/nbplugins/claudecodegui/process/ClaudeProcess.java
similarity index 98%
rename from src/main/java/io/github/nbclaudecodegui/process/ClaudeProcess.java
rename to src/main/java/io/github/nbplugins/claudecodegui/process/ClaudeProcess.java
index c3acdebd..9b917b1e 100644
--- a/src/main/java/io/github/nbclaudecodegui/process/ClaudeProcess.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/process/ClaudeProcess.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.process;
+package io.github.nbplugins.claudecodegui.process;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
@@ -6,10 +6,10 @@
import com.fasterxml.jackson.databind.node.ObjectNode;
import com.pty4j.PtyProcess;
import com.pty4j.PtyProcessBuilder;
-import io.github.nbclaudecodegui.model.SessionMode;
-import io.github.nbclaudecodegui.settings.ClaudeCodePreferences;
-import io.github.nbclaudecodegui.settings.ClaudeProfile;
-import io.github.nbclaudecodegui.settings.ClaudeProfileStore;
+import io.github.nbplugins.claudecodegui.model.SessionMode;
+import io.github.nbplugins.claudecodegui.settings.ClaudeCodePreferences;
+import io.github.nbplugins.claudecodegui.settings.ClaudeProfile;
+import io.github.nbplugins.claudecodegui.settings.ClaudeProfileStore;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
@@ -175,7 +175,7 @@ public PtyProcess start(String workingDir, ClaudeProfile profile, String extraCl
+ ", port=" + (mcp != null ? mcp.getServerPort() : -1));
if (mcp != null && mcp.isServerRunning()) {
int port = mcp.getServerPort();
- if (io.github.nbclaudecodegui.settings.ClaudeCodePreferences.isMcpEnabled()) {
+ if (io.github.nbplugins.claudecodegui.settings.ClaudeCodePreferences.isMcpEnabled()) {
// Pass MCP server config via --mcp-config (Claude 2.x no longer reads
// mcpServers from settings.local.json; --mcp-config works in TUI mode).
// On Windows, inline JSON gets quote-stripped by CreateProcess, so we
diff --git a/src/main/java/io/github/nbclaudecodegui/process/ClaudeSessionStore.java b/src/main/java/io/github/nbplugins/claudecodegui/process/ClaudeSessionStore.java
similarity index 98%
rename from src/main/java/io/github/nbclaudecodegui/process/ClaudeSessionStore.java
rename to src/main/java/io/github/nbplugins/claudecodegui/process/ClaudeSessionStore.java
index 47657820..f416ead4 100644
--- a/src/main/java/io/github/nbclaudecodegui/process/ClaudeSessionStore.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/process/ClaudeSessionStore.java
@@ -1,9 +1,9 @@
-package io.github.nbclaudecodegui.process;
+package io.github.nbplugins.claudecodegui.process;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
-import io.github.nbclaudecodegui.model.SavedSession;
-import io.github.nbclaudecodegui.settings.ClaudeCodePreferences;
+import io.github.nbplugins.claudecodegui.model.SavedSession;
+import io.github.nbplugins.claudecodegui.settings.ClaudeCodePreferences;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
diff --git a/src/main/java/io/github/nbclaudecodegui/process/ModelMenuParser.java b/src/main/java/io/github/nbplugins/claudecodegui/process/ModelMenuParser.java
similarity index 98%
rename from src/main/java/io/github/nbclaudecodegui/process/ModelMenuParser.java
rename to src/main/java/io/github/nbplugins/claudecodegui/process/ModelMenuParser.java
index d3518c9f..3a4eb62a 100644
--- a/src/main/java/io/github/nbclaudecodegui/process/ModelMenuParser.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/process/ModelMenuParser.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.process;
+package io.github.nbplugins.claudecodegui.process;
import java.util.ArrayList;
import java.util.List;
diff --git a/src/main/java/io/github/nbclaudecodegui/process/PtyTtyConnector.java b/src/main/java/io/github/nbplugins/claudecodegui/process/PtyTtyConnector.java
similarity index 97%
rename from src/main/java/io/github/nbclaudecodegui/process/PtyTtyConnector.java
rename to src/main/java/io/github/nbplugins/claudecodegui/process/PtyTtyConnector.java
index 4628d02f..7a870694 100644
--- a/src/main/java/io/github/nbclaudecodegui/process/PtyTtyConnector.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/process/PtyTtyConnector.java
@@ -1,9 +1,9 @@
-package io.github.nbclaudecodegui.process;
+package io.github.nbplugins.claudecodegui.process;
import com.jediterm.terminal.TtyConnector;
import com.pty4j.PtyProcess;
import com.pty4j.WinSize;
-import io.github.nbclaudecodegui.settings.ClaudeCodePreferences;
+import io.github.nbplugins.claudecodegui.settings.ClaudeCodePreferences;
import java.awt.Dimension;
import java.io.IOException;
import java.io.InputStreamReader;
diff --git a/src/main/java/io/github/nbclaudecodegui/process/ScreenContentDetector.java b/src/main/java/io/github/nbplugins/claudecodegui/process/ScreenContentDetector.java
similarity index 99%
rename from src/main/java/io/github/nbclaudecodegui/process/ScreenContentDetector.java
rename to src/main/java/io/github/nbplugins/claudecodegui/process/ScreenContentDetector.java
index d0931722..ae000c00 100644
--- a/src/main/java/io/github/nbclaudecodegui/process/ScreenContentDetector.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/process/ScreenContentDetector.java
@@ -1,8 +1,8 @@
-package io.github.nbclaudecodegui.process;
+package io.github.nbplugins.claudecodegui.process;
-import io.github.nbclaudecodegui.model.ChoiceMenuModel;
-import io.github.nbclaudecodegui.model.EditMode;
-import io.github.nbclaudecodegui.settings.ClaudeCodePreferences;
+import io.github.nbplugins.claudecodegui.model.ChoiceMenuModel;
+import io.github.nbplugins.claudecodegui.model.EditMode;
+import io.github.nbplugins.claudecodegui.settings.ClaudeCodePreferences;
import java.util.ArrayList;
import java.util.List;
diff --git a/src/main/java/io/github/nbclaudecodegui/process/StreamJsonParser.java b/src/main/java/io/github/nbplugins/claudecodegui/process/StreamJsonParser.java
similarity index 99%
rename from src/main/java/io/github/nbclaudecodegui/process/StreamJsonParser.java
rename to src/main/java/io/github/nbplugins/claudecodegui/process/StreamJsonParser.java
index a4946183..029a0fbe 100644
--- a/src/main/java/io/github/nbclaudecodegui/process/StreamJsonParser.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/process/StreamJsonParser.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.process;
+package io.github.nbplugins.claudecodegui.process;
/**
diff --git a/src/main/java/io/github/nbclaudecodegui/settings/ClaudeCodeOptionsPanel.java b/src/main/java/io/github/nbplugins/claudecodegui/settings/ClaudeCodeOptionsPanel.java
similarity index 98%
rename from src/main/java/io/github/nbclaudecodegui/settings/ClaudeCodeOptionsPanel.java
rename to src/main/java/io/github/nbplugins/claudecodegui/settings/ClaudeCodeOptionsPanel.java
index 5805c2af..17f123e9 100644
--- a/src/main/java/io/github/nbclaudecodegui/settings/ClaudeCodeOptionsPanel.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/settings/ClaudeCodeOptionsPanel.java
@@ -1,11 +1,11 @@
-package io.github.nbclaudecodegui.settings;
+package io.github.nbplugins.claudecodegui.settings;
-import io.github.nbclaudecodegui.model.FavoriteEntry;
-import io.github.nbclaudecodegui.model.PromptFavoritesStore;
+import io.github.nbplugins.claudecodegui.model.FavoriteEntry;
+import io.github.nbplugins.claudecodegui.model.PromptFavoritesStore;
import javax.swing.DefaultListCellRenderer;
import javax.swing.JComboBox;
import javax.swing.JList;
-import io.github.nbclaudecodegui.ui.FavoritesPanel;
+import io.github.nbplugins.claudecodegui.ui.FavoritesPanel;
import java.awt.BorderLayout;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
@@ -478,7 +478,7 @@ void load() {
autoPlanPreviewCheck.setSelected(ClaudeCodePreferences.isAutoPlanPreview());
startNewSessionCheck.setSelected(
ClaudeCodePreferences.getContextMenuSessionMode()
- == io.github.nbclaudecodegui.model.SessionMode.NEW);
+ == io.github.nbplugins.claudecodegui.model.SessionMode.NEW);
sessionListLimitSpinner.setValue(ClaudeCodePreferences.getSessionListLimit());
dockModeCombo.setSelectedIndex(ClaudeCodePreferences.getSessionDockMode().ordinal());
mdPreviewDockModeCombo.setSelectedIndex(
@@ -525,8 +525,8 @@ void store() {
ClaudeCodePreferences.setAutoPlanPreview(autoPlanPreviewCheck.isSelected());
ClaudeCodePreferences.setContextMenuSessionMode(
startNewSessionCheck.isSelected()
- ? io.github.nbclaudecodegui.model.SessionMode.NEW
- : io.github.nbclaudecodegui.model.SessionMode.CONTINUE_LAST);
+ ? io.github.nbplugins.claudecodegui.model.SessionMode.NEW
+ : io.github.nbplugins.claudecodegui.model.SessionMode.CONTINUE_LAST);
ClaudeCodePreferences.setSessionListLimit((Integer) sessionListLimitSpinner.getValue());
ClaudeCodePreferences.setSessionDockMode(dockModeFromCombo(dockModeCombo));
ClaudeCodePreferences.setMarkdownPreviewDockMode(dockModeFromCombo(mdPreviewDockModeCombo));
diff --git a/src/main/java/io/github/nbclaudecodegui/settings/ClaudeCodeOptionsPanelController.java b/src/main/java/io/github/nbplugins/claudecodegui/settings/ClaudeCodeOptionsPanelController.java
similarity index 97%
rename from src/main/java/io/github/nbclaudecodegui/settings/ClaudeCodeOptionsPanelController.java
rename to src/main/java/io/github/nbplugins/claudecodegui/settings/ClaudeCodeOptionsPanelController.java
index f8dc0b1a..56611026 100644
--- a/src/main/java/io/github/nbclaudecodegui/settings/ClaudeCodeOptionsPanelController.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/settings/ClaudeCodeOptionsPanelController.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.settings;
+package io.github.nbplugins.claudecodegui.settings;
import java.beans.PropertyChangeListener;
import java.beans.PropertyChangeSupport;
diff --git a/src/main/java/io/github/nbclaudecodegui/settings/ClaudeCodePreferences.java b/src/main/java/io/github/nbplugins/claudecodegui/settings/ClaudeCodePreferences.java
similarity index 99%
rename from src/main/java/io/github/nbclaudecodegui/settings/ClaudeCodePreferences.java
rename to src/main/java/io/github/nbplugins/claudecodegui/settings/ClaudeCodePreferences.java
index 79ba5920..5ec2004b 100644
--- a/src/main/java/io/github/nbclaudecodegui/settings/ClaudeCodePreferences.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/settings/ClaudeCodePreferences.java
@@ -1,6 +1,6 @@
-package io.github.nbclaudecodegui.settings;
+package io.github.nbplugins.claudecodegui.settings;
-import io.github.nbclaudecodegui.model.SessionMode;
+import io.github.nbplugins.claudecodegui.model.SessionMode;
import java.awt.Font;
import java.io.File;
import java.io.IOException;
@@ -202,7 +202,7 @@ public static void setDebugMode(boolean enabled) {
*/
public static void applyDebugMode(boolean enabled) {
java.util.logging.Logger pkgLogger =
- java.util.logging.Logger.getLogger("io.github.nbclaudecodegui");
+ java.util.logging.Logger.getLogger("io.github.nbplugins.claudecodegui");
pkgLogger.setLevel(enabled ? java.util.logging.Level.FINE : java.util.logging.Level.INFO);
}
diff --git a/src/main/java/io/github/nbclaudecodegui/settings/ClaudeProfile.java b/src/main/java/io/github/nbplugins/claudecodegui/settings/ClaudeProfile.java
similarity index 99%
rename from src/main/java/io/github/nbclaudecodegui/settings/ClaudeProfile.java
rename to src/main/java/io/github/nbplugins/claudecodegui/settings/ClaudeProfile.java
index 96f46ac4..cfa5965c 100644
--- a/src/main/java/io/github/nbclaudecodegui/settings/ClaudeProfile.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/settings/ClaudeProfile.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.settings;
+package io.github.nbplugins.claudecodegui.settings;
import com.fasterxml.jackson.annotation.JsonIgnore;
import java.util.ArrayList;
diff --git a/src/main/java/io/github/nbclaudecodegui/settings/ClaudeProfileStore.java b/src/main/java/io/github/nbplugins/claudecodegui/settings/ClaudeProfileStore.java
similarity index 99%
rename from src/main/java/io/github/nbclaudecodegui/settings/ClaudeProfileStore.java
rename to src/main/java/io/github/nbplugins/claudecodegui/settings/ClaudeProfileStore.java
index 1d739cd0..2fdb4e50 100644
--- a/src/main/java/io/github/nbclaudecodegui/settings/ClaudeProfileStore.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/settings/ClaudeProfileStore.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.settings;
+package io.github.nbplugins.claudecodegui.settings;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.DeserializationFeature;
diff --git a/src/main/java/io/github/nbclaudecodegui/settings/ClaudeProfilesPanel.java b/src/main/java/io/github/nbplugins/claudecodegui/settings/ClaudeProfilesPanel.java
similarity index 99%
rename from src/main/java/io/github/nbclaudecodegui/settings/ClaudeProfilesPanel.java
rename to src/main/java/io/github/nbplugins/claudecodegui/settings/ClaudeProfilesPanel.java
index cab22635..50059da8 100644
--- a/src/main/java/io/github/nbclaudecodegui/settings/ClaudeProfilesPanel.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/settings/ClaudeProfilesPanel.java
@@ -1,6 +1,6 @@
-package io.github.nbclaudecodegui.settings;
+package io.github.nbplugins.claudecodegui.settings;
-import io.github.nbclaudecodegui.settings.ClaudeProfile.ProxyMode;
+import io.github.nbplugins.claudecodegui.settings.ClaudeProfile.ProxyMode;
import java.awt.BorderLayout;
import java.awt.CardLayout;
import java.awt.Color;
diff --git a/src/main/java/io/github/nbclaudecodegui/settings/ClaudeProjectProperties.java b/src/main/java/io/github/nbplugins/claudecodegui/settings/ClaudeProjectProperties.java
similarity index 98%
rename from src/main/java/io/github/nbclaudecodegui/settings/ClaudeProjectProperties.java
rename to src/main/java/io/github/nbplugins/claudecodegui/settings/ClaudeProjectProperties.java
index 509a8f43..50c8ed50 100644
--- a/src/main/java/io/github/nbclaudecodegui/settings/ClaudeProjectProperties.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/settings/ClaudeProjectProperties.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.settings;
+package io.github.nbplugins.claudecodegui.settings;
import java.io.File;
import java.util.logging.Logger;
diff --git a/src/main/java/io/github/nbclaudecodegui/settings/ClaudeProjectPropertiesPanel.java b/src/main/java/io/github/nbplugins/claudecodegui/settings/ClaudeProjectPropertiesPanel.java
similarity index 98%
rename from src/main/java/io/github/nbclaudecodegui/settings/ClaudeProjectPropertiesPanel.java
rename to src/main/java/io/github/nbplugins/claudecodegui/settings/ClaudeProjectPropertiesPanel.java
index eab09131..f26a2982 100644
--- a/src/main/java/io/github/nbclaudecodegui/settings/ClaudeProjectPropertiesPanel.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/settings/ClaudeProjectPropertiesPanel.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.settings;
+package io.github.nbplugins.claudecodegui.settings;
import java.awt.BorderLayout;
import java.awt.FlowLayout;
diff --git a/src/main/java/io/github/nbclaudecodegui/settings/ClaudeProjectPropertiesPanelProvider.java b/src/main/java/io/github/nbplugins/claudecodegui/settings/ClaudeProjectPropertiesPanelProvider.java
similarity index 98%
rename from src/main/java/io/github/nbclaudecodegui/settings/ClaudeProjectPropertiesPanelProvider.java
rename to src/main/java/io/github/nbplugins/claudecodegui/settings/ClaudeProjectPropertiesPanelProvider.java
index 829c97b4..1d22bf0d 100644
--- a/src/main/java/io/github/nbclaudecodegui/settings/ClaudeProjectPropertiesPanelProvider.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/settings/ClaudeProjectPropertiesPanelProvider.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.settings;
+package io.github.nbplugins.claudecodegui.settings;
import java.io.File;
import javax.swing.JComponent;
diff --git a/src/main/java/io/github/nbclaudecodegui/settings/DockMode.java b/src/main/java/io/github/nbplugins/claudecodegui/settings/DockMode.java
similarity index 97%
rename from src/main/java/io/github/nbclaudecodegui/settings/DockMode.java
rename to src/main/java/io/github/nbplugins/claudecodegui/settings/DockMode.java
index 556835cf..37270014 100644
--- a/src/main/java/io/github/nbclaudecodegui/settings/DockMode.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/settings/DockMode.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.settings;
+package io.github.nbplugins.claudecodegui.settings;
import java.util.Arrays;
diff --git a/src/main/java/io/github/nbclaudecodegui/settings/MdPreviewInDiffMode.java b/src/main/java/io/github/nbplugins/claudecodegui/settings/MdPreviewInDiffMode.java
similarity index 90%
rename from src/main/java/io/github/nbclaudecodegui/settings/MdPreviewInDiffMode.java
rename to src/main/java/io/github/nbplugins/claudecodegui/settings/MdPreviewInDiffMode.java
index fbecf9be..6b088917 100644
--- a/src/main/java/io/github/nbclaudecodegui/settings/MdPreviewInDiffMode.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/settings/MdPreviewInDiffMode.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.settings;
+package io.github.nbplugins.claudecodegui.settings;
/**
* Controls when the inline Markdown preview is shown inside the file diff panel.
diff --git a/src/main/java/io/github/nbclaudecodegui/settings/ModelAlias.java b/src/main/java/io/github/nbplugins/claudecodegui/settings/ModelAlias.java
similarity index 97%
rename from src/main/java/io/github/nbclaudecodegui/settings/ModelAlias.java
rename to src/main/java/io/github/nbplugins/claudecodegui/settings/ModelAlias.java
index 9dcb01f8..275bc707 100644
--- a/src/main/java/io/github/nbclaudecodegui/settings/ModelAlias.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/settings/ModelAlias.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.settings;
+package io.github.nbplugins.claudecodegui.settings;
/**
* Represents a single model alias entry in a connection profile.
diff --git a/src/main/java/io/github/nbclaudecodegui/settings/ModelAliasesDialog.java b/src/main/java/io/github/nbplugins/claudecodegui/settings/ModelAliasesDialog.java
similarity index 99%
rename from src/main/java/io/github/nbclaudecodegui/settings/ModelAliasesDialog.java
rename to src/main/java/io/github/nbplugins/claudecodegui/settings/ModelAliasesDialog.java
index e286b8e0..df81cb36 100644
--- a/src/main/java/io/github/nbclaudecodegui/settings/ModelAliasesDialog.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/settings/ModelAliasesDialog.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.settings;
+package io.github.nbplugins.claudecodegui.settings;
import java.awt.BorderLayout;
import java.awt.Component;
diff --git a/src/main/java/io/github/nbclaudecodegui/settings/TerminalFontChooserDialog.java b/src/main/java/io/github/nbplugins/claudecodegui/settings/TerminalFontChooserDialog.java
similarity index 99%
rename from src/main/java/io/github/nbclaudecodegui/settings/TerminalFontChooserDialog.java
rename to src/main/java/io/github/nbplugins/claudecodegui/settings/TerminalFontChooserDialog.java
index 43ffe4f4..f2d85cd0 100644
--- a/src/main/java/io/github/nbclaudecodegui/settings/TerminalFontChooserDialog.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/settings/TerminalFontChooserDialog.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.settings;
+package io.github.nbplugins.claudecodegui.settings;
import java.awt.BorderLayout;
import java.awt.Canvas;
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/AssignShortcutDialog.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/AssignShortcutDialog.java
similarity index 97%
rename from src/main/java/io/github/nbclaudecodegui/ui/AssignShortcutDialog.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/AssignShortcutDialog.java
index 8b2ea397..47cf9d21 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/AssignShortcutDialog.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/AssignShortcutDialog.java
@@ -1,7 +1,7 @@
-package io.github.nbclaudecodegui.ui;
+package io.github.nbplugins.claudecodegui.ui;
-import io.github.nbclaudecodegui.model.FavoriteEntry;
-import io.github.nbclaudecodegui.model.PromptFavoritesStore;
+import io.github.nbplugins.claudecodegui.model.FavoriteEntry;
+import io.github.nbplugins.claudecodegui.model.PromptFavoritesStore;
import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.Window;
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/ChoiceMenuPanel.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/ChoiceMenuPanel.java
similarity index 99%
rename from src/main/java/io/github/nbclaudecodegui/ui/ChoiceMenuPanel.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/ChoiceMenuPanel.java
index f66d51c6..1f6af413 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/ChoiceMenuPanel.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/ChoiceMenuPanel.java
@@ -1,8 +1,8 @@
-package io.github.nbclaudecodegui.ui;
+package io.github.nbplugins.claudecodegui.ui;
-import io.github.nbclaudecodegui.model.ChoiceMenuModel;
-import io.github.nbclaudecodegui.ui.common.DecoratedTextField;
-import io.github.nbclaudecodegui.ui.common.UiUtils;
+import io.github.nbplugins.claudecodegui.model.ChoiceMenuModel;
+import io.github.nbplugins.claudecodegui.ui.common.DecoratedTextField;
+import io.github.nbplugins.claudecodegui.ui.common.UiUtils;
import java.awt.Color;
import java.awt.Component;
import java.awt.event.KeyEvent;
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/ClaudePromptPanel.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/ClaudePromptPanel.java
similarity index 97%
rename from src/main/java/io/github/nbclaudecodegui/ui/ClaudePromptPanel.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/ClaudePromptPanel.java
index 39724074..fd72ea24 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/ClaudePromptPanel.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/ClaudePromptPanel.java
@@ -1,9 +1,9 @@
-package io.github.nbclaudecodegui.ui;
+package io.github.nbplugins.claudecodegui.ui;
-import io.github.nbclaudecodegui.settings.ClaudeCodePreferences;
-import io.github.nbclaudecodegui.ui.common.AtPathHighlighter;
-import io.github.nbclaudecodegui.ui.common.DecoratedTextArea;
-import io.github.nbclaudecodegui.ui.common.UiUtils;
+import io.github.nbplugins.claudecodegui.settings.ClaudeCodePreferences;
+import io.github.nbplugins.claudecodegui.ui.common.AtPathHighlighter;
+import io.github.nbplugins.claudecodegui.ui.common.DecoratedTextArea;
+import io.github.nbplugins.claudecodegui.ui.common.UiUtils;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Component;
@@ -34,8 +34,8 @@
* Pure-UI input panel for a Claude Code session.
*
*
Renders a multi-line text area, a Send button, and a Cancel button.
- * Contains no references to {@link io.github.nbclaudecodegui.model.ClaudeSessionModel}
- * or {@link io.github.nbclaudecodegui.controller.ClaudeSessionController}; all
+ * Contains no references to {@link io.github.nbplugins.claudecodegui.model.ClaudeSessionModel}
+ * or {@link io.github.nbplugins.claudecodegui.controller.ClaudeSessionController}; all
* behaviour is driven through constructor callbacks:
*
*
{@code onSend} — fired with the trimmed input text when the user sends
Focuses an existing idle session if one is open; otherwise opens a new one.
*/
private static void dockAndOpen(ClaudeSessionTab tab) {
- io.github.nbclaudecodegui.ui.common.UiUtils.dockAndOpen(
+ io.github.nbplugins.claudecodegui.ui.common.UiUtils.dockAndOpen(
tab, ClaudeCodePreferences.getSessionDockMode());
}
@@ -588,11 +588,11 @@ public void onChoiceMenuChanged(ChoiceMenuModel menu) {
if (menu != null) {
LOG.fine(sessionTag + "[onChoiceMenuChanged] showing menu: \"" + menu.text()
+ "\" EDT=" + SwingUtilities.isEventDispatchThread());
- String focusMode = io.github.nbclaudecodegui.settings.ClaudeCodePreferences.getChoiceMenuFocusMode();
- if (io.github.nbclaudecodegui.settings.ClaudeCodePreferences.CHOICE_MENU_HIDE_MENU.equals(focusMode)) {
+ String focusMode = io.github.nbplugins.claudecodegui.settings.ClaudeCodePreferences.getChoiceMenuFocusMode();
+ if (io.github.nbplugins.claudecodegui.settings.ClaudeCodePreferences.CHOICE_MENU_HIDE_MENU.equals(focusMode)) {
return;
}
- boolean grabFocus = io.github.nbclaudecodegui.settings.ClaudeCodePreferences.CHOICE_MENU_GRAB_FOCUS.equals(focusMode);
+ boolean grabFocus = io.github.nbplugins.claudecodegui.settings.ClaudeCodePreferences.CHOICE_MENU_GRAB_FOCUS.equals(focusMode);
choiceMenuPanel.show(menu, answer -> {
LOG.fine(sessionTag + "[PTY prompt answer] " + answer);
SwingUtilities.invokeLater(() -> switchSouthCard(CARD_PROMPT));
@@ -1183,17 +1183,17 @@ public void openSwitchDialog(SessionMode initialMode) {
String profileName = selectorPanel.getSelectedProfileName();
Path claudeConfigDir = null;
- if (profileName != null && !io.github.nbclaudecodegui.settings.ClaudeProfile.DEFAULT_NAME.equals(profileName)) {
- io.github.nbclaudecodegui.settings.ClaudeProfile profile =
- io.github.nbclaudecodegui.settings.ClaudeProfileStore.findByName(profileName);
+ if (profileName != null && !io.github.nbplugins.claudecodegui.settings.ClaudeProfile.DEFAULT_NAME.equals(profileName)) {
+ io.github.nbplugins.claudecodegui.settings.ClaudeProfile profile =
+ io.github.nbplugins.claudecodegui.settings.ClaudeProfileStore.findByName(profileName);
if (profile != null) {
- claudeConfigDir = io.github.nbclaudecodegui.settings.ClaudeProfileStore.resolveStorageDir(
+ claudeConfigDir = io.github.nbplugins.claudecodegui.settings.ClaudeProfileStore.resolveStorageDir(
profile, ClaudeCodePreferences.getProfilesDir());
}
}
- io.github.nbclaudecodegui.model.SavedSession recent =
- io.github.nbclaudecodegui.process.ClaudeSessionStore.findMostRecent(
+ io.github.nbplugins.claudecodegui.model.SavedSession recent =
+ io.github.nbplugins.claudecodegui.process.ClaudeSessionStore.findMostRecent(
workingDir.toPath(), claudeConfigDir);
long procStart = controller.getProcessStartedAt();
// If a process is running and the most recent JSONL predates it, it's an OLD session —
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/FavoritesDialog.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/FavoritesDialog.java
similarity index 97%
rename from src/main/java/io/github/nbclaudecodegui/ui/FavoritesDialog.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/FavoritesDialog.java
index adc632b6..e0e67e82 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/FavoritesDialog.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/FavoritesDialog.java
@@ -1,8 +1,8 @@
-package io.github.nbclaudecodegui.ui;
+package io.github.nbplugins.claudecodegui.ui;
-import io.github.nbclaudecodegui.model.FavoriteEntry;
-import io.github.nbclaudecodegui.model.FavoriteEntry.Scope;
-import io.github.nbclaudecodegui.model.PromptFavoritesStore;
+import io.github.nbplugins.claudecodegui.model.FavoriteEntry;
+import io.github.nbplugins.claudecodegui.model.FavoriteEntry.Scope;
+import io.github.nbplugins.claudecodegui.model.PromptFavoritesStore;
import java.awt.Dimension;
import java.awt.Window;
import java.nio.file.Path;
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/FavoritesPanel.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/FavoritesPanel.java
similarity index 97%
rename from src/main/java/io/github/nbclaudecodegui/ui/FavoritesPanel.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/FavoritesPanel.java
index b8a5f2d5..0235a16a 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/FavoritesPanel.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/FavoritesPanel.java
@@ -1,8 +1,8 @@
-package io.github.nbclaudecodegui.ui;
+package io.github.nbplugins.claudecodegui.ui;
-import io.github.nbclaudecodegui.model.FavoriteEntry;
-import io.github.nbclaudecodegui.model.PromptFavoritesStore;
-import io.github.nbclaudecodegui.ui.common.BasicTextContextMenu;
+import io.github.nbplugins.claudecodegui.model.FavoriteEntry;
+import io.github.nbplugins.claudecodegui.model.PromptFavoritesStore;
+import io.github.nbplugins.claudecodegui.ui.common.BasicTextContextMenu;
import java.awt.BorderLayout;
import java.awt.Component;
import java.awt.FlowLayout;
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/FileDiffOpener.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/FileDiffOpener.java
similarity index 98%
rename from src/main/java/io/github/nbclaudecodegui/ui/FileDiffOpener.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/FileDiffOpener.java
index b7993a31..5d37e02f 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/FileDiffOpener.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/FileDiffOpener.java
@@ -1,8 +1,8 @@
-package io.github.nbclaudecodegui.ui;
+package io.github.nbplugins.claudecodegui.ui;
-import io.github.nbclaudecodegui.model.EditMode;
-import io.github.nbclaudecodegui.settings.ClaudeCodePreferences;
-import io.github.nbclaudecodegui.settings.MdPreviewInDiffMode;
+import io.github.nbplugins.claudecodegui.model.EditMode;
+import io.github.nbplugins.claudecodegui.settings.ClaudeCodePreferences;
+import io.github.nbplugins.claudecodegui.settings.MdPreviewInDiffMode;
import java.io.File;
import java.io.IOException;
import java.nio.file.Path;
@@ -366,7 +366,7 @@ public void componentClosed() {
}
diffTC.add(permPanel, java.awt.BorderLayout.SOUTH);
- io.github.nbclaudecodegui.ui.common.UiUtils.dockAndOpen(
+ io.github.nbplugins.claudecodegui.ui.common.UiUtils.dockAndOpen(
diffTC, ClaudeCodePreferences.getFileDiffDockMode());
diffTC.requestActive();
SwingUtilities.invokeLater(permPanel::requestAcceptFocus);
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/FileDiffPermissionPanel.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/FileDiffPermissionPanel.java
similarity index 98%
rename from src/main/java/io/github/nbclaudecodegui/ui/FileDiffPermissionPanel.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/FileDiffPermissionPanel.java
index d2a0ac27..6a79053a 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/FileDiffPermissionPanel.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/FileDiffPermissionPanel.java
@@ -1,7 +1,7 @@
-package io.github.nbclaudecodegui.ui;
+package io.github.nbplugins.claudecodegui.ui;
-import io.github.nbclaudecodegui.ui.common.DecoratedTextField;
-import io.github.nbclaudecodegui.ui.common.UiUtils;
+import io.github.nbplugins.claudecodegui.ui.common.DecoratedTextField;
+import io.github.nbplugins.claudecodegui.ui.common.UiUtils;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.FlowLayout;
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/HistoryDialog.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/HistoryDialog.java
similarity index 96%
rename from src/main/java/io/github/nbclaudecodegui/ui/HistoryDialog.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/HistoryDialog.java
index e2cc9578..10352023 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/HistoryDialog.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/HistoryDialog.java
@@ -1,9 +1,9 @@
-package io.github.nbclaudecodegui.ui;
+package io.github.nbplugins.claudecodegui.ui;
-import io.github.nbclaudecodegui.model.FavoriteEntry;
-import io.github.nbclaudecodegui.model.HistoryEntry;
-import io.github.nbclaudecodegui.model.PromptFavoritesStore;
-import io.github.nbclaudecodegui.model.PromptHistoryStore;
+import io.github.nbplugins.claudecodegui.model.FavoriteEntry;
+import io.github.nbplugins.claudecodegui.model.HistoryEntry;
+import io.github.nbplugins.claudecodegui.model.PromptFavoritesStore;
+import io.github.nbplugins.claudecodegui.model.PromptHistoryStore;
import java.awt.Dimension;
import java.awt.Frame;
import java.awt.Window;
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/MarkdownDiffPanel.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/MarkdownDiffPanel.java
similarity index 98%
rename from src/main/java/io/github/nbclaudecodegui/ui/MarkdownDiffPanel.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/MarkdownDiffPanel.java
index 160461d0..d8074669 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/MarkdownDiffPanel.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/MarkdownDiffPanel.java
@@ -1,7 +1,7 @@
-package io.github.nbclaudecodegui.ui;
+package io.github.nbplugins.claudecodegui.ui;
-import io.github.nbclaudecodegui.ui.markdown.MarkdownFindBar;
-import io.github.nbclaudecodegui.ui.markdown.MarkdownRenderer;
+import io.github.nbplugins.claudecodegui.ui.markdown.MarkdownFindBar;
+import io.github.nbplugins.claudecodegui.ui.markdown.MarkdownRenderer;
import java.awt.BorderLayout;
import java.awt.Component;
import java.awt.Container;
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/MarkdownPreviewTab.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/MarkdownPreviewTab.java
similarity index 98%
rename from src/main/java/io/github/nbclaudecodegui/ui/MarkdownPreviewTab.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/MarkdownPreviewTab.java
index 70d8aeeb..ded11a45 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/MarkdownPreviewTab.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/MarkdownPreviewTab.java
@@ -1,11 +1,11 @@
-package io.github.nbclaudecodegui.ui;
-
-import io.github.nbclaudecodegui.settings.ClaudeCodePreferences;
-import io.github.nbclaudecodegui.ui.common.UiUtils;
-import io.github.nbclaudecodegui.ui.common.Zoomable;
-import io.github.nbclaudecodegui.ui.common.ZoomSupport;
-import io.github.nbclaudecodegui.ui.markdown.MarkdownFindBar;
-import io.github.nbclaudecodegui.ui.markdown.MarkdownRenderer;
+package io.github.nbplugins.claudecodegui.ui;
+
+import io.github.nbplugins.claudecodegui.settings.ClaudeCodePreferences;
+import io.github.nbplugins.claudecodegui.ui.common.UiUtils;
+import io.github.nbplugins.claudecodegui.ui.common.Zoomable;
+import io.github.nbplugins.claudecodegui.ui.common.ZoomSupport;
+import io.github.nbplugins.claudecodegui.ui.markdown.MarkdownFindBar;
+import io.github.nbplugins.claudecodegui.ui.markdown.MarkdownRenderer;
import javax.swing.text.html.HTMLEditorKit;
import javax.swing.text.html.StyleSheet;
import org.openide.util.NbPreferences;
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/NetBeansSettingsProvider.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/NetBeansSettingsProvider.java
similarity index 92%
rename from src/main/java/io/github/nbclaudecodegui/ui/NetBeansSettingsProvider.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/NetBeansSettingsProvider.java
index a4b87d0b..9a1fe22b 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/NetBeansSettingsProvider.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/NetBeansSettingsProvider.java
@@ -1,10 +1,10 @@
-package io.github.nbclaudecodegui.ui;
+package io.github.nbplugins.claudecodegui.ui;
import com.jediterm.terminal.TerminalColor;
import com.jediterm.terminal.TextStyle;
import com.jediterm.terminal.emulator.ColorPaletteImpl;
import com.jediterm.terminal.ui.settings.DefaultSettingsProvider;
-import io.github.nbclaudecodegui.settings.ClaudeCodePreferences;
+import io.github.nbplugins.claudecodegui.settings.ClaudeCodePreferences;
import java.awt.Color;
import java.awt.Font;
import javax.swing.UIManager;
@@ -17,7 +17,7 @@
* per-glyph fallback, so the chosen font must cover all Unicode characters
* used by the Claude Code TUI (U+23F5 prompt marker, U+25D0 spinner,
* box-drawing, dingbats). Font resolution is delegated to
- * {@link io.github.nbclaudecodegui.settings.ClaudeCodePreferences#resolveTerminalFontName()},
+ * {@link io.github.nbplugins.claudecodegui.settings.ClaudeCodePreferences#resolveTerminalFontName()},
* which prefers Adwaita Mono — the only widely-available FOSS monospace font
* with full coverage of those characters, pre-installed on most Linux GNOME desktops.
*/
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/PromptListPanel.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/PromptListPanel.java
similarity index 97%
rename from src/main/java/io/github/nbclaudecodegui/ui/PromptListPanel.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/PromptListPanel.java
index a40e8c4f..9290ec69 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/PromptListPanel.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/PromptListPanel.java
@@ -1,6 +1,6 @@
-package io.github.nbclaudecodegui.ui;
+package io.github.nbplugins.claudecodegui.ui;
-import io.github.nbclaudecodegui.model.PromptEntry;
+import io.github.nbplugins.claudecodegui.model.PromptEntry;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.FlowLayout;
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/SaveAndSwitchDialog.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/SaveAndSwitchDialog.java
similarity index 98%
rename from src/main/java/io/github/nbclaudecodegui/ui/SaveAndSwitchDialog.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/SaveAndSwitchDialog.java
index 4ac5bb95..978815f3 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/SaveAndSwitchDialog.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/SaveAndSwitchDialog.java
@@ -1,6 +1,6 @@
-package io.github.nbclaudecodegui.ui;
+package io.github.nbplugins.claudecodegui.ui;
-import io.github.nbclaudecodegui.model.SessionMode;
+import io.github.nbplugins.claudecodegui.model.SessionMode;
import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.Window;
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/SessionModePanel.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/SessionModePanel.java
similarity index 98%
rename from src/main/java/io/github/nbclaudecodegui/ui/SessionModePanel.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/SessionModePanel.java
index ab2535f4..0a69772b 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/SessionModePanel.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/SessionModePanel.java
@@ -1,8 +1,8 @@
-package io.github.nbclaudecodegui.ui;
+package io.github.nbplugins.claudecodegui.ui;
-import io.github.nbclaudecodegui.model.SavedSession;
-import io.github.nbclaudecodegui.model.SessionMode;
-import io.github.nbclaudecodegui.process.ClaudeSessionStore;
+import io.github.nbplugins.claudecodegui.model.SavedSession;
+import io.github.nbplugins.claudecodegui.model.SessionMode;
+import io.github.nbplugins.claudecodegui.process.ClaudeSessionStore;
import java.awt.BorderLayout;
import java.awt.Component;
import java.awt.FlowLayout;
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/ZoomableJediTermWidget.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/ZoomableJediTermWidget.java
similarity index 95%
rename from src/main/java/io/github/nbclaudecodegui/ui/ZoomableJediTermWidget.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/ZoomableJediTermWidget.java
index 52e6cbb4..1ff52c11 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/ZoomableJediTermWidget.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/ZoomableJediTermWidget.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.ui;
+package io.github.nbplugins.claudecodegui.ui;
import com.jediterm.terminal.model.StyleState;
import com.jediterm.terminal.model.TerminalTextBuffer;
@@ -6,8 +6,8 @@
import com.jediterm.terminal.ui.TerminalActionProvider;
import com.jediterm.terminal.ui.TerminalPanel;
import com.jediterm.terminal.ui.settings.SettingsProvider;
-import io.github.nbclaudecodegui.ui.common.Zoomable;
-import io.github.nbclaudecodegui.ui.common.ZoomSupport;
+import io.github.nbplugins.claudecodegui.ui.common.Zoomable;
+import io.github.nbplugins.claudecodegui.ui.common.ZoomSupport;
import javax.swing.JPopupMenu;
/**
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/common/AtCompletionPopup.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/common/AtCompletionPopup.java
similarity index 99%
rename from src/main/java/io/github/nbclaudecodegui/ui/common/AtCompletionPopup.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/common/AtCompletionPopup.java
index 59fea0fd..58b5b343 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/common/AtCompletionPopup.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/common/AtCompletionPopup.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.ui.common;
+package io.github.nbplugins.claudecodegui.ui.common;
import java.awt.Dimension;
import java.awt.Font;
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/common/AtPathHighlighter.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/common/AtPathHighlighter.java
similarity index 99%
rename from src/main/java/io/github/nbclaudecodegui/ui/common/AtPathHighlighter.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/common/AtPathHighlighter.java
index 446bd03e..3495e0b3 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/common/AtPathHighlighter.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/common/AtPathHighlighter.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.ui.common;
+package io.github.nbplugins.claudecodegui.ui.common;
import java.awt.Color;
import java.awt.FontMetrics;
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/common/BasicTextContextMenu.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/common/BasicTextContextMenu.java
similarity index 98%
rename from src/main/java/io/github/nbclaudecodegui/ui/common/BasicTextContextMenu.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/common/BasicTextContextMenu.java
index 4a17042e..4213e48c 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/common/BasicTextContextMenu.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/common/BasicTextContextMenu.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.ui.common;
+package io.github.nbplugins.claudecodegui.ui.common;
import java.awt.event.InputEvent;
import java.awt.event.KeyEvent;
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/common/DecoratedTextArea.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/common/DecoratedTextArea.java
similarity index 97%
rename from src/main/java/io/github/nbclaudecodegui/ui/common/DecoratedTextArea.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/common/DecoratedTextArea.java
index 58139c74..eaf98655 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/common/DecoratedTextArea.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/common/DecoratedTextArea.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.ui.common;
+package io.github.nbplugins.claudecodegui.ui.common;
import java.awt.Graphics;
import java.util.List;
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/common/DecoratedTextField.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/common/DecoratedTextField.java
similarity index 96%
rename from src/main/java/io/github/nbclaudecodegui/ui/common/DecoratedTextField.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/common/DecoratedTextField.java
index 8453436b..d9055e73 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/common/DecoratedTextField.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/common/DecoratedTextField.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.ui.common;
+package io.github.nbplugins.claudecodegui.ui.common;
import java.awt.Graphics;
import java.util.List;
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/common/FileDropHandler.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/common/FileDropHandler.java
similarity index 99%
rename from src/main/java/io/github/nbclaudecodegui/ui/common/FileDropHandler.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/common/FileDropHandler.java
index 07fcdf76..35bb6c75 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/common/FileDropHandler.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/common/FileDropHandler.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.ui.common;
+package io.github.nbplugins.claudecodegui.ui.common;
import java.awt.Image;
import java.awt.datatransfer.DataFlavor;
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/common/RangeHighlightable.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/common/RangeHighlightable.java
similarity index 86%
rename from src/main/java/io/github/nbclaudecodegui/ui/common/RangeHighlightable.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/common/RangeHighlightable.java
index ba4439fd..b4691f3d 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/common/RangeHighlightable.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/common/RangeHighlightable.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.ui.common;
+package io.github.nbplugins.claudecodegui.ui.common;
import java.util.List;
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/common/ShortcutMatcher.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/common/ShortcutMatcher.java
similarity index 96%
rename from src/main/java/io/github/nbclaudecodegui/ui/common/ShortcutMatcher.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/common/ShortcutMatcher.java
index 8950cd11..4d370349 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/common/ShortcutMatcher.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/common/ShortcutMatcher.java
@@ -1,8 +1,8 @@
-package io.github.nbclaudecodegui.ui.common;
+package io.github.nbplugins.claudecodegui.ui.common;
-import io.github.nbclaudecodegui.model.FavoriteEntry;
-import io.github.nbclaudecodegui.model.FavoriteEntry.Scope;
-import io.github.nbclaudecodegui.model.PromptFavoritesStore;
+import io.github.nbplugins.claudecodegui.model.FavoriteEntry;
+import io.github.nbplugins.claudecodegui.model.FavoriteEntry.Scope;
+import io.github.nbplugins.claudecodegui.model.PromptFavoritesStore;
import java.awt.event.KeyEvent;
import java.util.ArrayList;
import java.util.List;
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/common/TextComponentDecorator.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/common/TextComponentDecorator.java
similarity index 97%
rename from src/main/java/io/github/nbclaudecodegui/ui/common/TextComponentDecorator.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/common/TextComponentDecorator.java
index d0c303b6..0e202a4e 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/common/TextComponentDecorator.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/common/TextComponentDecorator.java
@@ -1,6 +1,6 @@
-package io.github.nbclaudecodegui.ui.common;
+package io.github.nbplugins.claudecodegui.ui.common;
-import io.github.nbclaudecodegui.model.PromptFavoritesStore;
+import io.github.nbplugins.claudecodegui.model.PromptFavoritesStore;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.nio.file.Path;
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/common/TextContextMenu.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/common/TextContextMenu.java
similarity index 92%
rename from src/main/java/io/github/nbclaudecodegui/ui/common/TextContextMenu.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/common/TextContextMenu.java
index 49013650..a4c3764a 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/common/TextContextMenu.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/common/TextContextMenu.java
@@ -1,8 +1,8 @@
-package io.github.nbclaudecodegui.ui.common;
+package io.github.nbplugins.claudecodegui.ui.common;
-import io.github.nbclaudecodegui.model.FavoriteEntry;
-import io.github.nbclaudecodegui.model.PromptFavoritesStore;
-import io.github.nbclaudecodegui.ui.FavoritesDialog;
+import io.github.nbplugins.claudecodegui.model.FavoriteEntry;
+import io.github.nbplugins.claudecodegui.model.PromptFavoritesStore;
+import io.github.nbplugins.claudecodegui.ui.FavoritesDialog;
import java.awt.Window;
import java.nio.file.Path;
import java.util.function.Supplier;
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/common/UiUtils.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/common/UiUtils.java
similarity index 97%
rename from src/main/java/io/github/nbclaudecodegui/ui/common/UiUtils.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/common/UiUtils.java
index ed1033b8..0e469555 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/common/UiUtils.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/common/UiUtils.java
@@ -1,6 +1,6 @@
-package io.github.nbclaudecodegui.ui.common;
+package io.github.nbplugins.claudecodegui.ui.common;
-import io.github.nbclaudecodegui.settings.DockMode;
+import io.github.nbplugins.claudecodegui.settings.DockMode;
import java.awt.Color;
import javax.swing.JButton;
import javax.swing.UIManager;
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/common/ZoomSupport.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/common/ZoomSupport.java
similarity index 99%
rename from src/main/java/io/github/nbclaudecodegui/ui/common/ZoomSupport.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/common/ZoomSupport.java
index 9319e7fa..409fae58 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/common/ZoomSupport.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/common/ZoomSupport.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.ui.common;
+package io.github.nbplugins.claudecodegui.ui.common;
import java.awt.Component;
import java.awt.Point;
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/common/Zoomable.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/common/Zoomable.java
similarity index 80%
rename from src/main/java/io/github/nbclaudecodegui/ui/common/Zoomable.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/common/Zoomable.java
index 31d07aa4..a7b9593e 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/common/Zoomable.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/common/Zoomable.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.ui.common;
+package io.github.nbplugins.claudecodegui.ui.common;
/** Implemented by UI surfaces that support font-size zoom. */
public interface Zoomable {
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/markdown/MarkdownFindBar.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/markdown/MarkdownFindBar.java
similarity index 99%
rename from src/main/java/io/github/nbclaudecodegui/ui/markdown/MarkdownFindBar.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/markdown/MarkdownFindBar.java
index 864fd427..f71bbe47 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/markdown/MarkdownFindBar.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/markdown/MarkdownFindBar.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.ui.markdown;
+package io.github.nbplugins.claudecodegui.ui.markdown;
import java.awt.Color;
import java.awt.Dimension;
diff --git a/src/main/java/io/github/nbclaudecodegui/ui/markdown/MarkdownRenderer.java b/src/main/java/io/github/nbplugins/claudecodegui/ui/markdown/MarkdownRenderer.java
similarity index 99%
rename from src/main/java/io/github/nbclaudecodegui/ui/markdown/MarkdownRenderer.java
rename to src/main/java/io/github/nbplugins/claudecodegui/ui/markdown/MarkdownRenderer.java
index d70c61b5..1fe24999 100644
--- a/src/main/java/io/github/nbclaudecodegui/ui/markdown/MarkdownRenderer.java
+++ b/src/main/java/io/github/nbplugins/claudecodegui/ui/markdown/MarkdownRenderer.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.ui.markdown;
+package io.github.nbplugins.claudecodegui.ui.markdown;
import java.awt.Color;
import java.util.ArrayList;
@@ -6,7 +6,7 @@
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
-import io.github.nbclaudecodegui.ui.common.BasicTextContextMenu;
+import io.github.nbplugins.claudecodegui.ui.common.BasicTextContextMenu;
import javax.swing.JEditorPane;
import javax.swing.UIManager;
import javax.swing.text.html.HTMLDocument;
diff --git a/src/main/nbm/manifest.mf b/src/main/nbm/manifest.mf
index e07818ee..5883a8e1 100644
--- a/src/main/nbm/manifest.mf
+++ b/src/main/nbm/manifest.mf
@@ -1,5 +1,5 @@
Manifest-Version: 1.0
-OpenIDE-Module-Layer: io/github/nbclaudecodegui/layer.xml
-OpenIDE-Module-Install: io/github/nbclaudecodegui/ClaudeCodeInstaller.class
+OpenIDE-Module-Layer: io/github/nbplugins/claudecodegui/layer.xml
+OpenIDE-Module-Install: io/github/nbplugins/claudecodegui/ClaudeCodeInstaller.class
OpenIDE-Module-Name: Claude Code GUI
diff --git a/src/main/resources/io/github/nbclaudecodegui/Bundle.properties b/src/main/resources/io/github/nbplugins/claudecodegui/Bundle.properties
similarity index 100%
rename from src/main/resources/io/github/nbclaudecodegui/Bundle.properties
rename to src/main/resources/io/github/nbplugins/claudecodegui/Bundle.properties
diff --git a/src/main/resources/io/github/nbclaudecodegui/actions/Bundle.properties b/src/main/resources/io/github/nbplugins/claudecodegui/actions/Bundle.properties
similarity index 100%
rename from src/main/resources/io/github/nbclaudecodegui/actions/Bundle.properties
rename to src/main/resources/io/github/nbplugins/claudecodegui/actions/Bundle.properties
diff --git a/src/main/resources/io/github/nbclaudecodegui/icons/cc-gui-icon.svg b/src/main/resources/io/github/nbplugins/claudecodegui/icons/cc-gui-icon.svg
similarity index 100%
rename from src/main/resources/io/github/nbclaudecodegui/icons/cc-gui-icon.svg
rename to src/main/resources/io/github/nbplugins/claudecodegui/icons/cc-gui-icon.svg
diff --git a/src/main/resources/io/github/nbclaudecodegui/layer.xml b/src/main/resources/io/github/nbplugins/claudecodegui/layer.xml
similarity index 73%
rename from src/main/resources/io/github/nbclaudecodegui/layer.xml
rename to src/main/resources/io/github/nbplugins/claudecodegui/layer.xml
index 32e9ca85..dae72a17 100644
--- a/src/main/resources/io/github/nbclaudecodegui/layer.xml
+++ b/src/main/resources/io/github/nbplugins/claudecodegui/layer.xml
@@ -7,12 +7,12 @@
-
+
-
@@ -25,7 +25,7 @@
+ newvalue="io.github.nbplugins.claudecodegui.settings.ClaudeProjectPropertiesPanelProvider"/>
@@ -34,7 +34,7 @@
+ newvalue="io.github.nbplugins.claudecodegui.settings.ClaudeProjectPropertiesPanelProvider"/>
@@ -43,7 +43,7 @@
+ newvalue="io.github.nbplugins.claudecodegui.settings.ClaudeProjectPropertiesPanelProvider"/>
diff --git a/src/main/resources/io/github/nbclaudecodegui/ui/Bundle.properties b/src/main/resources/io/github/nbplugins/claudecodegui/ui/Bundle.properties
similarity index 100%
rename from src/main/resources/io/github/nbclaudecodegui/ui/Bundle.properties
rename to src/main/resources/io/github/nbplugins/claudecodegui/ui/Bundle.properties
diff --git a/src/test/java/io/github/nbclaudecodegui/ClaudeCodePluginIT.java b/src/test/java/io/github/nbplugins/claudecodegui/ClaudeCodePluginIT.java
similarity index 96%
rename from src/test/java/io/github/nbclaudecodegui/ClaudeCodePluginIT.java
rename to src/test/java/io/github/nbplugins/claudecodegui/ClaudeCodePluginIT.java
index eb17ba74..dd6940cd 100644
--- a/src/test/java/io/github/nbclaudecodegui/ClaudeCodePluginIT.java
+++ b/src/test/java/io/github/nbplugins/claudecodegui/ClaudeCodePluginIT.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui;
+package io.github.nbplugins.claudecodegui;
import junit.framework.Test;
import org.netbeans.junit.NbModuleSuite;
diff --git a/src/test/java/io/github/nbplugins/claudecodegui/V1MigrationHelperTest.java b/src/test/java/io/github/nbplugins/claudecodegui/V1MigrationHelperTest.java
new file mode 100644
index 00000000..87a10f96
--- /dev/null
+++ b/src/test/java/io/github/nbplugins/claudecodegui/V1MigrationHelperTest.java
@@ -0,0 +1,168 @@
+package io.github.nbplugins.claudecodegui;
+
+import java.io.IOException;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.util.prefs.Preferences;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.io.TempDir;
+
+import static io.github.nbplugins.claudecodegui.V1MigrationHelper.migratePrefsNode;
+
+import static org.junit.jupiter.api.Assertions.*;
+
+class V1MigrationHelperTest {
+
+ // ── migrateWindowsSettings ────────────────────────────────────────────────
+
+ @Test
+ void windowsSettings_replacesOldPackageInSettingsFiles(@TempDir Path dir) throws IOException {
+ String oldContent = """
+
+
+
+
+
+
+ """;
+ Path file = dir.resolve("ClaudeSessionTopComponent.settings");
+ Files.writeString(file, oldContent);
+
+ V1MigrationHelper.migrateWindowsSettings(dir);
+
+ String result = Files.readString(file);
+ assertFalse(result.contains("io.github.nbclaudecodegui."),
+ "Old package must be replaced");
+ assertTrue(result.contains("io.github.nbplugins.claudecodegui.ui.ClaudeSessionTab"),
+ "New package must be present");
+ }
+
+ @Test
+ void windowsSettings_skipsFilesWithoutOldPackage(@TempDir Path dir) throws IOException {
+ String content = "";
+ Path file = dir.resolve("Other.settings");
+ Files.writeString(file, content);
+ long modifiedBefore = file.toFile().lastModified();
+
+ // Small sleep to ensure mtime would differ if file were rewritten
+ V1MigrationHelper.migrateWindowsSettings(dir);
+
+ assertEquals(content, Files.readString(file), "Unrelated file must not be modified");
+ }
+
+ @Test
+ void windowsSettings_skipsNonSettingsFiles(@TempDir Path dir) throws IOException {
+ Path xmlFile = dir.resolve("ClaudeSession.xml");
+ Files.writeString(xmlFile, "");
+
+ V1MigrationHelper.migrateWindowsSettings(dir);
+
+ assertTrue(Files.readString(xmlFile).contains("io.github.nbclaudecodegui.Foo"),
+ ".xml files must not be touched");
+ }
+
+ @Test
+ void windowsSettings_nonExistentDirIsNoOp(@TempDir Path tmp) {
+ Path missing = tmp.resolve("nonexistent");
+ assertDoesNotThrow(() -> V1MigrationHelper.migrateWindowsSettings(missing));
+ }
+
+ @Test
+ void windowsSettings_migratesMarkdownPreviewTab(@TempDir Path dir) throws IOException {
+ String oldContent = "";
+ Path file = dir.resolve("MarkdownPreviewTab.settings");
+ Files.writeString(file, oldContent);
+
+ V1MigrationHelper.migrateWindowsSettings(dir);
+
+ String result = Files.readString(file);
+ assertTrue(result.contains("io.github.nbplugins.claudecodegui.ui.MarkdownPreviewTab"));
+ }
+
+ // ── migratePrefsNode ──────────────────────────────────────────────────────
+
+ @Test
+ void prefsNode_copiesKeysToNewNodeAndRemovesOld() {
+ String oldPath = "test/v1migration/prefs-copy-test";
+ Preferences root = Preferences.userRoot();
+ Preferences oldNode = root.node(oldPath);
+ oldNode.put("key1", "value1");
+ oldNode.put("key2", "value2");
+
+ Preferences newNode = root.node("test/v1migration/prefs-copy-new");
+
+ try {
+ migratePrefsNode(root, oldPath, newNode);
+
+ assertEquals("value1", newNode.get("key1", null));
+ assertEquals("value2", newNode.get("key2", null));
+
+ // Old node should be gone (keys.length == 0 or nodeExists == false)
+ assertDoesNotThrow(() -> {
+ Preferences check = Preferences.userRoot().node(oldPath);
+ assertEquals(0, check.keys().length, "Old node must have no keys after migration");
+ });
+ } finally {
+ // Cleanup
+ try { newNode.removeNode(); } catch (Exception ignored) {}
+ try { Preferences.userRoot().node(oldPath).removeNode(); } catch (Exception ignored) {}
+ }
+ }
+
+ @Test
+ void prefsNode_doesNotOverwriteExistingNewKeys() {
+ String oldPath = "test/v1migration/prefs-no-overwrite-old";
+ Preferences root = Preferences.userRoot();
+ Preferences oldNode = root.node(oldPath);
+ oldNode.put("key1", "old-value");
+
+ Preferences newNode = root.node("test/v1migration/prefs-no-overwrite-new");
+ newNode.put("key1", "new-value");
+
+ try {
+ migratePrefsNode(root, oldPath, newNode);
+
+ assertEquals("new-value", newNode.get("key1", null),
+ "Existing key in new node must not be overwritten");
+ } finally {
+ try { newNode.removeNode(); } catch (Exception ignored) {}
+ try { Preferences.userRoot().node(oldPath).removeNode(); } catch (Exception ignored) {}
+ }
+ }
+
+ @Test
+ void prefsNode_emptyOldNodeIsNoOp() {
+ String oldPath = "test/v1migration/prefs-empty-old";
+ Preferences root = Preferences.userRoot();
+ Preferences newNode = root.node("test/v1migration/prefs-empty-new");
+
+ try {
+ assertDoesNotThrow(() -> migratePrefsNode(root, oldPath, newNode));
+ assertEquals(0, newNode.keys().length, "New node must remain empty");
+ } catch (Exception ignored) {
+ } finally {
+ try { newNode.removeNode(); } catch (Exception ignored) {}
+ }
+ }
+
+ @Test
+ void prefsNode_idempotentOnSecondRun() {
+ String oldPath = "test/v1migration/prefs-idempotent-old";
+ Preferences root = Preferences.userRoot();
+ Preferences newNode = root.node("test/v1migration/prefs-idempotent-new");
+
+ try {
+ // First run: nothing to migrate (old node empty)
+ migratePrefsNode(root, oldPath, newNode);
+ newNode.put("key1", "value1");
+
+ // Second run: old node still empty, new node has data — must not touch it
+ migratePrefsNode(root, oldPath, newNode);
+ assertEquals("value1", newNode.get("key1", null),
+ "Second run must not clear new node");
+ } catch (Exception ignored) {
+ } finally {
+ try { newNode.removeNode(); } catch (Exception ignored) {}
+ }
+ }
+}
diff --git a/src/test/java/io/github/nbclaudecodegui/controller/ClaudeSessionControllerTest.java b/src/test/java/io/github/nbplugins/claudecodegui/controller/ClaudeSessionControllerTest.java
similarity index 97%
rename from src/test/java/io/github/nbclaudecodegui/controller/ClaudeSessionControllerTest.java
rename to src/test/java/io/github/nbplugins/claudecodegui/controller/ClaudeSessionControllerTest.java
index 9f82b6e9..800ff659 100644
--- a/src/test/java/io/github/nbclaudecodegui/controller/ClaudeSessionControllerTest.java
+++ b/src/test/java/io/github/nbplugins/claudecodegui/controller/ClaudeSessionControllerTest.java
@@ -1,12 +1,12 @@
-package io.github.nbclaudecodegui.controller;
+package io.github.nbplugins.claudecodegui.controller;
-import io.github.nbclaudecodegui.model.ClaudeSessionModel;
-import io.github.nbclaudecodegui.model.EditMode;
-import io.github.nbclaudecodegui.model.SessionLifecycle;
+import io.github.nbplugins.claudecodegui.model.ClaudeSessionModel;
+import io.github.nbplugins.claudecodegui.model.EditMode;
+import io.github.nbplugins.claudecodegui.model.SessionLifecycle;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
-import io.github.nbclaudecodegui.model.ChoiceMenuModel;
+import io.github.nbplugins.claudecodegui.model.ChoiceMenuModel;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
@@ -79,7 +79,7 @@ void onEditModeComboChangedNoOpWhenSameMode() {
AtomicReference captured = new AtomicReference<>(null);
model.addListener(new NoOpListener() {
- @Override public void onEditModeChanged(io.github.nbclaudecodegui.model.EditMode mode) {
+ @Override public void onEditModeChanged(io.github.nbplugins.claudecodegui.model.EditMode mode) {
captured.set(mode);
}
});
@@ -155,7 +155,7 @@ void pollScreenStateDoesNotOverwriteAcceptEditsWhileWorking() throws Exception {
assertEquals(EditMode.ACCEPT_EDITS, m2.getEditMode(),
"acceptEdits must not be overwritten by screen poll while WORKING");
assertEquals(EditMode.ACCEPT_EDITS,
- io.github.nbclaudecodegui.model.ClaudeSessionModel.EDIT_MODE_REGISTRY
+ io.github.nbplugins.claudecodegui.model.ClaudeSessionModel.EDIT_MODE_REGISTRY
.get("/tmp/test2"),
"Registry must still hold acceptEdits");
}
@@ -538,14 +538,14 @@ void computeToggles_alreadyMatchingDesired_noToggles() {
@Test
void detectEditMode_emptyResultMeansDefaultModeOnIdleScreen() {
// Idle "Ask on edit" / default screen: no mode footer at all
- io.github.nbclaudecodegui.process.ScreenContentDetector detector =
- new io.github.nbclaudecodegui.process.ScreenContentDetector();
+ io.github.nbplugins.claudecodegui.process.ScreenContentDetector detector =
+ new io.github.nbplugins.claudecodegui.process.ScreenContentDetector();
java.util.List idleDefaultScreen = java.util.Arrays.asList(
"Some output from Claude",
"\u276F Ask anything...",
"────────────────────────────────────────"
);
- java.util.Optional result = detector.detectEditMode(idleDefaultScreen);
+ java.util.Optional result = detector.detectEditMode(idleDefaultScreen);
// detectEditMode returns empty for idle default screen (no "plan mode" / "accept edits" /
// " esc to interrupt" present). sendShiftTabsUntilMode must treat this as "default".
assertTrue(result.isEmpty(),
@@ -709,9 +709,9 @@ void isModelCommandPendingWithBlankLine_falseWhenModelInHistory() {
private static class NoOpListener
implements ClaudeSessionModel.ClaudeSessionModelListener {
@Override public void onLifecycleChanged(SessionLifecycle state) {}
- @Override public void onEditModeChanged(io.github.nbclaudecodegui.model.EditMode mode) {}
+ @Override public void onEditModeChanged(io.github.nbplugins.claudecodegui.model.EditMode mode) {}
@Override public void onModelListChanged(List models, int selectedIdx) {}
- @Override public void onChoiceMenuChanged(io.github.nbclaudecodegui.model.ChoiceMenuModel menu) {}
+ @Override public void onChoiceMenuChanged(io.github.nbplugins.claudecodegui.model.ChoiceMenuModel menu) {}
@Override public void onWorkingDirectoryChanged(java.io.File dir) {}
}
}
diff --git a/src/test/java/io/github/nbclaudecodegui/mcp/MCPSseServerPerSessionTest.java b/src/test/java/io/github/nbplugins/claudecodegui/mcp/MCPSseServerPerSessionTest.java
similarity index 99%
rename from src/test/java/io/github/nbclaudecodegui/mcp/MCPSseServerPerSessionTest.java
rename to src/test/java/io/github/nbplugins/claudecodegui/mcp/MCPSseServerPerSessionTest.java
index 34d6a4cc..b146bfac 100644
--- a/src/test/java/io/github/nbclaudecodegui/mcp/MCPSseServerPerSessionTest.java
+++ b/src/test/java/io/github/nbplugins/claudecodegui/mcp/MCPSseServerPerSessionTest.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.mcp;
+package io.github.nbplugins.claudecodegui.mcp;
import java.io.BufferedReader;
import java.io.InputStreamReader;
diff --git a/src/test/java/io/github/nbclaudecodegui/mcp/NetBeansMCPHandlerHookTest.java b/src/test/java/io/github/nbplugins/claudecodegui/mcp/NetBeansMCPHandlerHookTest.java
similarity index 97%
rename from src/test/java/io/github/nbclaudecodegui/mcp/NetBeansMCPHandlerHookTest.java
rename to src/test/java/io/github/nbplugins/claudecodegui/mcp/NetBeansMCPHandlerHookTest.java
index f57bde91..d94bc3be 100644
--- a/src/test/java/io/github/nbclaudecodegui/mcp/NetBeansMCPHandlerHookTest.java
+++ b/src/test/java/io/github/nbplugins/claudecodegui/mcp/NetBeansMCPHandlerHookTest.java
@@ -1,7 +1,7 @@
-package io.github.nbclaudecodegui.mcp;
+package io.github.nbplugins.claudecodegui.mcp;
-import io.github.nbclaudecodegui.model.ClaudeSessionModel;
-import io.github.nbclaudecodegui.model.EditMode;
+import io.github.nbplugins.claudecodegui.model.ClaudeSessionModel;
+import io.github.nbplugins.claudecodegui.model.EditMode;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
diff --git a/src/test/java/io/github/nbclaudecodegui/mcp/tools/DiffTabTrackerTest.java b/src/test/java/io/github/nbplugins/claudecodegui/mcp/tools/DiffTabTrackerTest.java
similarity index 99%
rename from src/test/java/io/github/nbclaudecodegui/mcp/tools/DiffTabTrackerTest.java
rename to src/test/java/io/github/nbplugins/claudecodegui/mcp/tools/DiffTabTrackerTest.java
index f973c266..d0cc1eb9 100644
--- a/src/test/java/io/github/nbclaudecodegui/mcp/tools/DiffTabTrackerTest.java
+++ b/src/test/java/io/github/nbplugins/claudecodegui/mcp/tools/DiffTabTrackerTest.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.mcp.tools;
+package io.github.nbplugins.claudecodegui.mcp.tools;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.atomic.AtomicReference;
diff --git a/src/test/java/io/github/nbclaudecodegui/mcp/tools/GetDiagnosticsTest.java b/src/test/java/io/github/nbplugins/claudecodegui/mcp/tools/GetDiagnosticsTest.java
similarity index 98%
rename from src/test/java/io/github/nbclaudecodegui/mcp/tools/GetDiagnosticsTest.java
rename to src/test/java/io/github/nbplugins/claudecodegui/mcp/tools/GetDiagnosticsTest.java
index f2560b27..44f89111 100644
--- a/src/test/java/io/github/nbclaudecodegui/mcp/tools/GetDiagnosticsTest.java
+++ b/src/test/java/io/github/nbplugins/claudecodegui/mcp/tools/GetDiagnosticsTest.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.mcp.tools;
+package io.github.nbplugins.claudecodegui.mcp.tools;
import java.util.Collections;
import java.util.List;
diff --git a/src/test/java/io/github/nbclaudecodegui/mcp/tools/GetOpenEditorsTest.java b/src/test/java/io/github/nbplugins/claudecodegui/mcp/tools/GetOpenEditorsTest.java
similarity index 96%
rename from src/test/java/io/github/nbclaudecodegui/mcp/tools/GetOpenEditorsTest.java
rename to src/test/java/io/github/nbplugins/claudecodegui/mcp/tools/GetOpenEditorsTest.java
index cd502e2e..2063d333 100644
--- a/src/test/java/io/github/nbclaudecodegui/mcp/tools/GetOpenEditorsTest.java
+++ b/src/test/java/io/github/nbplugins/claudecodegui/mcp/tools/GetOpenEditorsTest.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.mcp.tools;
+package io.github.nbplugins.claudecodegui.mcp.tools;
import java.util.Collections;
import java.util.Set;
diff --git a/src/test/java/io/github/nbclaudecodegui/mcp/tools/OpenFileTest.java b/src/test/java/io/github/nbplugins/claudecodegui/mcp/tools/OpenFileTest.java
similarity index 98%
rename from src/test/java/io/github/nbclaudecodegui/mcp/tools/OpenFileTest.java
rename to src/test/java/io/github/nbplugins/claudecodegui/mcp/tools/OpenFileTest.java
index 5abc3a52..8885bd7a 100644
--- a/src/test/java/io/github/nbclaudecodegui/mcp/tools/OpenFileTest.java
+++ b/src/test/java/io/github/nbplugins/claudecodegui/mcp/tools/OpenFileTest.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.mcp.tools;
+package io.github.nbplugins.claudecodegui.mcp.tools;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicReference;
diff --git a/src/test/java/io/github/nbclaudecodegui/model/ClaudeSessionModelTest.java b/src/test/java/io/github/nbplugins/claudecodegui/model/ClaudeSessionModelTest.java
similarity index 98%
rename from src/test/java/io/github/nbclaudecodegui/model/ClaudeSessionModelTest.java
rename to src/test/java/io/github/nbplugins/claudecodegui/model/ClaudeSessionModelTest.java
index a7418083..cd87df18 100644
--- a/src/test/java/io/github/nbclaudecodegui/model/ClaudeSessionModelTest.java
+++ b/src/test/java/io/github/nbplugins/claudecodegui/model/ClaudeSessionModelTest.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.model;
+package io.github.nbplugins.claudecodegui.model;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
@@ -293,7 +293,7 @@ void clearEditModeRegistryWithNullDirectoryDoesNotCrash() {
private static class NoOpListener
implements ClaudeSessionModel.ClaudeSessionModelListener {
@Override public void onLifecycleChanged(SessionLifecycle state) {}
- @Override public void onEditModeChanged(io.github.nbclaudecodegui.model.EditMode mode) {}
+ @Override public void onEditModeChanged(io.github.nbplugins.claudecodegui.model.EditMode mode) {}
@Override public void onModelListChanged(List models, int selectedIdx) {}
@Override public void onChoiceMenuChanged(ChoiceMenuModel menu) {}
@Override public void onWorkingDirectoryChanged(File dir) {}
diff --git a/src/test/java/io/github/nbclaudecodegui/model/EditModeTest.java b/src/test/java/io/github/nbplugins/claudecodegui/model/EditModeTest.java
similarity index 96%
rename from src/test/java/io/github/nbclaudecodegui/model/EditModeTest.java
rename to src/test/java/io/github/nbplugins/claudecodegui/model/EditModeTest.java
index e80f8b1c..13c909b5 100644
--- a/src/test/java/io/github/nbclaudecodegui/model/EditModeTest.java
+++ b/src/test/java/io/github/nbplugins/claudecodegui/model/EditModeTest.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.model;
+package io.github.nbplugins.claudecodegui.model;
import org.junit.jupiter.api.Test;
diff --git a/src/test/java/io/github/nbclaudecodegui/model/PromptFavoritesStoreTest.java b/src/test/java/io/github/nbplugins/claudecodegui/model/PromptFavoritesStoreTest.java
similarity index 98%
rename from src/test/java/io/github/nbclaudecodegui/model/PromptFavoritesStoreTest.java
rename to src/test/java/io/github/nbplugins/claudecodegui/model/PromptFavoritesStoreTest.java
index 2d95d867..15c24915 100644
--- a/src/test/java/io/github/nbclaudecodegui/model/PromptFavoritesStoreTest.java
+++ b/src/test/java/io/github/nbplugins/claudecodegui/model/PromptFavoritesStoreTest.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.model;
+package io.github.nbplugins.claudecodegui.model;
import java.nio.file.Path;
import java.util.List;
diff --git a/src/test/java/io/github/nbclaudecodegui/model/PromptHistoryStoreTest.java b/src/test/java/io/github/nbplugins/claudecodegui/model/PromptHistoryStoreTest.java
similarity index 98%
rename from src/test/java/io/github/nbclaudecodegui/model/PromptHistoryStoreTest.java
rename to src/test/java/io/github/nbplugins/claudecodegui/model/PromptHistoryStoreTest.java
index 8e229b4f..7630a06b 100644
--- a/src/test/java/io/github/nbclaudecodegui/model/PromptHistoryStoreTest.java
+++ b/src/test/java/io/github/nbplugins/claudecodegui/model/PromptHistoryStoreTest.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.model;
+package io.github.nbplugins.claudecodegui.model;
import java.time.Instant;
import java.util.List;
diff --git a/src/test/java/io/github/nbclaudecodegui/model/PromptHistoryStoreTestable.java b/src/test/java/io/github/nbplugins/claudecodegui/model/PromptHistoryStoreTestable.java
similarity index 95%
rename from src/test/java/io/github/nbclaudecodegui/model/PromptHistoryStoreTestable.java
rename to src/test/java/io/github/nbplugins/claudecodegui/model/PromptHistoryStoreTestable.java
index 9fcf3deb..27b2f8f5 100644
--- a/src/test/java/io/github/nbclaudecodegui/model/PromptHistoryStoreTestable.java
+++ b/src/test/java/io/github/nbplugins/claudecodegui/model/PromptHistoryStoreTestable.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.model;
+package io.github.nbplugins.claudecodegui.model;
import java.nio.file.Path;
import java.time.Instant;
diff --git a/src/test/java/io/github/nbclaudecodegui/model/SavedSessionTest.java b/src/test/java/io/github/nbplugins/claudecodegui/model/SavedSessionTest.java
similarity index 96%
rename from src/test/java/io/github/nbclaudecodegui/model/SavedSessionTest.java
rename to src/test/java/io/github/nbplugins/claudecodegui/model/SavedSessionTest.java
index d1001a73..09ac6d2f 100644
--- a/src/test/java/io/github/nbclaudecodegui/model/SavedSessionTest.java
+++ b/src/test/java/io/github/nbplugins/claudecodegui/model/SavedSessionTest.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.model;
+package io.github.nbplugins.claudecodegui.model;
import org.junit.jupiter.api.Test;
diff --git a/src/test/java/io/github/nbclaudecodegui/model/SessionLifecycleTest.java b/src/test/java/io/github/nbplugins/claudecodegui/model/SessionLifecycleTest.java
similarity index 93%
rename from src/test/java/io/github/nbclaudecodegui/model/SessionLifecycleTest.java
rename to src/test/java/io/github/nbplugins/claudecodegui/model/SessionLifecycleTest.java
index 92938cb7..44f7790c 100644
--- a/src/test/java/io/github/nbclaudecodegui/model/SessionLifecycleTest.java
+++ b/src/test/java/io/github/nbplugins/claudecodegui/model/SessionLifecycleTest.java
@@ -1,6 +1,6 @@
-package io.github.nbclaudecodegui.model;
+package io.github.nbplugins.claudecodegui.model;
-import io.github.nbclaudecodegui.model.SessionLifecycle;
+import io.github.nbplugins.claudecodegui.model.SessionLifecycle;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
diff --git a/src/test/java/io/github/nbclaudecodegui/process/ClaudeProcessProfileTest.java b/src/test/java/io/github/nbplugins/claudecodegui/process/ClaudeProcessProfileTest.java
similarity index 97%
rename from src/test/java/io/github/nbclaudecodegui/process/ClaudeProcessProfileTest.java
rename to src/test/java/io/github/nbplugins/claudecodegui/process/ClaudeProcessProfileTest.java
index 55d02eee..c8670025 100644
--- a/src/test/java/io/github/nbclaudecodegui/process/ClaudeProcessProfileTest.java
+++ b/src/test/java/io/github/nbplugins/claudecodegui/process/ClaudeProcessProfileTest.java
@@ -1,7 +1,7 @@
-package io.github.nbclaudecodegui.process;
+package io.github.nbplugins.claudecodegui.process;
-import io.github.nbclaudecodegui.settings.ClaudeProfile;
-import io.github.nbclaudecodegui.settings.ClaudeProfile.ProxyMode;
+import io.github.nbplugins.claudecodegui.settings.ClaudeProfile;
+import io.github.nbplugins.claudecodegui.settings.ClaudeProfile.ProxyMode;
import java.nio.file.Path;
import java.util.Map;
import org.junit.jupiter.api.Test;
diff --git a/src/test/java/io/github/nbclaudecodegui/process/ClaudeProcessTest.java b/src/test/java/io/github/nbplugins/claudecodegui/process/ClaudeProcessTest.java
similarity index 96%
rename from src/test/java/io/github/nbclaudecodegui/process/ClaudeProcessTest.java
rename to src/test/java/io/github/nbplugins/claudecodegui/process/ClaudeProcessTest.java
index 8f461b9b..78a95417 100644
--- a/src/test/java/io/github/nbclaudecodegui/process/ClaudeProcessTest.java
+++ b/src/test/java/io/github/nbplugins/claudecodegui/process/ClaudeProcessTest.java
@@ -1,7 +1,7 @@
-package io.github.nbclaudecodegui.process;
+package io.github.nbplugins.claudecodegui.process;
import com.pty4j.PtyProcess;
-import io.github.nbclaudecodegui.settings.ClaudeProfile;
+import io.github.nbplugins.claudecodegui.settings.ClaudeProfile;
import java.io.File;
import java.util.List;
import java.nio.charset.StandardCharsets;
@@ -418,14 +418,14 @@ void testReadVersionReturnsStringOnSuccess() throws Exception {
@Test
void testReadVersionReturnsEmptyStringOnFailure() {
// Point to a non-existent executable
- io.github.nbclaudecodegui.settings.ClaudeCodePreferences
+ io.github.nbplugins.claudecodegui.settings.ClaudeCodePreferences
.setClaudeExecutablePath("/nonexistent/claude-xyz");
try {
ClaudeProcess cp = new ClaudeProcess();
String version = cp.readVersion();
assertEquals("", version);
} finally {
- io.github.nbclaudecodegui.settings.ClaudeCodePreferences
+ io.github.nbplugins.claudecodegui.settings.ClaudeCodePreferences
.setClaudeExecutablePath("");
}
}
@@ -449,13 +449,13 @@ private static File makeFakeClaude(String body) throws Exception {
script.deleteOnExit();
Files.writeString(script.toPath(), "#!/bin/sh\n" + body);
script.setExecutable(true);
- io.github.nbclaudecodegui.settings.ClaudeCodePreferences
+ io.github.nbplugins.claudecodegui.settings.ClaudeCodePreferences
.setClaudeExecutablePath(script.getAbsolutePath());
return script;
}
private static void resetPrefs(File script) {
- io.github.nbclaudecodegui.settings.ClaudeCodePreferences
+ io.github.nbplugins.claudecodegui.settings.ClaudeCodePreferences
.setClaudeExecutablePath("");
if (script != null) script.delete();
}
@@ -470,7 +470,7 @@ void appendSessionFlags_continueLast_noSessionsDir_noFlag(@TempDir Path tmpDir)
java.util.List cmd = new java.util.ArrayList<>(java.util.List.of("claude"));
// tmpDir has no sessions subdirectory → no --continue
cp.appendSessionFlags(cmd, tmpDir.toString(), java.util.Map.of(),
- "", io.github.nbclaudecodegui.model.SessionMode.CONTINUE_LAST, null);
+ "", io.github.nbplugins.claudecodegui.model.SessionMode.CONTINUE_LAST, null);
assertFalse(cmd.contains("--continue"),
"should NOT add --continue when no sessions exist");
}
@@ -487,7 +487,7 @@ void appendSessionFlags_continueLast_sessionsExist_addsFlag(@TempDir Path tmpDir
java.util.List cmd = new java.util.ArrayList<>(java.util.List.of("claude"));
cp.appendSessionFlags(cmd, tmpDir.toString(),
java.util.Map.of("CLAUDE_CONFIG_DIR", tmpDir.resolve(".claude").toString()),
- "", io.github.nbclaudecodegui.model.SessionMode.CONTINUE_LAST, null);
+ "", io.github.nbplugins.claudecodegui.model.SessionMode.CONTINUE_LAST, null);
assertTrue(cmd.contains("--continue"),
"should add --continue when sessions exist");
}
@@ -504,7 +504,7 @@ void appendSessionFlags_newMode_noFlag(@TempDir Path tmpDir) throws Exception {
java.util.List cmd = new java.util.ArrayList<>(java.util.List.of("claude"));
cp.appendSessionFlags(cmd, tmpDir.toString(),
java.util.Map.of("CLAUDE_CONFIG_DIR", tmpDir.resolve(".claude").toString()),
- "", io.github.nbclaudecodegui.model.SessionMode.NEW, null);
+ "", io.github.nbplugins.claudecodegui.model.SessionMode.NEW, null);
assertFalse(cmd.contains("--continue"), "NEW mode should not add --continue");
assertFalse(cmd.contains("--resume"), "NEW mode should not add --resume");
}
@@ -514,7 +514,7 @@ void appendSessionFlags_resumeSpecific_addsResumeFlag(@TempDir Path tmpDir) {
ClaudeProcess cp = new ClaudeProcess();
java.util.List cmd = new java.util.ArrayList<>(java.util.List.of("claude"));
cp.appendSessionFlags(cmd, tmpDir.toString(), java.util.Map.of(),
- "", io.github.nbclaudecodegui.model.SessionMode.RESUME_SPECIFIC, "abc-123");
+ "", io.github.nbplugins.claudecodegui.model.SessionMode.RESUME_SPECIFIC, "abc-123");
assertTrue(cmd.contains("--resume"), "should add --resume");
assertTrue(cmd.contains("abc-123"), "should add the session id");
assertFalse(cmd.contains("--continue"), "should not add --continue");
diff --git a/src/test/java/io/github/nbclaudecodegui/process/ClaudeSessionStoreTest.java b/src/test/java/io/github/nbplugins/claudecodegui/process/ClaudeSessionStoreTest.java
similarity index 98%
rename from src/test/java/io/github/nbclaudecodegui/process/ClaudeSessionStoreTest.java
rename to src/test/java/io/github/nbplugins/claudecodegui/process/ClaudeSessionStoreTest.java
index cb923535..53cab19d 100644
--- a/src/test/java/io/github/nbclaudecodegui/process/ClaudeSessionStoreTest.java
+++ b/src/test/java/io/github/nbplugins/claudecodegui/process/ClaudeSessionStoreTest.java
@@ -1,6 +1,6 @@
-package io.github.nbclaudecodegui.process;
+package io.github.nbplugins.claudecodegui.process;
-import io.github.nbclaudecodegui.model.SavedSession;
+import io.github.nbplugins.claudecodegui.model.SavedSession;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.io.TempDir;
diff --git a/src/test/java/io/github/nbclaudecodegui/process/ModelMenuParserTest.java b/src/test/java/io/github/nbplugins/claudecodegui/process/ModelMenuParserTest.java
similarity index 93%
rename from src/test/java/io/github/nbclaudecodegui/process/ModelMenuParserTest.java
rename to src/test/java/io/github/nbplugins/claudecodegui/process/ModelMenuParserTest.java
index e973846c..71014cea 100644
--- a/src/test/java/io/github/nbclaudecodegui/process/ModelMenuParserTest.java
+++ b/src/test/java/io/github/nbplugins/claudecodegui/process/ModelMenuParserTest.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.process;
+package io.github.nbplugins.claudecodegui.process;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
@@ -19,7 +19,7 @@
* Fixture-based parameterized tests for {@link ModelMenuParser}.
*
*
Each test case is defined by a pair of resource files under
- * {@code io/github/nbclaudecodegui/process/model-menu-parser/}:
+ * {@code io/github/nbplugins/claudecodegui/process/model-menu-parser/}:
*
*
{@code .src.txt} — the rendered terminal screen lines
@@ -28,7 +28,7 @@
class ModelMenuParserTest {
private static final String RESOURCE_DIR =
- "io/github/nbclaudecodegui/process/model-menu-parser";
+ "io/github/nbplugins/claudecodegui/process/model-menu-parser";
private static final ObjectMapper MAPPER = new ObjectMapper();
diff --git a/src/test/java/io/github/nbclaudecodegui/process/PtyTtyConnectorTest.java b/src/test/java/io/github/nbplugins/claudecodegui/process/PtyTtyConnectorTest.java
similarity index 99%
rename from src/test/java/io/github/nbclaudecodegui/process/PtyTtyConnectorTest.java
rename to src/test/java/io/github/nbplugins/claudecodegui/process/PtyTtyConnectorTest.java
index 587762d3..8f7399cc 100644
--- a/src/test/java/io/github/nbclaudecodegui/process/PtyTtyConnectorTest.java
+++ b/src/test/java/io/github/nbplugins/claudecodegui/process/PtyTtyConnectorTest.java
@@ -1,4 +1,4 @@
-package io.github.nbclaudecodegui.process;
+package io.github.nbplugins.claudecodegui.process;
import com.pty4j.PtyProcess;
import com.pty4j.PtyProcessBuilder;
diff --git a/src/test/java/io/github/nbclaudecodegui/process/ScreenContentDetectorTest.java b/src/test/java/io/github/nbplugins/claudecodegui/process/ScreenContentDetectorTest.java
similarity index 97%
rename from src/test/java/io/github/nbclaudecodegui/process/ScreenContentDetectorTest.java
rename to src/test/java/io/github/nbplugins/claudecodegui/process/ScreenContentDetectorTest.java
index 3d531d64..48736400 100644
--- a/src/test/java/io/github/nbclaudecodegui/process/ScreenContentDetectorTest.java
+++ b/src/test/java/io/github/nbplugins/claudecodegui/process/ScreenContentDetectorTest.java
@@ -1,7 +1,7 @@
-package io.github.nbclaudecodegui.process;
+package io.github.nbplugins.claudecodegui.process;
-import io.github.nbclaudecodegui.model.ChoiceMenuModel;
-import io.github.nbclaudecodegui.model.EditMode;
+import io.github.nbplugins.claudecodegui.model.ChoiceMenuModel;
+import io.github.nbplugins.claudecodegui.model.EditMode;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.MethodSource;
@@ -21,7 +21,7 @@
* Parameterized unit tests for {@link ScreenContentDetector#detectChoiceMenu}.
*
*
Each test case is defined by a pair of resource files under
- * {@code io/github/nbclaudecodegui/process/screen-content-detector/detect-choice-menu/}:
+ * {@code io/github/nbplugins/claudecodegui/process/screen-content-detector/detect-choice-menu/}:
*