פרק 12
אוטומציה, ממשק CLI ושרת ACP
בעוד שהרצת grok ללא ארגומנטים פותחת את ממשק ה-TUI האינטראקטיבי, Grok CLI מספק תמיכה מלאה בהרצות לא-אינטראקטיביות (Headless) המיועדות לסקריפטים, צינורות CI/CD, אוטומציות במערכות הפעלה ואינטגרציות עם עורכי קוד חיצוניים.
#הרצות Headless לסקריפטים ו-CI
הרצה במצב Headless מתבצעת באמצעות הדגל -p (או --single):
grok -p "הסבר מה עושה הפונקציה הראשית בקובץ src/index.ts"במצב זה, התהליך מנתח את ההנחיה, מפעיל את הכלים הנדרשים, מדפיס את התשובה הסופית ל-stdout, ויוצא מיד עם קוד סיום (Exit Code) מתאים.
#דגלי שליטה מרכזיים בהרצות Headless
| דגל | משמעות ותפקיד |
|---|---|
-p, --single <פרומפט> | העברת הנחיה חד-פעמית להרצה ויציאה |
--prompt-file <נתיב> | קריאת ההנחיה מתוך קובץ טקסט (מעולה לפרומפטים ארוכים) |
-m, --model <שם> | בחירת מודל השפה לשימוש |
-c, --continue | המשך הסשן האחרון שהופעל בתיקייה זו |
-r, --resume [<מזהה>] | שחזור סשן קיים לפי מזהה סשן או כותרת |
--cwd <נתיב> | קביעת תיקיית העבודה של הסוכן |
--yolo, --always-approve | אישור אוטומטי של כל פעולות הכלים ללא המתנה לקלט משתמש |
--output-format <פורמט> | קביעת מבנה הפלט: plain, json, streaming-json, streaming-messages-json |
--json-schema <סכמה> | כפיית פלט התואם לסכמת JSON מוגדרת |
--max-turns <N> | הגבלת מספר תורות העבודה של הסוכן (למניעת לולאות אינסופיות) |
--tools <רשימה> | רשימת כלים מותרים בלבד (Allowlist) |
--disallowed-tools <רשימה> | רשימת כלים אסורים לשימוש (Denylist) |
--allow <כלל>, --deny <כלל> | הגדרת כללי הרשאה מפורשים |
--sandbox <פרופיל> | הפעלת בידוד ברמת הקרנל (workspace, read-only, strict) |
#דוגמאות שימוש מעשיות
סקירת שינויים ב-CI ועיבוד פלט ב-JSON:
grok -p "סקור את השינויים מול ענף main, זהה באגים והחזר סיכום" \
--output-format json \
--always-approve \
| jq -r '.text'הרצה לקריאת קוד בלבד (ללא יכולת עריכה או הרצת Shell):
grok -p "נתח את הארכיטקטורה של הפרויקט" \
--tools "read_file,grep,list_dir"השבתת כלי Shell והגבלת סוכני משנה:
grok -p "בדוק איות ותחביר בקבצי התיעוד" \
--disallowed-tools "run_terminal_cmd,Agent"#מבנה פלט ה-JSON במצב Headless
כאשר משתמשים ב---output-format json, הפלט המתקבל ב-stdout הוא אובייקט JSON מלא:
{
"text": "התשובה הסופית של הסוכן...",
"stopReason": "endTurn",
"sessionId": "5e31b1cc-3dca-4f69-9dea-b7d50e3da6b0",
"usage": {
"input_tokens": 1240,
"output_tokens": 350
},
"num_turns": 3,
"total_cost_usd": 0.012
}שדה total_cost_usd מופיע כאשר עלות השימוש מדווחת באופן מלא על ידי השרת.
ברירת המחדל ב-Headless משתיקה את לוגי המערכת הפנימיים (RUST_LOG) כדי לשמור על פלט נקי. אם נדרש ניפוי שגיאות:
RUST_LOG=debug grok -p "בדיקה" 2> /tmp/grok-debug.log#פרוטוקול ACP (Agent Client Protocol) לחיבור ל-IDE
Grok CLI מספק שרת סוכן מובנה המממש את תקן ACP (מבוסס JSON-RPC):
#הרצה מקומית מעל stdio
grok agent --always-approve stdioמצב זה מאפשר לעורכי קוד כמו Zed, Neovim, Emacs וסביבות SDK לתקשר ישירות עם סוכן Grok דרך ערוצי הקלט והפלט הסטנדרטיים.
#שרת WebSocket מקומי
ניתן להפעיל שרת רשת מקומי המאזין לחיבורי WebSocket:
grok agent --always-approve serve --bind 127.0.0.1:2419 --secret my-secure-tokenבמידה והדגל --secret לא סופק, המערכת מייצרת אסימון אקראי או קוראת את המשתנה GROK_AGENT_SECRET.
#פקודות ניהול מהטרמינל (CLI Subcommands)
| פקודה | תיאור |
|---|---|
grok login / grok logout | ניהול אימות, התחברות עם OAuth או Device Auth והתנתקות |
grok update | בדיקה והתקנת עדכוני גרסה (--check, --alpha, --stable) |
grok doctor | אבחון מקיף של סביבת המסוף, לוח הגזירים, הרשאות ו-Sandbox |
grok inspect [--json] | הצגת כל התצורות, הכללים, הסקילז ושרתי ה-MCP שנטענו בתיקייה |
grok models | הצגת רשימת מודלי השפה הזמינים בחשבונכם |
grok mcp <list|add|remove|doctor> | ניהול ובדיקת שרתי Model Context Protocol |
grok plugin <list|install|update...> | ניהול תוספים מותקנים ומקורות Marketplace |
grok sessions <list|search|delete> | הצגה, חיפוש ומחיקה של סשנים שמורים בדיסק |
grok export <session-id> [output] | ייצוא תמליל סשן לקובץ Markdown |
grok dashboard | פתיחת לוח בקרת הסוכנים במסך מלא |
grok worktree <list|show|rm|gc> | ניהול Git Worktrees שנוצרו עבור סשנים |
grok wrap <פקודה...> | הרצת פקודה מרוחקת ב-PTY מקומי לתמיכה בהעתקה בלוח הגזירים (OSC 52) |
grok completions <shell> | יצירת סקריפטי השלמה אוטומטית למעטפת (bash, zsh, fish, powershell) |
grok du | הצגת נפח הדיסק שצורך מרחב ~/.grok/ |
#ניהול והגדרת מודלים
כדי לצפות ברשימת המודלים הפעילים בחשבונכם:
grok modelsהחלפת מודל פעיל בעת הפעלת סשן:
grok -m grok-4.6הגדרת מודלים מותאמים אישית בקובץ ~/.grok/config.toml:
[model.custom-grok]
model = "grok-4.6"
base_url = "https://api.x.ai/v1"
name = "Grok 4.6 Production"
env_key = "XAI_API_KEY"
[models]
default = "custom-grok"בפרק הבא נלמד על מערכת התוספים, ערכות נושא (Themes), והתאמה אישית של קובצי התצורה.