গুগল অ্যান্টিগ্র্যাভিটি দিয়ে শুরু করা

১. ভূমিকা

এই কোডল্যাবে, আপনি গুগল অ্যান্টিগ্র্যাভিটি (এই ডকুমেন্টের বাকি অংশে যা অ্যান্টিগ্র্যাভিটি নামে পরিচিত) সম্পর্কে জানতে পারবেন, যা একটি এজেন্টিক ডেভেলপমেন্ট প্ল্যাটফর্ম এবং এটি IDE-কে এজেন্ট-ফার্স্ট যুগে রূপান্তরিত করছে।

সাধারণ কোডিং অ্যাসিস্ট্যান্টগুলো শুধু লাইন অটোকমপ্লিট করে, কিন্তু অ্যান্টিগ্র্যাভিটি একটি "মিশন কন্ট্রোল" প্রদান করে যা স্বয়ংক্রিয় এজেন্টদের পরিচালনা করে। এই এজেন্টরা আপনাকে নির্মাণে সাহায্য করার জন্য পরিকল্পনা করতে, কোড লিখতে এবং এমনকি ওয়েব ব্রাউজও করতে পারে।

অ্যান্টিগ্র্যাভিটি একটি এজেন্ট-ফার্স্ট প্ল্যাটফর্ম হিসেবে ডিজাইন করা হয়েছে। এটি এই ধারণা দেয় যে, এআই শুধুমাত্র কোড লেখার একটি টুল নয়, বরং এটি একটি স্বায়ত্তশাসিত সত্তা যা ন্যূনতম মানবিক হস্তক্ষেপে জটিল প্রকৌশল কাজ পরিকল্পনা, সম্পাদন, যাচাই এবং পুনরাবৃত্তি করতে সক্ষম।

আপনি যা শিখবেন

  • অ্যান্টিগ্র্যাভিটি ইনস্টল ও কনফিগার করা হচ্ছে।
  • অ্যান্টিগ্র্যাভিটির এজেন্ট ম্যানেজার, এডিটর, ব্রাউজার ইত্যাদির মতো মূল ধারণাগুলো অন্বেষণ করা হচ্ছে।
  • নিরাপত্তাজনিত বিষয়গুলো মাথায় রেখে আপনার নিজস্ব নিয়ম ও কর্মপ্রবাহ দিয়ে অ্যান্টিগ্র্যাভিটি কাস্টমাইজ করুন।

আপনার যা যা লাগবে

বর্তমানে অ্যান্টিগ্র্যাভিটি ব্যক্তিগত জিমেইল অ্যাকাউন্টের জন্য প্রিভিউ হিসেবে উপলব্ধ। এর সাথে প্রিমিয়ার মডেলগুলো ব্যবহারের জন্য একটি বিনামূল্যে কোটা রয়েছে।

অ্যান্টিগ্র্যাভিটি আপনার সিস্টেমে স্থানীয়ভাবে ইনস্টল করতে হবে। এই প্রোডাক্টটি ম্যাক, উইন্ডোজ এবং নির্দিষ্ট লিনাক্স ডিস্ট্রিবিউশনে পাওয়া যায়। আপনার নিজের মেশিন ছাড়াও, নিম্নলিখিত জিনিসগুলির প্রয়োজন হবে:

  • ক্রোম ওয়েব ব্রাউজার।
  • একটি জিমেইল অ্যাকাউন্ট (ব্যক্তিগত জিমেইল অ্যাকাউন্ট)।

এই কোডল্যাবটি সকল স্তরের (শিক্ষানবিশ সহ) ব্যবহারকারী এবং ডেভেলপারদের জন্য ডিজাইন করা হয়েছে।

সমস্যা রিপোর্ট করা

কোডল্যাব এবং অ্যান্টিগ্র্যাভিটি নিয়ে কাজ করার সময় আপনি সমস্যার সম্মুখীন হতে পারেন।

কোডল্যাব সম্পর্কিত সমস্যার (বানান ভুল, ভুল নির্দেশনা) জন্য, অনুগ্রহ করে এই কোডল্যাবের নিচের বাম কোণে থাকা Report a mistake বোতামটি ব্যবহার করে একটি বাগ রিপোর্ট করুন:

b06b582bcd847f6d.png

Antigravity সম্পর্কিত বাগ বা ফিচার অনুরোধের জন্য, অনুগ্রহ করে Antigravity-এর মধ্যেই সমস্যাটি রিপোর্ট করুন। আপনি Agent Manager-এর নীচের বাম কোণে থাকা Provide Feedback লিঙ্কের মাধ্যমে এটি করতে পারেন:

281ac826fb44d427.png

আপনি আপনার প্রোফাইল আইকনের নিচে থাকা Report Issue লিঙ্কের মাধ্যমেও এডিটরে যেতে পারেন:

e8afd782a8f92129.png

২. স্থাপন

আপনার যদি আগে থেকে Antigravity ইনস্টল করা না থাকে, তাহলে চলুন Antigravity ইনস্টল করা দিয়ে শুরু করা যাক। বর্তমানে পণ্যটি প্রিভিউয়ের জন্য উপলব্ধ এবং আপনি আপনার ব্যক্তিগত Gmail অ্যাকাউন্ট ব্যবহার করে এটি দিয়ে কাজ শুরু করতে পারেন।

ডাউনলোড পেজে যান এবং আপনার ক্ষেত্রে প্রযোজ্য উপযুক্ত অপারেটিং সিস্টেম সংস্করণে ক্লিক করুন। অ্যাপ্লিকেশন ইনস্টলারটি চালু করুন এবং আপনার মেশিনে এটি ইনস্টল করুন। ইনস্টলেশন সম্পন্ন হলে, অ্যান্টিগ্র্যাভিটি অ্যাপ্লিকেশনটি চালু করুন। আপনি নিম্নলিখিত স্ক্রিনের মতো একটি স্ক্রিন দেখতে পাবেন:

29fada39721093c.png

অনুগ্রহ করে প্রতিবার Next এ ক্লিক করে এগিয়ে যান। মূল ধাপগুলো নিচে বিস্তারিতভাবে দেওয়া হলো:

  • সেটআপ ফ্লো বেছে নিন: এটি আপনাকে আপনার বিদ্যমান ভিএস কোড বা কার্সার সেটিংস থেকে ইম্পোর্ট করার অপশন দেবে। আমরা নতুন করে শুরু করব।
  • একটি এডিটর থিম টাইপ বেছে নিন : আমরা ডার্ক থিমটি ব্যবহার করব, তবে সিদ্ধান্তটি সম্পূর্ণ আপনার উপর নির্ভর করে।
  • আপনি অ্যান্টিগ্র্যাভিটি এজেন্টটি কীভাবে ব্যবহার করতে চান?

7ca55560ec377130.png

চলুন বিষয়টি আরেকটু বিস্তারিতভাবে বোঝা যাক। মনে রাখবেন যে, Antigravity User Settings (Linux/Windows: Ctrl + , Mac: Cmd + , ) এর মাধ্যমে যেকোনো সময় সেটিংস পরিবর্তন করা যায়।

বিকল্পগুলো নিয়ে বিস্তারিত আলোচনার আগে, চলুন কিছু নির্দিষ্ট বৈশিষ্ট্য দেখে নেওয়া যাক (যা আপনি ডায়ালগের ডানদিকে দেখতে পাচ্ছেন)।

টার্মিনাল এক্সিকিউশন পলিসি

এর মাধ্যমে এজেন্টকে আপনার টার্মিনালে কমান্ড (অ্যাপ্লিকেশন/টুল) চালানোর ক্ষমতা দেওয়া হয়:

  • সর্বদা এগিয়ে যান: টার্মিনাল কমান্ডগুলো সর্বদা স্বয়ংক্রিয়ভাবে কার্যকর করুন (কনফিগারযোগ্য ডিনাই লিস্টে থাকা কমান্ডগুলো ছাড়া)।
  • পর্যালোচনার অনুরোধ: টার্মিনাল কমান্ড কার্যকর করার আগে ব্যবহারকারীর পর্যালোচনা ও অনুমোদনের জন্য অনুরোধ করুন।

নীতি পর্যালোচনা করুন

এজেন্ট তার কাজ করার সময় বিভিন্ন নথি (যেমন টাস্ক প্ল্যান, ইমপ্লিমেন্টেশন প্ল্যান ইত্যাদি) তৈরি করে। রিভিউ পলিসি এমনভাবে সেট করা থাকে, যাতে আপনি নির্ধারণ করতে পারেন যে এটি রিভিউ করার প্রয়োজন আছে কি না, সেই সিদ্ধান্ত কে নেবে। আপনি কি সবসময় এটি রিভিউ করবেন, নাকি এজেন্টকেই এই সিদ্ধান্ত নিতে দেবেন। সেই অনুযায়ী, এখানেও তিনটি বিকল্প রয়েছে।

  • সর্বদা এগিয়ে যান: এজেন্ট কখনো পর্যালোচনার জন্য জিজ্ঞাসা করে না।
  • এজেন্টের সিদ্ধান্ত: এজেন্টই সিদ্ধান্ত নেবেন কখন পর্যালোচনার জন্য অনুরোধ করতে হবে।
  • পর্যালোচনার অনুরোধ: এজেন্ট সর্বদা পর্যালোচনার জন্য অনুরোধ করেন।

জাভাস্ক্রিপ্ট এক্সিকিউশন পলিসি

সক্রিয় করা হলে, এজেন্ট ব্রাউজার টুল ব্যবহার করে ইউআরএল খুলতে, ওয়েব পেজ পড়তে এবং ব্রাউজারের বিষয়বস্তুর সাথে ইন্টারঅ্যাক্ট করতে পারে। এই পলিসিটি নিয়ন্ত্রণ করে যে ব্রাউজারে জাভাস্ক্রিপ্ট কীভাবে এক্সিকিউট হবে।

  • সর্বদা এগিয়ে যান: এজেন্ট ব্রাউজারে জাভাস্ক্রিপ্ট চালানোর জন্য অনুমতি চাইতে থামবে না। এটি এজেন্টকে ব্রাউজারে জটিল কাজ ও যাচাইকরণ সম্পাদনের জন্য সর্বোচ্চ স্বায়ত্তশাসন প্রদান করে, কিন্তু এর ফলে নিরাপত্তা ঝুঁকির ঝুঁকিও সবচেয়ে বেশি থাকে।
  • অনুরোধ পর্যালোচনা: ব্রাউজারে জাভাস্ক্রিপ্ট কোড চালানোর অনুমতি চাওয়ার জন্য এজেন্ট সর্বদা থামবে।
  • নিষ্ক্রিয়: এজেন্ট ব্রাউজারে কখনো জাভাস্ক্রিপ্ট কোড চালাবে না।

এখন যেহেতু আমরা বিভিন্ন পলিসি সম্পর্কে বুঝেছি, বাম দিকের ৪টি অপশন হলো টার্মিনাল এক্সিকিউশন, রিভিউ এবং জাভাস্ক্রিপ্ট এক্সিকিউশন পলিসির জন্য নির্দিষ্ট সেটিংস; এর মধ্যে ৩টির জন্য এই সেটিংসগুলো রয়েছে এবং একটি চতুর্থ অপশন আছে যেখানে আমরা এটিকে সম্পূর্ণরূপে কাস্টমাইজ করে নিয়ন্ত্রণ করতে পারি। এই ৪টি অপশন রয়েছে যাতে আমরা বেছে নিতে পারি যে, কাজটি নিয়ে এগিয়ে যাওয়ার আগে টার্মিনালে কমান্ড এক্সিকিউট করতে এবং আর্টিফ্যাক্টগুলো রিভিউ করিয়ে নিতে এজেন্টকে কতটা স্বায়ত্তশাসন দেওয়া হবে।

এই ৪টি বিকল্প হলো:

  • সিকিউর মোড : সিকিউর মোড এজেন্টের জন্য উন্নত নিরাপত্তা নিয়ন্ত্রণ প্রদান করে, যার মাধ্যমে আপনি বাহ্যিক রিসোর্স এবং সংবেদনশীল কার্যক্রমে এর প্রবেশাধিকার সীমিত করতে পারেন। যখন সিকিউর মোড সক্রিয় করা হয়, তখন আপনার পরিবেশকে সুরক্ষিত রাখতে বেশ কিছু নিরাপত্তা ব্যবস্থা প্রয়োগ করা হয়।
  • পর্যালোচনা-ভিত্তিক উন্নয়ন (প্রস্তাবিত) : এজেন্ট ঘন ঘন পর্যালোচনার জন্য অনুরোধ করবেন।
  • এজেন্ট-চালিত উন্নয়ন : এজেন্ট কখনো পর্যালোচনার জন্য অনুরোধ করবে না।
  • কাস্টম কনফিগারেশন

পর্যালোচনা-ভিত্তিক উন্নয়ন বিকল্পটি একটি ভালো ভারসাম্য এবং এটিই সুপারিশকৃত, কারণ এটি এজেন্টকে কোনো সিদ্ধান্ত নিয়ে অনুমোদনের জন্য ব্যবহারকারীর কাছে ফিরে আসার সুযোগ দেয়।

এরপরে রয়েছে আপনার এডিটর সেটিংস কনফিগার করার পৃষ্ঠা, যেখানে আপনি নিম্নলিখিত বিষয়গুলির জন্য আপনার পছন্দগুলি বেছে নিতে পারেন:

  • কী-বাইন্ডিং: আপনি আপনার কী-বাইন্ডিং কনফিগার করতে পারেন।
  • এক্সটেনশন: আপনি জনপ্রিয় ভাষা এবং অন্যান্য প্রস্তাবিত এক্সটেনশন ইনস্টল করতে পারেন।
  • কমান্ড লাইন: আপনি agy ব্যবহার করে অ্যান্টিগ্র্যাভিটি খোলার জন্য কমান্ড লাইন টুলটি ইনস্টল করতে পারেন।

এখন, আপনি গুগলে সাইন ইন করার জন্য প্রস্তুত। আগেই যেমন বলা হয়েছে, অ্যান্টিগ্র্যাভিটি প্রিভিউ মোডে উপলব্ধ এবং আপনার একটি ব্যক্তিগত জিমেইল অ্যাকাউন্ট থাকলে এটি বিনামূল্যে ব্যবহার করা যায়। এখনই আপনার অ্যাকাউন্ট দিয়ে সাইন ইন করুন। এটি ব্রাউজারটি খুলে দেবে, যার মাধ্যমে আপনি সাইন ইন করতে পারবেন। সফলভাবে প্রমাণীকরণ সম্পন্ন হলে, আপনি নিচেরটির মতো একটি বার্তা দেখতে পাবেন এবং এটি আপনাকে অ্যান্টিগ্র্যাভিটি অ্যাপ্লিকেশনে ফিরিয়ে নিয়ে যাবে। প্রক্রিয়াটি অনুসরণ করুন।

সবশেষে, ব্যবহারের শর্তাবলী । আপনি এতে অংশগ্রহণ করতে চান কি না, সে বিষয়ে সিদ্ধান্ত নিয়ে ' Next বাটনে ক্লিক করুন।

এটি আপনাকে সেই চূড়ান্ত মুহূর্তে নিয়ে যাবে, যেখানে অ্যান্টিগ্র্যাভিটি আপনার সাথে কাজ করার জন্য অপেক্ষা করবে।

৩. এজেন্ট ম্যানেজার

আমরা শুরু করতে প্রস্তুত!

অ্যান্টিগ্র্যাভিটি ওপেন-সোর্স ভিজ্যুয়াল স্টুডিও কোড (ভিএস কোড)-এর ভিত্তিকে ফর্ক করে, কিন্তু টেক্সট এডিটিংয়ের চেয়ে এজেন্ট ম্যানেজমেন্টকে অগ্রাধিকার দিতে ইউজার এক্সপেরিয়েন্সে আমূল পরিবর্তন আনে। এর ইন্টারফেসটি দুটি স্বতন্ত্র প্রধান উইন্ডোতে বিভক্ত: Editor এবং Agent Manager । কাজের এই বিভাজনটি ব্যক্তিগত অবদান এবং ইঞ্জিনিয়ারিং ম্যানেজমেন্টের মধ্যকার পার্থক্যকে প্রতিফলিত করে।

এজেন্ট ম্যানেজার: মিশন কন্ট্রোল

অ্যান্টিগ্র্যাভিটি চালু করার পর, ব্যবহারকারীকে সাধারণত একটি ফাইল ট্রি-এর পরিবর্তে এজেন্ট ম্যানেজার স্বাগত জানায়, যেমনটি নিচে দেখানো হয়েছে:

d5ae91fc746e1bba.png

এই ইন্টারফেসটি একটি Mission Control ড্যাশবোর্ড হিসেবে কাজ করে। এটি উচ্চ-স্তরের অর্কেস্ট্রেশনের জন্য ডিজাইন করা হয়েছে, যা ডেভেলপারদের বিভিন্ন ওয়ার্কস্পেস বা টাস্ক জুড়ে অ্যাসিঙ্ক্রোনাসভাবে পরিচালিত একাধিক এজেন্টকে স্পন করতে, মনিটর করতে এবং তাদের সাথে ইন্টারঅ্যাক্ট করতে সক্ষম করে।

এই দৃষ্টিকোণ থেকে, ডেভেলপার একজন স্থপতির ভূমিকা পালন করেন। তাঁরা উচ্চ-স্তরের উদ্দেশ্যসমূহ নির্ধারণ করেন, যেমন:

  • প্রমাণীকরণ মডিউলটি পুনর্গঠন করুন
  • নির্ভরতা ট্রি আপডেট করুন
  • বিলিং এপিআই-এর জন্য একটি টেস্ট স্যুট তৈরি করুন।

উপরের ডায়াগ্রামটি যেমন নির্দেশ করে, এই অনুরোধগুলোর প্রত্যেকটি একটি করে ডেডিকেটেড এজেন্ট ইনস্ট্যান্স তৈরি করে। ইউআই (UI) এই সমান্তরাল কর্মপ্রবাহগুলোর একটি ভিজ্যুয়ালাইজেশন প্রদান করে, যেখানে প্রতিটি এজেন্টের স্ট্যাটাস, তাদের তৈরি করা আর্টিফ্যাক্টগুলো (প্ল্যান, রেজাল্ট, ডিফস) এবং মানুষের অনুমোদনের জন্য অপেক্ষাধীন কোনো অনুরোধ প্রদর্শিত হয়।

এই আর্কিটেকচারটি পূর্ববর্তী IDE-গুলোর একটি প্রধান সীমাবদ্ধতা দূর করে, যেগুলোর অভিজ্ঞতা ছিল মূলত রৈখিক এবং সিঙ্ক্রোনাস। একটি প্রচলিত চ্যাট ইন্টারফেসে, পরবর্তী প্রশ্ন করার আগে ডেভেলপারকে AI-এর কোড তৈরি করা শেষ হওয়ার জন্য অপেক্ষা করতে হয়। Antigravity-এর ম্যানেজার ভিউতে, একজন ডেভেলপার একই সাথে পাঁচটি ভিন্ন বাগের উপর কাজ করার জন্য পাঁচটি ভিন্ন এজেন্টকে পাঠাতে পারেন, যা কার্যকরভাবে তাদের কার্যক্ষমতা বহুগুণে বাড়িয়ে দেয়।

উপরে থাকা Next এ ক্লিক করলে একটি ওয়ার্কস্পেস খোলার বিকল্প পাবেন।

ec72712ea24bf6d5.png

ভিএস কোড (VS Code) থেকে আপনি যে ওয়ার্কস্পেসটি জানতেন, সেভাবেই ভাবুন, তাহলেই আপনার কাজ হয়ে যাবে। সুতরাং, আমরা বোতামে ক্লিক করে এবং তারপর শুরু করার জন্য একটি ফোল্ডার নির্বাচন করে একটি স্থানীয় ফোল্ডার খুলতে পারি। আমার ক্ষেত্রে, আমার হোম ফোল্ডারে my-agy-projects নামের একটি ফোল্ডার ছিল এবং আমি সেটিই নির্বাচন করেছি। আপনি সম্পূর্ণ ভিন্ন একটি ফোল্ডারও ব্যবহার করতে পারেন। মনে রাখবেন, আপনি চাইলে এই ধাপটি পুরোপুরি এড়িয়ে যেতে পারেন এবং পরেও যেকোনো সময় একটি ওয়ার্কস্পেস খুলতে পারেন।

এই ধাপটি সম্পন্ন করলে আপনি এজেন্ট ম্যানেজার উইন্ডোতে প্রবেশ করবেন, যা নিচে দেখানো হলো:

156224e223eeda36.png

আপনি লক্ষ্য করবেন যে অ্যাপ্লিকেশনটি নির্বাচিত ওয়ার্কস্পেস ফোল্ডারে ( my-agy-projects ) অবিলম্বে একটি নতুন আলোচনা শুরু করার জন্য প্রস্তুত। আপনি অন্যান্য এআই অ্যাপ্লিকেশন (কার্সর, জেমিনি সিএলআই) নিয়ে কাজ করার আপনার বিদ্যমান জ্ঞান ব্যবহার করতে পারেন এবং প্রম্পট করার সময় অতিরিক্ত প্রাসঙ্গিক তথ্য অন্তর্ভুক্ত করার জন্য @ এবং অন্যান্য উপায় ব্যবহার করতে পারেন।

Planning এবং Model Selection উভয় ড্রপডাউনই দেখুন। মডেল সিলেকশন ড্রপডাউনটি আপনাকে এই মুহূর্তে উপলব্ধ মডেলগুলোর মধ্য থেকে আপনার এজেন্টের ব্যবহারের জন্য একটি মডেল বেছে নেওয়ার সুযোগ দেয়। তালিকাটি নিচে দেখানো হলো:

fb0744dc43911365.png

একইভাবে, আমরা দেখতে পাই যে এজেন্টটি ডিফল্ট Planning মোডে থাকবে। কিন্তু আমরা Fast মোডও বেছে নিতে পারি।

f403e40ad480efc9.png

চলুন দেখি এই বিষয়ে ডকুমেন্টেশনে কী বলা আছে:

  • Planning : একজন এজেন্ট কাজ সম্পাদন করার আগে পরিকল্পনা করতে পারে। গভীর গবেষণা, জটিল কাজ বা সহযোগিতামূলক কাজের জন্য এটি ব্যবহার করুন। এই মোডে, এজেন্ট তার কাজকে টাস্ক গ্রুপে ভাগ করে, আর্টিফ্যাক্ট তৈরি করে এবং সর্বোত্তম গুণমান নিশ্চিত করার জন্য তার কাজ পুঙ্খানুপুঙ্খভাবে গবেষণা, চিন্তাভাবনা ও পরিকল্পনা করতে অন্যান্য পদক্ষেপ গ্রহণ করে। এখানে আপনি আরও অনেক বেশি আউটপুট দেখতে পাবেন।
  • Fast : একজন এজেন্ট সরাসরি কাজগুলো সম্পাদন করবে। এটি এমন সহজ কাজগুলোর জন্য ব্যবহার করুন যা দ্রুত সম্পন্ন করা যায়, যেমন ভেরিয়েবলের নাম পরিবর্তন করা, কয়েকটি ব্যাশ কমান্ড চালানো, বা অন্যান্য ছোট ও স্থানীয় কাজ। এটি তখন সহায়ক হয় যখন গতি একটি গুরুত্বপূর্ণ বিষয় এবং কাজটি এতটাই সহজ যে এর মান খারাপ হওয়ার আশঙ্কা কম থাকে।

আপনি যদি এজেন্টদের মধ্যে থিঙ্কিং বাজেট এবং এই জাতীয় পরিভাষাগুলির সাথে পরিচিত হন, তবে এটিকে এজেন্টের চিন্তাভাবনা নিয়ন্ত্রণ করার ক্ষমতা হিসাবে ভাবুন, যার ফলে থিঙ্কিং বাজেটের উপর সরাসরি প্রভাব পড়ে। আমরা আপাতত ডিফল্ট সেটিংস ব্যবহার করব, তবে মনে রাখবেন যে লঞ্চের সময়, জেমিনি ৩ প্রো মডেলটি সকলের জন্য সীমিত কোটা অনুযায়ী উপলব্ধ থাকবে, তাই জেমিনি ৩ ব্যবহারের জন্য আপনার বিনামূল্যের কোটা শেষ হয়ে গেলে উপযুক্ত বার্তা পাওয়ার আশা করতে পারেন।

চলুন এখন এখানকার এজেন্ট ম্যানেজার (উইন্ডো)-এর উপর কিছুটা সময় ব্যয় করি এবং কয়েকটি বিষয় বুঝে নিই, যাতে এর মৌলিক উপাদানগুলো, অ্যান্টিগ্র্যাভিটিতে কীভাবে নেভিগেট করতে হয় এবং আরও অনেক কিছু সম্পর্কে ধারণা পরিষ্কার হয়ে যায়। এজেন্ট ম্যানেজার উইন্ডোটি নিচে দেওয়া হলো:

eaba0c6ee17369e2.png

অনুগ্রহ করে সংখ্যাগুলোসহ উপরের চিত্রটি দেখুন:

  1. Start Conversation : নতুন কথোপকথন শুরু করতে এখানে ক্লিক করুন। এটি আপনাকে সরাসরি সেই ইনপুটে নিয়ে যাবে যেখানে ' Ask anything ' লেখা আছে।
  2. Workspaces : আমরা ওয়ার্কস্পেস সম্পর্কে উল্লেখ করেছি এবং এও বলেছি যে আপনি আপনার পছন্দমতো যেকোনো ওয়ার্কস্পেসে কাজ করতে পারেন। আপনি যেকোনো সময় আরও ওয়ার্কস্পেস যোগ করতে পারেন এবং কথোপকথন শুরু করার সময় যেকোনো ওয়ার্কস্পেস নির্বাচন করতে পারেন।
  3. Editor View : আপনি যেকোনো সময় এডিটর ভিউতে যেতে পারেন। এখানে আপনার ওয়ার্কস্পেস ফোল্ডার এবং তৈরি হওয়া ফাইলগুলো দেখা যাবে। আপনি সেখানে সরাসরি ফাইলগুলো সম্পাদনা করতে পারেন, অথবা এডিটরে ইনলাইন নির্দেশনা বা কমান্ডও দিতে পারেন, যাতে এজেন্ট আপনার পরিবর্তিত সুপারিশ/নির্দেশনা অনুযায়ী কিছু করতে বা পরিবর্তন করতে পারে। আমরা পরবর্তী একটি অংশে এডিটর ভিউ নিয়ে বিস্তারিত আলোচনা করব।

৪. অ্যান্টিগ্র্যাভিটি ব্রাউজার

ডকুমেন্টেশন অনুসারে, এজেন্ট যখন ব্রাউজারের সাথে যোগাযোগ করতে চায়, তখন এটি নির্দিষ্ট কাজটি সম্পন্ন করার জন্য একটি ব্রাউজার সাবএজেন্টকে আহ্বান করে। ব্রাউজার সাবএজেন্টটি অ্যান্টিগ্র্যাভিটি-পরিচালিত ব্রাউজারে খোলা পেজগুলোতে কাজ করার জন্য বিশেষায়িত একটি মডেল চালায়, যা আপনার মূল এজেন্টের জন্য নির্বাচিত মডেল থেকে ভিন্ন।

এই সাবএজেন্টটির কাছে আপনার ব্রাউজার নিয়ন্ত্রণ করার জন্য প্রয়োজনীয় বিভিন্ন সরঞ্জাম ব্যবহারের সুযোগ রয়েছে, যার মধ্যে ক্লিক করা, স্ক্রোল করা, টাইপ করা, কনসোল লগ পড়া এবং আরও অনেক কিছু অন্তর্ভুক্ত। এটি DOM ক্যাপচার, স্ক্রিনশট বা মার্কডাউন পার্সিংয়ের মাধ্যমে আপনার খোলা পৃষ্ঠাগুলি পড়তে পারে, সেইসাথে ভিডিও ধারণ করতেও পারে।

এর মানে হলো, আমাদের অ্যান্টিগ্র্যাভিটি ব্রাউজার এক্সটেনশনটি চালু ও ইনস্টল করতে হবে। চলুন, একটি কথোপকথন শুরু করে ধাপগুলো অনুসরণ করার মাধ্যমে কাজটি করা যাক।

একটি ওয়ার্কস্পেসে নতুন কথোপকথন শুরু করুন এবং নিম্নলিখিত কাজটি দিন: go to antigravity.google

টাস্কটি জমা দিন । আপনি দেখবেন এজেন্টটি টাস্কটি বিশ্লেষণ করছে এবং আপনি তার চিন্তাভাবনা পর্যবেক্ষণ করতে পারবেন। এক পর্যায়ে, এটি সঠিকভাবে এগিয়ে যাবে এবং উল্লেখ করবে যে নিচে দেখানো অনুযায়ী ব্রাউজার এজেন্ট সেট আপ করতে হবে। Setup এ ক্লিক করুন।

e7119f40e093afd2.png

এটি ব্রাউজারটি চালু করবে এবং নিচে দেখানো ছবির মতো এক্সটেনশনটি ইনস্টল করার জন্য একটি বার্তা প্রদর্শন করবে:

82fb87d7d75b4a6c.png

এগিয়ে যান এবং আপনাকে ক্রোম এক্সটেনশনটিতে নিয়ে যাওয়া হবে, যা আপনি পরে ইনস্টল করতে পারবেন।

f3468f0e5f3bb075.png

এক্সটেনশনটি সফলভাবে ইনস্টল করার পর, অ্যান্টিগ্র্যাভিটি এজেন্ট কাজ শুরু করবে এবং জানাবে যে এটি তার কাজটি করার জন্য আপনার অনুমতি চাইছে। খোলা ব্রাউজার উইন্ডোতে আপনি কিছু কার্যকলাপ দেখতে পাবেন:

7f0367e00ac36d5a.png

এজেন্ট ম্যানেজার ভিউতে ফিরে গেলে আপনি নিম্নলিখিত বিষয়গুলো দেখতে পাবেন:

b9d89e1ebefcfd76.png

ঠিক এটাই ঘটবে বলে আমরা আশা করেছিলাম, কারণ আমরা এজেন্টকে antigravity.google ওয়েবসাইটটি পরিদর্শন করতে বলেছিলাম। এটিকে অনুমতি দিন এবং আপনি দেখতে পাবেন যে ওয়েবসাইটটিতে নিরাপদে প্রবেশ করা হয়েছে, যেমনটি নিচে দেখানো হয়েছে:

77fcc38b5fb4ca7c.png

৫. প্রত্নবস্তু

অ্যান্টিগ্র্যাভিটি তার পরিকল্পনা ও কাজ সম্পাদনের সময় বিভিন্ন আর্টিফ্যাক্ট তৈরি করে, যা তার কাজের বিবরণ দেওয়া এবং ব্যবহারকারীর কাছ থেকে মতামত সংগ্রহের একটি মাধ্যম। এগুলি হলো সমৃদ্ধ মার্কডাউন ফাইল, আর্কিটেকচার ডায়াগ্রাম, ছবি, ব্রাউজার রেকর্ডিং, কোড ডিফস ইত্যাদি।

আর্টিফ্যাক্ট ‘বিশ্বাসের ব্যবধান’ দূর করে। যখন কোনো এজেন্ট দাবি করে, “আমি বাগটি ঠিক করে ফেলেছি”, তখন তা যাচাই করার জন্য ডেভেলপারকে আগে কোডটি পড়তে হতো। অ্যান্টিগ্র্যাভিটিতে, এজেন্ট এটি প্রমাণ করার জন্য একটি আর্টিফ্যাক্ট তৈরি করে।

অ্যান্টিগ্র্যাভিটি দ্বারা উৎপাদিত প্রধান নিদর্শনগুলো হলো:

  • Task Lists : কোড লেখার আগে, এজেন্ট একটি সুসংগঠিত পরিকল্পনা তৈরি করে। সাধারণত আপনার এই পরিকল্পনাটি সম্পাদনা করার প্রয়োজন হয় না, তবে আপনি এটি পর্যালোচনা করতে পারেন এবং কিছু ক্ষেত্রে, প্রয়োজনে এটি পরিবর্তন করার জন্য একটি মন্তব্য যোগ করতে পারেন।
  • Implementation Plan : কোনো একটি কাজ সম্পন্ন করার জন্য আপনার কোডবেসের মধ্যে পরিবর্তনগুলোর নকশা তৈরি করতে এটি ব্যবহৃত হয়। এই পরিকল্পনাগুলোতে কী কী সংশোধন প্রয়োজন সে সম্পর্কে প্রযুক্তিগত বিবরণ থাকে এবং ব্যবহারকারীর দ্বারা পর্যালোচিত হওয়ার জন্য তৈরি করা হয়, যদি না আপনার আর্টিফ্যাক্ট পর্যালোচনা নীতি "সর্বদা এগিয়ে যান" (Always Proceed) হিসেবে সেট করা থাকে।
  • Walkthrough : এজেন্ট টাস্ক বাস্তবায়ন সম্পন্ন করার পর, পরিবর্তনগুলোর সারসংক্ষেপ এবং সেগুলো কীভাবে পরীক্ষা করতে হবে, তা জানাতে এটি তৈরি করা হয়।
  • Code diffs : যদিও প্রযুক্তিগতভাবে এটি কোনো আর্টিফ্যাক্ট নয়, অ্যান্টিগ্র্যাভিটি কোড ডিফসও তৈরি করে যা আপনি পর্যালোচনা করতে এবং তাতে মন্তব্য করতে পারেন।
  • Screenshots : এজেন্ট কোনো পরিবর্তনের আগে ও পরে UI-এর অবস্থা ধারণ করে।
  • Browser Recordings : ডাইনামিক ইন্টারঅ্যাকশনের জন্য (যেমন, "লগইন বোতামে ক্লিক করুন, স্পিনারের জন্য অপেক্ষা করুন, ড্যাশবোর্ড লোড হয়েছে কিনা যাচাই করুন"), এজেন্ট তার সেশনের একটি ভিডিও রেকর্ড করে। ডেভেলপার নিজে অ্যাপটি না চালিয়েই এই ভিডিওটি দেখে যাচাই করতে পারেন যে ফাংশনাল রিকোয়ারমেন্টটি পূরণ হয়েছে কিনা।

আর্টিফ্যাক্টগুলো তৈরি হয় এবং এজেন্ট ম্যানেজার ও এডিটর উভয় ভিউতেই প্রদর্শিত হয়।

এডিটর ভিউতে, নিচের ডান কোণায়, আপনি Artifacts -এ ক্লিক করতে পারেন:

5deff47fe0a93aa1.png

এজেন্ট ম্যানেজার ভিউতে, উপরের ডানদিকে, Review changes এর পাশে, আপনি আর্টিফ্যাক্টগুলি টগল করার জন্য একটি বাটন দেখতে পাবেন অথবা যদি এটি টগল অন করা থাকে, তাহলে আপনি তৈরি হওয়া আর্টিফ্যাক্টগুলির তালিকা দেখতে পাবেন:

5320f447471c43eb.png

আপনার নীচে দেখানো আর্টিফ্যাক্টস ভিউটি দেখা উচিত। এখানে আমাদের ক্ষেত্রে, আমরা এজেন্টকে antigravity.google পৃষ্ঠাটি পরিদর্শন করার নির্দেশ দিয়েছিলাম এবং সেই কারণেই এটি স্ক্রিনশটটি ক্যাপচার করেছে এবং সেটির একটি ভিডিও তৈরি করেছে:

19d9738bb3c7c0c9.png

এডিটর ভিউ-এর Review Changes -এ আপনি কোডের পার্থক্য দেখতে পারেন:

e1d8fd6e7df4daf3.png

ডেভেলপাররা "গুগল ডক্স-স্টাইল কমেন্টস" ব্যবহার করে এই আর্টিফ্যাক্ট এবং কোড ডিফস-এর সাথে ইন্টারঅ্যাক্ট করতে পারেন। আপনি একটি নির্দিষ্ট অ্যাকশন বা টাস্ক নির্বাচন করে, আপনার পছন্দমতো একটি কমান্ড প্রদান করতে পারেন এবং তারপর সেটি এজেন্টের কাছে সাবমিট করতে পারেন। এরপর এজেন্ট এই ফিডব্যাকটি গ্রহণ করবে এবং সেই অনুযায়ী কাজ করবে। ইন্টারেক্টিভ গুগল ডক্স ব্যবহারের কথা ভাবুন, যেখানে আপনি লেখককে ফিডব্যাক দেন এবং লেখক তার উপর ভিত্তি করে কাজকে আরও উন্নত করেন।

৬. সম্পাদক

এডিটরটি ভিএস কোডের পরিচিতি ধরে রাখে, যা অভিজ্ঞ ডেভেলপারদের অভ্যাসগত অভিজ্ঞতাকে সম্মান করে। এতে স্ট্যান্ডার্ড ফাইল এক্সপ্লোরার, সিনট্যাক্স হাইলাইটিং এবং এক্সটেনশন ইকোসিস্টেম অন্তর্ভুক্ত রয়েছে।

এডিটর-এ যাওয়ার জন্য আপনি এজেন্ট ম্যানেজারের একদম উপরে ডানদিকে থাকা Open Editor বাটনটিতে ক্লিক করতে পারেন।

সেটআপ এবং এক্সটেনশন

সাধারণত, এডিটর, টার্মিনাল এবং এজেন্ট দৃশ্যমান থাকে:

7996408528de93e1.png

যদি এমনটা না হয়, তাহলে আপনি নিম্নোক্তভাবে টার্মিনাল এবং এজেন্ট প্যানেল টগল করতে পারেন:

  • টার্মিনাল প্যানেল চালু বা বন্ধ করতে Ctrl + ` শর্টকাটটি ব্যবহার করুন।
  • এজেন্ট প্যানেলটি চালু বা বন্ধ করতে Cmd + L শর্টকাটটি ব্যবহার করুন।

এছাড়াও, অ্যান্টিগ্র্যাভিটি সেটআপের সময় কিছু এক্সটেনশন ইনস্টল করতে পারে, কিন্তু আপনি যে প্রোগ্রামিং ভাষা ব্যবহার করছেন তার উপর নির্ভর করে আপনার সম্ভবত আরও এক্সটেনশন ইনস্টল করার প্রয়োজন হতে পারে। উদাহরণস্বরূপ, পাইথন ডেভেলপমেন্টের জন্য, এই এক্সটেনশনগুলো আপনি ইনস্টল করতে পারেন:

bd33a79837b5a12a.png

সম্পাদক

স্বয়ংক্রিয় সম্পূর্ণ

আপনি এডিটরে কোড টাইপ করার সাথে সাথে একটি স্মার্ট অটো-কমপ্লিট চালু হয়ে যায়, যা আপনি ট্যাব চেপে গ্রহণ করতে পারেন।

e90825ed7a009350.png

আমদানি করতে ট্যাব

অনুপস্থিত নির্ভরতাগুলো যোগ করার জন্য আপনি সাজেশন ইম্পোর্ট করার ট্যাব পাবেন:

bcab60794caa0aec.png

ঝাঁপ দিতে ট্যাব চাপুন

কোডের পরবর্তী যৌক্তিক স্থানে কার্সর নিয়ে যাওয়ার জন্য সাজেশনগুলোতে ঝাঁপ দিতে আপনি ট্যাব ব্যবহার করতে পারেন:

8610ae5217be7fe5.png

কমান্ড

আপনি এডিটর বা টার্মিনালে Cmd + I চেপে স্বাভাবিক ভাষায় ইনলাইন কমপ্লিশনের জন্য কমান্ড চালু করতে পারেন।

এডিটরে, আপনি ফিবোনাচ্চি সংখ্যা গণনা করার জন্য একটি পদ্ধতির অনুরোধ করতে পারেন এবং তারপর সেটি গ্রহণ বা প্রত্যাখ্যান করতে পারেন:

13a615e515cea100.png

টার্মিনালে, আপনি টার্মিনাল কমান্ডের সাজেশন পেতে পারেন:

5a75e560f998cedc.png

এজেন্ট সাইড প্যানেল

এডিটর থেকে আপনি বিভিন্ন উপায়ে এজেন্ট সাইড প্যানেলটি চালু বা বন্ধ করতে পারেন।

ম্যানুয়াল খোলা

আপনি Cmd + L শর্টকাট ব্যবহার করে ডানদিকের এজেন্ট প্যানেলটি ম্যানুয়ালি চালু বা বন্ধ করতে পারেন।

আপনি প্রশ্ন করা শুরু করতে পারেন, ফাইল, ডিরেক্টরি, এমসিপি সার্ভারের মতো আরও প্রাসঙ্গিক তথ্য অন্তর্ভুক্ত করতে @ ব্যবহার করুন, অথবা কোনো ওয়ার্কফ্লো (একটি সংরক্ষিত প্রম্পট) উল্লেখ করতে / ব্যবহার করুন:

95c5a6d31d771748.png

এছাড়াও আপনি দুটি কথোপকথন মোডের মধ্যে একটি বেছে নিতে পারেন: Fast বা Planning

d3d1449f12510e3e.png

দ্রুত কাজের জন্য Fast এবং আরও জটিল কাজের জন্য Planning ব্যবহার করার পরামর্শ দেওয়া হয়, যেখানে এজেন্ট একটি পরিকল্পনা তৈরি করে যা আপনি অনুমোদন করতে পারেন।

কথোপকথনের জন্য আপনি বিভিন্ন মডেলও বেছে নিতে পারেন:

af709bcc03c1e21e.png

ব্যাখ্যা করুন এবং সমাধান করুন

এজেন্টকে সক্রিয় করার আরেকটি উপায় হলো কোনো সমস্যার উপর মাউস নিয়ে গিয়ে Explain and fix নির্বাচন করা।

e45cbe02ed76b9c1.png

এজেন্টের কাছে সমস্যাগুলো পাঠান

এছাড়াও আপনি Problems বিভাগে গিয়ে Send all to Agent নির্বাচন করতে পারেন, যাতে এজেন্ট সেই সমস্যাগুলো সমাধান করার চেষ্টা করে।

e4992d14708005d0.png

এজেন্টের কাছে টার্মিনাল আউটপুট পাঠান

এমনকি আপনি টার্মিনাল আউটপুটের একটি অংশ নির্বাচন করে Cmd + L ব্যবহার করে এজেন্টের কাছে পাঠাতে পারেন:

c40293bab474c9b1.png

এডিটর এবং এজেন্ট ম্যানেজারের মধ্যে পরিবর্তন করা

যেকোনো সময়ে, আপনি এডিটর মোডে থাকা অবস্থায় উপরের ডানদিকের Open Agent Manager মোডের মধ্যে পরিবর্তন করতে পারেন এবং এজেন্ট ম্যানেজার মোডে থাকা অবস্থায় উপরের ডানদিকের Open Editor বোতামে ক্লিক করে আবার আগের অবস্থায় ফিরে আসতে পারেন।

বিকল্পভাবে, আপনি দুটি মোডের মধ্যে পরিবর্তন করতে Cmd + E কিবোর্ড শর্টকাটও ব্যবহার করতে পারেন।

৭. মতামত প্রদান করুন

অ্যান্টিগ্র্যাভিটির মূল ভিত্তি হলো অভিজ্ঞতার প্রতিটি পর্যায়ে অনায়াসে আপনার মতামত সংগ্রহ করার ক্ষমতা। এজেন্ট যখন কোনো কাজ করে, তখন এটি সেই প্রক্রিয়ার মধ্যে বিভিন্ন নিদর্শন তৈরি করে:

  • একটি বাস্তবায়ন পরিকল্পনা এবং করণীয় তালিকা (কোডিং করার আগে)
  • কোড ডিফস (কোড তৈরি করার সময়)
  • (কোডিং করার পর) ফলাফল যাচাই করার একটি ধাপে ধাপে নির্দেশিকা।

এই আর্টিফ্যাক্টগুলো হলো অ্যান্টিগ্র্যাভিটির তার পরিকল্পনা ও অগ্রগতি জানানোর একটি মাধ্যম। আরও গুরুত্বপূর্ণ বিষয় হলো, এগুলো আপনার জন্য গুগল ডকস-এর মতো কমেন্ট ব্যবহার করে এজেন্টকে মতামত জানানোরও একটি উপায়। এজেন্টকে আপনার কাঙ্ক্ষিত পথে কার্যকরভাবে চালনা করার জন্য এটি খুবই দরকারি।

চলুন একটি সাধারণ করণীয় কাজের তালিকা অ্যাপ্লিকেশন তৈরি করার চেষ্টা করি এবং দেখি এই প্রক্রিয়া চলাকালীন আমরা কীভাবে অ্যান্টিগ্র্যাভিটিকে মতামত জানাতে পারি।

পরিকল্পনা মোড

প্রথমত, আপনাকে নিশ্চিত করতে হবে যে অ্যান্টিগ্র্যাভিটি Planning মোডে আছে ( Fast মোডের পরিবর্তে)। আপনি এজেন্ট সাইড প্যানেল চ্যাট থেকে এটি নির্বাচন করতে পারেন। এটি নিশ্চিত করে যে অ্যান্টিগ্র্যাভিটি কোডে যাওয়ার আগে একটি বাস্তবায়ন পরিকল্পনা এবং একটি টাস্ক তালিকা তৈরি করে নেয়। তারপর, এই ধরনের একটি প্রম্পট চেষ্টা করুন: Create a todo list web app using Python । এটি এজেন্টকে পরিকল্পনা শুরু করতে এবং একটি বাস্তবায়ন পরিকল্পনা তৈরি করতে উৎসাহিত করবে।

বাস্তবায়ন পরিকল্পনা

বাস্তবায়ন পরিকল্পনা হলো অ্যান্টিগ্র্যাভিটি কী করতে চায়, এটি কোন প্রযুক্তি ব্যবহার করবে এবং প্রস্তাবিত পরিবর্তনগুলোর একটি উচ্চ-স্তরের বর্ণনার সার্বিক চিত্র।

Implementation Plan - Python Todo App
Goal
Create a simple, functional, and aesthetically pleasing Todo List web application using Python (Flask).

Tech Stack
Backend: Python with Flask
Frontend: HTML5, CSS3 (Vanilla), Jinja2 templates
...

মতামত জানানোর জন্য এটিই প্রথম জায়গা। আমাদের ক্ষেত্রে, এজেন্ট পাইথন ওয়েব ফ্রেমওয়ার্ক হিসেবে ফ্লাস্ক (Flask) ব্যবহার করতে চায়। এর পরিবর্তে ফাস্টএপিআই (FastAPI) ব্যবহার করার জন্য আমরা ইমপ্লিমেন্টেশন প্ল্যানে একটি মন্তব্য যোগ করতে পারি। মন্তব্যটি যোগ করার পর, হয় সেটি সাবমিট করুন অথবা আপডেট করা ইমপ্লিমেন্টেশন প্ল্যানটি নিয়ে Proceed জন্য অ্যান্টিগ্র্যাভিটিকে (Antigravity) বলুন।

কাজের তালিকা

বাস্তবায়ন পরিকল্পনা আপডেট করার পর, অ্যান্টিগ্র্যাভিটি একটি টাস্ক লিস্ট তৈরি করে। এটি হলো সেই সুনির্দিষ্ট পদক্ষেপগুলোর তালিকা, যা অ্যাপটি তৈরি ও যাচাই করার জন্য অ্যান্টিগ্র্যাভিটি অনুসরণ করবে।

Task Plan
 Create requirements.txt
 Create directory structure (static/css, templates)
 Create static/css/style.css
 Create templates/index.html
 Create main.py with FastAPI setup and Database logic
 Verify application

এটি দ্বিতীয় স্থান যেখানে আপনি মতামত জানাতে পারবেন।

উদাহরণস্বরূপ, আমাদের ব্যবহারের ক্ষেত্রে, আপনি নিম্নলিখিত মন্তব্যটি যোগ করে আরও বিস্তারিত যাচাইকরণ নির্দেশাবলী দিতে পারেন: Verify application by adding, editing, and deleting a todo item and taking a screenshot.

কোড পরিবর্তন

এই পর্যায়ে, অ্যান্টিগ্র্যাভিটি নতুন ফাইলগুলিতে কিছু কোড তৈরি করবে। আপনি বিস্তারিত না দেখেই এজেন্ট চ্যাট সাইড প্যানেল থেকে এই সমস্ত পরিবর্তন Accept all বা Reject all করতে পারেন।

আপনি Review changes এ ক্লিক করে পরিবর্তনের বিবরণ দেখতে এবং কোডে বিস্তারিত মন্তব্য যোগ করতে পারেন। উদাহরণস্বরূপ, আমরা main.py তে নিম্নলিখিত মন্তব্যটি যোগ করতে পারি: Add basic comments to all methods

অ্যান্টিগ্র্যাভিটি ব্যবহার করে কোডের পুনরাবৃত্তি করার এটি একটি দারুণ উপায়।

ধাপে ধাপে নির্দেশিকা

কোডিং শেষ হয়ে গেলে অ্যান্টিগ্র্যাভিটি সার্ভার চালু করে এবং অ্যাপটি যাচাই করার জন্য একটি ব্রাউজার খোলে। এটি কিছু ম্যানুয়াল পরীক্ষাও করে, যেমন টাস্ক যোগ করা, টাস্ক আপডেট করা ইত্যাদি। এই সবকিছু সম্ভব হয় অ্যান্টিগ্র্যাভিটি ব্রাউজার এক্সটেনশনের সৌজন্যে। সবশেষে, অ্যাপটি যাচাই করার জন্য যা যা করা হয়েছে তার সারসংক্ষেপ হিসেবে এটি একটি ওয়াকথ্রু ফাইল তৈরি করে। এতে একটি স্ক্রিনশট অথবা ব্রাউজার রেকর্ডিং সহ একটি ভেরিফিকেশন ফ্লো অন্তর্ভুক্ত থাকে।

আপনি ওয়াকথ্রু-তে থাকা স্ক্রিনশট বা ব্রাউজার রেকর্ডিং-এর উপরেও মন্তব্য করতে পারেন। উদাহরণস্বরূপ, আমরা Change the blue theme to orange theme ’ মন্তব্যটি যোগ করে সাবমিট করতে পারি। মন্তব্যটি সাবমিট করার পর, অ্যান্টিগ্র্যাভিটি পরিবর্তনগুলো করে, ফলাফল যাচাই করে এবং ওয়াকথ্রু-টি আপডেট করে।

পরিবর্তনগুলি পূর্বাবস্থায় ফেরান

সবশেষে, প্রতিটি ধাপের পরে, যদি আপনি পরিবর্তনে সন্তুষ্ট না হন, তাহলে চ্যাট থেকে তা পূর্বাবস্থায় ফিরিয়ে আনার সুযোগ রয়েছে। এর জন্য আপনাকে শুধু চ্যাটে থাকা ↩️ ‘ Undo changes up to this point বিকল্পটি বেছে নিতে হবে।

৮. নিয়মাবলী এবং কর্মপ্রবাহ

অ্যান্টিগ্র্যাভিটিতে দুটি কাস্টমাইজেশন অপশন রয়েছে: রুলস এবং ওয়ার্কফ্লো

এডিটর মোডে থাকা অবস্থায়, উপরের ডান কোণায় থাকা ... এ ক্লিক করুন এবং Customizations বেছে নিন, আপনি Rules এবং Workflows দেখতে পাবেন:

ff8babd8d8bcfa83.png

নিয়মাবলী এজেন্টের আচরণকে পরিচালিত করতে সাহায্য করে। এগুলো হলো এমন কিছু নির্দেশিকা যা আপনি প্রদান করতে পারেন, যাতে এজেন্ট কোড তৈরি ও পরীক্ষা করার সময় সেগুলো অনুসরণ করে। উদাহরণস্বরূপ, আপনি হয়তো চাইতে পারেন যে এজেন্ট একটি নির্দিষ্ট কোড স্টাইল অনুসরণ করুক, অথবা সর্বদা মেথডগুলোর ডকুমেন্টেশন তৈরি করুক। আপনি এগুলোকে নিয়ম হিসেবে যোগ করতে পারেন এবং এজেন্ট সেগুলো বিবেচনায় নেবে।

ওয়ার্কফ্লো হলো সংরক্ষিত প্রম্পট যা আপনি এজেন্টের সাথে ইন্টারঅ্যাক্ট করার সময় / ব্যবহার করে প্রয়োজনমতো চালু করতে পারেন। এগুলো এজেন্টের আচরণকেও নিয়ন্ত্রণ করে, কিন্তু ব্যবহারকারীই এগুলো প্রয়োজনমতো চালু করেন।

একটি ভালো উপমা হলো, রুলগুলো অনেকটা সিস্টেমের নির্দেশাবলীর মতো, অন্যদিকে ওয়ার্কফ্লো হলো সংরক্ষিত প্রম্পটের মতো, যা আপনি প্রয়োজন অনুযায়ী বেছে নিতে পারেন।

নিয়ম এবং ওয়ার্কফ্লো উভয়ই বিশ্বব্যাপী অথবা প্রতিটি ওয়ার্কস্পেস অনুযায়ী প্রয়োগ করা যায় এবং নিম্নলিখিত স্থানগুলিতে সংরক্ষণ করা যায়:

  • বৈশ্বিক নিয়ম: ~/.gemini/GEMINI.md
  • গ্লোবাল ওয়ার্কফ্লো: ~/.gemini/antigravity/global_workflows/<YOUR_WORKFLOW_NAME>.md
  • ওয়ার্কস্পেস নিয়মাবলী: your-workspace/.agents/rules/
  • ওয়ার্কস্পেস ওয়ার্কফ্লো: your-workspace/.agents/workflows/

চলুন ওয়ার্কস্পেসে কিছু নিয়ম এবং ওয়ার্কফ্লো যোগ করি।

একটি নিয়ম যোগ করুন

প্রথমে, একটি কোড স্টাইল রুল যোগ করা যাক। Rules এ যান এবং +Workspace বাটনটি সিলেক্ট করুন। এটিকে code-style-guide এর মতো একটি নাম দিন এবং নিম্নলিখিত কোড স্টাইল রুলগুলো যোগ করুন:

* Make sure all the code is styled with PEP 8 style guide
* Make sure all the code is properly commented

দ্বিতীয়ত, কোডটি যাতে মডিউলার পদ্ধতিতে তৈরি হয় তা নিশ্চিত করতে একটি code-generation-guide রুলে উদাহরণসহ আরেকটি রুল যোগ করা যাক:

* The main method in main.py is the entry point to showcase functionality.
* Do not generate code in the main method. Instead generate distinct functionality in a new file (eg. feature_x.py)
* Then, generate example code to show the new functionality in a new method in main.py (eg. example_feature_x) and simply call that method from the main method.

নিয়ম দুটি সংরক্ষিত ও প্রস্তুত আছে:

bfd179dfef6b2355.png

একটি ওয়ার্কফ্লো যোগ করুন

চলুন ইউনিট টেস্ট তৈরি করার জন্য একটি ওয়ার্কফ্লোও নির্ধারণ করি। এর ফলে, এজেন্টকে বারবার ইউনিট টেস্ট তৈরি করতে না দিয়ে, আমরা কোড নিয়ে সন্তুষ্ট হওয়ার পরেই ইউনিট টেস্টগুলো চালু করতে পারব।

Workflows এ যান এবং +Workspace বাটনটি সিলেক্ট করুন। এটিকে generate-unit-tests এর মতো একটি নাম দিন এবং নিম্নলিখিত বিষয়গুলো অন্তর্ভুক্ত করুন:

* Generate unit tests for each file and each method
* Make sure the unit tests are named similar to files but with test_ prefix

ওয়ার্কফ্লোটিও এখন চালু হওয়ার জন্য প্রস্তুত:

d22059258592f0e1.png

চেষ্টা করে দেখুন

চলুন এখন নিয়ম এবং ওয়ার্কফ্লো বাস্তবে দেখি। আপনার ওয়ার্কস্পেসে একটি কাঠামোবদ্ধ main.py ফাইল তৈরি করুন:

def main():
    pass

if __name__ == "__main__":
    main()

এখন, এজেন্ট চ্যাট উইন্ডোতে যান এবং এজেন্টকে বলুন: Implement binary search and bubble sort.

এক বা দুই মিনিটের মধ্যে, আপনি ওয়ার্কস্পেসে তিনটি ফাইল পেয়ে যাবেন: main.py , bubble_sort.py , binary_search.py । আপনি আরও লক্ষ্য করবেন যে সমস্ত নিয়ম প্রয়োগ করা হয়েছে: মূল ফাইলটি অগোছালো নয় এবং এতে উদাহরণ কোড রয়েছে, প্রতিটি বৈশিষ্ট্য তার নিজস্ব ফাইলে প্রয়োগ করা হয়েছে, সমস্ত কোড নথিভুক্ত এবং সুন্দর শৈলীতে লেখা।

from binary_search import binary_search, binary_search_recursive
from bubble_sort import bubble_sort, bubble_sort_descending


def example_binary_search():
    """
    Demonstrate binary search algorithm with various test cases.
    """
    ...

def example_bubble_sort():
    """
    Demonstrate bubble sort algorithm with various test cases.
    """
    ...

def main():
    """
    Main entry point to showcase functionality.
    """
    example_binary_search()
    example_bubble_sort()
    print("\n" + "=" * 60)


if __name__ == "__main__":
    main()

এখন যেহেতু আমরা কোডটি নিয়ে সন্তুষ্ট, চলুন দেখি আমরা 'জেনারেট ইউনিট টেস্ট' ওয়ার্কফ্লোটি চালু করতে পারি কিনা।

চ্যাটে গিয়ে /generate টাইপ করা শুরু করুন এবং অ্যান্টিগ্র্যাভিটি ইতিমধ্যেই আমাদের কার্যপ্রক্রিয়া সম্পর্কে জেনে যাবে:

8a3efd9e3be7eb6f.png

generate-unit-tests নির্বাচন করে এন্টার চাপুন। কয়েক সেকেন্ড পর, আপনি আপনার ওয়ার্কস্পেসে নতুন ফাইল পাবেন: test_binary_search.py এবং test_bubble_sort.py , যেগুলোতে আগে থেকেই বেশ কিছু টেস্ট প্রয়োগ করা আছে!

11febd7940ef8199.png

চমৎকার!

৯. দক্ষতা

যদিও অ্যান্টিগ্র্যাভিটির অন্তর্নিহিত মডেলগুলো (যেমন জেমিনি) শক্তিশালী এবং বহুমুখী, তবুও তারা আপনার নির্দিষ্ট প্রজেক্টের প্রেক্ষাপট বা টিমের মানদণ্ড সম্পর্কে জানে না। এজেন্টের কনটেক্সট উইন্ডোতে প্রতিটি নিয়ম বা টুল লোড করার ফলে ‘টুল ব্লোট’, খরচ বৃদ্ধি, ল্যাটেন্সি এবং বিভ্রান্তি দেখা দেয়।

অ্যান্টিগ্র্যাভিটি স্কিলস প্রগ্রেসিভ ডিসক্লোজারের মাধ্যমে এর সমাধান করে। একটি স্কিল হলো বিশেষায়িত জ্ঞানের একটি প্যাকেজ যা প্রয়োজন না হওয়া পর্যন্ত সুপ্ত অবস্থায় থাকে। এটি এজেন্টের কনটেক্সটে তখনই লোড হয়, যখন আপনার নির্দিষ্ট অনুরোধটি স্কিলটির বিবরণের সাথে মিলে যায়।

কাঠামো এবং পরিধি

স্কিল হলো ডিরেক্টরি-ভিত্তিক প্যাকেজ। আপনার প্রয়োজন অনুসারে আপনি এগুলোকে দুটি স্কোপে সংজ্ঞায়িত করতে পারেন:

  • গ্লোবাল স্কোপ ( ~/.gemini/antigravity/skills/ ): আপনার সকল প্রোজেক্ট জুড়ে উপলব্ধ (যেমন, "ফরম্যাট JSON", "সাধারণ কোড রিভিউ")।
  • ওয়ার্কস্পেস স্কোপ ( <workspace-root>/.agents/skills/ ): শুধুমাত্র একটি নির্দিষ্ট প্রোজেক্টের মধ্যেই উপলব্ধ (যেমন, "এই অ্যাপের স্টেজিং-এ ডিপ্লয় করুন", "এই নির্দিষ্ট ফ্রেমওয়ার্কের জন্য বয়লারপ্লেট তৈরি করুন")।

একটি দক্ষতার গঠন

একটি সাধারণ দক্ষতা ডিরেক্টরি দেখতে এইরকম হয়:

my-skill/
├── SKILL.md    #(Required) metadata & instructions.
├── scripts/    # (Optional) Python or Bash scripts for execution.
├── references/ # (Optional) text, documentation, or templates.
└── assets/     # (Optional) Images or logos.

এবার কিছু দক্ষতা যোগ করা যাক।

কোড পর্যালোচনা দক্ষতা

এটি একটি নির্দেশনামূলক স্কিল, অর্থাৎ আমাদের শুধু SKILL.md ফাইলটি তৈরি করতে হবে, যেটিতে মেটাডেটা এবং স্কিলের নির্দেশাবলী থাকবে। চলুন একটি গ্লোবাল স্কিল তৈরি করি যা এজেন্টকে কোডের পরিবর্তনগুলো পর্যালোচনা করে বাগ, স্টাইলগত সমস্যা এবং সেরা অনুশীলনগুলো খুঁজে বের করার জন্য বিস্তারিত তথ্য দেবে।

প্রথমেই, সেই ডিরেক্টরিটি তৈরি করুন যেখানে এই গ্লোবাল স্কিলটি থাকবে।

mkdir -p ~/.gemini/antigravity/skills/code-review

উপরের ডিরেক্টরিতে নিচে দেখানো বিষয়বস্তু সহ একটি SKILL.md ফাইল তৈরি করুন:

---
name: code-review
description: Reviews code changes for bugs, style issues, and best practices. Use when reviewing PRs or checking code quality.
---

# Code Review Skill

When reviewing code, follow these steps:

## Review checklist

1. **Correctness**: Does the code do what it's supposed to?
2. **Edge cases**: Are error conditions handled?
3. **Style**: Does it follow project conventions?
4. **Performance**: Are there obvious inefficiencies?

## How to provide feedback

- Be specific about what needs to change
- Explain why, not just what
- Suggest alternatives when possible

লক্ষ্য করুন যে উপরের SKILL.md ফাইলটিতে প্রথমে মেটাডেটা (নাম এবং বিবরণ) এবং তারপরে নির্দেশাবলী রয়েছে। এজেন্টটি লোড হওয়ার সময় শুধুমাত্র আপনার কনফিগার করা স্কিলগুলোর মেটাডেটা পড়বে এবং প্রয়োজন হলেই স্কিলটির নির্দেশাবলী লোড করবে।

চেষ্টা করে দেখুন

নিচে দেখানো বিষয়বস্তু সহ demo_bad_code.py নামে একটি ফাইল তৈরি করুন:

import time

def get_user_data(users, id):
   # Find user by ID
   for u in users:
       if u['id'] == id:
            return u
   return None

def process_payments(items):
   total = 0
   for i in items:
       # Calculate tax
       tax = i['price'] * 0.1
       total = total + i['price'] + tax
       time.sleep(0.1) # Simulate slow network call
  
   return total

def run_batch():
   users = [{'id': 1, 'name': 'Alice'}, {'id': 2, 'name': 'Bob'}]
   items = [{'price': 10}, {'price': 20}, {'price': 100}]
  
   u = get_user_data(users, 3)
   print("User found: " + u['name']) # Will crash if None
  
   print("Total: " + str(process_payments(items)))

if __name__ == "__main__":
   run_batch()

এজেন্টকে review the @demo_bad_code.py file বলুন। এজেন্টকে code-review স্কিলটি শনাক্ত করতে হবে, বিস্তারিত তথ্য লোড করতে হবে এবং তারপর code-review/SKILL.md ফাইলে দেওয়া নির্দেশাবলী অনুযায়ী কাজটি সম্পাদন করতে হবে।

নীচে একটি নমুনা আউটপুট দেখানো হলো:

d90a989f4555e2fc.png

কোড হেডার টেমপ্লেট দক্ষতা

কখনও কখনও কোনো স্কিলে একটি বড় আকারের স্থির টেক্সট (যেমন লাইসেন্স হেডার) ব্যবহার করার প্রয়োজন হয়। এই টেক্সটটি সরাসরি প্রম্পটে রাখাটা অপচয়। এর পরিবর্তে, আমরা এটিকে একটি resources/ ফোল্ডারে রাখি এবং এজেন্টকে নির্দেশ দিই যেন এটি কেবল প্রয়োজনের সময়ই পড়ে।

প্রথমেই, সেই ডিরেক্টরিটি তৈরি করুন যেখানে এই ওয়ার্কস্পেস স্কিলটি থাকবে।

mkdir -p .agents/skills/license-header-adder/resources

আপনার লাইসেন্স টেক্সট দিয়ে .agents/skills/license-header-adder/resources/HEADER.txt ফাইলটি তৈরি করুন:

/*
 * Copyright (c) 2026 YOUR_COMPANY_NAME LLC.
 * All rights reserved.
 * This code is proprietary and confidential.
 */

নিচে দেখানো বিষয়বস্তু সহ .agents/skills/license-header-adder/SKILL.md ফাইলটি তৈরি করুন:

---
name: license-header-adder
description: Adds the standard corporate license header to new source files.
---

# License Header Adder

This skill ensures that all new source files have the correct copyright header.

## Instructions
1. **Read the Template**: Read the content of `resources/HEADER.txt`.
2. **Apply to File**: When creating a new file, prepend this exact content.
3. **Adapt Syntax**: 
   - For C-style languages (Java, TS), keep the `/* */` block.
   - For Python/Shell, convert to `#` comments.

চেষ্টা করে দেখুন

এজেন্টকে নিম্নলিখিত কাজটি করতে বলুন: Create a new Python script named data_processor.py that prints 'Hello World'.

এজেন্টটি টেমপ্লেটটি পড়বে, সি-স্টাইলের কমেন্টগুলোকে পাইথন স্টাইলে রূপান্তর করবে এবং স্বয়ংক্রিয়ভাবে আপনার নতুন ফাইলের শুরুতে সেগুলো যুক্ত করে দেবে।

এই দক্ষতাগুলো তৈরি করার মাধ্যমে, আপনি কার্যকরভাবে সাধারণ জেমিনি মডেলটিকে আপনার প্রকল্পের জন্য একজন বিশেষজ্ঞে পরিণত করেছেন। আপনি আপনার সেরা অনুশীলনগুলোকে বিধিবদ্ধ করেছেন, তা আপনার কোড রিভিউ নির্দেশিকা অনুসরণ করাই হোক বা লাইসেন্স হেডার। এআই-কে বারবার "লাইসেন্স যোগ করতে মনে রেখো" বা "কমিট ফরম্যাট ঠিক করো" বলার পরিবর্তে, এজেন্টটি এখন সহজাতভাবেই জানে আপনার দলে কীভাবে কাজ করতে হয়।

১০. এজেন্টকে সুরক্ষিত করা

একটি এআই এজেন্টকে আপনার টার্মিনাল এবং ব্রাউজারে অ্যাক্সেস দেওয়া একটি দ্বিধারী তলোয়ারের মতো। এটি স্বয়ংক্রিয় ডিবাগিং এবং ডেপ্লয়মেন্ট সক্ষম করে, কিন্তু একই সাথে প্রম্পট ইনজেকশন এবং ডেটা এক্সফিলট্রেশনের পথও খুলে দেয়।

অ্যান্টিগ্র্যাভিটি টার্মিনাল কমান্ড অটো এক্সিকিউশন পলিসি, অ্যালাউ লিস্ট এবং ডিনাই লিস্টকে কেন্দ্র করে গঠিত একটি সূক্ষ্ম অনুমতি ব্যবস্থার মাধ্যমে এর সমাধান করে।

আপনি যখন প্রথমবার অ্যান্টিগ্র্যাভিটি কনফিগার করবেন, অথবা সেটিংস মেনুর মাধ্যমে, আপনাকে অবশ্যই একটি Terminal Command Auto Execution পলিসি নির্বাচন করতে হবে। এই সেটিংটি শেল কমান্ডের ক্ষেত্রে এজেন্টের স্বায়ত্তশাসন নির্ধারণ করে। আপনি Antigravity — Settings এ গিয়ে এর জন্য আপনার বর্তমান সেটিংস দেখতে পারেন। আপনি Terminal সেকশন এবং Terminal Command Auto Execution পলিসিটি নিম্নলিখিত অপশনসহ দেখতে পাবেন:

নীতি মোড

বর্ণনা

পর্যালোচনার অনুরোধ

Agent always asks for confirmation before executing terminal commands (except those in the Allow list)

Always Proceed

Agent never asks for confirmation before executing terminal commands (except those in the Deny list). This provides the Agent with the maximum ability to operate over long periods without intervention, but also has the highest risk of an Agent executing an unsafe terminal command.

Configuring the Allow List

The Allow List is used primarily with the Request Review policy. It represents a positive security model, meaning everything is forbidden unless expressly permitted. This is the most secure configuration.

Step-by-Step Configuration

  1. Set the Terminal Command Auto Execution setting to Request Review .
  2. Add the following command in the Allow List Terminal Commands by clicking on the Add button next to it : ls -al . You can add other terminal commands too, if you'd like.

Testing the Allow List

  • Ask the agent: List the files in this directory .
  • The agent runs ls automatically.
  • Ask the agent: Delete the <some file>
  • The agent will attempt rm <filepath> , but Antigravity will block it and force a user review because rm is not in the allow list. You should have Antigravity asking you for permission before running the command.

Configuring the Deny List

The Deny List is the safeguard for the Always Proceed policy. It represents a negative security model, meaning everything is allowed unless expressly forbidden. This relies on the developer anticipating every possible danger, which is a risky proposition, but one that offers maximum speed.

Step-by-Step Configuration

  1. Set the Terminal Command Auto Execution setting to Always Proceed .
  2. Add the following commands in the Deny List Terminal Commands by clicking on the Add button next to it.
  3. আরএম
  4. sudo
  5. কার্ল
  6. wget

Testing the Deny List

  • Ask the agent: Check the version of python .
  • The agent runs python --version automatically.
  • Ask the agent: Download www.google.com home page .
  • The agent attempts to curl . Antigravity detects curl in the denylist and blocks execution, prompting you for manual approval.

Browser Security

Antigravity's ability to browse the web is a superpower, but also a vulnerability. An agent visiting a compromised documentation site could encounter a prompt injection attack. To help prevent this, you can implement a Browser URL Allowlist for the browser agent.

You can view your current settings for this by going to Antigravity — Settings and then Browser . You should see the Browser URL Allowlist section where you can add additional URLs:

7bd38b2b02df521d.png

11. Conclusion and Next Steps

Congratulations! You have now successfully installed Antigravity, configured your environment, and learned how to control your agents.

What's Next? To see Antigravity in action building real-world applications, you can look at the following codelabs:

Reference docs