הרעיון
רצינו קטלוג AI פנימי — כישורים (Skills), פרומפטים ותבניות — שמרגיש כמו מוצר אמיתי על דומיין משלנו, אבל בלי להקים שרת נתונים: התוכן יושב בקבצי Google Drive והלוגיקה רצה על Google Apps Script. גישת BYOC — Bring Your Own Cloud: המשתמש מביא את הענן של עצמו, ואנחנו מביאים את הממשק.
המכשול: Google חוסמת הטמעה של Apps Script ב-iframe (X-Frame-Options: SAMEORIGIN), אז אי-אפשר "לעטוף" את הממשק של גוגל בדומיין שלנו. הפתרון שהוכחנו: הממשק כולו מוגש מהדומיין שלנו, ו-Apps Script משמש כ-backend בלבד דרך ה-Execution API.
שני גלגולים ל-AI Hub
1 · המוצר החי: אפליקציית AI Hub פועלת כשירות פרטי המתארח אצל Google (התמונה הראשונה למעלה). הגישה אליה בהזמנה אישית בלבד — מי שאינו ברשימת המורשים מקבל מסך 403 — והקטלוג עצמו יושב ב-Google Drive של המשתמש.
2 · ה-POC (העמוד הזה): ניסוי ארכיטקטוני נפרד שהוכיח שאפשר להגיש את הממשק מהדומיין שלנו — שורת הכתובת נשארת joujik.com לכל אורך השימוש — כששירות Google משמש כמנוע בלבד מאחורי הקלעים (התמונה השנייה — מסך הכניסה שלו). אפשר לחוות אותו בהדגמה החיה שבתחתית העמוד; הכניסה מאושרת לחשבון מורשה בלבד.
הארכיטקטורה שהוכחה
joujik.com/aihub
שורת הכתובת נשארת שלנו
מהדומיין שלנו, בחיבור מוצפן
Apps Script Execution API
script.googleapis.com
- המשתמש נכנס עם חשבון Google בחלון popup — הטוקן חוזר ל-UI שלנו ב-
postMessage. - ה-UI קורא לפונקציות ב-Apps Script דרך
scripts.runעם הטוקן — בלי iframe ובלי שרת ביניים. - הקטלוג עצמו נטען מ-Drive של המשתמש — המידע לא עוזב את הענן שלו (BYOC).
סטטוס
ה-POC הצליח — הדפוס עובד מקצה לקצה, וההדגמה החיה זמינה בתחתית העמוד. הכניסה דרך חשבון Google מאושר בלבד: משתמש שאינו מורשה ייעצר עוד במסך הכניסה של Google, וכתובת המנוע נשארת מוסתרת — שורת הכתובת אינה משתנה. עמוד זה אינו אוסף שום מידע — אין טפסים, אין עוגיות ואין אנליטיקס. המוצר החי ממשיך לפעול בערוץ הפרטי.
להדגמה? לחץ כאן
ההדגמה החיה של ארכיטקטורת ה-POC — הממשק נטען מהדומיין שלנו ושורת הכתובת לא משתנה.
הכניסה מאושרת לחשבון מורשה בלבד · משתמש אחר ייעצר במסך הכניסה של Google