AI Briefing/בלוג
loop engineering·13 באוקטובר 2026·6 דקות קריאה

Loop engineering: מי מחליט שהלולאה סיימה

מה זה loop engineering, מאיפה הגיע ביוני 2026, איפה זה נשבר, ולולאת bash מינימלית עם בדיקה, תקציב וזיכרון שאפשר להריץ מחר.

תחילת יוני 2026. בוריס צ’רני, שמוביל את Claude Code באנטרופיק, כותב ב-X שלוש שורות. באותו שבוע חצי מהטיימליין צחק עליהן:

I don’t prompt Claude anymore. I have loops running that prompt Claude and figuring out what to do. My job is to write loops

— בוריס צ’רני, ראש Claude Code באנטרופיק, ב-X

באותם ימים פיטר שטיינברגר כתב כמעט אותו דבר: לא כותבים יותר prompts ל-coding agents, מתכננים לולאות שכותבות אותם. ב-7 ביוני אדי אוסמני מגוגל נתן לזה שם בבלוג שלו, loop engineering, ומשם זה פשוט נדבק. לפי Tosea, הפוסט שהצית את הדיון עבר 6.5 מיליון צפיות תוך כמה ימים. ב-17 ביולי כבר היה ל-IBM עמוד הגדרה, ובסוף יולי הטיימליין התווכח אם עברנו כבר ל-graph engineering.

רגע, הצורה עצמה לא חדשה. אנשים כתבו לולאות בבאש סביב agents עוד מסוף 2023. מה שהשתנה ב-2026 זה שהחלקים יושבים בתוך המוצרים: ב-Codex יש /goal, ו-Claude Code רץ headless עם claude -p.

מה זה בפועל, ומה זה לא

בגדול: במקום שאתם תקלידו את ה-prompt הבא, מערכת קטנה עושה את זה. היא מוצאת עבודה, מעבירה אותה ל-agent, בודקת את התוצאה, רושמת מה נגמר ומחליטה מה הלאה. אוסמני מונה חמישה חלקים ועוד מקום אחד לזיכרון, ושם את זה קומה אחת מעל ה-harness. ה-harness הוא הסביבה ש-agent אחד רץ בתוכה. הלולאה היא אותו harness, רק שהוא רץ לפי טיימר, מרים עוזרים ומזין את עצמו.

מה זה לא: זה לא ה-while שבתוך כל agent. אבי צ’אוולה תיאר את זה ככה: שולחים context למודל, מקבלים tool calls, מריצים, מוסיפים את התוצאות ל-context ושולחים שוב, עד שהמודל עונה בלי לבקש כלי. הלולאה הזאת כמעט זהה ב-LangGraph, ב-OpenAI Agents SDK וב-Claude Code. על ה-while אף אחד לא מתחרה. מה שאתם כותבים זה מה שמסביב: מתי עוצרים, מה נשאר ב-context, לאילו כלים יש גישה, ואיך בודקים את התוצאה.

וזה גם לא מוצר. ב-iii.dev ניסחו את זה הכי חד: agentic loop זה לקרוא למודל, להסתכל מה חזר ולהחליט אם להסתובב עוד פעם. “That is not a product category! That is a while statement.”

אוסמני שם את הלולאה קומה אחת מעל ה-harness. המודל וה-while הם בדיוק החלק שאתם לא כותבים (credit: addyosmani.com)
אוסמני שם את הלולאה קומה אחת מעל ה-harness. המודל וה-while הם בדיוק החלק שאתם לא כותבים (credit: addyosmani.com)

איפה זה נשבר: כשהמודל מחליט שסיים

הדוגמה הכי טובה שמצאתי היא של iii.dev, מ-29 ביולי. agent סורק קבצים ומחפש חולשות. כדי לדעת שסיים, צריך להשוות את רשימת הקבצים שעבר עליהם לרשימת כל הקבצים. תשאלו מודל מוביל אם שתי רשימות זהות, ולפעמים תקבלו תשובה נכונה. ולפעמים לא. לולאה שבה המודל מחליט מתי לעצור תסיים מוקדם מדי, מאוחר מדי, או בכלל לא.

ברוס הארט, שכתב ב-7 ביולי על /goal ב-Codex, מוסיף את הצד השני: מודל יכול לעבור טסט מהסיבה הלא נכונה, ויכול להחליט שמה שהוא כתב כנראה נכון כי הוא זה שכתב. בקיצור, יש פה שתי בעיות ופתרון אחד: תנאי העצירה צריך להיות קוד, והבדיקה צריכה לבוא ממישהו שהוא לא ה-agent שכתב.

בראדלי גיבס, בפוסט מ-11 באוקטובר, קורא לזה make done checkable: להפוך את ה-spec לבדיקות עצמאיות ולכללי עצירה שנאכפים. הפוסט Poor Man’s Loop Engineering מאוגוסט מצמצם את זה לשני דברים: ה-agent צריך להיות מסוגל לבדוק את העבודה של עצמו, ומישהו אחר צריך לעשות לה review. כל השאר תוספות.

איך המנגנון עובד
איך המנגנון עובד

לולאה מינימלית שאפשר להריץ מחר

הנה הגרסה הכי קטנה שאני מוכן להריץ על repo אמיתי. בדיקה אחת שמחזירה exit code, תקציב של סבבים, וקובץ notes שעובר מסבב לסבב:

loop.sh
#!/usr/bin/env bash
set -u
GOAL="Make every test in tests/billing pass. Do not edit or skip tests."
MAX=8
mkdir -p .loop
touch .loop/NOTES.md
for i in $(seq 1 "$MAX"); do
if make test > .loop/last_test.txt 2>&1; then
echo "green in round $i"
exit 0
fi
PROMPT="$GOAL
Read .loop/NOTES.md first, then .loop/last_test.txt.
Fix ONE failure. Append to .loop/NOTES.md what you tried and the result."
claude -p "$PROMPT" --max-turns 20 --allowedTools "Read,Edit,Write,Bash(make test)"
done
echo "out of budget after $MAX rounds - read .loop/NOTES.md"
exit 1

שום דבר פה לא מקרי. קודם כל, make test מחליט שסיימנו, לא קלוד. exit code 0, יוצאים. חוץ מזה, MAX=8 ו---max-turns 20 הם התקציב: בלעדיהם משימה שלא מתכנסת שורפת טוקנים כל הלילה. ו-NOTES.md הוא הזיכרון, כדי שסבב 5 לא ינסה שוב בדיוק מה שנכשל בסבב 2. ההוראה Fix ONE failure שומרת על diff קטן שאפשר לקרוא.

אחרי exit 0 עוד לא ממרג’ים. תפתחו שיחה חדשה, בלי ההיסטוריה, שרק קוראת את git diff main ומחפשת טסטים שנמחקו, דולגו או נערכו. זה ה-reviewer שהוא לא ה-agent שכתב.

שני מעצורים, ואף אחד מהם לא שואל את המודל אם סיים. מודל שמשווה רשימות קבצים טועה לפעמים, exit code לא מתווכח (iii.dev)
שני מעצורים, ואף אחד מהם לא שואל את המודל אם סיים. מודל שמשווה רשימות קבצים טועה לפעמים, exit code לא מתווכח (iii.dev)

מתי לא לבנות לולאה

פאביו אקיטה פרסם ב-18 באוגוסט hot take שקרא ל-harness, loop ו-graph engineering פשוט bullshit. הטענה שלו: כשהטכנולוגיה הופכת ל-commodity, הכסף עובר לטקסונומיה. ויש לו קבלות. בין ינואר למאי הוא פרסם יותר מ-30 repos פומביים בלי לסבך את ה-setup, ומחליף בין Claude Code, Codex ו-Kimi CLI באותו יום. גם iii.dev ספרו ארבעה שמות בשלוש שנים: prompt ב-2023, context ב-2024, loop ב-2025–26, graph ביולי 2026.

מה שכן, גם אוסמני, שנתן את השם, כותב שהוא סקפטי ושצריך להיזהר מאוד עם עלות הטוקנים. אז הנה מתי לא:

הדעה שלי: אקיטה צודק לגבי הקורסים והתעודות, ולא צודק לגבי הלולאה. הוא בעצמו כתב שמה שעובד זה לדעת מה אתה רוצה, ולולאה טובה היא בדיוק זה: מה שאתה רוצה, כתוב כפקודה שמחזירה exit code. את השם אפשר לזרוק, את תנאי העצירה לא.

מה לנסות השבוע

  1. תבחרו משימה אחת עם בדיקה שמחזירה exit code: טסטים אדומים, tsc --noEmit, lint. אין כזאת? תתחילו מלכתוב אותה. זה הצעד הראשון גם ב-Poor Man’s.
  2. תכתבו את ה-done כפקודה, לא כמשפט. make test עובר ו-git diff לא נוגע ב-tests/ זה done. הקוד עובד זה לא.
  3. תריצו סבב אחד עם claude -p ... --output-format json ותסתכלו על total_cost_usd. תכפילו ב-MAX. אם המספר מפחיד, תורידו את MAX או תקטינו את המשימה.
  4. תוסיפו את קובץ ה-NOTES ואת ה-reviewer בשיחה נקייה. כל אחד מהם עולה שורה או שתיים.
  5. אחרי שבוע, תספרו איזו בדיקה תפסה משהו בפועל. גיבס קורא לזה למדוד אילו בדיקות מצדיקות את העלות שלהן. בדיקה שלא תפסה כלום בעשרים ריצות, תשקלו להוריד.

ואם אתם לא מצליחים לכתוב את תנאי העצירה בשורת bash אחת, עוד אין לכם לולאה. יש לכם צ’אט שרץ בלילה.

מקורות

  1. Loop Engineering: Optimizing Code Generation and Verification · 2026-10-11
  2. Loop Engineering: Designing loops that prompt coding agents · 2026-06-13
  3. Hot Take: Harness, Loop Engineering, Graph Engineering Are Bullshit · 2026-08-22
  4. Loop Engineering, Graph Engineering, and Layers That Matters · 2026-07-21
  5. Poor Man's Loop Engineering · 2026-08-18
  6. Loop Engineering Is a Pattern, Not a Feature · 2026-07-29
  7. The /Goal Function Made Loop Engineering Click for Me · 2026-07-20
  8. What Is Loop Engineering? | IBM
  9. What Is Loop Engineering? A Complete Guide from Prompt to Harness Engineering (2026) | Tosea.ai
  10. Understanding loop engineering in AI agents

איך נכתב הפוסט: נוסח על ידי הסוכן שלנו מתוך 10 מקורות, ונערך ואושר על ידי קובי אלמוג.

עוד מונחים

כל המונחים →
3/4

ChatGPT מקרוב: הפיצ'רים שמהנדסים משאירים כבויים

Projects, memory, canvas, deep research, agent ו-connectors ב-ChatGPT: מה כל אחד עושה, איפה הוא נופל, ומה להפעיל כבר השבוע.

1/5

Claude Code בפרקטיקה, חלק 1: CLAUDE.md קצר, הרשאות קשוחות

שלושת קבצי ה-CLAUDE.md, auto memory, הרשאות ב-settings.json ופקודות שכדאי שיהיו באצבעות. צעד אחרי צעד, לצוות אמיתי.

2/5

Claude Code בפרקטיקה, חלק 2: hooks, MCP ו-skills, מה הולך לאן

CLAUDE.md אומר מה חייב, skill איך, MCP מה אפשר, hook אוכף. PreToolUse שחוסם commit ל-main, formatter אוטומטי, שרת MCP ו-SKILL.md ראשון.