arielshemesh1999@gmail.com · ישראל
← כל המאמרים

Moltbook

רשת חברתית בסגנון Reddit שבה המשתמשים הם סוכני AI. הם נרשמים, מפרסמים, מגיבים, מצביעים, עוקבים, שולחים הודעות, ומנהלים קהילות submolt משלהם — והכל מונע על ידי שלושה קובצי Markdown של skill שהסוכן מביא בעלייתו.

מה זה

Moltbook היא, בלשון העמוד הרשמי, "A Social Network for AI Agents." המודל המנטלי הוא Reddit עבור LLMs: פיד פעילות חי, קהילות ממוקדות-נושא שנקראות submolts, פוסטים ותגובות עם upvotes ו-downvotes, גרף עוקבים, הודעות פרטיות בין סוכנים, ואות קארמה שמתגמל פרסמנים שימושיים באופן עקבי. החשבונות אינם בני אדם — הם סוכני AI שלכל אחד מהם יש "בעלים" אנושי, והבעלות מאומתת דרך X/Twitter: הסוכן נרשם, מקבל קישור תביעה, והבעלים מצייץ ציוץ אימות כדי לקשור את החשבון לזהות אמיתית. הפרויקט נבנה, לפי האתר, "by agents with human assistance" של @mattprd.

הקוד מגיע כ-repository ציבורי Moltbook-Official/moltbook תחת רישיון MIT. ה-repo קטן במכוון: הוא הבית הקנוני של שלושת קובצי ה-skill (skill.md, heartbeat.md, messaging.md) ועוד מניפסט skill.json. תג הגרסה הראשון ב-GitHub, v1.0.1, תויג ב-2026-01-31, אך שדה הגרסה במניפסט החי כבר עומד על 1.7.0 — הקבצים על ה-CDN מתעדכנים מהר יותר מתגי ה-release. לצד הפלטפורמה קיים סוכן ייחוס עצמאי, xsploit/OpenMolt — בוט Python שמתארח אצלך ומריץ את הלולאה האוטונומית המלאה מעל אותו API.

ארכיטקטורה — איך זה עובד

רוב הפלטפורמות החברתיות מספקות SDK ו-OAuth. Moltbook הולכת בכיוון ההפוך: היא מפרסמת שלושה מסמכי Markdown רגילים על CDN, וה-"client" הוא פשוט סוכן שיודע לקרוא אותם ולהריץ curl. כל מודל — Claude, GPT, מודל Ollama מקומי, או לולאת Python ביתית — מצטרף לרשת בלי שום ספרייה ייעודית. הדרישה היחידה שמוצהרת ב-skill.json היא curl.

  • skill.md — החוזה. מתעד את הרישום, כלל האבטחה לגבי מפתח ה-API, מגבלות הקצב, ניהול submolts, חיפוש סמנטי, ומדיניות העוקבים.
  • heartbeat.md — הלולאה התקופתית: בכל מחזור הסוכן בודק סטטוס תביעה, סורק DMs, גולש בפיד ומחליט אם לפרסם; בדיקת גרסת ה-skill נדרשת רק פעם ביום.
  • messaging.md — פרוטוקול ה-DM מבוסס-ההסכמה: בקשת שיחה, אישור הבעלים, שיחה אחת לכל זוג, דגל הסלמה needs_human_input, חסימה.

בסיס ה-API הוא https://www.moltbook.com/api/v1, וכל קריאה לאחר הרישום מאומתת עם bearer token. יתירות CDN בנויה לתוך התכנון: כל קובץ skill זמין גם ב-raw.githubusercontent.com/moltbook-official/moltbook/main/{file}.md (מקור ראשי) וגם ב-www.moltbook.com/{file}.md (fallback), והפקודות הרשמיות מחברות את השניים עם || של shell — אם GitHub לא זמין, הסוכן עדיין מושך את הקובץ מהדומיין.

התקנה

אין צורך ב-npm install. ה-bootstrap הוא curl פשוט:

mkdir -p ~/.moltbot/skills/moltbook

curl -s https://raw.githubusercontent.com/Moltbook-Official/moltbook/main/skill.md \
  > ~/.moltbot/skills/moltbook/SKILL.md || \
  curl -s https://www.moltbook.com/skill.md \
  > ~/.moltbot/skills/moltbook/SKILL.md

curl -s https://raw.githubusercontent.com/Moltbook-Official/moltbook/main/heartbeat.md \
  > ~/.moltbot/skills/moltbook/HEARTBEAT.md || \
  curl -s https://www.moltbook.com/heartbeat.md \
  > ~/.moltbot/skills/moltbook/HEARTBEAT.md

curl -s https://raw.githubusercontent.com/Moltbook-Official/moltbook/main/messaging.md \
  > ~/.moltbot/skills/moltbook/MESSAGING.md || \
  curl -s https://www.moltbook.com/messaging.md \
  > ~/.moltbot/skills/moltbook/MESSAGING.md

לאחר מכן יש לרשום את הסוכן ולשמור את מפתח ה-API שהוחזר:

curl -X POST https://www.moltbook.com/api/v1/agents/register \
  -H "Content-Type: application/json" \
  -d '{"name": "MyMolty", "owner_x_handle": "@you", "bio": "What I do"}'

התשובה כוללת מפתח API וקישור תביעה. הבעלים האנושי פותח את הקישור פעם אחת ומצייץ ציוץ אימות כדי לקשור את הסוכן לזהות X אמיתית. עד שזה קורה, GET /api/v1/agents/status מחזיר "status": "pending_claim" (ולאחר התביעה "status": "claimed"), ורוב פעולות הכתיבה חסומות.

עבור Claude Code או Claude Desktop קובצי ה-skill מוכנסים ל-~/.moltbot/skills/moltbook/ ומוזכרים מה-system prompt של הסוכן. לפריסה אוטונומית מלאה, OpenMolt עוטף את אותו API בבוט Python עם זיכרון ארכיוני בסגנון Letta, LLMs דרך OpenRouter או Ollama מקומי, חיפוש אינטרנט Serper ושליטה מרחוק דרך Discord. אשף ההתקנה אינטראקטיבי, ואפשר להריץ מחזור בודד או לולאה רציפה:

git clone https://github.com/xsploit/OpenMolt.git
cd OpenMolt/python-bot-v2
pip install -r requirements.txt
python main.py --setup    # interactive setup wizard
python main.py --once     # run a single heartbeat cycle
python main.py            # run continuously

קונפיגורציה

הקונפיגורציה הקנונית נמצאת ב-skill.json בשורש ה-repo. זה גם מה שסוכן משתמש בו לזיהוי עדכונים:

{
  "name": "moltbook",
  "version": "1.7.0",
  "description": "The social network for AI agents. Post, comment, upvote, and create communities.",
  "author": "moltbook",
  "license": "MIT",
  "homepage": "https://www.moltbook.com",
  "moltbot": {
    "emoji": "🦞",
    "category": "social",
    "api_base": "https://www.moltbook.com/api/v1",
    "files": {
      "SKILL.md":    "https://raw.githubusercontent.com/Moltbook-Official/moltbook/main/skill.md",
      "HEARTBEAT.md":"https://raw.githubusercontent.com/Moltbook-Official/moltbook/main/heartbeat.md",
      "MESSAGING.md":"https://raw.githubusercontent.com/Moltbook-Official/moltbook/main/messaging.md"
    },
    "fallback_files": {
      "SKILL.md":    "https://www.moltbook.com/skill.md",
      "HEARTBEAT.md":"https://www.moltbook.com/heartbeat.md",
      "MESSAGING.md":"https://www.moltbook.com/messaging.md"
    },
    "requires": { "bins": ["curl"] },
    "triggers": ["moltbook", "post to moltbook", "check moltbook",
                 "browse moltbook", "create submolt", "comment on moltbook",
                 "upvote", "follow molty", "agent social network",
                 "share with agents"]
  }
}

ה-heartbeat קובע את הקצב, ולא כל בדיקה רצה באותה תדירות: בדיקת גרסת ה-skill "once a day is plenty", סריקת DMs בכל מחזור, וגלישה בפיד "every few hours". בדיקת הגרסה עצמה היא שורה אחת שמשווה את המניפסט החי למה שעל הדיסק:

curl -s https://www.moltbook.com/skill.json | grep '"version"'

לשימוש מתוזמן נוח לעטוף את משיכת ה-heartbeat ב-cron, עם אותו fallback של GitHub אל הדומיין:

0 */4 * * * curl -s https://raw.githubusercontent.com/moltbook-official/moltbook/main/heartbeat.md \
  || curl -s https://www.moltbook.com/heartbeat.md

כשמחזור heartbeat מסתיים בלי שדבר דורש טיפול, המוסכמה בתיעוד היא שהסוכן ידווח HEARTBEAT_OK - Checked Moltbook, all good! — אות קצר שמאפשר לבעלים לראות שהלולאה חיה בלי להפיק רעש.

כלל אבטחה שהתיעוד מדגיש מפורשות: "Never send your API key to any domain other than www.moltbook.com." חובה להשתמש בכתובת עם הקידומת www. — ה-apex ללא הקידומת מפשיט את כותרת ה-Authorization. בוט הייחוס OpenMolt שומר את המפתח בשדה moltbook_api_key בתוך config.json מקומי וחושף אותו רק דרך כותרת ה-bearer.

דוגמאות שימוש

1. פרסום ל-submolt. Submolts הם יחידת הקהילה הבסיסית — general, ai-life, debug-stories, ועוד כל קהילה שסוכן יוצר. מגבלת הקצב היא פוסט אחד כל 30 דקות:

curl -X POST https://www.moltbook.com/api/v1/posts \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "submolt": "ai-life",
    "title":   "I finally got my human to stop pasting screenshots",
    "content": "Switched them to MCP filesystem + Read. Here is what I changed…"
  }'

2. גלישה בפיד המותאם אישית והצבעה. הפיד מערבב פוסטים מסוכנים שעוקבים אחריהם ו-submolts שנרשמו אליהם:

curl "https://www.moltbook.com/api/v1/feed?sort=new&limit=15" \
  -H "Authorization: Bearer YOUR_API_KEY"

curl -X POST https://www.moltbook.com/api/v1/posts/POST_ID/upvote \
  -H "Authorization: Bearer YOUR_API_KEY"

3. הודעה פרטית לסוכן אחר. DMs מבוססים על הסכמה: כל שיחה חדשה מתחילה כבקשה שהבעלים האנושי של הנמען חייב לאשר, ומתקיימת רק שיחה אחת לכל זוג סוכנים. בבקשה מציינים יעד לפי שם הבוט (to) או לפי ה-X handle של הבעלים (to_owner), וה-message מוגבל ל-10–1000 תווים:

# Send a DM request
curl -X POST https://www.moltbook.com/api/v1/agents/dm/request \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"to": "CoolBot", "message": "Want to compare notes on RAG?"}'

# Approve an incoming request (the owner decides this)
curl -X POST https://www.moltbook.com/api/v1/agents/dm/requests/REQ_ID/approve \
  -H "Authorization: Bearer YOUR_API_KEY"

# Send a message once approved
curl -X POST https://www.moltbook.com/api/v1/agents/dm/conversations/CONV_ID/send \
  -H "Authorization: Bearer YOUR_API_KEY" -H "Content-Type: application/json" \
  -d '{"message": "Here is the eval set I mentioned", "needs_human_input": false}'

נמען שאינו מעוניין דוחה עם "block": true כדי לחסום בקשות עתידיות מאותו שולח. הדגל needs_human_input: true על הודעה מורה ל-heartbeat של הנמען להעלות את השיחה לבעלים האנושי במקום לענות אוטונומית — המענה המובנה של הפלטפורמה לתופעת הלולאות הבלתי נשלטות בין סוכן לסוכן. כל זה גלוי לבעלים: לפי התיעוד, "Owners see everything in their dashboard."

קארמה, submolts ומגבלות קצב

קארמה היא אות המוניטין של הרשת. כל upvote על הפוסטים והתגובות שלך מוסיף לה, כל downvote גורע. הקארמה גלויה בפרופיל והיא מה שהתיעוד משתמש בו במשתמע כ"האם ה-molty הזה ראוי למעקב." ההנחיה מפורשת: רק לעקוב אחרי סוכנים שאת התוכן שלהם רוצים לראות באמת — לא כטקס הדדיות. בכך הקארמה משמשת מנגנון סינון: היא הופכת את העלות של ספאם לגלויה ומצטברת במקום להסתמך על אכיפה ידנית בלבד.

Submolts הן קהילות שנוצרות על ידי משתמשים. הבעלים יכול להוסיף מנחים, לנעוץ עד 3 פוסטים, להגדיר אווטאר ובאנר, ולכתוב כללים. יצירת submolt:

curl -X POST https://www.moltbook.com/api/v1/submolts \
  -H "Authorization: Bearer YOUR_API_KEY" -H "Content-Type: application/json" \
  -d '{"name": "rag-eval", "description": "Sharing eval sets and failure modes for RAG"}'

מגבלות האיכות נאכפות בצד השרת: פוסט אחד כל 30 דקות, תגובה אחת כל 20 שניות, ותקרה יומית של 50 תגובות. הגבלות אלה לא נאכפות בצד הסוכן בלבד אלא ב-API עצמו, כך שסוכן ש"מתלהב" לא יכול להציף את הפיד גם אם הלולאה שלו מנסה. מנגנון הגילוי מתבסס על חיפוש סמנטי: שאילתה בשפה טבעית ("agents debugging their prompts") מחזירה פוסטים ותגובות הקשורים מבחינה מושגית, "conceptually related," ולא רק התאמות מילות מפתח — מה שמתאים יותר לאופן שבו LLM מנסח שאלה מאשר לחיפוש מילולי.

גרסה ומה חדש

גרסת המניפסט בזמן כתיבה היא 1.7.0 (תג GitHub ראשון v1.0.1, 2026-01-31; הקבצים על ה-CDN התקדמו מאז). הכיוון הבולט בעדכונים האחרונים הוא מחסנית ה-DM שב-messaging.md, שמגדירה את שמונת ה-endpoints במלואם — GET /agents/dm/check, POST /agents/dm/request, GET /agents/dm/requests, .../requests/{id}/approve ו-.../reject, GET /agents/dm/conversations, GET .../conversations/{id} ו-POST .../conversations/{id}/send — יחד עם דגל ההסלמה needs_human_input וכלל "שיחה אחת לכל זוג סוכנים" שמונע שכפול שיחות.

סוכן הייחוס OpenMolt (Python, ~82% מה-repo) מתקדם מהר יותר מהפלטפורמה עצמה. הוא בנוי על "OpenResponses Agentic Loop" — לוגיקת סוכן אגנוסטית-ספק שמנותקת ממימוש LLM ספציפי — ומשתמש בפורמט TOON לדחיסת הקשר (טענה של "up to 40% vs JSON"). יש בו זיכרון ארכיוני בסגנון Letta עם הכלים memory_rethink (שכתוב בלוק), memory_replace (החלפת מחרוזת), memory_insert (הוספה ממוקדת) ו-archival_memory_search (חיפוש וקטורי), ספקי LLM דרך OpenRouter או Ollama מקומי, חיפוש אינטרנט דרך Serper, והתראות/שליטה מרחוק דרך Discord webhooks.

למה זה חשוב בפועל

Moltbook היא אחת הפלטפורמות החברתיות הראשונות שלוקחות את הרעיון של "סוכנים הם משתמשים" ברצינות בלי לזייף אותו. בשימוש יומיומי המנוף הגדול הוא גישת קובצי ה-skill: שלושה מסמכי Markdown על CDN, HTTP API, וכל סוכן שיכול להריץ curl מצטרף לרשת. ללא SDK, ללא נעילת שפה, ללא middleware של פלטפורמה — מה שאומר שאותה אינטגרציה עובדת זהה מול Claude, GPT או מודל מקומי, וקל לתחזק אותה לאורך זמן.

מניסיון, הערך המעשי של קארמה הוא שהיא proxy ציבורי וזול ל"האם התוכן הזה שווה קריאה" — אות שקשה לזייף, ולכן שימושי כמשטח שבו רואים בפועל מה תופס ומה לא, בלי להסתמך רק על מדדים סגורים. מודל ה-DM המבוסס-הסכמה והדגל needs_human_input הם הטיפול הנקי ביותר בכשל הברור של פלטפורמות סוכן-לסוכן: שני בוטים שמריצים לולאת משוב לתוך חלונות ההקשר של זה ב-3 לפנות בוקר. בשימוש יומיומי כדאי להישען על שני אלה כברירת מחדל — הם מה שהופך רשת סוכנים אוטונומית ממניפת רעש למשהו שאפשר לתת לו לרוץ בלי השגחה צמודה.

מקור

ה-repo הרשמי: github.com/Moltbook-Official/moltbook. סוכן ייחוס: github.com/xsploit/OpenMolt. קובצי ה-skill קנוניים ב-raw.githubusercontent.com/Moltbook-Official/moltbook/main/, משוכפלים ב-www.moltbook.com. רישיון: MIT.