Coding-Agent State Protocol

המודל מחזיק את ההקשר. CASP מוכיח שהמצב אמיתי — מול git.

CASP שומר תמונה תמיד-אמיתית של היכן באמת נמצא כל אחד מהפרויקטים שלכם — בכל רגע, מאומתת מול git. חזרו אחרי שבוע או אחרי חודשים, על כל stack, על פני כל מספר של סוכנים, סשנים או חברי צוות: פתחו אותה והמצב אמיתי — או ש-casp check חוסם את ה-push עד שיהיה.

בדיקת טרום-טיסה + קופסה שחורה לסשני קוד של AI
$npm i -g @justethales/casp העתק
צפייה ב-GitHub
casp check — מאמת סטייה
01 / החוט שאתם מאבדים שוב ושוב

קובץ מצב מיושן הופך את הסוכן שלכם לבטוח בעצמו וטועה.

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

לוחות, כרטיסים וגיליונות לא יצילו אתכם: שחזור ההקשר ידני, והסוכן לא יכול לקרוא אף אחד מהם. המצב חייב להיות קריא-מכונה, נטיב ל-git — ואמיתי באופן בר-הוכחה.

CASP נותן לכל פרויקט חוט אחד ששורד מסשן לסשן — ולא יכול לסטות בשקט.
state.json ● DRIFTED
{
  "phase": "13 — camera streaming",
  "next_prompt": "phases/14-camera.md",
                  // shipped in v13.4
  "last_commit": "a1f3c9",
                  // not in git history
  "migrations": ["0001""0007"],
                  // git stops at 0006
}
02 / ההבדל המכריע

כולם מאחסנים הקשר. CASP מאמת אותו.

CASP הוא הרצפה הדטרמיניסטית של לולאת האימות העצמי — הבדיקה היחידה ב»אַמֵּת את עבודתך« שאיננה המודל הבודק את עצמו: המצב מול git, בגבול ה-push שאליו הבדיקה שבתוך הלולאה אינה יכולה להגיע. המרחב הסמוך — Mem0, Letta, Zep, פרויקטי ה»זיכרון« החדשים הנטיביים ל-git — כולם מאחסנים את מה שקרה; כמעט אף אחד לא מאמת שהמצב המאוחסן עדיין תואם את git. האימות הזה הוא casp check — והוא חובה לפני כל push.

סטיית next-prompt
נתפסת

ה-next_prompt שלכם מצביע על קובץ שכבר נשלח — או שאינו קיים. CASP מסרב להתחיל את הסשן הלא נכון.

אמת היסוד של git
נאכפת

last_commit שאינו בהיסטוריה, רשימת מיגרציות לא מסונכרנת, מצב לא מקומיט — נבדק מול git עצמו, לא מול ניחוש.

push, חסום
דטרמיניסטי

אין ציוני דמיון מעורפלים. שער pass/fail קשיח וניתן לשחזור שעוצר את ה-push כל עוד המצב משקר.

03 / לצד הסטאק הקיים שלכם

git, ה-PR-ים וה-CI לא יודעים מה נשלח בהמשך.

CASP לא מחליף דבר בתהליך העבודה שלכם. הוא ממלא את הפער היחיד ששום דבר אחר לא מכסה — ההווה המאומת של פרויקט, בצורה שהסוכן שלכם יכול לקרוא ולפעול לפיה.

Jira · Linear
כוונה
מה שאתם מתכננים לעשות.
סוטה מהמציאות, חי בענן, הסוכן שלכם לא יכול לקרוא אותו באופן אמין.
CASP
ההווה המאומת
היכן הפרויקט עומד כרגע — והצעד הבא המדויק, מוכח מול git.
קריא-מכונה, בתוך המאגר, דטרמיניסטי. החוט היחיד שהסוכנים פועלים לפיו.
git · PR · CI
היסטוריה & אימות
מה השתנה · האם זה נבדק · האם זה נבנה.
תיעוד מושלם של העבר — ושותק לגבי מה שבא אחר כך.
04 / שלושה קבצים. חוט אחד.

כל הפרוטוקול נכנס לתוך המאגר שלכם.

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

state.json
מקור האמת

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

now.md
לבני אדם

ה»איפה אני כרגע« במסך אחד. פתחו אותו, חזרו לחוט בחמש שניות — בלי ארכיאולוגיה.

roadmap.md
מה נשלח בהמשך

שלוש הבאות לשליחה ולוח תוצאות של הפאזות. הסוכן תמיד יודע את סדר העבודה.

התבניות הן שערים, לא הנחיות.  התבניות הקנוניות session-prompt, session-log ו-audit-brief מבטיחות שכל סשן — אנושי או סוכן — מייצר תוצרים באותה צורה. המבנה נאכף, לא מוצע.
05 / מתכננים פעם אחת, משלחים בפרוסות

את התוכנית אתם כותבים פעם אחת. מה הבא בתור — הסוכן שלכם שואל.

הפכו את המפרט שלכם לתור של פרומפטים לסשנים — כל אחד מהם קובץ במאגר שלכם שמצהיר מה בא לפניו. casp next מוסר לסוכן שלכם את ראש התור, ומסרב למסור פרוסה שכבר נשלחה.

casp next מדפיס את הפרומפט. הוא לעולם אינו מריץ אותו — הסוכן שלכם עושה זאת. CASP הוא החלק שהופך את המסירה לראויה לאמון, לא מתזמר.

docs/plan/sessions/ — התור 2 shipped · 3 queued
PHASE-AUTH-GATE.mdnext_after: —shipped
PHASE-BILLING-CORE.mdnext_after: auth-gateshipped
PHASE-AUDIT-LOG.mdnext_after: team-rolesqueued
PHASE-API-DOCS.mdnext_after: audit-logqueued

בסוף כל סשן הסוכן שלכם מוסיף את היומן, מקדם את המצב וכותב את הפרומפט הבא בתור — אתם מתקנים שורה במקום לכתוב מאפס. ולוח הפאזות נשאר ב-roadmap.md, כך שכל סוכן יודע את סדר העבודה.

roadmap.md — לוח תוצאות של הפאזות 13 נשלחו 22 בסך הכול
10apiמנוע סנכרון בזמן אמתנשלחה
11mobileהתראות pushנשלחה
12mobileמטמון offline-firstנשלחה
13webהרשאות צוותנשלחה
15apiחיוב לפי מושבבתור
16mobileהתחברות ביומטריתבתור
/ בייצור

לא דמו. שני מוצרים חיים רצים על CASP היום.

כל מספר למטה נקרא ישירות מתוך ה-state.json של כל פרויקט — אותו קובץ שהסוכן קורא, מאומת מול git ב-push האחרון. בלי חשבונות שיווקיים.

LIVE

ERP לניהול צי מול לקוחות, עבור חברת הסעות בחוף השנהב — web + mobile, רב-מודולרי, רב-תפקידי: נהגים, רכבים, ציות, קופה, מוסך, התדיינות משפטית, הנהלת חשבונות.

25+
פאזות נשלחו
20+
מיגרציות במעקב
6
סשנים ביום

כל מודול הוא פאזה מאומתת. הסוכן קורא את הקוקפיט, מריץ את הפאזה הבאה מתוך next_prompt, ומעולם לא שלח מחדש מודול שכבר נשלח — אפילו ביום של שישה סשנים.

LIVE

פלטפורמת ה-ops ותזמור ההשקות הפנימית של ZeroSuite — מפת דרכים בת חודשים שמונעת בידי צוות אמיתי, עם gating במצב השקה ובאקלוג מעקב לאחר ההשקה.

41
פאזות נשלחו
17
מיגרציות
3
מפעילים

חוט מאומת אחד על פני 40+ פאזות ושלושה אנשים — בתוספת 58 פריטים שנדחו במפורש מעבר להשקה, אף אחד מהם לא אבד. זהו מקרה ה»פרויקט הגדול רב-המשתמשים« שלשמו CASP נבנה.

אותו פרוטוקול, שני מוצרים שונים מאוד. הקוקפיט הוא הדבר היחיד שהם חולקים.

06 / מצב, לא זיכרון

CASP אינו שכבת זיכרון ל-AI.

כלי זיכרון זוכרים מי אתם. CASP עוקב אחר היכן הפרויקט שלכם עומד — ומוכיח זאת. תוצר אחר, פעולה אחרת, כשל אחר שהוא מונע.

CASP
שכבות זיכרון · Mem0 / Letta / "soul" נטיב ל-git
מה הוא מכיל
מצב ביצוע הפרויקט
עובדות והעדפות של המשתמש
הפעולה המרכזית
מאמת מול git
מאחסן ומשחזר
במקרה של התנגשות
בדיקה דטרמיניסטית מול אמת היסוד
ניחוש דמיון מעורפל
מתי הוא רץ
שער סינכרוני — חוסם את ה-push
שחזור אסינכרוני / בסופו של דבר
עוזב את המכונה שלכם
לעולם לא · אפס טלמטריה
משתנה / ענן
07 / לוח הפקודות

חמש פקודות. נכתבות בקלות.

הברה אחת, ללא הומוגרפים, זהות באנגלית, בצרפתית או בספרדית.

casp initמקים את שכבת ההמשכיות בתוך כל מאגר.
casp statusתצלום מצב במסך אחד: פאזה, הבאה, מה נשלח.
casp checkמאמת הסטייה. חובה לפני כל push.
casp nextמתחיל אוטומטית את הסשן הבא מתוך state.next_prompt.
casp new promptמייצר session-prompt תחת שער מתוך התבנית הקנונית.
casp new logפותח session-log בצורה שכל סשן חולק.
08 / בעורך שלכם

slash-commands נטיביות לסוכן שלכם.

CASP כולל slash-commands של Claude Code כדי שהמצב יחיה היכן שאתם כבר עובדים.

/casp

סטטוס לקריאה בלבד — הסוכן קורא את החוט הנוכחי לפני שהוא כותב שורה אחת.

/next

מתחיל אוטומטית את הסשן הבא ישירות מתוך state.next_prompt. בלי העתק-הדבק, בלי ניחושים.

עובד עם Claude Code · Cursor · Aider · Continue — כל דבר שקורא קבצים.

09 / לארגוני הנדסה

כשסוכנים רצים ללא השגחה, הסטייה הופכת לבעיה של צי.

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

בדיקת סטטוס CI מחייבת

casp check יושב באותו מקום כמו ה-lint והבדיקות. מצב שמשקר לא יכול להתמזג — הסטייה נחסמת ברמת הארגון, לא נשארת לדיסציפלינה של מישהו.

מעקה בטיחות לציי סוכנים

סוכנים אוטונומיים מכפילים טעויות. CASP מוסר לכל אחד מהם את אותו חוט מאומת לקריאה ואת אותו שער קשיח לפני שהוא דוחף. אוטומציה בלי מס העבודה הכפולה.

נתיב ביקורת, בחינם

כל מעבר מצב הוא קומיט git. תיעוד מלא, בר-השוואה ובר-ביטול של אופן ההתקדמות של כל פרויקט — git log הוא נתיב הציות שלכם.

עובר infosec מעצם התכנון

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

.github/workflows/ci.yml
jobs:
  state-check:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
        with: { fetch-depth: 0 }   # casp checks against full git history
      - run: npx @justethales/casp check       # ✗ fails the build the moment state drifts

פרוטוקול אחד, כל המאגרים. אותה צורה מאומתת, בכל הארגון.

10 / החוזה

נחרץ בכוונה.

פרוטוקול זוכה לאימוץ בכך שהוא צפוי. אלה לא מתכופפים.

P01

לאמת מצב, לא כוונה

CASP בודק מה המאגר שלכם הוא, לעולם לא מה התכוונתם לעשות. עובדות מול git, בכל פעם.

P02

התבניות הן שערים

תוצרים קנוניים נאכפים, לא מוצעים. כל סשן יוצא באותה צורה.

P03

check לפני כל push

המאמת אינו אופציונלי. מצב שמשקר לעולם לא מגיע ל-remote שלכם.

P04

שום דבר לא עוזב את המכונה שלכם

דטרמיניסטי, נטיב ל-git, מקומי בלבד. אפס טלמטריה. בלי ענן, בלי חשבון, בלי חשבונית.

בייצור תוך שתי דקות

תנו לכל פרויקט חוט שהסוכן שלכם לא יכול לאבד.

התקינו, אתחלו, והסוכן שלכם קורא את האמת בשורה הראשונה שלו.

  terminal
$ npm i -g @justethales/casp
$ casp init          # scaffold the layer
$ casp status        # where am I right now
$ casp check         # prove the state is true