Coding-Agent State Protocol

ماڈل سیاق و سباق سنبھالتا ہے۔ CASP ثابت کرتا ہے کہ اسٹیٹ سچ ہے — git کے مقابل۔

نئے ماڈل آپ کا پورا روڈمیپ گھنٹوں، حتیٰ کہ دنوں تک، سلسلہ کھوئے بغیر چلاتے ہیں۔ بالکل اسی لیے اسٹیٹ کی روگردانی زیادہ اہم ہو جاتی ہے، کم نہیں: ایجنٹ آپ کے چیک پوائنٹس کے درمیان جتنا زیادہ کام کرتا ہے، اُتنا ہی اس کا درج کیا ہوا اسٹیٹ خاموشی سے git سے مطابقت کھو سکتا ہے۔ casp check وہ تعییني گیٹ ہے جو اسی لمحے پُش روک دیتا ہے جب ایسا ہو — آج Claude Code کے ساتھ، اور ہر اُس ماڈل کے ساتھ جو آگے آئے گا۔

AI کوڈنگ سیشنز کے لیے پری فلائٹ چیک + بلیک باکس
$npm i -g @justethales/casp کاپی کریں
GitHub پر دیکھیں
casp check — ڈرفٹ ویلیڈیٹر
01 / وہ سلسلہ جو آپ بار بار کھو دیتے ہیں

پرانا اسٹیٹ فائل آپ کے ایجنٹ کو پُراعتماد مگر غلط بنا دیتا ہے۔

آپ ہفتے بھر بعد کسی پروجیکٹ پر لوٹتے ہیں — یا ایک ساتھ پانچ پروجیکٹ سنبھالتے ہیں۔ ایجنٹ ایسا اسٹیٹ فائل پڑھتا ہے جو اب حقیقت سے میل نہیں کھاتا، پُراعتمادی سے وہ کام شروع کر دیتا ہے جو پہلے ہی مکمل ہو چکا ہے، اور آپ پوری دوپہر اُسے واپس کرنے میں ضائع کر دیتے ہیں۔

بورڈ، کارڈ اور اسپریڈ شیٹ آپ کو نہیں بچاتے: سیاق و سباق دوبارہ تشکیل دینا دستی کام ہے، اور ایجنٹ اِن میں سے کچھ بھی نہیں پڑھ سکتا۔ اسٹیٹ کو مشین سے پڑھنے کے قابل، git-native — اور قابلِ اثبات حد تک سچ ہونا چاہیے۔

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 اُس کی تصدیق کرتا ہے۔

ملحقہ میدان — Mem0، Letta، Zep، نئے git-native "میموری" پروجیکٹ — سب جو ہوا اُسے محفوظ کرتے ہیں۔ تقریباً کوئی بھی یہ تصدیق نہیں کرتا کہ محفوظ شدہ اسٹیٹ اب بھی git کی حقیقت سے میل کھاتا ہے۔ وہ تصدیق ہی casp check ہے — اور یہ ہر پُش سے پہلے لازمی ہے۔

next-prompt drift
پکڑ لی گئی

آپ کا next_prompt ایسی فائل کی طرف اشارہ کرتا ہے جو پہلے ہی مکمل ہو چکی ہے — یا موجود ہی نہیں۔ CASP غلط سیشن شروع کرنے سے انکار کر دیتا ہے۔

git کی بنیادی سچائی
نافذ

last_commit تاریخ میں موجود نہیں، migrations کی فہرست غیر ہم آہنگ، غیر کمٹ شدہ اسٹیٹ — خود git کے مقابل جانچا گیا، کسی اندازے سے نہیں۔

پُش، روک دیا گیا
تعییني

کوئی مبہم مشابہت کے اسکور نہیں۔ ایک سخت، قابلِ تکرار pass/fail گیٹ جو پُش روک دیتا ہے جب تک اسٹیٹ جھوٹ بول رہا ہو۔

03 / آپ کے موجودہ اسٹیک کے ساتھ

Git، PRs اور CI کو نہیں معلوم کہ آگے کیا لانچ ہوتا ہے۔

CASP آپ کے ورک فلو میں کسی چیز کی جگہ نہیں لیتا۔ یہ وہ واحد خلا پُر کرتا ہے جسے اور کچھ نہیں ڈھانپتا — کسی پروجیکٹ کا تصدیق شدہ موجودہ حال، ایسی شکل میں جسے آپ کا ایجنٹ پڑھ کر عمل کر سکے۔

Jira · Linear
ارادہ
جو آپ کرنے کا ارادہ رکھتے ہیں۔
حقیقت سے ہٹ جاتا ہے، کلاؤڈ میں رہتا ہے، آپ کا ایجنٹ اسے قابلِ اعتماد طور پر نہیں پڑھ سکتا۔
CASP
تصدیق شدہ حال
پروجیکٹ اِس وقت کہاں کھڑا ہے — اور بالکل اگلا قدم، git کے مقابل ثابت شدہ۔
مشین سے پڑھنے کے قابل، ریپو کے اندر، تعییني۔ وہ واحد سلسلہ جس پر ایجنٹ عمل کرتے ہیں۔
git · PR · CI
تاریخ & تصدیق
کیا بدلا · کیا اس کا جائزہ ہوا · کیا یہ بِلڈ ہوتا ہے۔
ماضی کا بے عیب ریکارڈ — اور آگے کیا آتا ہے، اس پر خاموش۔
04 / تین فائلیں۔ ایک سلسلہ۔

پورا پروٹوکول آپ کے ریپو میں سما جاتا ہے۔

کوئی ڈیٹابیس نہیں۔ کوئی سروس نہیں۔ کوئی ویکٹر اسٹور نہیں۔ تین سادہ فائلیں جنہیں ایجنٹ کسی بھی سیشن کی پہلی سطر پر پڑھ سکتا ہے۔

state.json
سچائی کا منبع

مشین سے پڑھنے کے قابل، فی پروجیکٹ: موجودہ فیز، اگلا فیز، عمل کرنے کے لیے بالکل next-prompt، مکمل کیے گئے فیز، لاگو کی گئی migrations، آخری کمٹ، آخری سیشن کی شناخت۔

now.md
انسانوں کے لیے

ایک اسکرین کا "میں اِس وقت کہاں ہوں"۔ اسے کھولیں، پانچ سیکنڈ میں سلسلہ واپس پائیں — کوئی آثارِ قدیمہ کی کھدائی نہیں۔

roadmap.md
آگے کیا لانچ ہوتا ہے

لانچ کرنے کے لیے اگلی 3 کے ساتھ ایک فیز اسکور بورڈ۔ ایجنٹ کو کام کی ترتیب ہمیشہ معلوم رہتی ہے۔

ٹیمپلیٹ گیٹ ہیں، رہنمائی نہیں۔  معیاری session-prompt، session-log اور audit-brief ٹیمپلیٹس کا مطلب ہے کہ ہر سیشن — انسانی ہو یا ایجنٹ — ایک ہی شکل کے آرٹیفیکٹ پیدا کرتا ہے۔ ساخت نافذ کی جاتی ہے، تجویز نہیں کی جاتی۔
05 / بڑے روڈمیپ کے لیے بنایا گیا

چالیس فیز کے آر پار ایک مرتب سلسلہ — web اور mobile دونوں۔

ایک حقیقی پروڈکٹ صرف ایک فیچر نہیں ہوتا۔ یہ API، web کلائنٹ اور mobile پر پھیلے درجنوں فیز ہوتے ہیں، جو ہفتوں میں باری باری چلنے والے سیشنوں اور ایجنٹوں کے ذریعے لانچ ہوتے ہیں۔ CASP اِن سب پر ایک ہی تصدیق شدہ ترتیب برقرار رکھتا ہے — تاکہ کوئی بھی ایجنٹ جان سکے کہ اگلا فیز کون سا ہے، اور کسی مکمل شدہ فیز کو کبھی دوبارہ لانچ نہ کرے۔

اور یہ لُوپ خود بند ہو جاتا ہے: ہر سیشن کے اختتام پر ایجنٹ آپ کے لیے اگلے سیشن کی پرامپٹ لکھتا ہے — آپ ایک سطر کو ٹھیک کرتے ہیں، صفر سے نہیں لکھتے — ایک سیشن لاگ جوڑتا ہے، اور اسٹیٹ آگے بڑھاتا ہے۔ اگلا سیشن کھولیں اور یہ بالکل وہیں سے شروع ہوتا ہے جہاں پچھلا رکا تھا۔ روڈمیپ خود چلتا ہے؛ آپ نگرانی کرتے ہیں۔

roadmap.md — فیز اسکور بورڈ 13 مکمل کل 22
10apiریئل ٹائم سنک انجنمکمل
11mobileپُش نوٹیفیکیشنزمکمل
12mobileآف لائن فرسٹ کیشمکمل
13webٹیم اجازتیںمکمل
15apiفی سیٹ بلنگقطار میں
16mobileبایومیٹرک لاگ اِنقطار میں
/ پروڈکشن میں

کوئی ڈیمو نہیں۔ آج دو لائیو پروڈکٹ CASP پر چل رہے ہیں۔

نیچے دیا گیا ہر عدد سیدھا ہر پروجیکٹ کی state.json سے پڑھا جاتا ہے — وہی فائل جو ایجنٹ پڑھتا ہے، آخری پُش پر git کے مقابل تصدیق شدہ۔ کوئی مارکیٹنگ کا حساب کتاب نہیں۔

LIVE

آئیوری کوسٹ کی ایک ٹرانسپورٹ کمپنی کے لیے کلائنٹ کو دکھائی دینے والا فلیٹ مینجمنٹ ERP — web + mobile، کئی ماڈیول، کئی کردار: ڈرائیور، گاڑیاں، تعمیل، نقدی، گیراج، تنازعات، اکاؤنٹنگ۔

25+
مکمل فیز
20+
ٹریک شدہ migrations
6
ایک دن میں سیشن

ہر ماڈیول ایک تصدیق شدہ فیز ہے۔ ایجنٹ کاک پٹ پڑھتا ہے، next_prompt سے اگلا فیز چلاتا ہے، اور اس نے کبھی کسی مکمل شدہ ماڈیول کو دوبارہ لانچ نہیں کیا — چھ سیشن والے دن پر بھی نہیں۔

LIVE

ZeroSuite کا اندرونی ops اور لانچ آرکیسٹریشن پلیٹ فارم — کئی ماہ کا ایک روڈمیپ جس پر ایک حقیقی ٹیم کام کرتی ہے، لانچ موڈ گیٹنگ اور ٹریک شدہ پوسٹ لانچ بیک لاگ کے ساتھ۔

41
مکمل فیز
17
migrations
3
آپریٹرز

40+ فیز اور تین افراد کے آر پار ایک تصدیق شدہ سلسلہ — مزید 58 آئٹمز واضح طور پر لانچ کے بعد کے لیے مؤخر کیے گئے، اِن میں سے کوئی ضائع نہ ہوا۔ یہی وہ "بڑا کثیر صارف پروجیکٹ" والا معاملہ ہے جس کے لیے CASP بنایا گیا تھا۔

ایک ہی پروٹوکول، دو نہایت مختلف پروڈکٹ۔ کاک پٹ ہی واحد چیز ہے جو وہ بانٹتے ہیں۔

06 / اسٹیٹ، میموری نہیں

CASP کوئی AI میموری پرت نہیں۔

میموری ٹولز یاد رکھتے ہیں کہ آپ کون ہیں۔ CASP باخبر رکھتا ہے کہ آپ کا پروجیکٹ کہاں کھڑا ہے — اور اسے ثابت کرتا ہے۔ مختلف آرٹیفیکٹ، مختلف عمل، مختلف ناکامی جسے یہ روکتا ہے۔

CASP
میموری پرتیں · Mem0 / Letta / git-native "soul"
یہ کیا رکھتا ہے
پروجیکٹ کا عمل درآمد اسٹیٹ
صارف کے حقائق اور ترجیحات
بنیادی عمل
git کے مقابل تصدیق کرتا ہے
محفوظ کرتا اور یاد کرتا ہے
تنازع کی صورت میں
بنیادی سچائی کے مقابل تعییني جانچ
مبہم مشابہت کا اندازہ
یہ کب چلتا ہے
ہم وقت گیٹ — پُش روک دیتا ہے
غیر ہم وقت / بالآخر یاد آوری
آپ کی مشین سے باہر جاتا ہے
کبھی نہیں · صفر ٹیلی میٹری
مختلف / کلاؤڈ
07 / کمانڈ ڈیک

پانچ افعال۔ بے حد آسانی سے ٹائپ ہونے والے۔

ایک حرف، کوئی ہم ہجے نہیں، انگریزی، فرانسیسی یا ہسپانوی میں ایک جیسے۔

casp initکسی بھی ریپو میں تسلسل کی پرت نصب کرتا ہے۔
casp statusایک اسکرین کا خلاصہ: فیز، اگلا، کیا مکمل ہوا۔
casp checkڈرفٹ ویلیڈیٹر۔ ہر پُش سے پہلے لازمی۔
casp nextstate.next_prompt سے اگلا سیشن خودکار طور پر شروع کرتا ہے۔
casp new promptمعیاری ٹیمپلیٹ سے ایک گیٹ شدہ session-prompt بناتا ہے۔
casp new logاُس شکل میں ایک session-log کھولتا ہے جو ہر سیشن بانٹتا ہے۔
08 / آپ کے ایڈیٹر میں

آپ کے ایجنٹ کے لیے مقامی سلیش کمانڈز۔

CASP کے ساتھ Claude Code سلیش کمانڈز آتے ہیں تاکہ اسٹیٹ وہیں رہے جہاں آپ پہلے ہی کام کرتے ہیں۔

/casp

صرف پڑھنے والی حیثیت — ایجنٹ ایک سطر لکھنے سے پہلے موجودہ سلسلہ پڑھتا ہے۔

/next

سیدھا state.next_prompt سے اگلا سیشن خودکار طور پر شروع کرتا ہے۔ کوئی کاپی پیسٹ نہیں، کوئی اندازہ نہیں۔

Claude Code · Cursor · Aider · Continue کے ساتھ کام کرتا ہے — ہر اُس چیز کے ساتھ جو فائلیں پڑھتی ہے۔

09 / انجینئرنگ تنظیموں کے لیے

جب ایجنٹ بغیر نگرانی چلتے ہیں، تو ڈرفٹ ایک فلیٹ کا مسئلہ بن جاتا ہے۔

ایک ایجنٹ کا غلط کام کرنا ایک دوپہر کی لاگت ہے۔ سو ریپو کے آر پار سو ایجنٹوں کا یہی کرنا ایک سہ ماہی کی لاگت ہے۔ CASP وہ تعییني حفاظتی باڑ ہے جسے آپ آٹومیشن لُوپ میں ڈالتے ہیں — ہر پروجیکٹ میں ایک ہی شکل میں۔

ایک لازمی CI اسٹیٹس چیک

casp check اُسی خانے میں بیٹھتا ہے جہاں lint اور ٹیسٹ۔ جھوٹ بولنے والا اسٹیٹ مرج نہیں ہو سکتا — ڈرفٹ تنظیم کی سطح پر روک دی جاتی ہے، کسی کی ذاتی نظم و ضبط پر نہیں چھوڑی جاتی۔

ایجنٹ فلیٹس کے لیے ایک حفاظتی باڑ

خودمختار ایجنٹ غلطیوں کو کئی گنا بڑھا دیتے ہیں۔ CASP اُن میں سے ہر ایک کو پڑھنے کے لیے وہی تصدیق شدہ سلسلہ اور پُش سے پہلے وہی سخت گیٹ تھما دیتا ہے۔ دُہرے کام کے ٹیکس کے بغیر آٹومیشن۔

ایک آڈٹ ٹریل، مفت میں

ہر اسٹیٹ تبدیلی ایک git کمٹ ہے۔ ہر پروجیکٹ کیسے آگے بڑھا، اس کا مکمل، diff کے قابل، واپس پلٹانے کے قابل ریکارڈ — git log ہی آپ کا تعمیل کا ٹریل ہے۔

بنیادی ڈیزائن سے ہی انفوسیک سے گزر جاتا ہے

صرف لوکل، صفر ٹیلی میٹری، کوئی کلاؤڈ نہیں، کوئی اکاؤنٹ نہیں۔ جانچنے کو کچھ نہیں، باہر نکالنے کو کچھ نہیں۔ سیکیورٹی جائزہ ایک سطر کا ہے: یہ مشین سے کبھی باہر نہیں جاتا۔

.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

ویلیڈیٹر اختیاری نہیں۔ جھوٹ بولنے والا اسٹیٹ کبھی آپ کے remote تک نہیں پہنچتا۔

P04

کچھ بھی آپ کی مشین سے باہر نہیں جاتا

تعییني، git-native، صرف لوکل۔ صفر ٹیلی میٹری۔ کوئی کلاؤڈ نہیں، کوئی اکاؤنٹ نہیں، کوئی بل نہیں۔

دو منٹ میں لانچ کریں

ہر پروجیکٹ کو ایک ایسا سلسلہ دیں جو آپ کا ایجنٹ کھو نہ سکے۔

انسٹال کریں، init کریں، اور آپ کا ایجنٹ اپنی پہلی سطر پر ہی سچائی پڑھ لیتا ہے۔

  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