SSD Nodes Learn
নির্দেশিকা Matt Connorদ্বারা Matt Connor · আপডেট করা হয়েছে 2026-07-24

Claude দিয়ে VPS এ AI Agent তৈরির নিয়ম

Claude Messages API এবং MCP ব্যবহার করে আপনার নিজস্ব VPS সার্ভারে একটি শক্তিশালী AI Agent তৈরি করার সম্পূর্ণ পদ্ধতি এবং টুলস ব্যবহারের নিয়ম জানুন।

Claude দিয়ে এজেন্ট তৈরি করার অর্থ কী

Claude দিয়ে এজেন্ট তৈরি করার অর্থ হলো Claude-কে reasoning core হিসেবে ব্যবহার করা, যেখানে loop, tools এবং data আপনার নিজস্ব সার্ভারে থাকবে। Claude সিদ্ধান্ত নেবে কী করতে হবে; আপনার VPS তা কার্যকর করবে। আপনি Claude-কে task এবং current state পাঠাবেন, Claude উত্তরে একটি উত্তর দেবে অথবা আপনার কোনো tool ব্যবহার করার অনুরোধ জানাবে; আপনার code tool-টি চালাবে এবং ফলাফল ফেরত পাঠাবে, এবং কাজ শেষ না হওয়া পর্যন্ত loop-টি চলতে থাকবে। বুদ্ধিমত্তা বা intelligence হলো একটি service যা আপনি internet-এর মাধ্যমে কল করেন। এর চারপাশের সবকিছু আপনার।

এই বিভাজনটিই এর বিশেষত্ব। আপনি কোনো model পরিচালনা না করেই frontier-level reasoning পাচ্ছেন এবং এজেন্ট কী কী স্পর্শ করতে পারবে তার পূর্ণ নিয়ন্ত্রণ আপনার কাছে থাকছে, কারণ tools গুলো আপনার মালিকানাধীন hardware-এ চলে। আপনি যদি ইতিমধ্যে প্রথম Claude program তৈরি করে থাকেন, তবে first Claude app on a VPS guide এই নির্দেশিকাটির ভিত্তি নিয়ে আলোচনা করে।

Claude হলো মস্তিষ্ক: Messages API

Claude-এর প্রতিটি call একটি endpoint-এর মাধ্যমে সম্পন্ন হয়, যা হলো Messages API। আপনি এ পর্যন্ত হওয়া conversation এবং এজেন্ট যে tools গুলো ব্যবহার করতে পারে তার list পাঠান; Claude তার পরবর্তী message ফেরত পাঠায়। সেই message-টি হয় একটি চূড়ান্ত উত্তর অথবা কোনো tool কল করার অনুরোধ। build-it-yourself পদ্ধতির জন্য কোনো আলাদা "agent API" নেই: tool use হলো এই single endpoint-এর একটি feature, এবং এর চারপাশের loop চালানো আপনার দায়িত্ব।

Call গুলোর মধ্যে Claude stateless, যার অর্থ হলো এটি নিজে থেকে কিছু মনে রাখে না। প্রতিটি request পুরো conversation বহন করে। আপনার code history ধরে রাখে এবং প্রতিবার তা পাঠায়, যার কারণে why each turn in a long session costs more tokens than the last। এটি কোনো সীমাবদ্ধতা নয় বরং একটি design choice: যেহেতু state আপনার সার্ভারে থাকে, তাই Claude ঠিক কী দেখবে তা আপনি নির্ধারণ করেন এবং task-এর কোনো তথ্য এমন কোথাও জমা থাকে না যেখানে আপনার নিয়ন্ত্রণ নেই।

Tool use হলো agent loop

Claude-এর agent loop বর্ণনা করা সহজ। আপনি আপনার tools সহ একটি request পাঠান। Claude task-টি পড়ে এবং যদি তার কাজ করার প্রয়োজন হয়, তবে একটি tool-use request পাঠায় যেখানে একটি tool-এর নাম এবং তার inputs দেওয়া থাকে। আপনার code সেই tool-টি চালায় এবং পরবর্তী request-এ ফলাফল Claude-কে ফেরত পাঠায়। Claude ফলাফলটি পড়ে এবং হয় অন্য কোনো tool-এর জন্য অনুরোধ করে অথবা তার চূড়ান্ত উত্তর লিখে। যখন এটি tool ব্যবহারের অনুরোধ করা বন্ধ করে দেয়, তখন task সম্পন্ন হয়।

আপনি মাত্র কয়েক লাইনে হাতে লিখে এই loop তৈরি করতে পারেন, এবং অনেকেই তা করেন, কারণ এটি বোঝা এবং নিয়ন্ত্রণ করা সহজ। অফিসিয়াল SDK গুলো একটি tool runner প্রদান করে যা আপনার জন্য loop-টি পরিচালনা করে: আপনি tool functions প্রদান করেন, এবং SDK Claude-কে কল করা, আপনার tools চালানো এবং ফলাফল ফেরত পাঠানোর মতো back-and-forth কাজগুলো সামলায়। উভয় ক্ষেত্রেই কাঠামো একই। runner শুধুমাত্র আপনাকে নিজে থেকে loop লেখার ঝামেলা থেকে মুক্তি দেয়।

তৈরির তিনটি পদ্ধতি এবং VPS-এর জন্য কোনটি উপযুক্ত

Claude agent তৈরির তিনটি পদ্ধতি আছে, এবং আপনি কতটুকু machinery পরিচালনা করবেন তার ওপর ভিত্তি করে এগুলো ভিন্ন হয়।

প্রথমটি হলো আপনার নিজস্ব code দিয়ে আপনার নিজস্ব tools সহ Claude API কল করা। আপনি loop লিখবেন, অথবা SDK-এর tool runner ব্যবহার করবেন, এবং পুরো বিষয়টি আপনার VPS-এ host করবেন। এটি একটি সাধারণ পছন্দ, কারণ এটি আপনাকে tools, data এবং security-এর ওপর পূর্ণ নিয়ন্ত্রণ দেয় এবং এটি আপনার সার্ভারে একটি সাধারণ program হিসেবে চলে। এই নির্দেশিকার বেশিরভাগ অংশ এই পথটি ধরে ধরে লেখা।

দ্বিতীয়টি হলো Claude Agent SDK। এটি হলো Claude Code, যা একটি coding agent এবং একটি library হিসেবে প্যাকেজ করা হয়েছে যা আপনি ব্যবহার করতে পারেন। এটি একটি পূর্ণাঙ্গ agent loop এবং ফাইল পড়া ও লেখা, shell commands চালানো এবং searching-এর জন্য built-in tools প্রদান করে, যাতে আপনাকে এগুলো শূন্য থেকে তৈরি করতে না হয়। এটিও আপনার নিজস্ব সার্ভারে চলে, যা একটি VPS-এর জন্য অত্যন্ত উপযোগী যখন আপনি নিজে harness তৈরি না করেই একটি শক্তিশালী file-and-shell agent চান। ফাইল পড়া এবং shell commands চালানোর জন্য একটি agent-কে unattended চালানোর আগে containment বা সীমাবদ্ধতার প্রয়োজন হয়, এবং running Claude Code safely on a server permission system, sandbox, এবং isolation options নিয়ে আলোচনা করে।

তৃতীয়টি হলো Managed Agents, যেখানে Anthropic loop পরিচালনা করে এবং একটি sandbox host করে যেখানে agent-এর tools গুলো execute হয়। এটি একটি hands-off option: এখানে আপনার পরিচালনা করার মতো অনেক কম কিছু আছে, কিন্তু agent-এর workspace আপনার VPS-এর পরিবর্তে Anthropic-এর infrastructure-এ থাকে। যখন আপনি সবচেয়ে কম operational work চান এবং tools গুলো আপনার নিজস্ব machine-এ চালানোর প্রয়োজন নেই, তখন এটি ব্যবহার করুন। বাকি দুটির ক্ষেত্রে, আপনার সার্ভার হলো agent-এর ঘর, যা এই নির্দেশিকার মূল বিষয়।

MCP দিয়ে tools কানেক্ট করা

আপনি যে পথই বেছে নিন না কেন, আপনি agent-কে বাস্তব system-এর সাথে কানেক্ট করতে চাইবেন, এবং Model Context Protocol হলো এটি করার একটি সুশৃঙ্খল পদ্ধতি। MCP হলো agent-এর কাছে tools এবং data প্রকাশ করার একটি open standard। প্রতিটি service-এর জন্য আলাদাভাবে integration হাতে না লিখে, আপনি Claude-কে একটি MCP server-এর দিকে নির্দেশ করতে পারেন যা ইতিমধ্যে সেই capabilities গুলোকে tools হিসেবে উপস্থাপন করে। আপনি একই VPS-এ ছোট service হিসেবে MCP servers চালাতে পারেন, যার প্রতিটি কেবল প্রয়োজনীয় access পাবে, যা আমি running MCP servers on a VPS এ আলোচনা করেছি।

একটি model নির্বাচন করা

Claude বিভিন্ন model হিসেবে আসে, এবং একটি নির্বাচন করা হলো capability, speed এবং cost-এর মধ্যে একটি ভারসাম্য। এই লেখাটি লেখার সময় জনপ্রিয় পছন্দগুলো হলো Claude Opus 4.8 (claude-opus-4-8), যা কঠিন reasoning এবং দীর্ঘ agent run-এর জন্য একটি শক্তিশালী default; Claude Sonnet 5 (claude-sonnet-5), একটি balanced option যা অনেক কাজে Opus-এর কাছাকাছি থেকেও সাশ্রয়ী এবং দ্রুত; এবং Claude Haiku 4.5 (claude-haiku-4-5), যা সহজ এবং high-volume steps-এর জন্য সবচেয়ে দ্রুত এবং সাশ্রয়ী। এদের উপরে রয়েছে Claude Fable 5 (claude-fable-5), যা সবচেয়ে কঠিন কাজের জন্য সবচেয়ে শক্তিশালী model। আপনার code-এ সঠিক model identifier ব্যবহার করুন, কোনো date যোগ করবেন না।

একটি কার্যকর পদ্ধতি হলো এদের মিশ্রণ করা। সাধারণ tool calls-এর জন্য একটি সাশ্রয়ী model এবং কঠিন সিদ্ধান্তের জন্য একটি শক্তিশালী model ব্যবহার করুন। যেহেতু model হলো আপনার request-এ একটি মাত্র string, তাই পরিবর্তন করা মানে মাত্র এক লাইনের পরিবর্তন, তাই একটি শক্তিশালী default দিয়ে শুরু করুন এবং যেখানে speed বা cost বেশি গুরুত্বপূর্ণ, সেখানে quality কিছুটা কমিয়ে আনুন।

আপনার VPS-এ একটি hardened service হিসেবে এটি চালান

একটি agent তখনই কার্যকর যখন এটি চলতে থাকে, এবং এটি তখনই নিরাপদ যখন এটি contained থাকে। একটি VPS-এ এই দুটি বিষয় নিশ্চিত হয় agent-কে একটি terminal-এ হাতে চালানো program হিসেবে না চালিয়ে একটি hardened system service হিসেবে চালানোর মাধ্যমে। একটি service হিসেবে এটি boot হওয়ার সময় শুরু হয়, crash করলে restart হয় এবং journal-এ log রাখে। Hardened অবস্থায় এটি একটি unprivileged user হিসেবে চলে যার কেবল প্রয়োজনীয় access থাকে, ফলে কোনো bug বা ভুল instruction-এর প্রভাব সীমিত থাকে।

সবচেয়ে গুরুত্বপূর্ণ নিয়ম হলো আপনার Claude API key সার্ভার-সাইডে রাখা। key প্রতিটি call-এর জন্য পেমেন্ট এবং authorisation নিশ্চিত করে, তাই এটি এমন একটি ফাইলে থাকা উচিত যা কেবল agent-এর user পড়তে পারে, যা service-এ environment variable হিসেবে load করা হবে, এবং এটি কখনো code, repository বা ব্রাউজার পৌঁছাতে পারে এমন কোথাও রাখা যাবে না। আপনার agent-এর জন্য একটি সম্পূর্ণ, hardened service unit এখানে তৈরি করুন:

ToolRun your agent as a hardened service

এরপর সার্ভারটি সম্পন্ন করুন। SSH-কে শুধুমাত্র keys-এর মাধ্যমে সীমাবদ্ধ করুন এবং আপনি যে account থেকে পরিচালনা করেন তা lock down করুন, যেমনটি SSH hardening on a VPS এ দেখানো হয়েছে। আপনি যদি এজেন্টটি তৈরির সময় একটি interactive session থেকে এটি পরিচালনা করতে চান, তবে running Claude Code on a VPS with tmux একটি ভালো সঙ্গী। আর যদি আপনি এই সবকিছুর পেছনের concept গুলো বুঝতে চান (কোনো নির্দিষ্ট model-এর সাথে যুক্ত না করে), তবে building your own AI agent on a VPS নির্দেশিকাটি ভিত্তি প্রদান করে।

আপনি যদি একটি terminal coding assistant চান, তবে running a coding AI agent on a VPS এ Aider এবং Goose নিয়ে আলোচনা করা হয়েছে।

FAQ

এজেন্ট তৈরির জন্য আমার কোন Claude model ব্যবহার করা উচিত?

Claude Opus 4.8 (claude-opus-4-8) দিয়ে শুরু করুন যা একটি শক্তিশালী default, এবং সেখান থেকে সমন্বয় করুন। Claude Sonnet 5 (claude-sonnet-5) বেশিরভাগ কাজের জন্য সাশ্রয়ী এবং দ্রুত, Claude Haiku 4.5 (claude-haiku-4-5) সহজ high-volume steps-এর জন্য সেরা, এবং Claude Fable 5 (claude-fable-5) সবচেয়ে কঠিন কাজের জন্য সবচেয়ে শক্তিশালী। একটি সাধারণ পদ্ধতি হলো routine steps-এর জন্য একটি সাশ্রয়ী model এবং কঠিন সিদ্ধান্তের জন্য একটি শক্তিশালী model ব্যবহার করা, যেহেতু পরিবর্তন করা মাত্র এক লাইনের কাজ।

আমি কি পুরো agent আমার VPS-এ চালাই, নাকি Anthropic চালায়?

এটি আপনার পদ্ধতির ওপর নির্ভর করে। আপনি যদি Claude API-এর বিপরীতে নিজের loop লিখেন, অথবা Claude Agent SDK ব্যবহার করেন, তবে agent সম্পূর্ণভাবে আপনার VPS-এ চলে এবং কেবল model call গুলো Anthropic-এ যায়। আপনি যদি Managed Agents ব্যবহার করেন, তবে Anthropic loop পরিচালনা করে এবং সেই sandbox host করে যেখানে tools গুলো execute হয়, তাই এর খুব সামান্য অংশ আপনার সার্ভারে থাকে। আপনার নিজস্ব machine-এ চলার জন্য প্রথম দুটি পদ্ধতির যেকোনো একটি ব্যবহার করুন।

Claude API এবং Claude Agent SDK-এর মধ্যে পার্থক্য কী?

Claude API হলো raw Messages endpoint: আপনি একটি conversation এবং tools পাঠান, এবং এর চারপাশে আপনি নিজের agent loop লিখেন, অথবা SDK-এর tool runner ব্যবহার করে এটি পরিচালনা করেন। Claude Agent SDK হলো একটি higher-level library, যা Claude Code-এর একটি প্যাকেজ যা তৈরি করার জন্য ব্যবহৃত হয়, এবং এতে একটি পূর্ণাঙ্গ loop এবং built-in file, shell, এবং search tools থাকে। যখন আপনি সবকিছু নিজে সংজ্ঞায়িত করতে চান তখন API ব্যবহার করুন, এবং যখন আপনি নিজে harness তৈরি না করেই একটি সক্ষম agent চান তখন Agent SDK ব্যবহার করুন।

আমি সার্ভারে আমার Claude API key কীভাবে নিরাপদ রাখব?

এটি server-side এ রাখুন এবং আপনার code থেকে দূরে রাখুন। এটি এমন একটি ফাইলে সংরক্ষণ করুন যা কেবল agent যে account-এ চলে সেটি পড়তে পারে, এটিকে service-এ environment variable হিসেবে load করুন, এবং এটি কখনো repository-তে commit করবেন না বা ব্রাউজারের কাছে প্রকাশ করবেন না। যেহেতু Claude-এ প্রতিটি request আপনার সার্ভার থেকে যায়, তাই key-টি ব্যবহারকারীর ডিভাইসে পৌঁছানোর প্রয়োজন হয় না, যা একটি server-run agent-কে client app-এ থাকা agent-এর চেয়ে নিরাপদ করে তোলে।

Claude দিয়ে এজেন্ট তৈরি করতে আমার কি কোনো model self-host করতে হবে?

না। Claude-এর ক্ষেত্রে model হলো একটি hosted service যা আপনি API-এর মাধ্যমে কল করেন, তাই GPU-তে কিছু চালানোর প্রয়োজন নেই। আপনার VPS এজেন্ট loop, tools এবং data পরিচালনা করে, আর reasoning ঘটে Anthropic-এর পক্ষে। এই কারণেই একটি সাধারণ সার্ভার একটি সক্ষম agent চালাতে পারে। আপনি যদি এর পরিবর্তে সম্পূর্ণ local model চান, তবে সেটি self-hosted পথ যা AI agent তৈরির সহযোগী নির্দেশিকায় আলোচনা করা হয়েছে।