קלוד קוד · פקודות · עבודה עצמאית
הפקודה /goal בקלוד קוד: אתם כותבים מה זה גמור, והוא לא עוצר לפני
/goal היא פקודה מובנית בקלוד קוד. כותבים אחריה תנאי סיום במילים רגילות, וקלוד מתחיל לעבוד מיד. אחרי כל סיבוב מודל קטן ונפרד בודק אם התנאי התקיים. אם לא, קלוד ממשיך לבד עם ההסבר של הבודק. הוא עוצר כשהתנאי מתקיים, כשהבודק קובע שזה בלתי אפשרי, או כשאתם עוצרים.
מה הפקודה /goal עושה בקלוד קוד?
אתם מכירים את זה: נותנים לקלוד קוד משימה גדולה, הוא עובד עשר דקות, ואז עוצר עם "סיימתי את החלק הראשון, להמשיך?". אתם כותבים "כן", והסיפור חוזר על עצמו. המשימה נגמרת רק אם אתם יושבים מול המסך.
לפי התיעוד הרשמי של אנתרופיק, /goal מגדירה תנאי סיום, וקלוד ממשיך לעבוד לקראתו בלי שתצטרכו לבקש כל שלב. ההבדל החשוב: מי שמחליט שהעבודה גמורה הוא לא קלוד שעושה אותה. אחרי כל סיבוב, קלוד קוד שולח את התנאי ואת השיחה למודל קטן ומהיר, והוא מחזיר אחת משלוש תשובות:
- עוד לא (Not yet met): קלוד ממשיך לסיבוב נוסף, ומשתמש בהסבר של הבודק כהנחיה למה לעשות עכשיו.
- התקיים (Met): היעד נמחק ונרשמת הצלחה בשיחה.
- בלתי אפשרי (Impossible): הבודק קבע שהתנאי לא יכול להתקיים, היעד נמחק ונרשם הכישלון עם הסיבה.

הדוגמאות שהתיעוד נותן הן עבודות גדולות עם סוף ברור: להעביר מודול לממשק חדש עד שהכל מתקמפל והבדיקות עוברות, לממש מסמך אפיון עד שכל דרישות הקבלה מתקיימות, ולעבור על רשימת משימות עד שהיא ריקה.
איך מגדירים יעד ראשון עם /goal?
כותבים /goal ואחריו את התנאי. לא צריך פרומפט נוסף: התנאי עצמו הוא ההוראה, והעבודה מתחילה מיד.
/goal all tests in test/auth pass and the lint step is cleanאפשר לכתוב את התנאי גם בעברית. דוגמה מעולם של בעל עסק עם חנות אונליין:
/goal לכל דף מוצר בתיקייה products יש תיאור של לפחות 80 מילים בעברית ותגית alt לכל תמונה. תוכיח את זה בסוף כל סיבוב עם ספירה של הדפים שעדיין חסרים. בלי לשנות מחירים או שמות מוצרים. או לעצור אחרי 20 סיבוביםבזמן שהיעד פעיל מופיע בקלוד קוד הסימן ◎ /goal active עם הזמן שעבר. ליד כל סיבוב רואים את התשובה של הבודק, ו-Ctrl+O מראה את הסיבה שמאחוריה.

איך כותבים תנאי שהבודק באמת יכול לבדוק?
זה החלק שרוב האנשים מפספסים. הבודק לא מריץ פקודות ולא פותח קבצים. הוא קורא רק את מה שקלוד הראה בשיחה. לכן "האתר מוכן" זה תנאי גרוע, ו"כל הבדיקות בתיקייה עוברות" זה תנאי טוב, כי קלוד מריץ את הבדיקות והתוצאה מופיעה בשיחה.
לפי התיעוד, תנאי שמחזיק לאורך הרבה סיבובים כולל שלושה דברים:
- מצב סיום אחד שאפשר למדוד: תוצאה של בדיקה, מספר קבצים, תור ריק.
- איך מוכיחים: למשל "הפקודה npm test מסתיימת בהצלחה" או "הספירה מראה אפס".
- מה אסור לשנות בדרך: למשל "בלי לגעת בקבצי בדיקה אחרים".
התנאי יכול להיות באורך של עד 4,000 תווים, כך שיש מקום להסביר. בדוגמת דפי המוצר למעלה תמצאו את שלושתם: 80 מילים ותגית alt (מצב סיום), ספירה בכל סיבוב (הוכחה), ובלי לשנות מחירים (מגבלה).
איך בודקים סטטוס, עוצרים ומגבילים סיבובים?
סטטוס. כותבים /goal בלי כלום אחריו, ורואים את התנאי, כמה זמן הוא רץ, כמה סיבובים נבדקו, כמה טוקנים נצרכו, ואת הסיבה האחרונה של הבודק. ככה יודעים בדיוק למה הוא עדיין ממשיך.

גבול. כדי שזה לא ירוץ לנצח, מוסיפים לתנאי משפט כמו or stop after 20 turns. קלוד מדווח בכל סיבוב איפה הוא ביחס לגבול, והבודק מתחשב בזה.
עצירה. /goal clear מוחק את היעד לפני שהוא הושג. גם stop, off ו-cancel עובדים, וגם /clear שמתחיל שיחה חדשה מוחק אותו. יש יעד אחד לכל סשן, ויעד חדש מחליף את הקודם.
המשך אחר כך. אם סגרתם את קלוד קוד באמצע, חזרה לסשן עם --continue או --resume מחזירה את היעד הפעיל. הספירה של הזמן, הסיבובים והטוקנים מתחילה מחדש.
אפשר להפעיל /goal מהטלפון?
כן. לפי התיעוד, /goal עובדת גם באפליקציית הדסקטופ, גם בלי טרמינל פתוח עם claude -p, וגם דרך Remote Control, שמחבר את אפליקציית קלוד בטלפון לסשן שרץ אצלכם במחשב. מפעילים יעד מהספה, והמחשב בבית עושה את העבודה. המחשב צריך להישאר דלוק וקלוד קוד צריך להמשיך לרוץ. Remote Control זמין במנויי Pro, Max, Ultra, Team ו-Enterprise, ולא עם מפתח API.
הרצה בלי ממשק נראית ככה:
claude -p "/goal CHANGELOG.md has an entry for every PR merged this week"במצב הזה התשובה מודפסת רק בסוף, אז נראה כאילו זה תקוע. התיעוד ממליץ להוסיף --output-format stream-json --verbose כדי לראות כל הודעה בזמן אמת.
מה ההבדל בין /goal, /loop ו-Ralph Loop?
- /goal ממשיך מיד אחרי כל סיבוב, ועוצר כשמודל נפרד מאשר שהתנאי התקיים. מתאים לעבודה עם סוף ברור.
- /loop מריץ את אותו פרומפט שוב כל פרק זמן קבוע, למשל כל עשר דקות. מתאים לבדיקה חוזרת, לא לסיום משימה.
- Ralph Loop הוא פלאגין שמזין לקלוד שוב ושוב את אותה משימה עד שהוא כותב מילת סיום. /goal היא הגרסה המובנית, עם בודק חיצוני במקום שקלוד יחליט לבד.
שילוב שעובד טוב: auto mode חוסך את האישורים בתוך כל סיבוב, ו-/goal חוסך את ה"להמשיך?" בין הסיבובים. ביחד קלוד עובד לבד מההתחלה ועד הסוף.
חשוב לדעת
- הרשאות לא משתנות. /goal לא משנה את מצב ההרשאות. במצב ידני קלוד עדיין יעצור ויבקש אישור לפעולות שלא אישרתם מראש. כדי שזה ירוץ לבד באמת, מפעילים auto mode.
- עלות. כל סיבוב הוא עבודה רגילה של קלוד שנספרת במכסה או בחשבון. הבדיקה עצמה רצה על מודל קטן, ולפי התיעוד העלות שלה זניחה ביחס לעבודה.
- שגיאות שעוצרות. בעיית התחברות, יתרה שנגמרה, הקשר שהתמלא ולא הצליח להתכווץ, או מודל לא זמין מוחקים את היעד. מתקנים ומגדירים אותו שוב.
- לולאה בלי התקדמות. אם קלוד עונה לבודק כמה סיבובים ברצף בלי לעשות כלום, קלוד קוד עוצר, מציג אזהרה ומחזיר לכם את השליטה.
- הוקים כבויים. /goal בנויה על מערכת ההוקים, אז היא לא זמינה בתיקייה שלא סימנתם כאמינה או כשההוקים כבויים בהגדרות.
השורה התחתונה
תבחרו משימה אחת עם סוף שאפשר לספור, תכתבו לה תנאי עם הוכחה וגבול של 20 סיבובים, ותלכו לעשות משהו אחר.
שאלות נפוצות על /goal בקלוד קוד
מה זה /goal בקלוד קוד?
פקודה מובנית שמגדירה תנאי סיום. קלוד עובד לקראתו בלי שתבקשו כל שלב, ואחרי כל סיבוב מודל נפרד בודק אם התנאי התקיים. אם לא, קלוד ממשיך לבד.
איך עוצרים יעד באמצע?
כותבים /goal clear. גם stop, off, reset ו-cancel עובדים, ו-/clear שמתחיל שיחה חדשה מוחק את היעד.
איך מונעים מ-/goal לרוץ לנצח?
מוסיפים לתנאי גבול כמו "or stop after 20 turns". קלוד מדווח בכל סיבוב איפה הוא ביחס לגבול, והבודק שופט לפיו.
אפשר לכתוב את התנאי בעברית?
כן. התנאי נכתב במילים רגילות, עד 4,000 תווים. הכי חשוב שהוא יהיה משהו שקלוד יכול להראות בשיחה, כמו ספירה או תוצאה של בדיקה.
האם /goal עובד מהטלפון?
כן, דרך Remote Control שמחבר את אפליקציית קלוד בטלפון לסשן שרץ אצלכם במחשב. המחשב צריך להישאר דלוק, וזה זמין במנויים ולא עם מפתח API.
מה ההבדל בין /goal ל-/loop?
/goal ממשיך עד שתנאי מתקיים, לפי בודק נפרד. /loop מריץ פרומפט שוב כל פרק זמן קבוע, ומתאים לבדיקות חוזרות.