diff --git a/frontend/src/components/WorkspaceChat/ChatContainer/PromptInput/SlashCommands/index.jsx b/frontend/src/components/WorkspaceChat/ChatContainer/PromptInput/SlashCommands/index.jsx
index 0e4f26aa9..1e85d372d 100644
--- a/frontend/src/components/WorkspaceChat/ChatContainer/PromptInput/SlashCommands/index.jsx
+++ b/frontend/src/components/WorkspaceChat/ChatContainer/PromptInput/SlashCommands/index.jsx
@@ -1,10 +1,13 @@
 import { useEffect, useRef, useState } from "react";
 import SlashCommandIcon from "./icons/slash-commands-icon.svg";
+import { Tooltip } from "react-tooltip";
 
 export default function SlashCommandsButton({ showing, setShowSlashCommand }) {
   return (
     <div
       id="slash-cmd-btn"
+      data-tooltip-id="tooltip-slash-cmd-btn"
+      data-tooltip-content="View all available slash commands for chatting."
       onClick={() => setShowSlashCommand(!showing)}
       className={`flex justify-center items-center opacity-60 hover:opacity-100 cursor-pointer ${
         showing ? "!opacity-100" : ""
@@ -15,6 +18,12 @@ export default function SlashCommandsButton({ showing, setShowSlashCommand }) {
         className="w-6 h-6 pointer-events-none"
         alt="Slash commands button"
       />
+      <Tooltip
+        id="tooltip-slash-cmd-btn"
+        place="top"
+        delayShow={300}
+        className="tooltip !text-xs z-99"
+      />
     </div>
   );
 }
diff --git a/frontend/src/components/WorkspaceChat/ChatContainer/PromptInput/index.jsx b/frontend/src/components/WorkspaceChat/ChatContainer/PromptInput/index.jsx
index e141cc0a4..75316308e 100644
--- a/frontend/src/components/WorkspaceChat/ChatContainer/PromptInput/index.jsx
+++ b/frontend/src/components/WorkspaceChat/ChatContainer/PromptInput/index.jsx
@@ -6,7 +6,6 @@ import {
   Quotes,
 } from "@phosphor-icons/react";
 import React, { useState, useRef } from "react";
-import { isMobile } from "react-device-detect";
 import ManageWorkspace, {
   useManageWorkspaceModal,
 } from "../../../Modals/MangeWorkspace";
@@ -15,6 +14,8 @@ import SlashCommandsButton, {
   SlashCommands,
   useSlashCommands,
 } from "./SlashCommands";
+import { isMobile } from "react-device-detect";
+import { Tooltip } from "react-tooltip";
 
 export default function PromptInput({
   workspace,
@@ -98,13 +99,23 @@ export default function PromptInput({
               </button>
             </div>
             <div className="flex justify-between py-3.5">
-              <div className="flex gap-2">
+              <div className="flex gap-x-2">
                 {user?.role !== "default" && (
-                  <Gear
-                    onClick={showModal}
-                    className="w-7 h-7 text-white/60 hover:text-white cursor-pointer"
-                    weight="fill"
-                  />
+                  <div>
+                    <Gear
+                      onClick={showModal}
+                      data-tooltip-id="tooltip-workspace-settings-prompt"
+                      data-tooltip-content={`Open the ${workspace.name} workspace settings`}
+                      className="w-7 h-7 text-white/60 hover:text-white cursor-pointer"
+                      weight="fill"
+                    />
+                    <Tooltip
+                      id="tooltip-workspace-settings-prompt"
+                      place="top"
+                      delayShow={300}
+                      className="tooltip !text-xs z-99"
+                    />
+                  </div>
                 )}
                 <ChatModeSelector workspace={workspace} />
                 <SlashCommandsButton
@@ -128,8 +139,6 @@ function ChatModeSelector({ workspace }) {
   const [chatMode, setChatMode] = useState(
     window.localStorage.getItem(STORAGE_KEY) ?? "chat"
   );
-  const [showToolTip, setShowTooltip] = useState(false);
-  const [delayHandler, setDelayHandler] = useState(null);
 
   function toggleMode() {
     const newChatMode = chatMode === "chat" ? "query" : "chat";
@@ -137,40 +146,25 @@ function ChatModeSelector({ workspace }) {
     window.localStorage.setItem(STORAGE_KEY, newChatMode);
   }
 
-  function handleMouseEnter() {
-    if (isMobile) return false;
-    setDelayHandler(
-      setTimeout(() => {
-        setShowTooltip(true);
-      }, 700)
-    );
-  }
-
-  const cleanupTooltipListener = () => {
-    clearTimeout(delayHandler);
-    setShowTooltip(false);
-  };
-
   const ModeIcon = chatMode === "chat" ? Chats : Quotes;
   return (
     <div
-      className="relative"
-      onMouseEnter={handleMouseEnter}
-      onMouseLeave={cleanupTooltipListener}
+      data-tooltip-id="chat-mode-toggle"
+      data-tooltip-content={`You are currently in ${chatMode} mode. Click to switch to ${
+        chatMode === "chat" ? "query" : "chat"
+      } mode.`}
     >
-      <div
-        className={`opacity-${
-          showToolTip ? 1 : 0
-        } pointer-events-none transition-all duration-300 tip absolute bottom-10 z-99 left-0 bg-white/50 text-gray-200 text-xs p-1.5 rounded shadow-lg whitespace-nowrap`}
-      >
-        You are currently in {chatMode} mode. Click to switch to{" "}
-        {chatMode === "chat" ? "query" : "chat"} mode.
-      </div>
       <ModeIcon
         onClick={toggleMode}
         className="w-7 h-7 text-white/60 hover:text-white cursor-pointer"
         weight="fill"
       />
+      <Tooltip
+        id="chat-mode-toggle"
+        place="top"
+        delayShow={300}
+        className="tooltip !text-xs z-99"
+      />
     </div>
   );
 }