תיעוד 52
דחיפת אירועים לתוך סשן פעיל באמצעות ערוצים
השתמשו בערוצים כדי לדחוף הודעות, התראות ו-webhooks לתוך סשן Claude Code משרת MCP. העבירו תוצאות CI, הודעות צ'אט ואירועי ניטור כדי ש-Claude יוכל להגיב בזמן שאתם לא ליד המחשב.
[!NOTE]
ערוצים נמצאים בתצוגה מקדימה מחקרית. הם דורשים אימות של Anthropic דרך claude.ai או מפתח API של Console, ואינם זמינים ב-Amazon Bedrock, ב-Agent Platform של Google Cloud, או ב-Microsoft Foundry. ארגוני Team ו-Enterprise חייבים להפעיל אותם במפורש.
ערוץ הוא שרת MCP שדוחף אירועים לתוך סשן Claude Code הפעיל שלכם, כדי ש-Claude יוכל להגיב לדברים שקורים בזמן שאתם לא בטרמינל. ערוצים יכולים להיות דו כיווניים: Claude קורא את האירוע ועונה בחזרה דרך אותו ערוץ, כמו גשר צ'אט. אירועים מגיעים רק בזמן שהסשן פתוח, ולכן להתקנה שפועלת תמיד מריצים את Claude בתהליך רקע או בטרמינל מתמיד.
בניגוד לאינטגרציות שפותחות סשן ענן חדש או ממתינות לסבב polling, האירוע מגיע לסשן שכבר פתוח אצלכם: ראו איך ערוצים משתווים.
מתקינים ערוץ כתוסף ומגדירים אותו עם האישורים שלכם. Telegram, Discord ו-iMessage כלולים בתצוגה המקדימה המחקרית.
כש-Claude עונה דרך ערוץ, רואים בטרמינל את ההודעה הנכנסת אבל לא את טקסט התשובה. הטרמינל מציג את קריאת הכלי ואישור (כמו "sent"), והתשובה עצמה מופיעה בפלטפורמה השנייה.
אם אתם מנהלים ארגון Team, Enterprise או Console, ראו הפעלת ערוצים עבור הארגון שלכם. כדי לבנות ערוץ משלכם, ראו את הפניה לערוצים.
#ערוצים נתמכים
כל ערוץ נתמך הוא תוסף שדורש Bun. להדגמה מעשית של זרימת התוסף לפני חיבור לפלטפורמה אמיתית, נסו את ההתחלה המהירה של fakechat.
#Telegram
ראו את קוד המקור המלא של תוסף Telegram.
1. יצירת בוט Telegram
פתחו את BotFather ב-Telegram ושלחו /newbot. תנו לו שם תצוגה ושם משתמש ייחודי שמסתיים ב-bot. העתיקו את הטוקן ש-BotFather מחזיר.
2. התקנת התוסף
הפעילו את Claude Code על ידי הרצת claude בטרמינל, ואז הזינו את זה בהנחיה שלו:
/plugin install telegram@claude-plugins-officialאם ההתקנה נכשלת, התאימו להודעה ש-Claude Code מדווח:
Marketplace "claude-plugins-official" not found: הוסיפו את ה-marketplace עם/plugin marketplace add anthropics/claude-plugins-official, ואז נסו שוב את ההתקנה.Plugin "<name>" not found in marketplace "claude-plugins-official": העותק המקומי של קטלוג ה-marketplace עשוי להיות לא מעודכן. רעננו אותו עם/plugin marketplace update claude-plugins-official, ואז נסו שוב את ההתקנה. אם הניסיון החוזר מדפיס את אותה הודעה, ראו Plugin not found in marketplace.
כשההתקנה שואלת על היקף התקנה, בחרו באפשרות היקף המשתמש כדי שהתוסף יהיה זמין בכל הפרויקטים שלכם. בדקו את סיכום ההתקנה: אם הוא מדווח Run /reload-plugins to apply., ראו החלת שינויי תוספים בלי הפעלה מחדש כדי שפקודת ה-configure של התוסף תהיה זמינה.
3. הגדרת הטוקן
הריצו את פקודת configure עם הטוקן מ-BotFather:
/telegram:configure <token>זה שומר אותו ב-~/.claude/channels/telegram/.env. אפשר גם להגדיר TELEGRAM_BOT_TOKEN בסביבת המעטפת לפני הפעלת Claude Code.
4. הפעלה מחדש עם ערוצים מופעלים
צאו מ-Claude Code והפעילו מחדש עם דגל הערוץ. זה מפעיל את תוסף Telegram, שמתחיל לעשות polling להודעות מהבוט שלכם:
claude --channels plugin:telegram@claude-plugins-official5. צימוד החשבון
פתחו את Telegram ושלחו כל הודעה לבוט שלכם. הבוט עונה עם קוד צימוד.
[!NOTE]
אם הבוט לא מגיב, ודאו ש-Claude Code רץ עם
--channelsמהשלב הקודם. הבוט יכול לענות רק בזמן שהערוץ פעיל.
חזרו ל-Claude Code והריצו:
/telegram:access pair <code>אחר כך נעלו את הגישה כך שרק החשבון שלכם יוכל לשלוח הודעות:
/telegram:access policy allowlist#Discord
ראו את קוד המקור המלא של תוסף Discord.
1. יצירת בוט Discord
עברו ל-Discord Developer Portal, לחצו על New Application, ותנו שם. במקטע Bot, צרו שם משתמש, ואז לחצו על Reset Token והעתיקו את הטוקן.
2. הפעלת Message Content Intent
בהגדרות הבוט, גללו אל Privileged Gateway Intents והפעילו את Message Content Intent.
3. הזמנת הבוט לשרת
עברו אל OAuth2 > URL Generator. בחרו את ההיקף bot והפעילו את ההרשאות האלה:
- View Channels
- Send Messages
- Send Messages in Threads
- Read Message History
- Attach Files
- Add Reactions
פתחו את ה-URL שנוצר כדי להוסיף את הבוט לשרת שלכם.
4. התקנת התוסף
הפעילו את Claude Code על ידי הרצת claude בטרמינל, ואז הזינו את זה בהנחיה שלו:
/plugin install discord@claude-plugins-officialאם ההתקנה נכשלת, התאימו להודעה ש-Claude Code מדווח:
Marketplace "claude-plugins-official" not found: הוסיפו את ה-marketplace עם/plugin marketplace add anthropics/claude-plugins-official, ואז נסו שוב את ההתקנה.Plugin "<name>" not found in marketplace "claude-plugins-official": העותק המקומי של קטלוג ה-marketplace עשוי להיות לא מעודכן. רעננו אותו עם/plugin marketplace update claude-plugins-official, ואז נסו שוב את ההתקנה. אם הניסיון החוזר מדפיס את אותה הודעה, ראו Plugin not found in marketplace.
כשההתקנה שואלת על היקף התקנה, בחרו באפשרות היקף המשתמש כדי שהתוסף יהיה זמין בכל הפרויקטים שלכם. בדקו את סיכום ההתקנה: אם הוא מדווח Run /reload-plugins to apply., ראו החלת שינויי תוספים בלי הפעלה מחדש כדי שפקודת ה-configure של התוסף תהיה זמינה.
5. הגדרת הטוקן
הריצו את פקודת configure עם טוקן הבוט שהעתקתם:
/discord:configure <token>זה שומר אותו ב-~/.claude/channels/discord/.env. אפשר גם להגדיר DISCORD_BOT_TOKEN בסביבת המעטפת לפני הפעלת Claude Code.
6. הפעלה מחדש עם ערוצים מופעלים
צאו מ-Claude Code והפעילו מחדש עם דגל הערוץ. זה מחבר את תוסף Discord כדי שהבוט יוכל לקבל הודעות ולהגיב להן:
claude --channels plugin:discord@claude-plugins-official7. צימוד החשבון
שלחו DM לבוט ב-Discord. הבוט עונה עם קוד צימוד.
[!NOTE]
אם הבוט לא מגיב, ודאו ש-Claude Code רץ עם
--channelsמהשלב הקודם. הבוט יכול לענות רק בזמן שהערוץ פעיל.
חזרו ל-Claude Code והריצו:
/discord:access pair <code>אחר כך נעלו את הגישה כך שרק החשבון שלכם יוכל לשלוח הודעות:
/discord:access policy allowlist#iMessage
ראו את קוד המקור המלא של תוסף iMessage.
ערוץ iMessage קורא את מסד הנתונים של Messages ישירות ושולח תשובות דרך AppleScript. הוא דורש macOS ולא צריך טוקן בוט או שירות חיצוני.
1. מתן Full Disk Access
מסד הנתונים של Messages ב-~/Library/Messages/chat.db מוגן על ידי macOS. בפעם הראשונה שהשרת קורא אותו, macOS מבקש גישה: לחצו על Allow. הבקשה מציינת את האפליקציה שהפעילה את Bun, למשל Terminal, iTerm, או ה-IDE שלכם.
אם הבקשה לא מופיעה או שלחצתם על Don't Allow, תנו גישה ידנית תחת System Settings > Privacy & Security > Full Disk Access והוסיפו את הטרמינל שלכם. בלי זה, השרת יוצא מיד עם authorization denied.
2. התקנת התוסף
הפעילו את Claude Code על ידי הרצת claude בטרמינל, ואז הזינו את זה בהנחיה שלו:
/plugin install imessage@claude-plugins-officialאם ההתקנה נכשלת, התאימו להודעה ש-Claude Code מדווח:
Marketplace "claude-plugins-official" not found: הוסיפו את ה-marketplace עם/plugin marketplace add anthropics/claude-plugins-official, ואז נסו שוב את ההתקנה.Plugin "<name>" not found in marketplace "claude-plugins-official": העותק המקומי של קטלוג ה-marketplace עשוי להיות לא מעודכן. רעננו אותו עם/plugin marketplace update claude-plugins-official, ואז נסו שוב את ההתקנה. אם הניסיון החוזר מדפיס את אותה הודעה, ראו Plugin not found in marketplace.
כשההתקנה שואלת על היקף התקנה, בחרו באפשרות היקף המשתמש כדי שהתוסף יהיה זמין בכל הפרויקטים שלכם.
אם סיכום ההתקנה מדווח Run /reload-plugins to apply., אין צורך לפעול לפי זה כאן, כי ההפעלה מחדש בשלב הבא קולטת את התוסף.
3. הפעלה מחדש עם ערוצים מופעלים
צאו מ-Claude Code והפעילו מחדש עם דגל הערוץ:
claude --channels plugin:imessage@claude-plugins-official4. שליחת הודעה לעצמכם
פתחו את Messages בכל מכשיר שמחובר ל-Apple ID שלכם ושלחו הודעה לעצמכם. היא מגיעה ל-Claude מיד: צ'אט עצמי עוקף את בקרת הגישה בלי הגדרה.
[!NOTE]
התשובה הראשונה ש-Claude שולח מפעילה בקשת Automation של macOS ששואלת אם הטרמינל יכול לשלוט ב-Messages. לחצו על OK.
5. אישור שולחים אחרים
כברירת מחדל, רק ההודעות שלכם עוברות. כדי לאפשר לאיש קשר אחר להגיע ל-Claude, הוסיפו את ה-handle שלו:
/imessage:access allow +15551234567handles הם מספרי טלפון בפורמט +country או כתובות דוא"ל של Apple ID כמו [email protected].
#התחלה מהירה
Fakechat הוא ערוץ הדגמה נתמך רשמית שמריץ ממשק צ'אט על localhost, בלי שום דבר לאימות ובלי שירות חיצוני להגדרה.
אחרי שמתקינים ומפעילים את fakechat, אפשר להקליד בדפדפן וההודעה מגיעה לסשן Claude Code. Claude עונה, והתשובה מופיעה בחזרה בדפדפן. אחרי שבדקתם את ממשק fakechat, נסו את Telegram, Discord, או iMessage.
כדי לנסות את הדגמת fakechat, צריך:
- Claude Code מותקן ומאומת עם חשבון claude.ai או מפתח API של Claude Console
- Bun מותקן. תוספי הערוצים שנבנו מראש הם סקריפטים של Bun. בדקו עם
bun --version. אם זה נכשל, התקינו את Bun. - ארגון Team, Enterprise, או Console מנוהל: מנהל המערכת חייב להפעיל ערוצים בהגדרות המנוהלות
1. התקנת תוסף הערוץ fakechat
הפעילו את Claude Code על ידי הרצת claude בטרמינל, ואז הזינו את פקודת ההתקנה בהנחיה שלו:
/plugin install fakechat@claude-plugins-officialאם ההתקנה נכשלת, התאימו להודעה ש-Claude Code מדווח:
Marketplace "claude-plugins-official" not found: הוסיפו את ה-marketplace עם/plugin marketplace add anthropics/claude-plugins-official, ואז נסו שוב את ההתקנה.Plugin "<name>" not found in marketplace "claude-plugins-official": העותק המקומי של קטלוג ה-marketplace עשוי להיות לא מעודכן. רעננו אותו עם/plugin marketplace update claude-plugins-official, ואז נסו שוב את ההתקנה. אם הניסיון החוזר מדפיס את אותה הודעה, ראו Plugin not found in marketplace.
כשההתקנה שואלת על היקף התקנה, בחרו באפשרות היקף המשתמש כדי שהתוסף יהיה זמין בכל הפרויקטים שלכם.
אם סיכום ההתקנה מדווח Run /reload-plugins to apply., אין צורך לפעול לפי זה כאן, כי ההפעלה מחדש בשלב הבא קולטת את התוסף.
2. הפעלה מחדש עם הערוץ מופעל
צאו מ-Claude Code, ואז הפעילו מחדש עם --channels והעבירו את תוסף fakechat שהתקנתם:
claude --channels plugin:fakechat@claude-plugins-officialשרת fakechat מופעל אוטומטית. מסך ההפעלה מציג הודעת ערוצים שאומרת שהודעות מ-plugin:fakechat@claude-plugins-official מוזרקות ישירות לסשן הזה. אם התוסף לא מותקן או לא נמצא ב-allowlist המאושר, שורת אזהרה שמציינת את הבעיה מופיעה מתחת להודעה הזו.
[!TIP]
אפשר להעביר כמה תוספים ל-
--channels, מופרדים ברווח.
3. דחיפת הודעה פנימה
פתחו את ממשק fakechat ב-http://localhost:8787 והקלידו הודעה:
what's in my working directory?ההודעה מגיעה לסשן Claude Code. הטרמינל מציג אותה כשורת ערוץ נכנסת כמו ← fakechat · web: what's in my working directory?, בעוד שהמודל מקבל אותה כאירוע <channel source="plugin:fakechat:fakechat">, עם שם השרת המתוחם של התוסף. Claude קורא אותה, מבצע את העבודה, וקורא לכלי reply של fakechat. אם Claude Code מבקש הרשאה לתשובה הראשונה, אשרו אותה. התשובה מופיעה בממשק הצ'אט.
אם Claude נתקל בבקשת הרשאה בזמן שאתם רחוקים מהטרמינל, הסשן נעצר עד שתגיבו. שרתי ערוץ שמצהירים על יכולת העברת הרשאות יכולים להעביר את הבקשות האלה אליכם כדי שתוכלו לאשר או לדחות מרחוק. לשימוש בלי נוכחות, --dangerously-skip-permissions עוקף את רוב הבקשות, אבל השתמשו בזה רק בסביבות שאתם סומכים עליהן. גם אז, הפעולות שאף מצב לא מאשר אוטומטית עדיין חלות.
כשמריצים ערוצים במצב לא אינטראקטיבי עם -p, כלים שצריכים קלט מהטרמינל, כמו שאלות בחירה מרובה ואישור מצב תוכנית, מושבתים כדי שהסשן לא ייתקע בהמתנה לקלט.
#אבטחה
כל תוסף ערוץ מאושר מחזיק allowlist של שולחים: רק מזהים שהוספתם יכולים לדחוף הודעות, וכל השאר נזרקים בשקט.
Telegram ו-Discord בונים את הרשימה באמצעות צימוד:
- מצאו את הבוט ב-Telegram או ב-Discord ושלחו לו כל הודעה
- הבוט עונה עם קוד צימוד
- בסשן Claude Code, אשרו את הקוד כשמתבקשים
- מזהה השולח שלכם נוסף ל-allowlist
iMessage עובד אחרת: שליחת הודעה לעצמכם עוקפת את השער אוטומטית, ומוסיפים אנשי קשר אחרים לפי handle עם /imessage:access allow.
מעבר לזה, אתם שולטים אילו שרתים מופעלים בכל סשן עם --channels, והארגון שולט בזמינות עם channelsEnabled בתוכניות Team ו-Enterprise של claude.ai ובארגוני Console שפורסים הגדרות מנוהלות.
הימצאות ב-.mcp.json לא מספיקה כדי לדחוף הודעות: שרת חייב גם להיות מצוין ב---channels.
ה-allowlist גם שולט ב-העברת הרשאות אם הערוץ מצהיר עליה. כל מי שיכול לענות דרך הערוץ יכול לאשר או לדחות שימוש בכלים בסשן שלכם, ולכן אפשרו ב-allowlist רק שולחים שאתם סומכים עליהם עם הסמכות הזו.
#בקרות ארגוניות
מנהלים שולטים בזמינות באמצעות שתי הגדרות מנוהלות שמשתמשים לא יכולים לעקוף. ברירת המחדל תלויה באופן האימות:
- claude.ai Team ו-Enterprise: הערוצים חסומים עד ש-Owner מפעיל אותם.
- Anthropic Console עם אימות במפתח API: הערוצים מותרים כברירת מחדל. אתם צריכים את ההגדרה הזו רק אם הארגון שלכם פורס הגדרות מנוהלות.
בכל המקרים, אף ערוץ לא רץ עד שמשתמש מצרף אותו לסשן באמצעות --channels.
| הגדרה | מטרה | כשלא מוגדר |
|---|---|---|
channelsEnabled | מתג ראשי. חייב להיות true כדי שכל ערוץ יוכל להעביר הודעות. כשהוא כבוי, חוסם את כל הערוצים, כולל דגל הפיתוח. ראו הפעלת ערוצים לארגון. | claude.ai Team ו-Enterprise: הערוצים חסומים. Console: הערוצים מותרים, אלא אם הארגון שלכם פורס הגדרות מנוהלות, ובמקרה זה הערוצים חסומים עד שהמפתח הזה מוגדר |
allowedChannelPlugins | אילו תוספים יכולים להירשם אחרי שהערוצים מופעלים. כשמוגדר, מחליף את הרשימה ש-Anthropic מתחזקת. | רשימת ברירת המחדל של Anthropic חלה |
משתמשי Pro, Max ו-Ultra בלי ארגון מדלגים על הבדיקות האלה לגמרי: הערוצים זמינים, והמשתמשים מצטרפים לכל סשן באמצעות --channels.
#הפעלת ערוצים לארגון
הפעילו ערוצים לארגון מתוך הגדרות ארגון > Claude Code > Channels, מה שדורש את תפקיד Owner, או על ידי הגדרת channelsEnabled ל-true בהגדרות מנוהלות.
אחרי ההפעלה, משתמשים בארגון יכולים להשתמש ב---channels כדי לצרף שרתי ערוצים לסשנים בודדים. אם ההגדרה מושבתת או לא מוגדרת, שרת ה-MCP עדיין מתחבר והכלים שלו עובדים, אבל הודעות הערוץ לא יגיעו. אזהרת הפעלה אומרת למשתמש לבקש ממנהל להפעיל את ההגדרה.
#הגבלת תוספי הערוצים שיכולים לרוץ
כברירת מחדל, כל תוסף ברשימת ההיתרים ש-Anthropic מתחזקת יכול להירשם כערוץ. מנהלים בתוכניות Team ו-Enterprise יכולים להחליף את רשימת ההיתרים הזו ברשימה משלהם על ידי הגדרת allowedChannelPlugins בהגדרות מנוהלות. השתמשו בזה כדי להגביל אילו תוספים רשמיים מותרים, לאשר ערוצים מהשוק הפנימי שלכם, או את שניהם. כל רשומה מציינת תוסף ואת השוק שממנו הוא מגיע:
{
"channelsEnabled": true,
"allowedChannelPlugins": [
{ "marketplace": "claude-plugins-official", "plugin": "telegram" },
{ "marketplace": "claude-plugins-official", "plugin": "discord" },
{ "marketplace": "acme-corp-plugins", "plugin": "internal-alerts" }
]
}אם אתם מגדירים מערך ריק, אתם חוסמים את כל תוספי הערוצים מרשימת ההיתרים, אבל --dangerously-load-development-channels עדיין יכול לעקוף את החסימה הזו לבדיקות מקומיות. כדי לחסום ערוצים לגמרי, כולל דגל הפיתוח, השאירו את channelsEnabled לא מוגדר.
ההגדרה הזו דורשת channelsEnabled: true. אם משתמש מעביר ל---channels תוסף שלא נמצא ברשימה שלכם, Claude Code עולה כרגיל אבל הערוץ לא נרשם, והודעת ההפעלה מסבירה שהתוסף לא נמצא ברשימה המאושרת של הארגון. בסביבת הריצה של לקוח MCP ב-v2, ערוץ יכול גם להיכשל ברישום כי Claude Code לא רושם שרת ערוץ שמנהל משא ומתן על גרסת הפרוטוקול 2026-07-28.
#תצוגה מקדימה מחקרית
ערוצים הם תכונה בתצוגה מקדימה מחקרית. הזמינות מושקת בהדרגה, ותחביר הדגל --channels וחוזה הפרוטוקול עשויים להשתנות לפי משוב.
לא --channels ולא --dangerously-load-development-channels מופיעים ב-claude --help בזמן שהתכונה בתצוגה מקדימה. הדגלים עובדים אף על פי שהם לא מופיעים ברשימה.
במהלך התצוגה המקדימה, --channels מקבל רק תוספים מרשימת היתרים ש-Anthropic מתחזקת, או מרשימת ההיתרים של הארגון אם מנהל הגדיר allowedChannelPlugins. תוספי הערוצים ב-claude-plugins-official הם הסט המאושר כברירת מחדל. אם אתם מעבירים משהו שלא נמצא ברשימת ההיתרים שבתוקף, Claude Code עולה כרגיל אבל הערוץ לא נרשם, והודעת ההפעלה אומרת לכם למה.
כדי לבדוק ערוץ שאתם בונים, העבירו אותו ל---dangerously-load-development-channels בצורה plugin:<name>@<marketplace> או server:<name>. ראו בדיקה במהלך התצוגה המקדימה המחקרית למידע על בדיקת ערוצים מותאמים אישית שאתם בונים.
דווחו על בעיות או משוב ב-מאגר GitHub של Claude Code.
#איך ערוצים משתווים
כמה תכונות של Claude Code מתחברות למערכות מחוץ לטרמינל, וכל אחת מתאימה לסוג עבודה אחר:
| תכונה | מה היא עושה | מתאים ל |
|---|---|---|
| סשנים בענן | הרצת משימות בארגז חול ענן חדש, ששוכפל מ-GitHub | האצלת עבודה אסינכרונית עצמאית שבודקים מאוחר יותר |
| Claude ב-Slack | מפעיל סשן ענן מאזכור @Claude בערוץ או בשרשור | התחלת משימות ישירות משיחת צוות |
| שרת MCP רגיל | Claude שואל אותו במהלך משימה. שום דבר לא נדחף לסשן | מתן גישה לפי דרישה ל-Claude לקריאה או לשאילתה של מערכת |
| Remote Control | אתם מנהלים את הסשן המקומי מ-claude.ai או מאפליקציית Claude לנייד | ניווט סשן שכבר רץ כשאתם רחוקים מהשולחן |
ערוצים ממלאים את הפער ברשימה הזו על ידי דחיפת אירועים ממקורות שאינם Claude לסשן המקומי שכבר רץ.
- גשר צ'אט: שאלו את Claude משהו מהטלפון דרך Telegram, Discord או iMessage, והתשובה חוזרת לאותו צ'אט בזמן שהעבודה רצה על המכונה שלכם מול הקבצים האמיתיים שלכם.
- מקבל webhook: webhook מ-CI, ממעקב השגיאות שלכם, מצינור פריסה, או משירות חיצוני אחר מגיע למקום שבו ל-Claude כבר יש את הקבצים שלכם פתוחים והוא זוכר מה דיבגתם.
#הצעדים הבאים
אחרי שיש לכם ערוץ שרץ, עיינו בתכונות הקשורות האלה:
- בניית ערוץ משלכם למערכות שעדיין אין להן תוספים
- Remote Control כדי לנהל סשן מקומי מהטלפון במקום להעביר אליו אירועים
- משימות מתוזמנות ברמת הסשן כדי לדגום לפי טיימר במקום להגיב לאירועים שנדחפים