এই সপ্তাহে Meta Muse Code প্রকাশ করেছে—এটি তাদের Muse Spark 1.2 মডেলের ওপর নির্মিত একটি টার্মিনাল-ভিত্তিক কোডিং এজেন্ট, যা Anthropic-এর Claude Code, OpenAI-এর Codex এবং Cursor-এর সঙ্গে সরাসরি প্রতিযোগিতায় নামছে। মার্ক জাকারবার্গের নিজের ভাষায় এর মূল বক্তব্য হলো, এটি “বড় রিপোজিটরি জুড়ে সম্পূর্ণ সফটওয়্যার ইঞ্জিনিয়ারিংয়ের কাজ সামলায়: পরিবর্তনের পরিকল্পনা করা, কোড লেখা, ফলাফল যাচাই করা।” যে বিস্তারিত বিষয়টি নিয়ে একটু ভাবা দরকার, তা হলো এটি বড় কাজ কীভাবে সামলায়: “কাজ যথেষ্ট বড় হলে, এটি আলাদা ওয়ার্কট্রিতে সমান্তরালে কাজ করা পৃথক সাব-এজেন্টদের মধ্যে কাজ ভাগ করে দেয়। আপনার ওয়ার্কিং কপি কখনো স্পর্শ করা হয় না।” জাকারবার্গ দাবি করেছেন, একটি পরীক্ষামূলক রানে এটি “কোনো সংঘর্ষ ছাড়াই একই সঙ্গে একটি গেমের ছয়টি ফিচার তৈরি করেছে”—এটি একটি বিক্রেতার দাবি, স্বাধীনভাবে যাচাই করা বেঞ্চমার্ক নয়, তাই নির্দিষ্ট সংখ্যাটি সন্দেহের সঙ্গে বিবেচনা করুন। তবে এর পেছনের ধরণটি বাস্তব: এখন পুরো শিল্পজুড়েই এটিই প্রচলিত মূল বক্তব্য, শুধু Meta-র বৈশিষ্ট্য নয়।
এর অর্থ হলো, এই টুলগুলোর মধ্যে পার্থক্য খুব দ্রুত কমে আসছে। পরিকল্পনা করা, কোড লেখা, যাচাই করা, সমান্তরালে কাজ ভাগ করা—প্রতিটি বড় ল্যাব একই চার ধাপের লুপের দিকে এগিয়ে যাচ্ছে। আপনি যদি “এজেন্টকে দিয়ে কাজ করিয়ে নিতে আমি দক্ষ” ধরনের দক্ষতাকে কেন্দ্র করে ক্যারিয়ার গড়ে থাকেন, তবে বিক্রেতারাই এখন সরাসরি সেই দক্ষতাকে বাস্তব সময়ে পণ্যায়িত করে ফেলছে। যে বিষয়টি পণ্যায়িত হচ্ছে না, এবং এসব লঞ্চের কোনোটিই আসলে যার সমাধান করে না, তা হলো কাজ ভাগ হয়ে যাওয়ার পর কী ঘটে: ছয়জন সাব-এজেন্ট সমান্তরালে লিখেছে, একে অপরের কাজ দেখতে পারেনি—এমন ছয়টি কোডের অংশ প্রত্যেকটি সঠিক কি না এবং সম্মিলিতভাবে সুসংগত কি না, তা এখনো কাউকে ঠিক করতে হয়।
আলাদা ওয়ার্কট্রি মার্জ-সংঘাতের সমস্যার সমাধান করে, সঠিকতার সমস্যার নয়
আলাদা ওয়ার্কট্রিতে সাব-এজেন্ট চালানো প্রকৃতপক্ষেই একটি ইঞ্জিনিয়ারিং উন্নতি—এতে একটি এজেন্ট অন্যটির সম্পাদনা মুছে বা নষ্ট করে দিতে পারে না। কিন্তু এর অর্থ এটাও যে, ওই ছয়টি ফিচার তৈরি করা এজেন্টগুলো কাজ করার সময় একে অপরের সিদ্ধান্ত সম্পর্কে একেবারেই কিছু দেখতে পায়নি। তাদের দুজন যদি স্বাধীনভাবে একই ধরনের একটি হেল্পার ফাংশন যোগ করে, একই ইনপুটের জন্য সামান্য ভিন্ন ভ্যালিডেশন লজিক প্রবর্তন করে, অথবা কোনো শেয়ার্ড ডেটা কাঠামো সম্পর্কে পরস্পরবিরোধী অনুমান করে, তাহলে আইসোলেশন তা ধরতে পারে না—এটি সংঘর্ষকে “মার্জ কনফ্লিক্ট” থেকে “ডেপ্লয় হয়ে যাওয়া ইন্টিগ্রেশন বাগ”-এ পিছিয়ে দেয়। এই ব্যর্থতার ধরনটি এসব টুল যে সমস্যা ঠেকানোর জন্য তৈরি হয়েছিল, তার থেকে কাঠামোগতভাবে আলাদা—এবং এখন এটিই একজন মানুষকে ধরতে হবে।
এ বিষয়ে নির্ভুল থাকা জরুরি, কারণ “এজেন্ট তার নিজের আউটপুট যাচাই করেছে” এবং “আউটপুট যাচাই করা হয়েছে”—এই দুটিকে গুলিয়ে ফেলা সহজ। কোনো এজেন্ট তার কোড কম্পাইল হচ্ছে এবং তার লেখা টেস্টগুলো পাস করছে কি না পরীক্ষা করেছে—এটি একজন রিভিউয়ার ছয়টি সমান্তরাল পরিবর্তন পরস্পরের সঙ্গে এবং বাকি কোডবেসের সঙ্গে সামঞ্জস্যপূর্ণ কি না জিজ্ঞেস করার সমান নয়। এগুলো আলাদা কাজ, এবং এসব হারনেস আসলে যে কাজটি বিক্রি করছে, তার মধ্যে কেবল একটিই তারা করে।
যে দক্ষতাটি আসলে ক্রমশ দুর্লভ হয়ে উঠছে
আপনি যদি সফটওয়্যারে বা সফটওয়্যারকে ঘিরে কাজ করেন—ইঞ্জিনিয়ার, PM, QA, টেকনিক্যাল সাপোর্ট, এমনকি এখন এসব এজেন্ট দিয়ে ছোট টুল প্রকাশ করা কোনো নন-ইঞ্জিনিয়ারও—তাহলে বাস্তবিক অর্থ হলো, “সামঞ্জস্যের জন্য বহু-ফাইল, বহু-এজেন্টের আউটপুট রিভিউ করা” নিজস্ব একটি শাস্ত্র হয়ে উঠছে; এটি কোড লেখা থেকে আলাদা, এবং কোনো এজেন্টকে ভালোভাবে প্রম্পট করা থেকেও আলাদা। এর কয়েকটি সুনির্দিষ্ট অংশ হলো:
- বিশ্বাসের মাত্রা নির্ধারণ।একটি লাইন পড়ার আগেই জানা—কোন ধরনের পরিবর্তনের জন্য সতর্কভাবে খুঁটিয়ে দেখা দরকার (শেয়ার্ড স্টেট, কোনো API কনট্র্যাক্ট, অথবা এমন কিছু যা একাধিক সাব-এজেন্টও স্পর্শ করে থাকতে পারে) এবং কোন ধরনের পরিবর্তন দ্রুত দেখে নেওয়াই নিরাপদ।
- ক্রস-ডিফ পড়া।যখন কোনো কাজ সমান্তরালভাবে ভাগ হয়ে যায়, তখন রিভিউয়ের একক একটি ডিফ নয়—একসঙ্গে পুরো ডিফগুলোর সমষ্টি। এর অর্থ হলো, প্রতিটি ফাইল আলাদাভাবে পড়ার পাশাপাশি ইচ্ছাকৃতভাবে দেখতে হবে একই যুক্তি বারবার লেখা হয়েছে কি না, একই ইনপুটে আচরণ ভিন্ন হয়ে গেছে কি না, এবং বিভিন্ন অংশে নামকরণ বা অনুমান অসঙ্গত কি না।
- তত্ত্বাবধানহীন এক্সিকিউটরের জন্য স্পেসিফিকেশন লেখা।সংঘর্ষের ঝুঁকির মূলধারার সমাধান হলো এমন নির্ভুল কাজের বিবরণ, যাতে সমান্তরাল এজেন্টদের সমন্বয় করতে না হয়, কারণ শুরুতেই তাদের সীমানা সঠিকভাবে নির্ধারণ করা হয়েছিল। এই ধরনের স্পেসিফিকেশন লেখা প্রম্পটিং দক্ষতার চেয়ে সিস্টেম-ডিজাইন দক্ষতার কাছাকাছি।
বিমূর্ত অর্থে এসবের কিছুই নতুন নয়—কোড রিভিউ এবং ইন্টারফেস ডিজাইন সবসময়ই গুরুত্বপূর্ণ ছিল। নতুন হলো এর পরিমাণ এবং অন্ধ দিকটি: একজন মানুষ যখন এক বিকেলে ছয়টি সমান্তরাল কাজের ধারা চালু করতে পারে, তখন এর সঙ্গে তাল মিলিয়ে আন্তঃসংযোগী রিভিউয়ের পরিমাণও বাড়ে; কিন্তু আন্তঃসংযোগী রিভিউ সহজ করার টুলিং, সমান্তরালভাবে কোড তৈরির টুলিংয়ের সঙ্গে তাল মেলাতে পারেনি।
এই মাসে আসলে কী করা উচিত
আপনার দল যদি এসব হারনেসের কোনো একটি—Muse Code, Claude Code, Codex, অথবা কোনো প্রতিদ্বন্দ্বী—পরীক্ষামূলকভাবে ব্যবহার করে থাকে, তাহলে অভ্যাস শক্ত হয়ে যাওয়ার আগে এখনই কয়েকটি কম খরচের পদক্ষেপ নেওয়া মূল্যবান:
- এজেন্ট-তৈরি কাজ রিভিউ করার সময় অনুমোদনের আগে স্পষ্টভাবে জিজ্ঞেস করুন, “এই কাজের অন্য কোনো অংশ কি একই ফাইল, ফাংশন বা শেয়ার্ড টাইপ স্পর্শ করেছে?”—বেশিরভাগ রিভিউ চেকলিস্টে এ প্রশ্নের জন্য কোনো নির্দেশনা থাকে না, কারণ সেগুলো একক লেখকের ডিফের জন্য তৈরি হয়েছিল।
- আপনার দলের যদি কোনো এজেন্টের হাতে কাজ দেওয়ার জন্য লিখিত স্পেসিফিকেশন ফরম্যাট না থাকে, তাহলে সেটির খসড়া তৈরির দায়িত্ব স্বেচ্ছায় নিন। “আমরা কীভাবে এজেন্টকে কাজের নির্দেশ দিই”—এই বিষয়টির মালিক ব্যক্তি পরে দল কতটা রিভিউ-ঋণ জমাবে, তার ওপর অসমানুপাতিক প্রভাব বিস্তার করেন।
- এসব হারনেসের মধ্যে একটির ওপর আপনার দক্ষতা বাজি না রেখে একাধিকটির সঙ্গে পরিচিত থাকুন—আপনার বর্তমান নিয়োগকর্তা যেটি বেছে নিয়েছে, শুধু সেটির ওপর নির্ভর করবেন না। ওয়ার্কট্রি ব্যবস্থাপনা, কতটা আগ্রাসীভাবে তারা সমান্তরালে কাজ ভাগ করে এবং রিভিউয়ের জন্য কী তুলে ধরে—এসব ক্ষেত্রে তাদের আচরণ যথেষ্ট ভিন্ন; তাই পরে হঠাৎ করে বদলাতে গেলে বাস্তব সময়ের খরচ হয়।
এই লঞ্চ-চক্রের শিরোনাম হবে কোন ল্যাবের এজেন্ট সবচেয়ে দ্রুত বা সস্তা। আরও স্থায়ী ক্যারিয়ার-সংকেতটি অনেক নীরব: এসব টুল প্রকাশকারী কোম্পানিগুলো সবাই স্পষ্টভাবে আরও বেশি কোড, আরও দ্রুত, সমান্তরালে তৈরি করার জন্য অপ্টিমাইজ করছে। কিন্তু এখনো তারা সেই কোডের সামঞ্জস্য যাচাই করার জন্য তুলনামূলকভাবে উন্নত কোনো পদ্ধতি প্রকাশ করেনি। পরবর্তী দফার নিয়োগের চাহিদা এই ব্যবধানেই দেখা দেবে, এবং তা দেখা দেবে রিভিউ ও সিস্টেম-চিন্তার দক্ষতা হিসেবে, প্রম্পটিং দক্ষতা হিসেবে নয়।