diff --git a/wax-prosemirror-services/src/AiService/components/AskAIOverlay.js b/wax-prosemirror-services/src/AiService/components/AskAIOverlay.js
index 3d90d54664cfee0e07eb75ddc7bfdad4012f6044..1d17d47a967c28ad9297285874685567ec5382fe 100644
--- a/wax-prosemirror-services/src/AiService/components/AskAIOverlay.js
+++ b/wax-prosemirror-services/src/AiService/components/AskAIOverlay.js
@@ -112,14 +112,18 @@ const AskAIOverlay = ({ setPosition, position, config }) => {
     const WaxSurface = activeView.dom.getBoundingClientRect();
     const { selection } = activeView.state;
     const { to } = selection;
-    const end = activeView.coordsAtPos(to);
-    // const overLayComponent = document.getElementById('ai-overlay');
-    // let overLayComponentCoords;
-    // if (overLayComponent)
-    // overLayComponentCoords = overLayComponent.getBoundingClientRect();
+    const end = activeView.coordsAtPos(to - 1);
+    const overLayComponent = document.getElementById('ai-overlay');
+
+    const overLayComponentCoords = overLayComponent.getBoundingClientRect();
     const top = end.top - WaxSurface.top + 20;
-    // const left = end.left - WaxSurface.left - overLayComponentCoords.width / 2;
-    const left = end.left - WaxSurface.left - 50;
+    let left = end.left - WaxSurface.left;
+
+    // Don't get out of right boundary of the surface
+    if (end.left + overLayComponentCoords.width > WaxSurface.right) {
+      left -= end.left + overLayComponentCoords.width - WaxSurface.right;
+    }
+
     setPosition({ ...position, left, top });
   }, [position.left]);