AI ایجنٹس کے ساتھ کوڈنگ: زیادہ پیداواری صلاحیت بمقابلہ کوڈ کا معیار
AI ایجنٹس تیزی سے کوڈ لکھتے ہیں۔ مسئلہ یہ نہیں ہے کہ وہ کتنی تیزی سے لکھتے ہیں، بلکہ مسئلہ یہ ہے کہ کوڈ کو صاف ستھرا اور مستقل مزاج کیسے رکھا جائے۔
میں نے اسے Project Venom پر آزمایا۔ میں دیکھنا چاہتا تھا کہ کیا آپ معیار کو متاثر کیے بغیر رفتار کے لیے AI ایجنٹس کا استعمال کر سکتے ہیں۔
نتائج: • AI ایجنٹس کے ذریعے لکھی گئی 138,011 لائنیں کوڈ • 1,587 کمٹس • 92.2% ٹیسٹ کوریج • SonarQube میں 0 کوالٹی مسائل (1,650 مسائل سے آغاز کیا تھا)
میں نے یہ کیسے کیا؟ میں نے ایک پائپ لائن بنائی۔ AI کوڈ لکھتا ہے، لیکن یہ عمل فیصلہ کرتا ہے کہ کوڈ برقرار رہے گا یا نہیں۔
ورک فلو ان مراحل پر مشتمل ہے:
- انسان مقصد اور دائرہ کار (scope) کا تعین کرتا ہے۔
- AI ایجنٹ تبدیلی کی منصوبہ بندی اور عمل درآمد کرتا ہے۔
- لوکل پری-کمٹ چیکس اسٹیٹک ویلیڈیشن اور ٹیسٹ چلاتے ہیں۔
- GitHub Actions CI (لنٹنگ، کنٹریکٹ چیکس، اور آرکیٹیکچر گارڈز) چلاتا ہے۔
- SonarQube ٹیکنیکل ڈیٹ اور پیچیدگی کی جانچ کرتا ہے۔
- AI ایجنٹس اور ایک انسان پل ریکوسٹ (Pull Request) کا جائزہ لیتے ہیں۔
- مرج (Merge)۔
اس عمل کے تین مراحل ہیں۔
مرحلہ 1: رفتار۔ AI ایجنٹس کوڈ اور یونٹ ٹیسٹ تیار کرتے ہیں۔ اس سے پروجیکٹ تیزی سے پھیلتا ہے۔
مرحلہ 2: کنٹرول۔ میں نے SonarQube شامل کیا۔ اس نے 1,650 مسائل تلاش کیے۔ پھر میں نے لوکل پری-کمٹ گیٹس بنائے۔ AI ایجنٹس کوئی کام مکمل نہیں کر سکتے تھے جب تک کہ وہ ان گیٹس سے نہ گزر جائیں۔
مرحلہ 3: استحکام۔ پائپ لائن روزمرہ کے کام کا حصہ بن گئی۔ کوالٹی کوئی آخری چیک نہیں تھی، بلکہ یہ ایک مسلسل ضرورت بن گئی۔
آپ کی ٹیم کے لیے اہم سبق: یہ پوچھنا بند کریں کہ کون سا AI ایجنٹ بہترین ہے۔ بہترین ایجنٹ ہر ہفتے بدل جاتا ہے۔
اس کے بجائے یہ پوچھیں: ہم ایسا عمل کیسے بنائیں جو محفوظ طریقے سے AI کوڈ کو قبول کرے؟
آپ کو ٹولز کے ایک کم از کم سیٹ کی ضرورت ہے:
- GitHub ریپوزٹری اور پل ریکوسٹس (Pull Requests)
- پری-کمٹ ہکس (Pre-commit hooks)
- یونٹ ٹیسٹ
- GitHub Actions
- SonarQube یا SonarCloud
- اپنے ایجنٹس کے لیے واضح ہدایات
- انسانی اور AI ریویو
پائپ لائن کے بغیر AI کوڈنگ محض ایک تجربہ ہے۔ پائپ لائن کے ساتھ AI کوڈنگ ایک پیشہ ورانہ عمل ہے۔
ایجنٹ کوڈ لکھتا ہے۔ پائپ لائن پروجیکٹ کی حفاظت کرتی ہے۔
آپ AI ایجنٹس کے ساتھ کیسے کام کرتے ہیں؟ کیا آپ انہیں محض اسسٹنٹ کے طور پر استعمال کرتے ہیں، یا آپ کے عمل میں ان کے اپنے گیٹس اور ہدایات موجود ہیں؟
Optional learning community: https://t.me/GyaanSetuAi
