ایجنٹ سے چیٹ کریں
یہ گائیڈ دکھاتی ہے کہ کسی اسپیس میں ایجنٹ کے ساتھ کام کیسے کیا جائے۔
اسپیس بنائیں
سیکشن کا عنوان “اسپیس بنائیں”- سائیڈبار میں اسپیسز پر جائیں
- اسپیسز ہیڈنگ کے ساتھ والے + بٹن پر کلک کریں
- ایک نام ٹائپ کریں — یہ لازمی ہے۔ خالی نام مسترد ہو جاتا ہے؛ ڈائیلاگ کھلا رہتا ہے
- اختیاری طور پر ورک اسپیس سے ایجنٹس شامل کریں
- اگر ورک اسپیس میں کوئی ریپو موجود ہو تو ریپو پکر ظاہر ہوتا ہے۔ یہ شروع میں ہر ریپو منتخب لیے ہوتا ہے؛ اسے محدود کریں (بشمول ایک ریپو غیر منتخب کرنے) تاکہ صرف وہی ریپوز رہیں جن کے لیے یہ اسپیس ورک ٹریز بنائے
- تصدیق کریں
Control Center اسپیس کھولتا ہے اور پس منظر میں ہر منتخب ریپو کے لیے ایک copy-on-write ورک ٹری بنانا شروع کر دیتا ہے۔
پہلا پیغام بھیجیں
سیکشن کا عنوان “پہلا پیغام بھیجیں”کمپوزر میں اپنا پیغام ٹائپ کریں اور Enter دبائیں۔ ایجنٹ ڈسپیچ ہوتا ہے اور اپنا جواب اسٹریم کرنا شروع کر دیتا ہے۔
اگر اسپیس ابھی تیار ہو رہی ہو تو آپ کا پیغام ضائع ہونے کے بجائے پارک ہو جاتا ہے — کمپوزر اسے روکے رکھتا ہے اور ورک ٹریز تیار ہوتے ہی خود بخود بھیج دیتا ہے۔
جیسے جیسے ایجنٹ کام کرتا ہے، آپ اس کی باری اسٹریم ہوتی دیکھتے ہیں: استدلال کے حصے، ٹول کالز (فائل پڑھنا، لکھنا، shell کمانڈز) اور جوابی متن — سب ایک ہی agent-turn پیغام کے اندر۔
چلتے ہوئے ایجنٹ کو اسٹیر کریں
سیکشن کا عنوان “چلتے ہوئے ایجنٹ کو اسٹیر کریں”جب کوئی ایجنٹ کام کر رہا ہو تو عام گفتگویی متن نئی باری قطار میں نہیں ڈالتا۔ وہ کمپوزر کے اوپر والی پٹی میں قطار میں اسٹیرنگ کارڈ بن جاتا ہے اور اگلی باری کی حد پر لائیو رن میں انجیکٹ ہو جاتا ہے۔ کوئی ٹوسٹ نہیں آتا — کارڈ ہی فیڈبیک ہے۔
تین چیزیں اس برتاؤ کو بدلتی ہیں:
- جس پیغام میں @-ذکر ہو وہ ہمیشہ پیغام کے طور پر بھیجا جاتا ہے، کبھی اسٹیرنگ کے طور پر نہیں
- جو پیغام سلیش کمانڈ سے شروع ہو وہ ہمیشہ اُسی کمانڈ کے طور پر سنبھالا جاتا ہے
- منسلکہ والا پیغام ہمیشہ پیغام کے طور پر بھیجا جاتا ہے — اسٹیرنگ قطار صرف متن کی ہے
- اگر ہر لائیو رن پہلے ہی ختم ہو چکا ہو تو متن آگے گر کر ایک عام پیغام کے طور پر بھیج دیا جاتا ہے
بلاک شدہ کارروائی منظور کریں
سیکشن کا عنوان “بلاک شدہ کارروائی منظور کریں”جب کوئی ایجنٹ اُس کارروائی پر پہنچتا ہے جس پر اس کے گارڈریلز گیٹ لگاتے ہیں — کوئی
تباہ کن کمانڈ، کوئی مراعات یافتہ ٹول — تو سرور رن بلاک کر دیتا ہے اور ہر منسلک
کلائنٹ کو منظوری کی درخواست شائع کرتا ہے۔ اگر وہ گفتگو آپ کے پاس کھلی ہو تو درخواست
چیٹ میں، کمپوزر کے اوپر، اُسی نمبر شدہ آپشن کارڈ کے طور پر ظاہر ہوتی ہے جو
ask_user کے لیے استعمال ہوتا ہے (منع کریں، منظور کریں، اور اختیاری طور پر آٹھ گھنٹے
کے لیے منظور کریں)۔ کوئی چھوڑنے کا راستہ نہیں: بلاک شدہ ایجنٹ کسی فیصلے کا انتظار
کر رہا ہوتا ہے۔
اگر آپ ایپ میں کسی اور جگہ ہوں تو شیل میں ایک ہمیشہ اوپر رہنے والا پینل پھر بھی دکھاتا ہے کہ کیا منتظر ہے، تاکہ آپ اسپیس ڈھونڈنے کے جھنجھٹ کے بغیر ایجنٹ کو اَن بلاک کر سکیں۔ جس لمحے اُس اسپیس کی گفتگو اسکرین پر آتی ہے، اوورلے درخواست چھپا دیتا ہے، چنانچہ آپ ایک ہی پرامپٹ کا جواب دو بار نہیں دیتے۔
کوئی ٹائم آؤٹ نہیں: بلاک شدہ ایجنٹ اُس وقت تک انتظار کرتا ہے جب تک کوئی فیصلہ نہ کرے۔ وہی درخواست ان باکس کی توجہ پٹی میں اور فون کلائنٹ پر بھی ظاہر ہوتی ہے۔
ایجنٹ کے سوال کا جواب دیں
سیکشن کا عنوان “ایجنٹ کے سوال کا جواب دیں”کوئی ایجنٹ جسے کوئی ترجیح، کوئی گم شدہ ضرورت یا کوئی حقیقی دو راہا موڑ درکار ہو،
لازماً ask_user کال کرے۔ سوال کو چیٹ پیغام کے طور پر لکھنا باری ختم کر دیتا ہے
اور آپ کو دوبارہ پرامپٹ کرنا پڑتا ہے۔ یہ ٹول گفتگو میں ایک نمبر شدہ کارڈ دکھاتا ہے
— آپشنز، اختیاری آزاد متن، یا دونوں — اور رن آپ کے جواب پر انتظار کرتا ہے۔
کسی ایک آپشن کو بھیجنے کے لیے اس پر ٹیپ کریں (ہوور پر آخر والا نمبر ایک تیر بن جاتا
ہے)۔ ملٹی سلیکٹ اور ٹائپ کیے گئے جوابات جاری رکھیں (⌘↵ / Ctrl↵) استعمال کرتے
ہیں۔ چھوڑیں ایجنٹ کو بتاتا ہے کہ کوئی مناسب ڈیفالٹ چن لے اور دوبارہ نہ پوچھے۔
یہ اوپر والے منظوری کارڈ سے الگ میکانزم ہے: منظوری “کیا میں یہ کر سکتا ہوں؟” ہوتی ہے، اور سوال “آپ کی مراد ان میں سے کون سا تھا؟” ہوتا ہے۔ پوچھنا بلٹ اِن ہارنس پر ہر موڈ میں دستیاب ہے، بشمول صرف پڑھنے والے موڈز (یہ کچھ تبدیل نہیں کرتا)، اور اسے دانستہ طور پر منظوری پرامپٹ میں نہیں لپیٹا جاتا — ایک ڈائیلاگ کے سامنے دوسرا ڈائیلاگ، جب کوئی منظوری دینے والا منسلک نہ ہو، بند حالت میں ناکام ہو جائے گا۔ جس رن کے پاس دکھانے کو کوئی گفتگو ہی نہ ہو، اسے یہ ٹول ملتا ہی نہیں۔
ایجنٹ روکیں
سیکشن کا عنوان “ایجنٹ روکیں”جب رنز لائیو ہوں تو کمپوزر کا بھیجنے والا بٹن روکیں بٹن بن جاتا ہے۔ کمپوزر صاف کریں اور اسے دبائیں — یہ اُس گفتگو میں چل رہے ہر ایجنٹ کو روک دیتا ہے۔
اسپیس ہیڈر میں کوئی اسٹاپ کنٹرول نہیں اور اس کے لیے کوئی کی بورڈ شارٹ کٹ بھی نہیں۔ جب کئی رنز لائیو ہوں اور صرف ایک روکنا ہو تو اُس رن کا activity ٹیب کھولیں — اس کے ہیڈر میں رن تک محدود pause/resume اور اسٹاپ ہوتا ہے (اسٹاپ آپ سے تصدیق مانگتا ہے)۔ آبزرویبلٹی → لائیو ورک اسپیس میں چل رہے ہر ایجنٹ کو اُسی کنٹرول کے ساتھ فہرست کرتا ہے۔
جو رن روک دیا جائے اُس پر روکے جانے کا نشان لگ جاتا ہے۔ دوبارہ ڈسپیچ کرنے کے لیے نیا پیغام بھیجیں۔
سلیش کمانڈز استعمال کریں
سیکشن کا عنوان “سلیش کمانڈز استعمال کریں”کمانڈ فہرست دیکھنے کے لیے کمپوزر میں / ٹائپ کریں۔ وہ کمانڈز جو گفتگو کے برتاؤ کو
بدلتی ہیں:
| کمانڈ | یہ کیا کرتی ہے |
|---|---|
/plan |
اسپیس کو پلان موڈ میں بدل دیتی ہے۔ اکیلا /plan صرف موڈ تیار کرتا ہے؛ /plan <request> اسے تیار کر کے باقی حصہ آپ کے پیغام کے طور پر بھیج دیتا ہے |
/goal <text> |
گفتگو کا جاری کام کا ہدف ریکارڈ کرتی ہے |
/loop <text> |
کسی کام پر اُس کے مکمل ہونے تک تکرار کرتی ہے |
/compact |
پرانی تاریخ کو ایک اینکر شدہ خلاصے میں سمیٹ کر کمپیکٹ شدہ کانٹیکسٹ پر جاری رکھتی ہے |
/todo … |
اِس گفتگو کی محفوظ todo فہرست دیکھتی اور ترمیم کرتی ہے |
مہارتیں اسی فہرست میں اپنے skill: نام فضا کے تحت ظاہر ہوتی ہیں، چنانچہ وہ اوپر کی
کمانڈز سے کبھی نہیں ٹکراتیں — plan یا compact نامی مہارت قابلِ رسائی رہتی ہے:
| کمانڈ | یہ کیا چلاتی ہے |
|---|---|
/skill:<name> |
ورک اسپیس میں انسٹال شدہ، یا ایجنٹ کے ساتھ منسلک ایک مہارت |
/skill:<repo>:<name> |
اِس اسپیس میں چیک آؤٹ شدہ ریپوز میں سے کسی ایک کی بھیجی ہوئی مہارت |
ریپو کی مہارتوں پر وہ ریپو بیج لگا ہوتا ہے جہاں سے وہ آئیں، کیونکہ اکیلے نام سے یہ
ظاہر نہیں ہوتا کہ وہ کس سروس کے معاہدوں کو مجسم کرتی ہیں اور دو ریپوز میں سے ہر ایک
testing بھیج سکتا ہے۔ کسی مہارت کو ڈھونڈنے کے لیے prefix ٹائپ کرنا ضروری نہیں: خالی
مہارت کا نام ٹائپ کرنے سے نام فضا والی اندراجات بھی مماثل ہوتی ہیں۔
ایجنٹ کے پاس کبھی صرف اُسی ریپو کی مہارتیں ہوتی ہیں جس میں وہ اس وقت کام کر رہا ہو — ریپو تک محدود مہارتیں دیکھیں۔ کمپوزر اُس طرح محدود نہیں: آپ نام لے کر کسی بھی ریپو کی مہارت استعمال کر سکتے ہیں۔
/compact اور /todo کو کلائنٹ روک لیتا ہے اور وہ کبھی پیغامات کے طور پر محفوظ نہیں
ہوتے — ٹرانسکرپٹ میں /compact کی ایک سطر اگلی کمپیکشن کے کٹ کو ایک باری پیچھے دھکیل
دے گی۔ /plan متن کے طور پر سفر کرنے کے بجائے اسپیس کا محفوظ موڈ پلٹ دیتا ہے۔ چنانچہ
تینوں میں سے کوئی بھی “وہ پیغام جو آپ ایجنٹ کو بھیجتے ہیں” نہیں ہے؛ تاریخ میں انہیں
دیکھنے کی توقع نہ رکھیں۔
پہلے پلان طلب کریں
سیکشن کا عنوان “پہلے پلان طلب کریں”کسی پیچیدہ تبدیلی سے پہلے اسپیس کو /plan، کمپوزر ٹول بار کے موڈ ڈراپ ڈاؤن، یا
Shift+Tab سے پلان موڈ میں بدلیں۔ پھر ایجنٹ صرف پڑھتے ہوئے تحقیق کرتا ہے اور ایک ٹائپ
شدہ پلان پیش کرتا ہے جسے آپ کام شروع ہونے سے پہلے منظور کرتے ہیں۔
پلان موڈ استعمال کریں دیکھیں۔
مخصوص اسپیس کے بغیر ایجنٹ تک پہنچیں
سیکشن کا عنوان “مخصوص اسپیس کے بغیر ایجنٹ تک پہنچیں”آپ کو ہر ایجنٹ کے لیے الگ اسپیس کی ضرورت نہیں۔ کسی بھی اسپیس میں:
@alice can you look at the failing tests in src/auth_test.dart?ذکر کردہ ایجنٹ اسپیس میں شامل کر دیا جاتا ہے اور اُس اسپیس کے کانٹیکسٹ کے ساتھ ڈسپیچ کیا جاتا ہے۔ نام کیسے مماثل کیے جاتے ہیں یہ جاننے کے لیے ایجنٹس کا @-ذکر دیکھیں۔
متعلقہ گائیڈز
سیکشن کا عنوان “متعلقہ گائیڈز”- اسپیسز استعمال کریں
- ایجنٹس کا @-ذکر
- پلان موڈ استعمال کریں
- Slack انضمام سیٹ کریں تاکہ یہی کام Slack سے بھی کریں