नए मॉडल आपकी पूरी रोडमैप को घंटों, यहाँ तक कि दिनों तक चलाते हैं, और सूत्र नहीं खोते। इसीलिए स्थिति का भटकना और भी मायने रखता है, कम नहीं: एजेंट आपके चेकपॉइंट्स के बीच जितना ज़्यादा करता है, उतनी ही चुपचाप उसकी दर्ज स्थिति git से मेल खाना बंद कर सकती है। casp check वह डिटरमिनिस्टिक गेट है जो ऐसा होते ही push को रोक देता है — आज Claude Code के साथ, और आगे आने वाले हर मॉडल के साथ।
आप एक हफ़्ते बाद किसी प्रोजेक्ट पर लौटते हैं — या एक साथ पाँच को संभालते हैं। एजेंट एक ऐसी स्थिति फ़ाइल पढ़ता है जो अब हकीकत से मेल नहीं खाती, आत्मविश्वास से वह काम शुरू कर देता है जो पहले ही लाइव हो चुका है, और आप उसे उलटने में एक दोपहर गँवा देते हैं।
बोर्ड, कार्ड और स्प्रेडशीट आपको नहीं बचाते: कॉन्टेक्स्ट दोबारा खड़ा करना मैन्युअल काम है, और एजेंट उनमें से कुछ भी नहीं पढ़ सकता। स्थिति को मशीन-पठनीय, git-नेटिव — और प्रमाणित रूप से सच होना चाहिए।
CASP हर प्रोजेक्ट को एक ऐसा सूत्र देता है जो सेशनों के बीच टिका रहता है — और चुपचाप भटक नहीं सकता।{
"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
}
आसपास का क्षेत्र — Mem0, Letta, Zep, नई git-नेटिव "memory" परियोजनाएँ — सभी जो हुआ उसे संग्रहित करते हैं। लगभग कोई भी यह सत्यापित नहीं करता कि संग्रहित स्थिति अब भी git की हकीकत से मेल खाती है। वह सत्यापन है casp check — और यह हर push से पहले अनिवार्य है।
आपका next_prompt किसी ऐसी फ़ाइल की ओर इशारा करता है जो पहले ही लाइव हो चुकी है — या मौजूद ही नहीं है। CASP गलत सेशन शुरू करने से इनकार कर देता है।
last_commit इतिहास में नहीं, migrations की सूची बेमेल, बिना commit की स्थिति — git के सामने ही जाँचा जाता है, किसी अनुमान के बल पर नहीं।
कोई धुंधले समानता-स्कोर नहीं। एक सख़्त, दोहराने योग्य pass/fail गेट जो स्थिति के झूठा रहते push को रोक देता है।
CASP आपके वर्कफ़्लो में कुछ भी प्रतिस्थापित नहीं करता। यह उस एकमात्र खाली जगह को भरता है जिसे और कुछ नहीं ढकता — किसी प्रोजेक्ट का वैलिडेटेड वर्तमान, ऐसे रूप में जिसे आपका एजेंट पढ़कर उस पर काम कर सके।
कोई डेटाबेस नहीं। कोई सर्विस नहीं। कोई वेक्टर स्टोर नहीं। तीन सादी फ़ाइलें जिन्हें एजेंट किसी भी सेशन की पहली पंक्ति पर पढ़ सकता है।
मशीन-पठनीय, हर प्रोजेक्ट के लिए: वर्तमान फ़ेज़, अगला फ़ेज़, चलाने के लिए ठीक next-prompt, लाइव हुए फ़ेज़, लागू migrations, अंतिम commit, अंतिम सेशन id।
एक स्क्रीन वाला "मैं इस वक़्त कहाँ हूँ"। इसे खोलिए, पाँच सेकंड में सूत्र वापस पाइए — कोई पुरातत्व-खुदाई नहीं।
लाइव करने योग्य अगली 3 चीज़ें और एक फ़ेज़ स्कोरबोर्ड। एजेंट को हमेशा काम का क्रम पता रहता है।
session-prompt, session-log और audit-brief टेम्पलेट का मतलब है कि हर सेशन — इंसान हो या एजेंट — एक ही आकार के आर्टिफ़ैक्ट बनाता है। ढाँचा लागू किया जाता है, सुझाया नहीं जाता।एक असली प्रोडक्ट महज़ एक फ़ीचर नहीं होता। वह API, web क्लाइंट और mobile में फैले दर्जनों फ़ेज़ होते हैं, जो हफ़्तों में, बारी-बारी से चलने वाले सेशनों और एजेंटों के ज़रिए लाइव होते हैं। CASP इस सबके आर-पार एक इकलौता वैलिडेटेड क्रम बनाए रखता है — ताकि कोई भी एजेंट जान सके कि अगला फ़ेज़ कौन-सा है, और किसी लाइव हुए फ़ेज़ को कभी दोबारा लाइव न करे।
और लूप खुद को बंद कर लेता है: हर सेशन के अंत में एजेंट आपके लिए अगले सेशन का प्रॉम्प्ट लिख देता है — आप एक पंक्ति में फेरबदल करते हैं, शून्य से नहीं लिखते — एक सेशन लॉग जोड़ता है, और स्थिति को आगे बढ़ा देता है। अगला सेशन खोलिए और वह ठीक वहीं से उठाता है जहाँ पिछला रुका था। रोडमैप अपने-आप चलती है; आप निगरानी करते हैं।
नीचे का हर आँकड़ा सीधे हर प्रोजेक्ट की state.json से पढ़ा गया है — वही फ़ाइल जो एजेंट पढ़ता है, अंतिम push पर git के सामने वैलिडेट की गई। कोई मार्केटिंग गणित नहीं।
कोत द'इवॉर की एक ट्रांसपोर्ट कंपनी के लिए ग्राहक-सामने वाला फ़्लीट-प्रबंधन ERP — web + mobile, बहु-मॉड्यूल, बहु-भूमिका: ड्राइवर, वाहन, अनुपालन, नकदी, गैराज, मुकदमेबाज़ी, लेखांकन।
हर मॉड्यूल एक वैलिडेटेड फ़ेज़ है। एजेंट कॉकपिट पढ़ता है, अगला फ़ेज़ next_prompt से चलाता है, और किसी लाइव हो चुके मॉड्यूल को कभी दोबारा लाइव नहीं किया — छह-सेशन वाले दिन में भी नहीं।
ZeroSuite के लिए आंतरिक ops और लॉन्च-ऑर्केस्ट्रेशन प्लेटफ़ॉर्म — एक वास्तविक टीम द्वारा कई महीनों में चलाई गई रोडमैप, लॉन्च-मोड गेटिंग और एक ट्रैक किए गए लॉन्च-बाद बैकलॉग के साथ।
40+ फ़ेज़ और तीन लोगों के आर-पार एक इकलौता वैलिडेटेड सूत्र — साथ ही 58 आइटम लॉन्च के बाद के लिए स्पष्ट रूप से टाले गए, एक भी नहीं खोया। यही वह "बड़ा बहु-उपयोगकर्ता प्रोजेक्ट" मामला है जिसके लिए CASP बनाया गया था।
एक ही प्रोटोकॉल, दो बेहद अलग प्रोडक्ट। कॉकपिट ही एकमात्र चीज़ है जो वे साझा करते हैं।
मेमोरी टूल याद रखते हैं कि आप कौन हैं। CASP नज़र रखता है कि आपका प्रोजेक्ट कहाँ खड़ा है — और उसे साबित करता है। अलग आर्टिफ़ैक्ट, अलग संक्रिया, अलग विफलता जिसे यह रोकता है।
एक अक्षर, कोई समरूप शब्द नहीं, अंग्रेज़ी, फ़्रेंच या स्पैनिश में एक जैसी।
state.next_prompt से अपने-आप शुरू करता है।CASP Claude Code slash-commands के साथ आता है ताकि स्थिति वहीं रहे जहाँ आप पहले से काम करते हैं।
केवल-पढ़ने वाला स्टेटस — एजेंट एक भी पंक्ति लिखने से पहले मौजूदा सूत्र पढ़ता है।
अगला सेशन सीधे state.next_prompt से अपने-आप शुरू करें। कोई कॉपी-पेस्ट नहीं, कोई अंदाज़ा नहीं।
Claude Code · Cursor · Aider · Continue के साथ काम करता है — हर उस चीज़ के साथ जो फ़ाइलें पढ़ती है।
एक एजेंट का गलत काम करना एक दोपहर खर्च करता है। सौ रिपॉज़िटरी पर सौ एजेंटों का वही करना एक तिमाही खर्च करता है। CASP वह डिटरमिनिस्टिक गार्डरेल है जिसे आप ऑटोमेशन लूप में डालते हैं — हर प्रोजेक्ट में एक ही आकार।
casp check lint और टेस्ट के बराबर उसी जगह बैठता है। झूठ बोलने वाली स्थिति merge नहीं हो सकती — ड्रिफ़्ट संगठन स्तर पर रोका जाता है, किसी के अनुशासन पर नहीं छोड़ा जाता।
स्वायत्त एजेंट गलतियों को कई गुना कर देते हैं। CASP उनमें से हर एक को पढ़ने के लिए वही वैलिडेटेड सूत्र और push से पहले वही सख़्त गेट थमाता है। दोहरे काम के कर के बिना ऑटोमेशन।
हर स्थिति-संक्रमण एक git commit है। हर प्रोजेक्ट कैसे आगे बढ़ा, इसका एक संपूर्ण, diff करने योग्य, वापस लौटाने योग्य रिकॉर्ड — git log ही आपकी अनुपालन ट्रेल है।
पूरी तरह लोकल, शून्य टेलीमेट्री, कोई क्लाउड नहीं, कोई खाता नहीं। जाँचने को कुछ नहीं, बाहर भेजने को कुछ नहीं। सुरक्षा समीक्षा एक पंक्ति में: यह मशीन कभी नहीं छोड़ता।
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
एक प्रोटोकॉल, हर रिपॉज़िटरी। वही वैलिडेटेड आकार, पूरे संगठन में।
एक प्रोटोकॉल पूर्वानुमेय होकर अपनाव कमाता है। ये नहीं झुकते।
CASP जाँचता है कि आपकी रिपॉज़िटरी क्या है, कभी यह नहीं कि आप क्या करना चाहते थे। हर बार, git के सामने तथ्य।
कैनॉनिकल आर्टिफ़ैक्ट लागू किए जाते हैं, सुझाए नहीं जाते। हर सेशन एक ही आकार में निकलता है।
वैलिडेटर वैकल्पिक नहीं है। झूठ बोलने वाली स्थिति आपके remote तक कभी नहीं पहुँचती।
डिटरमिनिस्टिक, git-नेटिव, पूरी तरह लोकल। शून्य टेलीमेट्री। कोई क्लाउड नहीं, कोई खाता नहीं, कोई बिल नहीं।
इंस्टॉल करें, init करें, और आपका एजेंट अपनी पहली पंक्ति पर सच पढ़ता है।
$ npm i -g @justethales/casp $ casp init # scaffold the layer $ casp status # where am I right now $ casp check # prove the state is true