תיעוד 28
פקודות סלאש
הקלד / בהנחיה כדי לפתוח את תפריט הפקודות. הוא מבצע התאמה מטושטשת בזמן ההקלדה, ובחירת פקודה מריצה אותה מיד.
הפקודות מגיעות משני מקומות: פקודות מובנות של המעטפת, שמטופלות על ידי צד השרת של הסוכן (xai-grok-shell), ופקודות מובנות של הפייג'ר, שמטופלות על ידי ממשק הפייג'ר (xai-grok-pager). שתיהן מופיעות באותו תפריט, וכל skill מופעל עם user-invocable: true מופיע שם גם כן. אם skill משתמש מחדש בשם מובנה כגון login, הפקודה המובנית שומרת על /login וה-skill נשאר זמין כ-/plugin-name:login. התפריט נותן תג לשניהם כדי שההתנגשות תהיה גלויה.
כל פקודה למטה מפרטת את הכינויים שלה אם יש לה. כמה פקודות מופיעות רק כשתכונה או מצב סשן מפעילים אותן. המקרים האלה מצוינים במקום. התפריט מסונן גם לפי מצב רינדור. ראה /minimal ו-/fullscreen.
#ניהול סשן
#/new
התחל סשן חדש ונקה את השיחה הנוכחית. כינוי: /clear.
#/resume
פתח את בורר הסשנים כדי לטעון מחדש סשן קודם מהדיסק. /resume <session-id-or-title> ממשיך את הסשן הזה ישירות כשהמזהה או הכותרת בוחרים בדיוק אחד. במסלול ה-daemon, הוא אומר במקום זאת למה, כשהסשן שה-daemon מוצא הופעל תחת פרופיל ארגז חול אחר, אלא אם requirements.toml מצמיד את הפרופיל (ראה המשך סשנים במצב ארגז חול). אחרת הבורר נפתח מסונן לפי הטקסט, כולל כשהסשן נשמר במאגר הסשנים של פרופיל אחר. ראה המשך סשנים.
#/dashboard
פתח את לוח הסוכנים: רשימה חיה של סשנים ברמה העליונה בפייג'ר הזה (הצצה, מענה, שיגור, נעיצה, שינוי שם, עצירה, צירוף). כינויים: /agents-dashboard, /sessions.
זה אינו /config-agents (כינוי /agents), שמנהל הגדרות סוכנים ופרסונות. מוסתר במצב מינימלי. השבתה באמצעות GROK_AGENT_DASHBOARD=0 או [dashboard].enabled = false.
#/compact
דחוס את היסטוריית השיחה כדי לפנות מקום בחלון ההקשר.
גרוק גם מבצע דחיסה אוטומטית ברגע שחלון ההקשר מגיע ל-85% (כוונון באמצעות [session] auto_compact_threshold_percent).
#/context
הצג את חלון ההקשר מחולק ל-System prompt, ל-Messages, ל-Reasoning/overhead, ול-Free. שורות של Tool definitions, של Skills, ושל שרתי MCP כבר נספרות בסיכומים האלה.
#/session-info
הצג פרטי סשן: שיטת אימות, מודל, מספר תורות, ושימוש בהקשר. כינויים: /status, /info. לחץ על ערך או גרור כדי לבחור ולהעתיק. c מעתיק את מזהה הסשן ו-y מעתיק את כל הבלוק.
#/fork
הסתעף מהסשן הנוכחי לסוכן חדש, תוך שמירת ההיסטוריה עד לנקודה הזו.
#/rewind (כינוי: /undo)
החזר את השיחה לתור מוקדם יותר והשלך את כל מה שאחריו. /undo היא אותה פקודה.
#/copy
העתק את ה-markdown המקורי של התשובה האחרונה ללוח. העבר מספר כדי להעתיק במקום זאת את התשובה ה-N מהאחרונות, או נתיב קובץ כדי לכתוב את הטקסט לקובץ במקום ללוח (נוח מעל SSH, שם הלוח המקומי לעתים קרובות לא נגיש).
/copy
/copy 2
/copy out.txt
/copy 2 ~/exports/last-reply.mdכל העתקה נכתבת גם לקובץ גיבוי: ~/.grok/last-copy.txt כברירת מחדל, או GROK_COPY_FILE אם הוגדר. העתקות שאושרו מציגות טוסט קצר (לדוגמה Copied!). מסירות OSC 52 שלא אומתו, וגיבויים כשהלוח לא נגיש, מציינים את נתיב הגיבוי כדי שאפשר יהיה לשחזר את הטקסט.
נתיב קובץ חייב לציין קובץ חדש. אם השם תפוס, /copy לא כותב כלום ואומר זאת. הקובץ נשאר כפי שהיה.
#/export
יצא את השיחה לקובץ או ללוח. כמו ב-/copy, שם קובץ שתפוס נדחה והקובץ נשאר כפי שהיה.
#/quit
צא מהיישום. כינוי: /exit.
כשיציאה תעצור הרצות workflow (ראה יציאה בזמן שהרצות workflow רצות), ה-/quit הראשון רק מציג הודעה. שלח /quit שוב, או exit או :q, כהודעה הבאה שלך בתוך 30 שניות, מאותה לשונית, כדי לצאת.
#/home
עזוב את הסשן הנוכחי וחזור למסך הפתיחה. כינוי: /welcome.
#/delete
מחק את היסטוריית הסשן הנוכחי. מבקש אישור תחילה. עוצר כל תור שרץ, משימות רקע, ותת סוכנים לפני מחיקת ההיסטוריה. חוזר למסך הפתיחה, או ללוח הבקרה כשפתחת את הסשן מלוח הבקרה.
כדי למחוק סשן שאתה לא נמצא בו, פתח את /resume או את רשימת הסשנים במסך הפתיחה ולחץ d ואז y. ברשימת לוח הבקרה, לחץ Ctrl+X פעמיים או לחץ על [✗].
#/rename
שנה את שם הסשן הנוכחי. כינוי: /title.
/rename new session title
/rename --auto--auto משחרר נעיצה של כותרת ידנית ומאפשר למתן כותרות אוטומטי להתחדש. זה חל רק על סשני Build. לשיחות צ'אט אין מתן כותרות אוטומטי מקומי. זה חייב להיות הארגומנט היחיד (/rename --auto Something היא שגיאה). אי אפשר לקרוא לסשן --auto באמצעות הפקודה הזו. למקרה החריג הזה השתמש בעורך שינוי השם בלוח הבקרה (Ctrl+R).
#מודל ומצב
#/model <name>
החלף מודלים. מקבל מזהה מודל או שם תצוגה (בלי תלות ברישיות). כשהמודל מציע יותר מחלון הקשר אחד, אפשר להוסיף אחר כך גודל חלון. למודלי חשיבה אפשר להוסיף רמת מאמץ בסוף. הבורר שואל באותו סדר: מודל, אחר כך חלון, אחר כך מאמץ. כינוי: /m.
/model grok-4.6
/model Grok 4.6
/model Reasoning X high
/model Reasoning X 500k highחלק מהסוכנים פותרים מזהי מודלים בעצמם ומפרטים הגדרות אחרות למודלים שלהם, כגון שכבת הגשה מהירה יותר. הסוכן המובנה לא עושה את שני אלה. עם סוכן כזה, /model שולח מזהה שהוא לא מפרט, כפי שהוקלד, והגדרה נבחרת בתוך המזהה כ-name[setting=value], כגון grok-4.7[fast=true]. אותו מזהה עובד עם -m וכברירת המחדל השמורה, והבורר מציע את הגדרת המודל כשלב אחרון אחרי המאמץ. הסוכן מסרב להגדרה או לערך שהמודל שלו לא מפרט. סוכן כזה יכול גם לקבל מזהים שטוחים משלו, כגון grok-4.7-high-fast, שכל אחד מהם נותן שם לגרסה אחת. חלון או מאמץ שהוקלדו אחרי אחד כזה דורסים את אלה של המזהה עצמו. מודל בלי רמות מאמץ מדווח שהמאמץ לא הוחל. למודלים שסוכן מפרט מנקודת קצה מותאמת אין מזהים שטוחים, ולכן שם רק שמות מודלים וצורת הסוגריים עובדים. מזהה שהסוכן לא יכול להשתמש בו נדחה יחד עם המזהים השטוחים שלו. השם העצמי של מודל שומר את הגדרות הסשן על המודל הזה, כפי ש-/effort ו-/context-window שולחים אותו, גם כשהוא גם מזהה שטוח. name[fast=false] בוחר את השכבה הסטנדרטית.
/model grok-4.7[fast=true]
/model grok-4.7[fast=true] high
/model grok-4.7-high-fast#/effort <level>
קבע מאמץ חשיבה על המודל הנוכחי בלי לבחור אותו מחדש. הרמות הן low, medium, high, ו-xhigh, וזה חל רק כשהמודל הפעיל תומך במאמץ חשיבה.
/effort high#/context-window <size>
קבע את חלון ההקשר למודל הנוכחי. הפקודה מופיעה ברשימה רק כשהמודל תומך ביותר מגודל אחד. היא מקבלת את התווית הקצרה או את ספירת האסימונים הגולמית. הבחירה נמשכת לכל הסשן. היא עוברת למודל חדש שתומך באותו גודל. גודל קטן מהשימוש הנוכחי מתחיל דחיסה אוטומטית.
/context-window 500k
/context-window 256000#/always-approve ו-/auto
שניהם מתגים אמיתיים למצב ההרשאות: הם נשארים בתפריט, והרצת המצב שכבר נמצאים בו מכבה אותו בחזרה.
| פקודה | כשכבוי | כשכבר פועל |
|---|---|---|
/always-approve | דלג על כל בקשות ההרשאה | חזרה ל-ask |
/auto | Auto-review: מסווג מאשר כלים בטוחים (מסוכנים עדיין עשויים לבקש) | חזרה ל-ask |
הרצת אחד בזמן שהשני פעיל מחליפה מצבים. לדוגמה, /auto בזמן ש-always-approve פועל עובר ל-Auto-review. /auto מופיע רק כשתכונת מצב ההרשאות Auto-review מופעלת. אפשר גם לשנות מצב עם Shift+Tab (מחזור Normal / Plan / Auto-review (כשמופעל) / Always-approve), Ctrl+O, או /settings.
#/multiline
החלף מצב קלט מרובה שורות. כשהוא פועל, Enter מוסיף שורה חדשה ו-Shift+Enter (או Alt+Enter) שולח את ההודעה. באמצע תור, Enter לבדו על שדה הקלדה ריק עדיין שולח בכפייה את ההמשך העליון שבתור. כינוי: /ml. כשמצב מרובה שורות כבוי, הכותרת התחתונה של שדה ההקלדה מציגה את צירוף המקשים לשורה חדשה ברגע שהטיוטה לא ריקה.
/multiline אף פעם לא משנה את ברירת המחדל השמורה. כדי להתחיל סשנים במצב מרובה שורות, הפעל ב-/settings את Start in multiline (נשמר כ-[ui] multiline_default = true).
#/history
פתח חיפוש בהיסטוריית ההנחיות: חיפוש מטושטש בהנחיות של הסשן הזה, מהחדשה לישנה, ואז לחץ Enter או Tab כדי להכניס התאמה בחזרה להנחיה.
לשליפה מהירה, לחץ ↑ על הנחיה ריקה. כשיש הנחיות בתור, זה מעביר את המיקוד לחלונית התור ומדגיש את השורה האחרונה. אחרת החלונית נפתחת עם ההנחיה האחרונה שלך כבר ממולאת, ו-↑/↓ עוברים בין הרשומות (כל אחת נכנסת לשדה הקלט), ↓ מעבר לרשומה החדשה ביותר סוגר את החלונית, והקלדה עורכת את ההנחיה שנשלפה במקומה.
#/compact-mode
החלף תצוגה דחוסה: פחות ריפוד וריווח הדוק יותר לפלט צפוף יותר.
#/density
קבע כמה מכל קריאת כלי התמליל מציג. הרמות רצות מהמפורטת ביותר לפחות מפורטת:
| תווית | רמה | עריכות | פקודות מעטפת | קיבוץ |
|---|---|---|---|---|
| Detailed | detailed | מוצג diff | מוצגת תצוגה מקדימה של הפלט | רק קריאות, חיפושים וכלים אחרים מתקפלים |
| Diff focus | compact-shells | מוצג diff | שורה אחת | רק קריאות, חיפושים וכלים אחרים מתקפלים |
| Balanced | compact-ungrouped | שורת +N/-M אחת | שורה אחת | רק קריאות, חיפושים וכלים אחרים מתקפלים |
| Grouped | compact-grouped | שורה אחת | שורה אחת | רצפים של עריכות, של פקודות, ושל כלים אחרים מתקפלים כל אחד בנפרד |
| Compact (default) | compact-all-grouped | שורה אחת | שורה אחת | כל רצף של קריאות כלים מתקפל לשורה אחת |
במסלול ה-daemon, תאי הקוד של המודל (שורות Execute code) עוקבים אחרי עמודת פקודות המעטפת ומתקפלים בכל מקום שבו פקודות המעטפת מתקפלות, אם כי שורת סיכום סופרת כל אחד כקריאת כלי.
רצף מקופל מציג שורת סיכום אחת, כגון Explored 3 files, 2 searches או Edited 2 files, ran 1 command +12 -4. בחר אותה ולחץ Enter כדי להרחיב. הודעות בין סוכנים מתקפלות לרצפים משלהן בכל צפיפות, כגון 3 messages with find callers (ראה תת סוכנים). חשיבה שהסתיימה בתוך רצף מתקפלת איתו, וקריאת כלי בודדת שאין לידה מה לקפל שומרת על שורה משלה. השורות Task started ו-Task completed של פקודת רקע מתקפלות בכל מקום שבו פקודות מעטפת מתקפלות, לשורה אחת גם כשאין לידן שום דבר אחר, וקבוצה סופרת כל משימת רקע פעם אחת. מוניטור שומר את שתי השורות שלו, ומשימה שנכשלה או שנהרגה שומרת את שורת Task failed או Task killed שלה. תפריט /density מפרט את התוויות עם אותם תיאורים כמו הבורר ב-/settings ומסמן את הפעילה. הקלדת תווית או שם רמה עובדת גם כן, ו-verbose ו-minimal מתקבלים ככינויים ל-detailed ול-compact-all-grouped. הבחירה נשמרת ב-[ui] tool_call_density והיא גם השורה הראשונה תחת Appearance ב-/settings.
עד שבוחרים רמה, תצורה מלפני ההגדרה הזו מתחילה ברמה הקרובה ביותר: [ui] collapsed_edit_blocks = true, או expanded_by_default = false תחת [scrollback.blocks.edit] ב-pager.toml, מתחילה ב-compact-ungrouped. אחרת collapsed_edit_blocks = false, expanded_by_default = true או [ui] group_tool_verbs = false מתחילה ב-compact-shells. את הקיבוץ עצמו אי אפשר לכבות: קריאות וחיפושים מתקפלים בכל רמה, ולכן group_tool_verbs = false מקבל את הרמה שמקבצת הכי מעט. GROK_COLLAPSED_EDIT_BLOCKS ו-GROK_GROUP_TOOL_VERBS ממופים באותו אופן.
/density Diff focus
/density compact-all-grouped#/vim-mode
החלף מקשי סגנון vim (j/k, h/l, g/G, y/Y, וכן הלאה) ב-scrollback, בלוח הבקרה ובבוררים. /vim-mode nav או /vim-mode off קובעים אותם. כשהם כבויים (ברירת המחדל), מה שמקלידים ב-scrollback הולך להנחיה. מצבי קלט מכיל את הכלל המלא. ההגדרה נשמרת ב-[keys] vim.
#/edit-prompt
פתח עורך חיצוני להנחיה, בכל אחד ממצבי הרינדור. גרוק פותר את $VISUAL, אחר כך $EDITOR, אחר כך vi. ערכי פקודה יכולים לכלול ארגומנטים במרכאות. שמירה מחליפה את הטיוטה בלי לשלוח אותה, ושמירת קובץ ריק מנקה אותה. הקלדת /edit-prompt בהכרח מחליפה את תוכן שדה ההקלדה, ולכן העורך מתחיל מטיוטה ריקה. כדי לערוך טיוטה קיימת, בחר Edit Prompt in External Editor מפלטת הפקודות (או לחץ Ctrl+G במצב מינימלי), ששומר את הטקסט ומסרב לצ'יפים מודבקים, של הפניה לקובץ, או של תמונה, בלי לשטח אותם.
/edit-prompt#/minimal ו-/fullscreen
החלף את הסשן הנוכחי למצב הרינדור השני, במקום. /minimal (מוצע בזמן שאתה במסך מלא) עובר למצב הניסיוני הילידי ל-scrollback. /fullscreen (מוצע בזמן שאתה במינימלי, כינוי /full) חוזר למצב מסך מלא רגיל. המעבר קורה בתוך התהליך הרץ: שום דבר לא מופעל מחדש, ולכן תור רץ ממשיך לזרום, וטיוטת שדה ההקלדה, ההנחיות שבתור, ומצב ההרשאות עוברים כולם. סמן (שורה שנרשמה במינימלי, טוסט במסך מלא) מזכיר איך לחזור. שניהם בהיקף הסשן: הם לא נוגעים ב-config.toml. ודגלי ה-CLI --minimal / --fullscreen הם בהיקף הסשן באותו אופן. כדי ש-grok רגיל ייפתח במצב נתון כברירת מחדל, השתמש ב-/settings ואז Default screen mode, או קבע [ui] screen_mode. (אם המעבר במקום מתנהג לא טוב במסוף חריג, GROK_SCREEN_MODE_SWITCH=exec מחזיר את ההתנהגות הישנה של הפעלה מחדש של הפייג'ר על אותו סשן.)
קומץ פקודות עובדות רק באחד משני המצבים, כי המשטח שהן מפעילות לא קיים בשני: /find, /jump, /timeline, /theme, /tutorial, ו-/dashboard הן רק למסך מלא, בעוד /expand הוא רק למינימלי. (/workflow runs שונה: הוא פותח את חלונית ההרצה במסך מלא ויורד לסקירת טקסט במינימלי במקום לסרב.) אלה מוסתרות מתפריט הפקודות ומהפלטה במצב שבו הן לא יכולות לרוץ. אם מקלידים אחת בכל זאת, גרוק אומר למה, ומצביע על מה שבאמת שימושי. כשהמצב השני הוא הדרך היחידה להגיע לזה, זה מעבר המצב: /theme isn't available in minimal mode (minimal renders with your terminal's own palette). Run /fullscreen to switch this session. כשהמצב הזה כבר עושה את העבודה בדרך אחרת, הוא מציין אותה במקום: /expand isn't available in fullscreen mode: press Tab to focus the scrollback, then → on the block. כל השאר עובד בשניהם. שים לב ש---no-alt-screen עדיין נחשב כאן למסך מלא, ולכן הוא שומר את הפקודות שרק למסך מלא.
#/plan
היכנס למצב תוכנית.
/plan [description]#/view-plan
פתח תצוגה מקדימה של התוכנית השמורה הנוכחית. כינויים: /show-plan, /plan-view.
#זיכרון
/flush ו-/dream דורשים שזיכרון יהיה מופעל דרך GROK_MEMORY=1, [memory] enabled = true, [memory_v2] enabled = true, או הגדרות מרוחקות מנוהלות. /memory זמין בכל פעם שמאגר זיכרון מוגדר לסשן, כולל כש-[memory] enabled = false כיבה את הזיכרון, כדי שאפשר יהיה לעיין בהערות שמורות ולהפעיל זיכרון לסשן מתוך המודאל. הוא מוסתר רק כשאין מאגר זיכרון מוגדר, או כש---no-memory / GROK_MEMORY=0 כיבו את הזיכרון לכל התהליך. /remember תמיד מוצע, אבל הוא שומר הערה רק בזמן שהזיכרון פועל לסשן.
#/memory
עיין, הצג, ונהל זיכרונות שמורים. כינוי: /mem. בתוך המודאל, t מפעיל או מכבה זיכרון לסשן, x מוחק את ההערה הנבחרת, ו-s מציג אבחון של תור, חכירה, ושימור, בלי תוכן.
מתג t הוא בהיקף הסשן: הוא לא עורך את config.toml, וסשנים חדשים חוזרים לעקוב אחרי התצורה. הוא לא יכול לעקוף את --no-memory או GROK_MEMORY=0.
/memory#/flush
המתן עד שלכידת הזיכרון שמרה כל תור שהסתיים או נעצר בסשן הזה. הלכידה בדרך כלל רצה ברקע אחרי כל תור. השתמש ב-/flush לפני שסוגרים את גרוק או מריצים /dream. שורת המצב מציגה "Flushing memory…" בזמן שהיא רצה, ושורת scrollback מדווחת על התוצאה (לדוגמה "Memory flushed through turn 12").
#/dream
הרץ איחוד זיכרון עכשיו. Dream מקפל תצפיות מתיבת הדואר הנכנס לנושאים מאורגנים. שורת המצב מציגה "Consolidating memory…" בזמן שזה רץ, ושורת scrollback מדווחת מה קרה: כמה תצפיות מוזגו לכמה נושאים, שלא היה מה לאחד, או שסשן אחר כבר מאחד.
#/remember
שמור הערה לזיכרון הגלובלי עכשיו. גרוק מציג את ההערה לבדיקה תחילה, וה-Dream הבא מקפל אותה לנושא.
/remember the staging deploy uses the eu-west cluster#הוקים ותוספים
/hooks, /plugins, /marketplace, /skills ו-/workflows פותחים כולם את אותו מודאל הרחבות, כל אחד בלשונית משלו.
#/hooks
פתחו את מודאל ההרחבות בלשונית Hooks, שם אפשר לראות הוקים שנטענו, להוסיף או להסיר הוקים מותאמים, ולשנות את המצב של כל אחד בנפרד. המודאל לא מעניק אמון בפרויקט: ראו 10-hooks.md למודל האמון.
ה-shell גם מפרסם את הפקודות הנפרדות /hooks-list, /hooks-trust, /hooks-add, /hooks-remove ו-/hooks-untrust. ב-pager הן מקופלות לתוך המודאל של /hooks.
#/plugins
פתחו את מודאל ההרחבות בלשונית Plugins כדי לראות תוספים מותקנים, להתקין חדשים מה-marketplace, ולנהל אמון.
ה-shell תומך בנוסף בתת פקודות (/plugins list, /plugins install <source>, /plugins uninstall <name>, /plugins update, /plugins reload). ב-pager, המודאל עושה את אותה עבודה באופן חזותי.
#/marketplace
פתחו את מודאל ההרחבות בלשונית Marketplace כדי לעיין בתוספים ולהתקין אותם.
#/skills
פתחו את מודאל ההרחבות בלשונית Skills כדי לראות מיומנויות מותקנות.
#יצירת מדיה
#/imagine <description>
צרו תמונה מתיאור טקסט.
/imagine a golden sunset over a calm ocean with silhouetted palm trees#/imagine-video <description>
צרו סרטון מתיאור טקסט (או תמונה). הוא מתכנן שוטים, יוצר תמונות מקור, ומנפיש אותן עם image_to_video.
/imagine-video a cat playing piano in a jazz club#תזמון
#/loop [interval] <prompt>
הריצו פרומפט במרווח חוזר. תנו את המרווח כ-30m, 1 hour או every 2 days. אם משמיטים אותו, Grok ישאל.
/loop 30m check deploy status
/loop check deploy status every hourמרווחים הם Ns (שניות, מינימום 60), Nm (דקות), Nh (שעות) או Nd (ימים). כל דבר מתחת ל-60 שניות מועלה למינימום. משימות חוזרות פגות אחרי 7 ימים, ואפשר לבטל אחת עם scheduler_delete באמצעות מזהה המשימה שמדווח כשהלולאה נוצרת.
#תהליכי עבודה ויעדים
תהליכי עבודה פועלים אחרת בשני המסלולים. /deep-research ו-/workflows עובדים בשניהם. הסעיף /workflow והפסקאות שמסומנות "On the shell route" מתארים את מסלול ה-shell, שבו תהליך עבודה הוא סקריפט Rhai (.rhai) וכלי workflow של המודל מתחיל, משהה, מחדש ועוצר הרצות. במסלול ה-daemon תהליך עבודה הוא מודול JavaScript, המודל מתחיל הרצות עם תא Execute ברקע אבל לא יכול לעצור אותן, ואין פקודה שמשהה הרצה: ראו תהליכי עבודה במסלול ה-daemon.
#/goal
הגדירו, נהלו או בדקו יעד אוטונומי. Grok עובד לאורך סבבים ומסמן את היעד כהושלם רק אחרי שסקירת ראיות עצמאית מאשרת את הטענה. אם הסקירה לא יכולה לשחזר את התוצאה או שאין ראיה שמישה, היעד נשאר פעיל או מושהה עם פערים קונקרטיים.
הערה: יעדים עובדים הכי טוב למשימות ארוכות וקשות עם קריטריוני הצלחה מדידים.
חלש:
/goal Migrate the auth module to the new APIחזק:
/goal Migrate the auth module to the new API, verified by the auth test suite passing, without changing public endpoints./goal Migrate the auth module to the new API
/goal status
/goal pause
/goal resume
/goal clearהארגומנטים הם <objective> [--budget <tokens>], או אחד מ-status, pause, resume, clear. ה---budget כאן הוא תקציב טוקנים להרצת היעד, נפרד מתקציבי מספר הסוכנים שתהליכי עבודה משתמשים בהם. /goal מופיע כשמצב יעד מופעל לסשן. איזה דרייבר מריץ אותו תלוי בתהליכי עבודה ברקע: כשהם פעילים, המארח מעריך כל סבב מודל ומריץ אימות יריב על מועמדים להשלמה. כשהם כבויים, נתיב update_goal הישן שפונה למודל מדווח על התקדמות ומפעיל אימות.
#/deep-research <query>
הפעילו תהליך עבודה של מחקר ברקע. הוא מתכנן קבוצה תחומה של שאלות, אוסף טענות מובנות עם ראיות מקור, בודק כל טענה בשבר מאמת עצמאי, ומציג רק את הטענות ששרדו, עם מאתרי המקור המאומתים שלהן. שברים שנכשלו, טענות שהושמטו, ואי ודאויות של החוקר מדווחים כמגבלות כיסוי, והדוח מסומן Partial בכל פעם שנשאר מהם משהו.
/deep-research Compare the migration risks of PostgreSQL 17 and MySQL 9הפקודה חוזרת מיד: עקבו אחרי ההתקדמות ב-/workflow runs, והדוח הסופי מופיע בשיחה מעצמו.
במסלול ה-shell, תהליכי עבודה משתמשים בתקרת agent_budget מצטברת מוחלטת על קריאות סוכן ילד לוגיות: כל קריאת agent() וכל פריט בלוח parallel() צורכים משבצת אחת, וניסיונות חוזרים לתיקון סכמה לא צורכים. ברירת המחדל היא 128, ערכים מפורשים רצים 1 עד 1,024, ולוח שהיה חוצה את התקציב הנותר נדחה לפני שמי מהילדים שלו מופעל. תהליכי עבודה שהמודל מפעיל מגדירים agent_budget על כלי workflow. הפעלות סלאש עם שם מקבלות --agent-budget N או שדה agent_budget בארגומנטי ה-JSON שלהן. הפעלות עם שם יכולות גם להגדיר מאמץ חשיבה של ילד עם --effort LEVEL או effort ב-JSON, בלי לשנות את /effort של הסשן הנוכחי. אפשרות effort של סקריפט הילד עצמו גוברת. בנפרד, תקרה שמוגדרת במארח (32 כברירת מחדל) מגבילה כמה ילדים רצים בבת אחת בכל הרצה. לוחות גדולים יותר ממתינים בתור ועדיין פועלים כמחסום. budget() מדווח את התקרה כ-total, קריאות שהתקבלו כ-spent, reserved (תמיד אפס), ו-remaining.
#/workflow
במסלול ה-shell, הפעילו תהליך עבודה שמור, או נהלו הרצה לפי שם התצוגה הייחודי לסשן שלה. מפעילים את אותו תהליך עבודה פעמיים ושמות התצוגה ממוספרים (review-changes, review-changes-2). אין צורך במזהי ההרצה הפנימיים. /workflow לבד מדפיס סקירת טקסט של ההרצות של הסשן הזה.
הקלידו /workflow ורווח להשלמה אוטומטית של שמות תהליכי עבודה שמורים (מובנים, פרויקט ומשתמש) וגם פעלים לניהול runs, pause, resume, stop ו-save. בחירה בשם ממלאת אותו ומציעה דגלי הפעלה לפני שמוסיפים ארגומנטים. היא לא מפעילה עד שלוחצים Enter. אחר כך pause / resume / stop / save מציגים את ידיות ההרצה של הסשן הזה, וכשיש הרצה אחת לפעולה Enter שולח את הפקודה לאותה הרצה מיד (עוצר, משהה, מחדש או שומר את ההרצה). pause או stop שהיו מציגים כמה הרצות ואינם בדיוק שם של הרצה אחת נפתחים על הטקסט כפי שהוקלד, ולכן Enter שולח אותו בלי שינוי בלי לבחור הרצה. ↑/↓ בוחרים אחת. כשאופרטור התאמה בטקסט הזה (!x, ^x, x$) שולל את הטקסט עצמו, התפריט נסגר, ו-Enter עדיין שולח את הטקסט בלי שינוי.
דוגמאות למסלול ה-shell. במסלול ה-daemon הוסרו pause ו-save ו---effort עדיין לא עובד: ראו תהליכי עבודה במסלול ה-daemon.
/workflow review-changes --agent-budget 256 --effort high {"target":"origin/main...HEAD"}
/workflow review-changes {"target":"origin/main...HEAD","agent_budget":256,"effort":"high"}
/workflow runs
/workflow pause review-changes
/workflow resume review-changes
/workflow stop review-changes-2
/workflow save review-changes/workflow runs פותח את לוח הבקרה החי Workflow Runs ב-TUI במסך מלא: הרצות פעילות ושמורות, לא קטלוג של הגדרות שמורות. כל שורה מציגה את שם התצוגה של ההרצה, השלב, סגל הסוכנים, ההתקדמות והתוצאה. בשיחה, Enter, Ctrl+F, או לחיצה כפולה על שורת Workflow של הרצה פותחים את תצוגת הפרטים של אותה הרצה, או, עבור הרצה שהלוח כבר לא מציג, צופה עם מצב ההרצה. במסלול ה-shell, בתוך תצוגת הפרטים של הרצה, p משהה, r מחדש השהיה רגילה, ו-x עוצר. הרצות מוגבלות תקציב לא יכולות להתחדש בפקודה חשופה: r מחזיר את הדחייה של ה-shell (מעלים את התקרה עם חידוש של מודל/כלי שמעביר agent_budget גבוה יותר), בעוד x עדיין עוצר. s שומר את הסקריפט של ההרצה, אבל הוא מוסתר עבור מובנים ידועים וידיות כפולות ממוספרות. עבור אלה, בוחרים meta.name ייחודי חדש ושומרים את הסקריפט הערוך במפורש. במצב מינימלי ובלקוחות שאינם TUI, /workflow runs מדפיס את אותה סקירת טקסט כמו /workflow לבד.
במסלול ה-shell, תהליכי עבודה של פרויקט נמצאים ב-.grok/workflows/*.rhai. תהליכי עבודה של משתמש נמצאים ב-~/.grok/workflows/*.rhai. השהיה וחידוש באותו תהליך ממשיכים את הסקריפט המקורי הבלתי משתנה, הארגומנטים, ותקרת agent_budget מתוך תוצאות קריאות מארח שכבר נשמרו. כדי לעדכן, עורכים את עותק הסקריפט שהוחזר ומפעילים אותו כהרצה חדשה.
במסלול ה-shell, הרצה מוגבלת תקציב שונה: היא מתחדשת רק דרך בקשת חידוש של מודל/כלי שמספקת agent_budget מעל מספר הסוכנים שהתקבל. /workflow resume <name> חשוף לא יכול להעלות את התקרה, ולכן הוא דוחה הרצות מוגבלות תקציב. הרצות שהופסקו על ידי הפעלה מחדש של תהליך לא מתחדשות בכלל, כי לאפקטים חיצוניים אין זהות יציבה בין תהליכים. וחידוש אינו בדיוק פעם אחת: אפקט חיצוני שהתוצאה שלו לא נשמרה לפני השהיה באותו תהליך יכול לרוץ שוב.
#/workflows
פתחו את מודאל ההרחבות בלשונית Workflows: קטלוג לעיון בלבד של תהליכי העבודה השמורים ש-Grok גילה (מובנים, פרויקט .grok/workflows/, ומשתמש ~/.grok/workflows/), עם המקור, התיאור והנתיב של כל רשומה. במסלול ה-shell, אותו קטלוג מופיע למודל מתחת לרשימת ה-skills ב-preamble של הסשן. הפעילו אחד עם /workflow <name> (או פקודת הסלאש שלו), ואז צפו בו ב-/workflow runs.
#תהליכי עבודה במסלול ה-daemon
במסלול ה-daemon תהליך עבודה הוא מודול JavaScript. סקריפטים של Rhai לא רצים, ו-budget(), meta.name, /workflow pause, /workflow save ו---effort לא חלים. מעבר מתהליכי עבודה של Rhai מכסה המרה של תהליך עבודה ב-.rhai ומה מחליף כל אחד מאלה.
איפה תהליכי העבודה נמצאים. תהליך עבודה של פרויקט הוא .grok/workflows/<name>.js בשורש מאגר ה-git (מחוץ למאגר, בתיקיית הסשן). גרוק קורא אותו רק אחרי שאתה נותן אמון בתיקייה. עד אז גם המודל לא יכול לייבא או להפעיל אותו: גרוק מסרב לייבוא ומציין את התיקייה שצריך לתת בה אמון. תהליכי העבודה שלך הם ~/.grok/workflows/<name>.js ($GROK_HOME/workflows). רק קבצי .js רצים. ה-deep-research המובנה שומר על שמו מול שניהם. ב-/workflow list ועבור /<name> ו-/workflow <name>, תהליך עבודה של פרויקט שומר על שמו מול אחד שלך, לכן תן לתהליכים שלך ולתהליכי הפרויקט שמות שונים. /workflow list מציג כל תהליך עבודה ומסמן את אלה שלא יכולים להתחיל, ואז מציג כל קובץ שהשאיר בחוץ ולמה, למשל front matter שבור או קוד מעליו. בתיקייה שלא נתת בה אמון, הוא מציין את תהליכי העבודה של הפרויקט שלא קרא. תהליך עבודה ששמו כמו פקודה של גרוק, למשל doctor או release-notes, מתחיל רק עם /workflow <name>, ו-/workflow list מציג אותו כך.
כתיבה. הקובץ נפתח בהערת front matter, ואז מייצא פונקציית async כברירת מחדל שמקבלת את הארגומנטים של ההרצה ומחזירה את התוצאה שלה. שמור את זה כ-.grok/workflows/survey.js והתחל אותו עם /survey how errors are reported:
/**
* ---
* name: survey
* description: Survey a topic in this repository with two agents that read the code and one that merges their notes
* phase: Explore -- Two agents read the code, one angle each
* phase: Report -- One agent merges their notes
* ---
*/
export default async function survey(args) {
const topic = args?.query ?? "how this project is built and tested";
const angles = ["where it lives in the code", "how it is tested"];
const notes = await Promise.all(
angles.map((angle, i) =>
host
.agent(`Read the files in this repository that matter for: ${topic}. Report ${angle}, with file paths.`, {
label: `Explore/angle-${i + 1}`,
readonly: true,
})
.wait(),
),
);
const found = notes.filter((note) => note.status === "completed").map((note) => note.text);
const report = await host
.agent(`Merge these notes into one short report that keeps the file paths:\n\n${found.join("\n\n---\n\n")}`, {
label: "Report/merge",
readonly: true,
})
.wait();
return report.text;
}ה-front matter:
- השורה הראשונה היא בדיוק
/**, בלי רווחים סביבה ובלי סימן סדר בתים לפניה (רק שורות ריקות ושורת#!ראשונה יכולות לבוא לפניה), כל שורה עד*/הסוגר מתחילה ב-*, והמפתחות יושבים בין שתי שורות---. כל שורה אחרת מעל/**, למשל// @ts-check,"use strict";אוimport, עוצרת את טעינת הקובץ, ו-/workflow listאומר למה. name(חובה): אותיות קטנות וספרות שמחוברות במקפים בודדים, לכל היותר 64 בתים, וזהה לשם הקובץ בלי.js.description(חובה, לכל היותר 1024 בתים): מה ש-/workflow listמציג, והמטרה של ההרצה כשמתחילים אותה בלי ארגומנטים.when_to_use(אופציונלי, לכל היותר 2048 בתים): מתי תהליך העבודה הוא הנכון.phase: <title> -- <detail>(אופציונלי, הפירוט אופציונלי): השלבים שתצוגת ההרצה מציגה, לפי הסדר. לכל היותר 64 שלבים, עם כותרות ייחודיות.- כל ערך הוא שורה אחת ולא יכול להכיל
*/. כל מפתח אחר, או מפתח שאינוphaseשניתן פעמיים, נדחה.
המודול רץ כשכל הרשאה נדחית, ומגיע לקבצים, לפקודות ולסוכנים רק דרך host הגלובלי. host.agent(prompt, options) מתחיל סוכן אחד, ו-.wait() נותן את התוצאה שלו: status ("completed" כשסיים) ו-text, התשובה שלו. האפשרויות:
label: שם הסוכן בתצוגת ההרצה."Phase/name"שם אותו תחת השלב שהכותרת שלו באה לפני ה-/, לכן השתמש בכותרות ה-phase:שלך. בלי/, לסוכן אין שלב.readonly: true: הסוכן קורא ומחפש בקבצים, אבל לא כותב דבר ולא מריץ פקודה, כוללgit, וכל דבר שהיה שואל אותך נדחה. השאר אתreadonlyבחוץ לסוכן שחייב להריץ פקודה כמוgit diff: אז הוא מבקש ממך אישור כמו כל סוכן.schema: JSON Schema שהתשובה של הסוכן חייבת להתאים לו.structuredשל התוצאה מחזיק את התשובה המנותחת, ותשובה שלא מתאימה מקבלת תור נוסף אחד כדי לתקן אותה.model: מזהה המודל של הסוכן. ציין את ההגדרות שלו בסוגריים, כמו ש--mמקבל אותן (<model>[<setting>=<value>,…]), או תן מזהה רגיל ואת ההגדרות כ-modelParameters({ <setting>: "<value>" }): אף פעם לא את שניהם, ואף פעם לאmodelParametersבליmodel. מזהי ההגדרות הם של המודל עצמו, ושום דבר לא בודק אותם מול המודל: הגדרה או ערך שהוא לא מציג נזרקים או מוחלפים, או שהמודל מסרב לסוכן. בליmodel, הסוכן רץ עם המודל וההגדרות של הסשן. מזהה רגיל של מודל הסשן מקבל גם את הגדרות הסשן, ומזהה רגיל של מודל אחר מקבל את ברירות המחדל של המודל הזה. הגדרות שצוינו בשם הן היחידות של הסוכן, עם ברירות המחדל של המודל לשאר. חלק מההגדרות, כמו חלון של 1M, שכבת ההגשה המהירה יותר (fast=true) או מאמץmaxבחלק מהמודלים, מגיעות לסוכן רק במהלך תור של סשן שמשתמש באחת מהן בעצמו: סוכן שהתחיל בין תורות, או מסשן שלא, עשוי לרוץ בלעדיה, וחלק מהמודלים מסרבים לסוכן הזה.
Promise.all על כמה קריאות host.agent מריץ את הסוכנים האלה באותו זמן, עד למגבלה לכל הרצה. השאר ממתינים למשבצת.
כלי MCP. תאי Execute של המודל, ותהליכי העבודה שהוא מתחיל מהם, קוראים לכלי ה-MCP של הסשן דרך host.mcp: host.mcp.listServers(), host.mcp.listTools(server) ו-host.mcp.call(server, tool, args), עם שמות השרתים ש-listServers() מחזיר. הם מגיעים רק לכלי ה-MCP שהתור מציע, כך שתחת --disallowed-tools CallMcpTool כל קריאה נדחית עם this turn's tools do not include MCP tools. כל קריאה עוברת באותם כללים, הוקים וכרטיסי אישור כמו CallMcpTool של המודל, חוץ מזה ש:
- לקריאות של הרצה ברקע אין Auto-review, כך שבמצב Auto הן שואלות אותך בכל מקום שבו המסווג היה מחליט. קריאה של תא במהלך תור נבדקת כמו קריאות
CallMcpToolשל התור, אבל קריאה ש-Auto-review חוסם נדחית עם הסיבה שלה, שאומרת למודל איך לבקש ממך דרךCallMcpTool. - כש-Auto-review בודק קריאות
CallMcpToolשל תור והסשן יוצא ממצב Auto, להרצה ברקע שהתור הזה התחיל יש את קריאות ה-MCP של התאים שלה נדחות כל עוד הסשן נשאר מחוץ למצב Auto. additionalContextמההוקיםPreToolUse,PostToolUseו-PostToolUseFailureשלו נזרק.- במהלך הרצה ברקע, בקשה של שרת MCP לקלט שלך מבוטלת.
- כשאתה מתחיל הרצה עם
/<name>או/workflow <name>, התאים שלה מקבלים את כלי ה-MCP שתור שהתחיל באותו רגע היה מציע, ולקריאות שלהם אין Auto-review. בזמן שהסשן מריץ סוכן מותאם, לתאי ההרצה אין כלי MCP.
פקודות מעטפת. פקודת host.run של תא במהלך תור נבדקת כמו פקודות Shell של התור, אבל פקודה ש-Auto-review חוסם נדחית עם הסיבה שלה, שאומרת למודל איך לבקש ממך דרך Shell. לפקודות של הרצה ברקע אין Auto-review, כך שבמצב Auto הן שואלות אותך בכל מקום שבו המסווג היה מחליט.
כשקריאת host של המודול עצמו צריכה אישור, למשל כתיבת קובץ שהכללים שלך לא מתירים, הכללים שלך ומצב ההרשאות מחליטים קודם, כמו לכל קריאת כלי. אחרת, כשאף תור לא רץ, גרוק שואל אותך בכרטיס אישור מתחת לסשן, עם התווית Workflow "<name>" (background run):. השינוי של כתיבת קובץ מוצג בשיחה בזמן שהכרטיס פתוח, ונשאר שם, מסומן כבוצע, נדחה או לא רץ, אחרי שהוא נסגר. שינוי גדול מדי לתצוגה מקדימה מציג רק את שם הקובץ, ופתיחה מחדש של הסשן מורידה אותו. דחיית הכרטיס או סגירתו עם Ctrl+C מסרבת רק לקריאה הזו, וטקסט שאתה מקליד בזמן שהוא פתוח לא נשלח להרצה. שאלה שאף אחד לא עונה עליה תוך 5 דקות מסרבת לקריאה. רק חלון גרוק או הרצת grok -p שבבעלותה הסשן במכונה הזו שואלים. אפליקציית שולחן העבודה ולקוחות ה-SDK מסרבים לקריאה שהכללים שלך משאירים פתוחה. בזמן שתור רץ, התור הזה שואל במקום, כמו לקריאות הכלים שלו: לכרטיס אין תווית והוא לא מציג שינוי קובץ, דחייתו או סגירתו עם Ctrl+C מסיימת את התור ומסרבת לקריאה, ואם התור נגמר לפני שאתה עונה, גרוק שואל שוב בכרטיס המתויג של ההרצה עצמה. שאר סוגי השאלות של ההרצה, למשל שליפת רשת, נדחים.
התחלת הרצה. הקלד /<name> [--agent-budget N] [args] או /workflow <name> [--agent-budget N] [args], וגרוק עונה Started /<name> in the background. Its result appears here when it finishes. ייצוא ברירת המחדל מקבל null בלי ארגומנטים, אובייקט JSON כאובייקט הזה, וכל טקסט אחר כ-{ "query": text, "objective": text }. אפשר גם לבקש מגרוק להריץ תהליך עבודה. למודל אין כלי workflow במסלול הזה: הוא מתחיל את ההרצה בתא Execute ברקע שמייבא את תהליך העבודה. הוא יכול להעביר כל ערך JSON כארגומנטים, אבל הוא לא יכול לקבוע את תקציב הסוכנים, כך שההרצות שלו מקבלות את תקציב ברירת המחדל. לפני שההרצה מתחילה, גרוק מבקש ממך לאשר אותה בכרטיס שכותרתו Workflow: <name> (Workflow: background script כשהתא לא מייבא תהליך עבודה), אלא אם מצב ההרשאות או הכללים שלך מתירים את כלי workflow, כמו ש---yolo עושה. אם אתה דוחה את הכרטיס, ההרצה לא מתחילה. הוקים רואים את ההתחלה כקריאת Execute. תהליכי עבודה מתחילים רק במצב Agent, לא במצב Plan או Ask. בסשן במכונה הזו, גרוק קורא שוב את תיקיות תהליכי העבודה כשכל תור נגמר, כך שתהליך עבודה שנכתב או הוסר במהלך תור, על ידי כלי הקבצים של המודל, פקודת מעטפת, תא Execute או סוכן, מוצע כ-/<name> (או כבר לא מוצע) אחרי שהתור נגמר. קובץ שאתה משנה בעורך בין תורות נקלט כשהתור הבא נגמר, או כשאתה פותח /workflows.
מעקב. /workflow runs פותח את תצוגת ההרצה (במצב מינימלי הוא מדפיס טקסט). הוא מציג את השלבים מה-front matter, כל אחד ממתין עד שתווית של סוכן נכנסת אליו, עם כל סוכן תחת השלב שלו. Enter על שלב פותח תמליל של סוכן. בשיחה, Enter, Ctrl+F, או לחיצה כפולה על שורת Workflow של הרצה שנכשלה שמציגה את הודעת הכשל של ההרצה עצמה, פותחים את כל ההודעה הזו במקום את תצוגת ההרצה. כששירות הרקע של גרוק נעצר לפני שהרצה נגמרת, כמו כשאתה יוצא מחוץ למצב leader, שורת ההרצה אומרת זאת, ו-Enter, Ctrl+F או לחיצה כפולה שם פותחים את תצוגת ההרצה שלה. הרצה שהושהתה עם הודעה עשויה להמשיך להציג את ההודעה הזו במקום, ו-Enter פותח את כל ההודעה, כמו למעלה. /workflow לבד מדפיס את ההרצות של הסשן הזה עם מזהי ההרצה שלהן, הסטטוס, הסוכנים שנוצלו והזמן שחלף.
שמות הרצה. לכל הרצה יש מזהה הרצה (wf_…) ושם: שם תהליך העבודה, או <name>-2, <name>-3 וכן הלאה כשבסשן כבר יש הרצה בשם הזה. /workflow stop ו-/workflow resume מקבלים כל אחד מהם. למודל אין כלי שמציג הרצות. במקום זה, כל הודעה שאתה שולח אומרת לו את ההרצות של הסשן הזה שחיוניות או שהסתיימו לאחרונה.
עצירה, ותקציב הסוכנים. /workflow stop <run> (מזהה הרצה או שם), או x בתצוגת ההרצה, עוצר הרצה. רק אתה יכול לעצור הרצה: למודל אין כלי שעוצר אחת, כך שאם אתה מבקש ממנו, הוא נותן לך את הפקודה /workflow stop להקליד. הרצה שנעצרה נגמרת לצמיתות ואין לה תוצאה. אי אפשר להשהות הרצה במסלול הזה: /workflow pause נדחה, וגם המודל לא יכול להשהות אחת. כל קריאת host.agent מוציאה סוכן אחד מתקציב ההרצה: 1,024 כברירת מחדל, המקסימום שהרצה יכולה להתחיל. מעבר לזה, .wait() של הסוכן זורק במקום שההרצה תושהה. תפוס את השגיאה, או שההרצה נכשלת. כדי להתחיל הרצה עם תקציב נמוך יותר, העבר --agent-budget N (1 עד 1,024), או מפתח agent_budget בארגומנטי JSON, אל /<name> או /workflow <name>. ההרצה אז מושהית כמוגבלת בתקציב כשהיא צריכה עוד סוכנים. רק אתה יכול לאפשר לה להמשיך, עם /workflow resume <run> --agent-budget N (N מעל התקציב הנוכחי, במצב Agent). המודל לא יכול לחדש הרצה או להעלות את התקציב שלה. /workflow stop <run> מסיים אותה במקום. /workflow stop עובד גם במצב Plan או Ask. יציאה מגרוק עוצרת כל הרצה שלא נגמרה (ראה יציאה בזמן שתהליכי עבודה רצים).
תוצאות. הערך שייצוא ברירת המחדל מחזיר הוא תוצאת ההרצה. כשההרצה נגמרת, שורה בשיחה אומרת שהיא נגמרה, או למה היא נכשלה, והמודל מקבל את התוצאה בתור חדש, אחרי כל תור שרץ, ומדווח עליה. ה-daemon גם שומר את התוצאה כקובץ טקסט שנקרא על שם מזהה ההרצה ונותן למודל את הנתיב שלו.
תהליכי עבודה ישנים של .rhai. /workflow list מציג גם קובץ .rhai בכל אחת מהתיקיות. /<name> או /workflow <name> מבקשים מהמודל להמיר אותו ל-<name>.js לידו ולהתחיל את זה, בזמן ש-features.workflow_conversion דלוק (ברירת המחדל), ושורה בשיחה אומרת זאת. /migrate-workflow <name> ממיר אחד, ומתחיל אותו רק כשאתה מעביר ארגומנטים. המרה שהארגומנטים שלה מבקשים תקציב סוכנים מתחת ל-1,024 לא מתחילה דבר: המודל בודק את המודול ונותן לך את הפקודה שמתחילה אותו עם התקציב הזה. קובץ ה-.rhai נשאר כמו שהוא. אם הוא משתנה אחרי ההמרה, התחלת המודול אומרת זאת, ו-/migrate-workflow <name> ממיר אותו שוב. ראה מעבר מתהליכי עבודה של Rhai.
הרצות headless וכיבוי תהליכי עבודה. הרצת headless (grok -p) עוצרת את ה-daemon שלה, ואיתו כל הרצה שעדיין רצה, כשהיא יוצאת. תהליכי עבודה ועבודה ברקע מכסה איך הרצת headless ממתינה להרצות של תהליכי עבודה וקובעת את קוד היציאה שלה. [workflows] enabled = false או GROK_WORKFLOWS=0 מכבים תהליכי עבודה גם במסלול הזה.
#אחר
#/theme
החלפת ערכת הצבעים. כינוי: /t.
#/feedback [message]
דיווח על בעיה או שליחת משוב. /feedback לבד פותח את טופס המשוב בכל מצב, כולל --minimal. לשונית Write שלו היא תיבת דיווח: Enter שולח, Esc סוגר. לשונית Drafts שלו (Shift+Tab או Ctrl+Tab פותחת אותה, Tab חוזר ל-Write) מחזיקה דיווחים שנשמרו להמשך: שליחות שנכשלו ומשוב שהסוכן ניסח עבורך, ו-Enter או לחיצה טוענים אחד אל Write כדי שתוכל לסקור ולערוך את הכותרת, לבחור סוג, ולשלוח אותו. /feedback <message> שולח את ההודעה מיד, בכל מצב. אם השליחה נכשלת, ההודעה נשמרת ב-Drafts.
/feedback
/feedback Something isn't working correctly#/btw
שליחת הערת צד לסוכן בלי להפריע למשימה הנוכחית. במצב מינימלי (--minimal), התשובה מופיעה בלוח שאפשר לסגור מעל השורת הקלט: Esc סוגר אותו ותשובה שנגמרה נשמרת ב-scrollback המקומי. שאלת הצד והתשובה שלה אינן חלק מהתור הראשי.
בשני המצבים, Esc לפני שהתשובה מגיעה מבטל את שאלת הצד. הלוח לא חוזר. במסלול ה-daemon, גם התור של שאלת הצד נעצר.
במצב מסך מלא, התשובה נפתחת גם בלוח מעל השורת הקלט. Esc מקפל את התשובה לשורת /btw בתמליל. כדי להעתיק אותה משם, בחר את השורה ולחץ y במצב Vim. עם selection_buttons = true תחת [scrollback.display], כפתור ההעתקה בתיבת הבחירה של השורה מעתיק אותה. מצב Vim ו-selection_buttons כבויים שניהם כברירת מחדל.
/btw חייב להתחיל את ההודעה. רווחים מובילים תקינים. /btw בהמשך ההודעה הוא טקסט רגיל והולך לתור הראשי כמו שהוקלד. לשאלת צד מרובת שורות, השתמש ב-Alt+Enter (מעל SSH) או ב-Shift+Enter, ב-\ בסוף שורה, או ב-/ml. אל תסתמך על Cmd+Enter: Apple Terminal מכניס שורה חדשה מקומית דרך CoreGraphics. SUPER+Enter שנמסר (Kitty) גם מכניס שורה חדשה במקום לשלוח. מעל SSH, Cmd אף פעם לא מגיע והצירוף שולח.
/btw also check the error handling#/mcps
פתיחת חלון ניהול שרתי ה-MCP.
#/doctor
בדיקת הסשן הנוכחי לבעיות מסוף, לוח העתקה, צבע, קלט, התראה וארגז חול. Doctor מציג מה מצא ואיך לפתור כל בעיה. הרץ /doctor fix כדי להציג תיקונים אוטומטיים זמינים. ממצאים אחרים כוללים שלבים ידניים. /terminal-setup, /terminal-check ו-/terminal-info נשארים כינויים.
#/release-notes
הצגת הערות גרסה לגרסה הנוכחית. כינוי: /changelog.
#/docs
עיון במדריכי How-to המובנים, פתיחת תיעוד Build המקוון, או קפיצה ישר למדריך לפי כותרת. כינויים: /howto, /guides.
/docs
/docs web
/docs Getting Started/docsלבד (או/docs how-to) פותח את בורר מדריכי How-to./docs webפותח את https://docs.x.ai/build/overview בדפדפן./docs <title>פותח מדריך מסוים לפי התאמת כותרת בלי תלות ברישיות.
#/tutorial
פתיחת מדריך ההיכרות: רשימה קצרה של נושאים (הפרומפט הראשון שלך, צירוף הקשר, ניווט, פקודות לוכסן, worktrees, מצב plan, התאמה אישית, מעבר מכלי סוכן אחר). כל אחד קריאה של כ-30 שניות, עם → שעובר ישר לנושא הבא. שום דבר לא מוצג אוטומטית: הפקודה הזו (או לוח הפקודות) היא הדרך להיכנס.
/tutorialכינויים: /tour, /onboarding
#/import-claude
פתיחת חלון הייבוא של Claude כדי להעביר הגדרות ~/.claude: הרשאות, משתני סביבה, שרתי MCP, הוקים ונתיבים.
#סוכנים ופרסונות
#/config-agents
פתיחת חלון הסוכנים כדי לצפות בהגדרות סוכנים ולנהל אותן, לקבוע את ברירת המחדל, ולהחליף את הסוכן הפעיל. כינוי: /agents.
זה לא לוח הסוכנים החי מרובה ההפעלות (/dashboard / Ctrl+\).
#/personas
יצירה, עריכה ומחיקה של פרסונות. תת-סוכן יכול להחיל פרסונה כדי לעצב את אופן ההתנהגות שלו.
#חשבון וחיוב
#/login
התחברות או אימות מחדש בלי לעזוב את ההפעלה.
#/logout
התנתקות וחזרה למסך ההתחברות.
#/usage
צפייה בשימוש בקרדיטים או ניהול חיוב. כינוי: /cost.
/usage
/usage manageבתוך הפעלה זה פותח את חלון השימוש עם מכסת החשבון ועם סכומי ההקשר והאסימונים של אותה הפעלה. מלוח הסוכנים אותו חלון נפתח מעל הלוח. אין שם הפעלה, ולכן רק הלשונית Usage limit נושאת נתונים.
לסכומי אסימונים ועלות שנשמרו לפי תור של כל הפעלה מקומית, משתמשים ב-grok usage <session-id> [turn] מהמעטפת. כדי להדפיס את מגבלת השימוש של התוכנית מהמעטפת, וזו הדרך לקרוא אותה במסלול ה-daemon, מריצים grok usage בלי מזהה הפעלה. ראה ניהול הפעלות.
#/privacy
פתיחת ההגדרות על Coding data, retention, and training, שם בוחרים Opt in או Opt out. לא מקבל ארגומנטים.
/privacyההגדרה הזאת לא נוגעת ב-[features] telemetry, ב-trace_upload או בהגדרות ה-OTEL החיצוניות שלך. ראה ניטור שימוש. חשבון אישי יכול לבחור Opt in או Opt out. התחברות של צוות יכולה להוציא את כל הצוות, וצוות לא יכול לחזור ולהיכנס, ולכן אחרי שהצוות יצא הבוחר מציע רק Opt out. רק מנהל צוות יכול להוציא את הצוות. ניסיון של מי שאינו מנהל נדחה ונועל את השורה. לשורה אין איפוס d, כי איפוס היה משנה את ההסכמה בלי בחירה. מנהלי צוות יכולים להפעיל או לכבות Zero Data Retention לצוות שלהם (איך להפעיל ZDR). כשהבחירה אינה בידיך, השורה מציגה ZDR, · Admin Managed או · Personal Account Only ולא פותחת את הבוחר. ZDR נועל שיתוף של נתוני קידוד. הוא לא משתיק OTEL חיצוני או user.email. ראה ZDR והזרם הזה.
#הגדרות וממשק
#/settings
פתיחת חלון ההגדרות כדי לצפות בתצורה ולשנות אותה באופן אינטראקטיבי. כינויים: /config, /preferences, /prefs.
#/timestamps <off|minimal|on>
קובע אילו שורות מציגות את שעת השעון: off, minimal (רק ההנחיות שלך ושורת Worked for … של כל תור), או on (כל הודעה, ברירת המחדל). זהה לשורת Timestamps ב-/settings.
#מיומנויות כפקודות לוכסן
כל מיומנות מופעלת עם user-invocable: true ב-frontmatter של SKILL.md מופיעה כפקודת לוכסן. (מכבים מיומנות דרך /skills והיא מפסיקה להיות מוצגת.) כך מיומנות ב-~/.grok/skills/commit/SKILL.md רצה כך:
/commit fix typo in READMEמיומנויות מתוספים עובדות באותו אופן. כששתי מיומנויות חולקות שם בין היקפים, מציינים את ההיקף:
/local:commit # מיומנות בהיקף פרויקט
/user:commit # מיומנות בהיקף משתמשפקודות מובנות תמיד זוכות בשם החשוף. אם נותנים למיומנות את השם "compact", /compact עדיין מריץ את הפקודה המובנית. המיומנות נשארת זמינה כ-/local:compact (או /acme:compact לתוסף). שתיהן מופיעות בתפריט הלוכסן: המובנית מתויגת built-in והמיומנות מתויגת skill.
#השלמה אוטומטית
התפריט תומך בחיפוש מטושטש: מתחילים להקליד אחרי / כדי לסנן. כל רשומה מציגה את שם הפקודה, את התיאור שלה, רמז לארגומנט כשהיא מקבלת ארגומנטים, ואת המקור שלה (builtin, היקף מיומנות, או שם תוסף). לוחצים על Tab או Enter כדי לאשר את הפקודה המסומנת.