APC کو کلون سیف (Clone-Safe) رہنا چاہیے، APX کو مشین لوکل (Machine-Local) رہنا چاہیے۔
صرف ایک سوال پوچھ کر فیصلہ کریں کہ ڈیٹا کہاں ہونا چاہیے۔
کیا یہ ڈیٹا دوسری مشین پر ایک نئے کلون (fresh clone) کے بعد بھی برقرار رہے گا؟
اگر ہاں، تو اسے APC میں رکھیں۔ اگر نہیں، تو اسے APX میں رکھیں۔
یہ اصول آپ کے اسٹیک (stack) کو شفاف رکھتا ہے۔ APC پورٹیبل (portable) رہتا ہے۔ APX اس مشین پر کارآمد رہتا ہے جہاں کام ہو رہا ہو۔ جب یہ تہیں (layers) آپس میں مل جاتی ہیں، تو پروجیکٹس کو شیئر کرنا اور ان کا آڈٹ کرنا مشکل ہو جاتا ہے۔
APC پروجیکٹ کا معاہدہ (contract) ہے۔ APX رن ٹائم (runtime) ہے۔
APC ڈیٹا کلون سیف ہوتا ہے۔ کسی دوسرے ڈویلپر یا مشین کو git checkout کے فوراً بعد اسے پڑھنے کے قابل ہونا چاہیے۔ اسے git میں ریویو (review) کیا جا سکتا ہو۔
اچھے APC کی مثالیں: • AGENTS.md ریپو کنٹریکٹس (repo contracts) کے لیے • .apc/project.json پروجیکٹ کی شناخت کے لیے • .apc/agents/ ایجنٹ کے کرداروں (agent roles) کے لیے • .apc/skills/ دوبارہ استعمال ہونے والی مہارتوں (reusable skills) کے لیے • .apc/mcps.json مشترکہ اشاروں (shared hints) کے لیے
APX ڈیٹا مشین لوکل ہوتا ہے۔ یہ ڈیٹا مشین پر ہی رہتا ہے یا وہیں دوبارہ بنایا جاتا ہے۔ یہ ایگزیکیوشن اسٹیٹ (execution state) ہے، پورٹیبل سیاق و سباق (portable context) نہیں۔
اچھے APX کی مثالیں: • ~/.apx/config.json میں رن ٹائم کنفیگریشن • مقامی اجازت کے طریقے (Local permission modes) • سیشنز اور میسج لاگز • لوکل کیشز (Local caches) • ہر مشین کے لیے مخصوص سیکرٹس (Per-machine secrets)
ایک ریپوزٹری (repository) کو ہر کسی پر کسی ایک شخص کی لوکل سیٹ اپ نافذ نہیں کرنی چاہیے۔
جب APC کلون سیف رہتا ہے، تو آپ چھپی ہوئی فائلوں کے بغیر پروجیکٹ کی ساخت کا جائزہ لے سکتے ہیں۔ آپ سائیڈ ایفیکٹس (side effects) کے پیچھے بھاگنے کے بجائے ہدایات کا فرق (diff) دیکھ سکتے ہیں۔
جب APX مشین لوکل رہتا ہے، تو رن ٹائم پروجیکٹ کو تبدیل کیے بغیر خود کو ڈھال لیتا ہے۔ ایک مشین مختلف اجازت کے طریقے (permission mode) استعمال کرتی ہے، جبکہ دوسری زیادہ طویل ہسٹری رکھتی ہے۔ پروجیکٹ کا معاہدہ وہی رہتا ہے۔
کوئی نئی فائل شامل کرنے سے پہلے، یہ تین سوال پوچھیں:
- کیا ہر مطابقت رکھنے والے ٹول کو اسے پڑھنے کی ضرورت ہے؟ اسے APC میں رکھیں۔
- کیا یہ مشین کے بجائے پروجیکٹ کی وضاحت کرتا ہے؟ اسے APC میں رکھیں۔
- کیا یہ مقامی کریڈنشلز (local credentials) یا حالیہ ایگزیکیوشن پر منحصر ہے؟ اسے APX میں رکھیں۔
مثالیں: • نیا ایجنٹ کردار؟ APC۔ • ٹیلی گرام بوٹ ٹوکن؟ APX۔ • پروجیکٹ ریویو کے قواعد کے بارے میں نوٹ؟ APC۔ • آخری گفتگو کا لاگ؟ APX۔
APC وہ چیزیں رکھتا ہے جو کلون کے بعد بھی برقرار رہتی ہیں۔ APX وہ چیزیں رکھتا ہے جو صرف موجودہ مشین پر اہمیت رکھتی ہیں۔ یہ سادہ سا اصول سسٹم کو منظم رکھتا ہے۔
ماخذ: https://dev.to/agentprojectcontext/apc-should-stay-clone-safe-apx-should-stay-machine-local-59n9
اختیاری لرننگ کمیونٹی: https://t.me/GyaanSetuAi
