মূল কনটেন্টে যান
এআই টিউটোরিয়াল

iCode দিয়ে শুরু করা: একটি AI এজেন্ট টার্মিনাল চালানো ও কনফিগার করা

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

iCode দিয়ে শুরু করা: একটি AI এজেন্ট টার্মিনাল চালানো ও কনফিগার করা

iCode কী?

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

কাজ চলমান: রিলিজভেদে iCode-এর ইন্টারফেস, ফাইল ফরম্যাট এবং ডিফল্ট পরিবর্তিত হতে পারে।

iCode-এর সঙ্গে কোনো AI মডেল অন্তর্ভুক্ত নেই। এর পরিবর্তে, আপনি নিজেই মডেল প্রদানকারীদের সংযুক্ত করবেন এবং কনফিগার করা কোন প্রোফাইলটি কোনো এজেন্ট ব্যবহার করবে তা নির্বাচন করবেন।

Code Agent নির্বাচিত iCode-এর স্টার্ট স্ক্রিন

প্রধান বৈশিষ্ট্য

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

পূর্বশর্ত

একমাত্র প্রয়োজনীয় পূর্বশর্ত হলো uv। এটি প্রজেক্টের জন্য Python 3.14 ইনস্টল করে, তাই আলাদাভাবে ওই Python সংস্করণ ইনস্টল করার প্রয়োজন নেই।

সেরা অভিজ্ঞতার জন্য একটি আধুনিক টার্মিনাল ব্যবহার করুন। README-তে Windows-এর জন্য Windows Terminal এবং macOS ও Linux-এর জন্য Ghostty ব্যবহারের পরামর্শ দেওয়া হয়েছে।

iCode ইনস্টল ও চালান

রিপোজিটরির একটি স্থানীয় চেকআউট দিয়ে শুরু করুন। এর রুট ডিরেক্টরিতে একটি টার্মিনাল খুলে প্রয়োজনীয় সব অতিরিক্ত উপাদানসহ প্রজেক্টটি সিঙ্ক্রোনাইজ করুন:

uv sync --extra all

--extra all ঠিক এভাবেই ব্যবহার করুন। প্রজেক্টে খালি uv sync ব্যবহার না করতে বা এর পরিবর্তে --all-extras দিতে স্পষ্টভাবে সতর্ক করা হয়েছে।

এরপর ভেন্ডর করা ripgrep বাইনারি ডাউনলোড করুন। macOS বা Linux-এ চালান:

./scripts/fetch_rg.sh

Windows-এ পরিবর্তে PowerShell স্ক্রিপ্টটি চালান:

.\scripts\fetch_rg.ps1

সবশেষে, iCode চালু করুন:

uv run icode

প্রজেক্টটির কোড নাম Chrys, তাই এই কমান্ডেও একই অ্যাপ্লিকেশন চালু হয়:

uv run chrys

আপনার প্রথম মডেল কনফিগার করুন

iCode কোনো মডেল প্রোফাইল ছাড়াই আসে। প্রথমবার চালু হলে F4 চাপুন, Model Configuration খুলুন এবং আপনার ব্যবহৃত কোনো মডেল প্রদানকারীর জন্য একটি প্রোফাইল যোগ করুন।

DeepSeek প্রোফাইলের Model Configuration স্ক্রিন

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

মৌলিক ব্যবহার

ইনপুট বার থেকে নেভিগেট করুন

হোম স্ক্রিনে বর্তমান এজেন্ট, মডেল, অনুমোদন মোড এবং সেশন দৃশ্যমান থাকে। কয়েকটি প্রিফিক্স গুরুত্বপূর্ণ ফাংশনে দ্রুত অ্যাক্সেস দেয়:

  • # এজেন্টে অ্যাক্সেস করে।
  • $ মডেলে অ্যাক্সেস করে।
  • / কমান্ডে অ্যাক্সেস করে।
  • @ ফাইলে অ্যাক্সেস করে।
  • ! শেলে অ্যাক্সেস করে।

কথোপকথন শুরু করুন

একটি এজেন্ট ও কনফিগার করা মডেল নির্বাচন করুন, তারপর ইনপুট বারে আপনার অনুরোধ লিখুন। উত্তরগুলো সরাসরি টার্মিনালে সমৃদ্ধ Markdown হিসেবে প্রদর্শিত হয়। কোনো এজেন্ট ফাইল পরিবর্তন করলে iCode সেই পরিবর্তনগুলো রেকর্ড করে, যাতে আপনি টার্ন অনুযায়ী বা একসঙ্গে পর্যালোচনা করতে পারেন।

একটি এজেন্ট কনফিগার করুন

Agent Configuration খুলতে F2 চাপুন। এজেন্ট হলো অ্যাপ্লিকেশন কোড নয়, বরং একটি কনফিগারেশন। এই স্ক্রিন থেকে আপনি এর নির্দেশনা, টুল, সাব-এজেন্ট, স্কিল, MCP সার্ভার এবং মেমোরি সম্পাদনা করতে পারবেন।

বিল্ট-ইন Code Agent-এর Agent Configuration স্ক্রিন

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

ফাইলের পরিবর্তন পর্যালোচনা করুন

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

Python ফাইলের পরিবর্তনসহ ডিফ ভিউয়ার

ওয়ার্কফ্লো চালান ও পরিদর্শন করুন

ওয়ার্কফ্লো মোডে একটি ওয়ার্কফ্লো নোড ধরে ধরে চলতে দেখা যায়। প্রতিটি এজেন্ট নোডের জন্য iCode নির্বাচিত মডেল, তার টুল কল এবং টোকেন ব্যয় দেখাতে পারে।

নোড গ্রাফ হিসেবে চলমান ডেমো ওয়ার্কফ্লো

যখন কোনো কাজে একাধিক ধাপ বা এজেন্ট জড়িত থাকে, তখন এই ভিউটি কার্যকর। কাজের সম্পাদনাকে একটি একক অস্পষ্ট প্রতিক্রিয়া হিসেবে দেখার পরিবর্তে, গ্রাফের মধ্য দিয়ে কাজ কীভাবে এগোয় তা পর্যবেক্ষণ করতে পারবেন।

উন্নত টিপস

খারাপ টার্ন থেকে চালিয়ে যাওয়ার আগে রোলব্যাক ব্যবহার করুন

কোনো কথোপকথনে অনাকাঙ্ক্ষিত সম্পাদনা তৈরি হলে, আগের একটি টার্ন নির্বাচন করে রোলব্যাক খুলুন। রোলব্যাক প্রয়োগের আগে iCode দেখায় কোন ফাইলের পরিবর্তনগুলো প্রত্যাবর্তন করা হবে। এরপর এটি নির্বাচিত টার্নের পরের কথোপকথনের অংশ বাদ দেয়।

প্রত্যাবর্তনযোগ্য পরিবর্তন দেখানো রোলব্যাক ডায়ালগ

নিশ্চিত করার আগে প্রস্তাবিত ফাইল প্রত্যাবর্তনগুলো সতর্কতার সঙ্গে পর্যালোচনা করুন, বিশেষ করে যখন একাধিক টার্ন একই ফাইল পরিবর্তন করেছে।

Trajectory দিয়ে সম্পাদনা বিশ্লেষণ করুন

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

সময় ও টোকেনের বিভাজনসহ ট্রাজেক্টরি ওভারভিউ

টাইমলাইনে একটি টার্নের ভেতরের পৃথক মডেল কল, হুক ও টুল কলের বিস্তারিত দেখা যায়। ব্যয়বহুল বা ধীর ইন্টারঅ্যাকশন অনুসন্ধান করতে এবং কার্যক্রমের ক্রম বুঝতে এটি ব্যবহার করুন।

ইন্টিগ্রেটেড শেল ব্যবহার করুন

! দিয়ে শেলে প্রবেশ করুন। এটি সীমিত কমান্ড-আউটপুট প্যানেল নয়, বরং একটি পূর্ণাঙ্গ টার্মিনাল। তাই পূর্ণ-স্ক্রিন প্রোগ্রামগুলো সেখানেই চালানো যায় এবং প্রতিটি কিস্ট্রোক গ্রহণ করে।

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

সম্পূর্ণ ব্যবহারকারী নির্দেশিকা খুলুন

বিল্ট-ইন ব্যবহারকারী নির্দেশিকা খুলতে iCode-এর ভেতরে F8 চাপুন। একই ডকুমেন্টেশন রিপোজিটরির docs/ ডিরেক্টরিতেও ইংরেজি ও সরলীকৃত চীনা ভাষায় পাওয়া যায়।

গোপনীয়তা ও বাহ্যিক সংযোগ

iCode-এ কোনো টেলিমেট্রি, অ্যানালিটিক্স বা ক্র্যাশ রিপোর্টিং নেই এবং এটি আপনার ডেটা সংগ্রহ করে না। ডিফল্টভাবে এটি প্রকল্প বা অন্য কোনো তৃতীয় পক্ষের কাছে ব্যবহার-সংক্রান্ত ডেটাসহ কিছুই পাঠায় না।

তবে আপনার কনফিগার করা গন্তব্যে ডেটা পাঠানো হতে পারে, যার মধ্যে মডেল প্রদানকারী, MCP সার্ভার, হুক ও OpenTelemetry এক্সপোর্টার রয়েছে। ওয়েব টুল ডিফল্টভাবে নিষ্ক্রিয় থাকে। সক্রিয় করলে, অনুসন্ধান আপনার কনফিগার করা প্রদানকারীর কাছে যায়; কোনো প্রদানকারী কনফিগার করা না থাকলে Exa-এর পাবলিক mcp.exa.ai সার্ভিসে যায়, আর পেজগুলো সরাসরি সংশ্লিষ্ট ওয়েবসাইট থেকে অনুরোধ করা হয়।

সম্মতি ও লাইসেন্সিং

iCode একটি অর্কেস্ট্রেশন টুল এবং কোনো AI মডেল সরবরাহ করে না। ব্যবসায়িক বা প্রকৌশলগত ব্যবহারের জন্য মডেলের সঙ্গে সংযোগ করার সময় EU AI Act এবং প্রযোজ্য অন্যান্য আইনগত বা নিয়ন্ত্রক প্রয়োজনীয়তা মেনে চলার দায়িত্ব আপনার।

প্রকল্পটি Apache License 2.0-এর অধীনে ওপেন সোর্স। বান্ডেল করা তৃতীয় পক্ষের উপাদানগুলো তাদের নিজ নিজ লাইসেন্সের অধীনে থাকে, যেগুলো রিপোজিটরির NOTICE ফাইলে নথিভুক্ত।

উপসংহার

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