diff --git a/src/main/java/com/googlesource/gerrit/plugins/chatgpt/client/ClientBase.java b/src/main/java/com/googlesource/gerrit/plugins/chatgpt/client/ClientBase.java
new file mode 100644
index 0000000..6774c06
--- /dev/null
+++ b/src/main/java/com/googlesource/gerrit/plugins/chatgpt/client/ClientBase.java
@@ -0,0 +1,14 @@
+package com.googlesource.gerrit.plugins.chatgpt.client;
+
+import com.google.gson.Gson;
+import com.googlesource.gerrit.plugins.chatgpt.config.Configuration;
+
+public abstract class ClientBase {
+    protected final Gson gson = new Gson();
+    protected Configuration config;
+
+    public ClientBase(Configuration config) {
+        this.config = config;
+    }
+
+}
diff --git a/src/main/java/com/googlesource/gerrit/plugins/chatgpt/client/chatgpt/ChatGptTools.java b/src/main/java/com/googlesource/gerrit/plugins/chatgpt/client/chatgpt/ChatGptTools.java
index 50147b3..a5fed22 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/chatgpt/client/chatgpt/ChatGptTools.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/chatgpt/client/chatgpt/ChatGptTools.java
@@ -1,6 +1,6 @@
 package com.googlesource.gerrit.plugins.chatgpt.client.chatgpt;
 
-import com.google.gson.Gson;
+import com.googlesource.gerrit.plugins.chatgpt.client.ClientBase;
 import com.googlesource.gerrit.plugins.chatgpt.client.model.chatGpt.ChatGptRequest;
 import com.googlesource.gerrit.plugins.chatgpt.config.Configuration;
 import com.googlesource.gerrit.plugins.chatgpt.utils.FileUtils;
@@ -8,14 +8,11 @@
 import java.io.IOException;
 import java.io.InputStreamReader;
 
-class ChatGptTools {
-
-    private final Gson gson = new Gson();
-    private final Configuration config;
+class ChatGptTools extends ClientBase {
     private final boolean isCommentEvent;
 
     public ChatGptTools(Configuration config, Boolean isCommentEvent) {
-        this.config = config;
+        super(config);
         this.isCommentEvent = isCommentEvent;
     }
 
diff --git a/src/main/java/com/googlesource/gerrit/plugins/chatgpt/client/gerrit/GerritClientBase.java b/src/main/java/com/googlesource/gerrit/plugins/chatgpt/client/gerrit/GerritClientBase.java
index 057be7b..51d19ce 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/chatgpt/client/gerrit/GerritClientBase.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/chatgpt/client/gerrit/GerritClientBase.java
@@ -1,9 +1,9 @@
 package com.googlesource.gerrit.plugins.chatgpt.client.gerrit;
 
 import com.google.common.net.HttpHeaders;
-import com.google.gson.Gson;
 import com.google.gson.JsonArray;
 import com.google.gson.JsonObject;
+import com.googlesource.gerrit.plugins.chatgpt.client.ClientBase;
 import com.googlesource.gerrit.plugins.chatgpt.client.FileDiffProcessed;
 import com.googlesource.gerrit.plugins.chatgpt.client.HttpClientWithRetry;
 import com.googlesource.gerrit.plugins.chatgpt.config.Configuration;
@@ -21,15 +21,13 @@
 
 
 @Slf4j
-public class GerritClientBase {
-    protected final Gson gson = new Gson();
+public abstract class GerritClientBase extends ClientBase {
     protected final HttpClientWithRetry httpClientWithRetry = new HttpClientWithRetry();
     @Getter
     protected HashMap<String, FileDiffProcessed> fileDiffsProcessed = new HashMap<>();
-    protected Configuration config;
 
     public GerritClientBase(Configuration config) {
-        this.config = config;
+        super(config);
     }
 
     protected String generateBasicAuth(String username, String password) {
diff --git a/src/main/java/com/googlesource/gerrit/plugins/chatgpt/client/gerrit/GerritClientDetail.java b/src/main/java/com/googlesource/gerrit/plugins/chatgpt/client/gerrit/GerritClientDetail.java
index eada99a..cdc5378 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/chatgpt/client/gerrit/GerritClientDetail.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/chatgpt/client/gerrit/GerritClientDetail.java
@@ -9,7 +9,7 @@
 import java.util.List;
 
 @Slf4j
-public class GerritClientDetail extends GerritClientAccount {
+public class GerritClientDetail extends GerritClientBase {
     private final Integer gptAccountId;
 
     public GerritClientDetail(Configuration config, Integer gptAccountId) {
