Content Studio — מערכת תוכן אוטומטית

הכל על איך המערכת עובדת, מה היא עושה, ואיך להשתמש בה.

עדכון אחרון: 4 במרץ 2026

מה זה Content Studio?

Content Studio הוא מכונת תוכן אוטומטית שמייצרת פוסטים לבלוג בלי מגע אנושי. אתה נותן לה נושא (או שהיא בוחרת לבד) — והיא כותבת פוסט מקצועי, יוצרת תמונת כותרת, ומפרסמת הכל ישירות לאתר.

🤖

Claude Sonnet 4

כותב את הפוסט: כותרת, תקציר, 4-6 פרקים, תגיות, ונתוני SEO. מחזיר JSON מובנה שהמערכת ממירה לפורמט של Sanity.

🎨

Gemini 3 Pro

יוצר תמונת Hero מקצועית בסגנון מינימליסטי-טכנולוגי, ביחס 16:9, בלי טקסט. התמונה עולה אוטומטית ל-Sanity CDN.

📝

Sanity CMS

מרכז התוכן. כל פוסט נשמר עם תמונה, תגיות, SEO, וקישור למחבר AI. כל האתרים שלך קוראים מכאן.

בפשטות: אתה אומר “תכתוב על TypeScript” — ותוך דקה וחצי יש פוסט מפורסם באתר עם תמונה ו-SEO.

איך זה עובד? הזרימה צעד אחר צעד

1

טריגר — מישהו מפעיל את המערכת

זה יכול להיות אתה (מהטרמינל או מה-Dashboard), ה-API, או ה-Cron האוטומטי שרץ 3 פעמים בשבוע.

2

Claude כותב את הפוסט

Claude מקבל את הנושא ומילות המפתח, וכותב פוסט מלא בפורמט JSON מובנה: כותרת, slug, תקציר, 4-6 פרקים עם פסקאות, תגיות, ונתוני SEO (meta title, meta description, focus keyword).

3

Gemini יוצר תמונת כותרת

Gemini מקבל את הכותרת ויוצר תמונה מקצועית בסגנון מודרני-מינימליסטי. אם יצירת התמונה נכשלת — הפוסט עדיין מתפרסם, פשוט בלי תמונה.

4

פרסום ל-Sanity

המערכת ממירה את ה-JSON לפורמט Portable Text, מעלה את התמונה ל-CDN, ויוצרת document ב-Sanity עם כל הנתונים. ה-ID דטרמיניסטי — אז אם מריצים שוב על אותו נושא, הוא מתעדכן במקום ליצור כפול.

5

חי באתר

הפוסט מתפרסם עם status: "published" ומיד זמין ב-/blog. כולל תמונה, תגיות, תאריך, וקישור למחבר AI.

  You / Cron / API
        │
        ▼
┌───────────────┐     ┌──────────┐     ┌──────────┐     ┌──────────┐
│  run-pipeline │────▶│  Claude   │────▶│  Gemini  │────▶│  Sanity  │
│  (orchestrator)│    │  (write)  │     │  (image) │     │ (publish)│
└───────────────┘     └──────────┘     └──────────┘     └────┬─────┘
                                                             │
                      ┌──────────────────────────────────────┘
                      ▼
               ┌─────────────┐
               │  /blog/slug │  ← Live!
               └─────────────┘

חיבור לכל האתרים שלך

הרעיון המרכזי: Sanity אחד, הרבה אתרים. כל הפוסטים נשמרים במקום מרכזי אחד, וכל אתר שואב רק את התוכן שרלוונטי אליו.

                 Content Studio (Sanity b0hm1i34)
                 ═══════════════════════════════
                            │
            ┌───────────────┼───────────────────┐
            │               │                   │
     ┌──────▼──────┐ ┌─────▼──────┐  ┌─────────▼─────────┐
     │  elad.dev   │ │ elad-score │  │  eitan-events     │
     │  (portfolio)│ │  (music)   │  │  (events)         │
     │             │ │            │  │                   │
     │ filter:     │ │ filter:    │  │ filter:           │
     │ project ==  │ │ project == │  │ project ==        │
     │ "elad-dev"  │ │ "elad-     │  │ "eitan-events"    │
     │             │ │  score"    │  │                   │
     └─────────────┘ └────────────┘  └───────────────────┘

איך כל אתר שואב את התוכן שלו

כל פוסט מקושר ל-project (מתוך 30 הפרויקטים שכבר נטענו ל-Sanity). כל אתר מוסיף שורה אחת לשאילתה שלו:

// בכל אתר — פשוט מוסיפים filter:
*[_type == "post"
  && status == "published"
  && project->slug.current == "elad-score"   // ← רק פוסטים לאתר הזה
] | order(publishedAt desc)

זה הכל. האתר לא צריך לדעת כלום על ה-pipeline — הוא פשוט קורא מ-Sanity.

30 הפרויקטים שכבר מוגדרים

Content Studio, Elad Score, Bayit BeSeder, Ninja Keyboard, EY.AI Kids, Eitan Events, Date Kirva, HaDerekh Next, Financial Manager, Kami, Zoom AI, oh-my-claudecode, CC10X, Nano Banana, AI Agents Skills, Babysitter, Elad.dev, Design Lab, Skill Registry, Ultracite, better-result, Agent Browser, Stitch Skills, Copilot Overnight, React Doctor, ReactBits, Honest Agent, Eval Harness, Shabbat Times, WhatsApp Bot.

תזמון אוטומטי — תוכן בלי לגעת

ברגע שהמערכת תעלה ל-Vercel, ה-Cron רץ לבד 3 פעמים בשבוע. אתה לא צריך לעשות כלום.

מתי?

כל יום ב', ד', ו' בשעה 8:00 בוקר UTC (10:00 בוקר שעון ישראל).

מה קורה?

המערכת בוחרת נושא מ-pool של 20 נושאים, בודקת שהוא לא כוסה לאחרונה, ומריצה את כל ה-pipeline.

בחירת נושאים

הנושאים מכסים: TypeScript, React, Next.js, AI, Sanity CMS, CSS, Testing, DevOps, Architecture, ועוד. המערכת לא חוזרת על נושא שכבר פורסם ב-10 הפוסטים האחרונים.

מעקב

כל הרצה נרשמת כ-Pipeline Run ב-Sanity — עם נושא, סטטוס, זמן ריצה, ושגיאה (אם יש). הכל נראה ב-Dashboard.

אפשר גם להפעיל ידנית — 3 דרכים

1. מהטרמינל:
npm run pipeline "React Server Components in 2026" -- --keywords "react,rsc"
2. מה-Dashboard: נכנסים ל-/dashboard, ממלאים נושא ומילות מפתח, לוחצים Generate.
3. דרך API:
curl -X POST /api/content/generate \
  -H "Authorization: Bearer $CRON_SECRET" \
  -d '{"topic": "...", "keywords": ["..."]}'

ממשק הניהול — Dashboard

ה-Dashboard הוא המסך הראשי שלך לניהול התוכן. הוא מראה לך מה קורה ומאפשר לך להפעיל את המערכת.

כרטיסיות סטטיסטיקה

סה"כ פוסטים מפורסמים, פוסטים השבוע, הרצות היום, ואחוז הצלחה.

טופס יצירה מהירה

ממלאים נושא ומילות מפתח, לוחצים כפתור — ותוך דקה-שתיים הפוסט באתר.

היסטוריית הרצות

10 ההרצות האחרונות עם סטטוס (הצלחה/כישלון), נושא, תאריך, וזמן ריצה.

Sanity Studio

ב-/studio יש ממשק מלא לעריכה ישירה של כל הפוסטים, פרויקטים, מחברים, והרצות pipeline.

מה כבר קיים ועובד

רכיבסטטוספרטים
כתיבת פוסטים עם ClaudeעובדSonnet 4 → JSON מובנה → Portable Text
יצירת תמונות עם GeminiעובדGemini 3 Pro → תמונת 16:9 → Sanity CDN
פרסום אוטומטי ל-Sanityעובדכולל תמונה, תגיות, SEO, מחבר AI
סכמות Sanityעובדpost, author, pipelineRun, project (30 פרויקטים)
הפעלה מהטרמינל (CLI)עובדnpm run pipeline "נושא" --keywords "..."
API endpointsעובדPOST /api/content/generate + GET /api/cron/generate-post
Dashboardעובדסטטיסטיקות, טופס יצירה, היסטוריית הרצות
בלוג חיעובד/blog עם רשימת פוסטים + /blog/[slug] פוסט מלא
Vercel Cronמוכן להעלאהב/ד/ו 8:00 UTC — צריך רק deploy ל-Vercel
חיבור מולטי-אתריםמתוכנןהארכיטקטורה מוכנה, צריך להוסיף project targeting

מה עדיין לא קיים

Project Targeting

גבוה

יכולת לציין לאיזה אתר הפוסט שייך (--project flag). הארכיטקטורה מוכנה, צריך לחבר.

Deploy ל-Vercel

גבוה

המערכת עובדת מקומית. צריך deploy ל-Vercel כדי שה-Cron ירוץ אוטומטית.

GitHub Repo

גבוה

הקוד עדיין מקומי בלבד. צריך push ל-GitHub.

תוכן בעברית

בינוני

כרגע הפוסטים רק באנגלית. אפשר להוסיף תמיכה ב-RTL ועברית.

לוח תוכן (Calendar)

בינוני

תצוגת לוח שנה של הפוסטים המתוכננים והמפורסמים.

Draft → Review → Publish

נמוך

כרגע הכל מתפרסם ישירות. אפשר להוסיף שלב ביניים של review.

Social Media Posts

נמוך

יצירה אוטומטית של פוסטים לרשתות חברתיות מתוך פוסטי הבלוג.

אנליטיקה

נמוך

מעקב אחרי צפיות, engagement, ו-SEO performance.

תכנית פיתוח — מה הלאה?

Phase 1-5 — הושלם

  • ✓ תשתית Sanity schemas + pipeline library
  • ✓ יצירת תוכן עם Claude + תמונות עם Gemini
  • ✓ סקריפטים להזנת נתונים (30 פרויקטים + מחבר AI)
  • ✓ API routes + Vercel Cron config
  • ✓ Dashboard עם סטטיסטיקות וטופס יצירה
  • ✓ בלוג עם רשימת פוסטים ועמוד פוסט מלא
  • ✓ דף תיעוד (אתה קורא אותו עכשיו)

Phase 6 — חיבור מולטי-אתרים

  • ← הוספת --project flag ל-pipeline כדי לתייג פוסטים לאתר ספציפי
  • ← GROQ filters בכל אתר כדי שישאב רק את התוכן שלו
  • ← Topic pools שונים לכל פרויקט (מוזיקה ל-Elad Score, חינוך ל-EY.AI, וכו')
  • ← סגנון כתיבה מותאם לכל אתר

Phase 7 — Content Intelligence

  • ← לוח תוכן (calendar) ב-Dashboard
  • ← אנליטיקה: צפיות, engagement, SEO scoring
  • ← יצירת פוסטים לרשתות חברתיות מתוך הבלוג
  • ← סדרות תוכן (multi-part articles)
  • ← תמיכה בעברית + RTL

Phase 8 — Quality & Automation

  • ← Draft → Review → Publish workflow
  • ← SEO scoring לפני פרסום
  • ← קישורים פנימיים אוטומטיים בין פוסטים
  • ← בדיקת ייחודיות

מה צריך ממך?

כדי שהמערכת תרוץ אוטומטית (Cron)

  1. ליצור GitHub repo ולדחוף את הקוד אליו
  2. לחבר את ה-repo ל-Vercel (או vercel deploy --prod)
  3. להוסיף Environment Variables ב-Vercel dashboard:
    NEXT_PUBLIC_SANITY_PROJECT_ID=b0hm1i34
    NEXT_PUBLIC_SANITY_DATASET=production
    NEXT_PUBLIC_SANITY_API_VERSION=2024-01-01
    SANITY_API_WRITE_TOKEN=<הטוקן שלך>
    ANTHROPIC_API_KEY=<המפתח שלך>
    GEMINI_API_KEY=<המפתח שלך>
    CRON_SECRET=cs-content-studio-2026-secret
  4. לוודא שה-Cron מופיע ב-Vercel dashboard → Crons tab

דברים שאני יכול לעשות לך עכשיו:

  • לייצר batch של 5-10 פוסטים כדי למלא את הבלוג
  • לחבר project targeting — שכל פוסט יהיה משויך לאתר ספציפי
  • להוסיף תמיכה בעברית (RTL + prompt בעברית)
  • לדחוף ל-GitHub ולעשות deploy ל-Vercel
  • להוסיף Sanity client לאתרים אחרים שלך כדי שישאבו תוכן