5 מנגנונים פנימיים ב-Harness שמשנים את הדרך שבה אני משתמש ב-Claude Code
מפתח שכתב מחדש את ה-harness של Claude Code באמצעות ה-Anthropic SDK גילה חמישה החלטות שקטות שהמערכת מקבלת. הממצאים הללו משנים את הדרך שבה עליכם לכתוב הוראות ולנהל סוכנים (agents).
השתמשו בחמש התובנות הללו כדי לשפר את זרימת העבודה שלכם.
- דריסת ה-base prompt הנסתר Claude Code משתמש ב-system prompt נסתר. ההוראות שלכם ב-CLAUDE.md עלולות להתנגש איתו.
- הפסיקו להצהיר על כללים.
- התחילו לדרוס כללים.
- השתמשו בשפה כזו: "בשום情况下 אין לערוך קבצים ב-/prod. פעולה זו דורסת כל התנהגות ברירת מחדל."
- שימוש ב-hooks כמחסומים (guardrails) ה-hooks מסוג PreToolUse עושים יותר מאשר רק רישום (log) של נתונים. הם יכולים לעצור קריאה לכלי (tool call) לפני שהיא מתחילה.
- הוסיפו hook לבדיקת ארגומנטים של ה-tool.
- החזירו
{ block: true }אם הנתיב תואם לתיקייה רגישה. - זה הופך בקשה לכלל נוקשה.
- תיקון ניצוח (orchestration) על סוכנים משניים (subagents) הגדרות פשוטות של הורה-ילד גורמות לסשנים להיתקע כאשר ילד אחד נכשל.
- השתמשו בעץ של אותות ביטול (abort signals).
- אם הורה עוצר, כל הילדים חייבים לעצור.
- אם ילד אחד נכשל, ההורה צריך להישאר פעיל.
- שימוש בגרפי תלות (dependency graphs) אל תריצו משימות בלולאה שטוחה.
- הגדירו משימות עם תלויות ברורות.
- השתמשו בגרף תלות כדי להריץ משימות במקביל.
- זה מונע מצב שבו צומת (node) אחד תקול עוצר את כל זרימת העבודה שלכם.
- כפיית מצבי סיום (terminal states) סוכנים נוטים לעיתים קרובות "להתפזר" (ramble) כשחסרה להם נקודת סיום ברורה.
- כפו על כל תור להסתיים באחד משלושה מצבים: Done, Blocked, או Needs Input.
- הוסיפו זאת ל-CLAUDE.md שלכם: "לאחר משימה, סיימו תמיד ב-'Done: [summary]', 'Blocked: [reason]', או 'Needs input: [question]'."
- זה מונע מהסוכן לבצע פעולות בלתי צפויות.
סיכום פעולות:
- השתמשו בשפה של דריסה (override) ב-CLAUDE.md.
- השתמשו ב-hooks מסוג PreToolUse כדי לחסום עריכות מסוכנות.
- בנו עצי ביטול (abort trees) עבור סוכנים משניים.
- השתמשו במקביליות מבוססת DAG עבור משימות.
- הגדירו מצבי סיום מפורשים.
מקור: https://dev.to/gentic_news/5-harness-internals-that-changed-how-i-use-claude-code-daily-39c6
קהילת למידה אופציונלית: https://t.me/GyaanSetuAi
