מדריך גרוק CLI בעברית

פרק 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), והתאמה אישית של קובצי התצורה.