SSD Nodes Learn Hosting plans →
নির্দেশিকা Matt Connorদ্বারা Matt Connor · আপডেট করা হয়েছে 2026-08-27

DeepSeek Harness বনাম Claude Code বনাম Omnigent তুলনা

DeepSeek Harness, Claude Code এবং Omnigent-এর আর্কিটেকচার, মডেল কাপলিং ও লাইসেন্স তুলনা করুন। আপনার VPS-এ কোনটি সবচেয়ে কার্যকর এবং প্রতিটি টুলের আসল সক্ষমতা সম্পর্কে বিস্তারিত জানুন।

DeepSeek Harness বনাম Claude Code বনাম Omnigent: আপনার কোনটি প্রয়োজন

DeepSeek Harness, Claude Code এবং Omnigent—সবগুলোকেই এজেন্ট হারনেস (agent harness) বলা হয় এবং এগুলো সমস্যার ভিন্ন ভিন্ন অংশ সমাধান করে। DeepSeek Harness হলো একটি প্লাগইন রানটাইম যার সাথে একটি ওয়েব UI (ইউজার ইন্টারফেস) থাকে, যেখানে আপনি নিজের মডেল সরবরাহ করেন। Claude Code হলো Anthropic-এর একটি টার্মিনাল প্রোগ্রাম যা Anthropic-এর মডেলগুলো চালায়। Omnigent হলো Databricks-এর একটি অর্কেস্ট্রেটর, যা নিজস্ব কোনো এজেন্ট লুপ তৈরি করার পরিবর্তে Claude Code-সহ অন্যান্য হারনেসকে পরিচালনা করে। এদের কেউই অন্যটির সরাসরি বিকল্প নয়, তাই প্রশ্নটি হলো আপনার কোন স্তরটি প্রয়োজন। যদি এই কাঠামোটি আপনার কাছে নতুন মনে হয়, তবে এজেন্ট হারনেস আসলে কী তা এই তিনটি টুলের ভিন্ন ভিন্ন কাজের অংশগুলো ব্যাখ্যা করে: লুপ, টুলস, পারমিশন এবং সেশন স্টেট।

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

DeepSeek Harness কী এবং প্লাগইন মডেল থেকে আপনি কী সুবিধা পান?

DeepSeek 2026 সালের আগস্ট মাসে github.com/deepseek-ai/deepseek-harness-এ DeepSeek Harness বা dsh প্রকাশ করে। রিপোজিটরির বর্ণনায় পুরো ডিজাইনটিকে চারটি শব্দে প্রকাশ করা হয়েছে: সবকিছুই একটি প্লাগইন। মডেল অ্যাডাপ্টার, টুল রেজিস্ট্রি, সেশন লগ, স্যান্ডবক্স এবং এজেন্ট লুপ—সবই প্লাগইন, যা Cordis-এর ওপর ভিত্তি করে তৈরি একটি রানটাইম দ্বারা লোড হয়। এর গ্রহণ করার হার ছিল অস্বাভাবিক দ্রুত এবং প্রকাশের কয়েক দিনের মধ্যেই রিপোজিটরিটি 150,000 স্টার অতিক্রম করে (18 আগস্ট 2026 তারিখে যাচাইকৃত)।

DeepSeek Harness বর্তমানে ডেভেলপার প্রিভিউ পর্যায়ে আছে এবং দ্রুত পরিবর্তিত হচ্ছে। এখানে কম্প্যাটিবিলিটি বা সামঞ্জস্যতা নষ্টকারী পরিবর্তন আসবে।

এটি README-এর নিজস্ব সতর্কবার্তা এবং এই তুলনার ক্ষেত্রে এটিই সবচেয়ে গুরুত্বপূর্ণ বাক্য। আজ আপনি প্লাগইন API (application programming interface)-এর বিপরীতে যা কিছু লিখবেন, তা ভবিষ্যতে পুনরায় লিখতে হতে পারে বলে ধরে নেওয়া উচিত।

এটি npx দিয়ে শুরু করুন, যার জন্য Node.js ইনস্টল থাকা প্রয়োজন:

npx @deepseek-ai/dsh web

এই কমান্ডটি তার URL প্রদর্শন করে। ডিফল্টভাবে ওয়েব UI http://127.0.0.1:3080-এ সার্ভ করা হয়। এই অ্যাড্রেসটি একটি সুচিন্তিত বাইন্ডিং, কেবল প্রসাধনমূলক ডিফল্ট নয়, এবং 127.0.0.1-এ বাইন্ডিং UI-তে পৌঁছানোর ক্ষেত্রে কী অর্থ বহন করে তা তখনই গুরুত্বপূর্ণ হয়ে ওঠে যখন dsh আপনার ব্রাউজার থেকে ভিন্ন কোনো মেশিনে চলে। প্রতিটি প্রকাশিত বিল্ড একটি স্টেবল রিলিজের পরিবর্তে রিলিজ ক্যান্ডিডেট, তাই যদি কমান্ডটি ব্যর্থ হয় বা আপনি প্রত্যাশা করেননি এমন কোনো ভার্সন চালু হয়, তবে একটি নির্দিষ্ট dsh ভার্সন পিন করা এবং npx ক্যাশ পরিষ্কার করা দ্রুত সমাধানের উপায়। সোর্স থেকে বিল্ড করার জন্য pnpm ব্যবহার করুন:

git clone https://github.com/deepseek-ai/deepseek-harness.git
cd deepseek-harness
pnpm install
pnpm run build
pnpm dsh web

dsh web হলো dsh --profile web-এর সংক্ষিপ্ত রূপ। একটি প্রোফাইল হলো $DSH_HOME/profiles/-এর অধীনে থাকা একটি ডিরেক্টরি এবং লঞ্চার আপনার দেওয়া নামের প্রোফাইলটিই চালু করে। এটি গুরুত্বপূর্ণ কারণ একটি হেডলেস প্রোফাইলও রয়েছে: dsh --profile headless "job" একটি পারসিস্টেড সেশন চালায়, ফলাফল প্রিন্ট করে এবং বন্ধ হয়ে যায়, যা আপনি cron job বা build step-এ ব্যবহার করতে চাইবেন। --profile এবং --patch-এর মতো লঞ্চার ফ্ল্যাগগুলো অবশ্যই অ্যাপ্লিকেশনের নিজস্ব আর্গুমেন্টের আগে আসতে হবে, কারণ লঞ্চার হ্যান্ডঅফের সময় পার্সিং বন্ধ করে দেয়। --port-এর মতো একটি ফ্ল্যাগ লঞ্চারের নয়, বরং চালু হওয়া প্রোফাইলের অংশ, তাই এর অবস্থান গুরুত্বপূর্ণ। প্লাগইনগুলো pnpm-এ আর্গুমেন্ট ফরোয়ার্ড করার মাধ্যমে ম্যানেজ করা হয়, যেমন dsh plugin --profile web add <package>-এ দেখানো হয়েছে। একটি প্লাগইন এজেন্টের মতোই একই রানটাইমে লোড হয় এবং এর পারমিশনগুলো উত্তরাধিকারসূত্রে পায়, তাই ইনস্টল করার আগে একটি প্লাগইন কী কী অ্যাক্সেস করতে পারে তা যাচাই করুন।

Claude Code কী এবং এটি কেন একটি টার্মিনাল প্রোগ্রাম?

Claude Code হলো Anthropic-এর নিজস্ব CLI (command line interface) agent। Productটির নিজস্ব কোনো web UI নেই। এটি আপনার terminal-এ, যে directory-তে আপনি কাজ করাতে চান সেখানে চলে। তাই server session-এর জন্য এটি উপযোগী। কনফিগার করার কোনো interface না থাকায় settings panel-এর পরিবর্তে text ব্যবহার করে এর উত্তরের ধরন নির্ধারণ করতে হয়। একটি output style এর system prompt প্রতিস্থাপন করে, ফলে session-এর প্রতিটি reply ভিন্ন কাঠামোতে ফিরে আসে। macOS, Linux এবং WSL-এ installation-এর জন্য একটি command-ই যথেষ্ট:

curl -fsSL https://claude.ai/install.sh | bash
claude --version

একটি সফল ইনস্টলেশন ভার্সন এবং পণ্যের নাম প্রদর্শন করে, উদাহরণস্বরূপ 2.1.211 (Claude Code)। যদি এটি ব্যর্থ হয়, তবে claude doctor কোনো সেশন শুরু না করেই রিড-অনলি ইনস্টলেশন এবং সেটিংস ডায়াগনস্টিকস প্রিন্ট করবে। একটি npm প্যাকেজও রয়েছে, npm install -g @anthropic-ai/claude-code, যা v2.1.198 অনুযায়ী Node.js 22 বা তার পরবর্তী ভার্সন দাবি করে। এটি একই নেটিভ বাইনারি ইনস্টল করে, তাই ইনস্টল করা claude রানটাইমে আপনার Node.js ব্যবহার করে না। Anthropic Debian, Ubuntu, Fedora, RHEL এবং Alpine-এর জন্য সাইন করা apt, dnf এবং apk রিপোজিটরিও প্রকাশ করে, যা কনফিগারেশন ম্যানেজমেন্টের মাধ্যমে পরিচালিত সার্ভারের জন্য উত্তম পছন্দ, কারণ সেক্ষেত্রে আপডেটগুলো আপনার স্বাভাবিক আপগ্রেড ওয়ার্কফ্লোর মাধ্যমেই চলে আসে।

Claude Code ব্যবহারের জন্য একটি Pro, Max, Team, Enterprise বা Console অ্যাকাউন্ট প্রয়োজন। ফ্রি Claude.ai প্ল্যানে এর অ্যাক্সেস অন্তর্ভুক্ত নেই। Claude সাবস্ক্রিপশন এবং API বিলিংয়ের মধ্যে পার্থক্য নির্ধারণ করা টুলটির ভেতরের যেকোনো সেটিংসের চেয়ে আপনার খরচের ওপর অনেক বেশি প্রভাব ফেলে।

Omnigent কী এবং একটি meta-harness কী পরিচালনা করে?

Databricks 2026 সালের জুন মাসে Omnigent ঘোষণা করে এবং এটিকে Apache 2.0 লাইসেন্সের অধীনে প্রকাশ করে। এটি নিজেকে একটি meta-harness হিসেবে অভিহিত করে। এটি কোনো agent loop বাস্তবায়ন করে না। বরং এটি বিদ্যমান agent-গুলোকে পরিচালনা করে: Claude, Codex, Cursor, OpenCode, Hermes, Pi এবং OpenAI-এর agents SDK (software development kit)। এগুলোর মধ্যে বেশ কয়েকটি harness তালিকায় দুবার উপস্থিত থাকে; একবার vendor-এর SDK-এর সাথে যোগাযোগ করার ফর্মে এবং একবার native ফর্মে যা vendor-এর আসল terminal program-কে wrap করে।

একটি agent হলো একটি YAML ফাইল, যেখানে YAML হলো একটি plain text configuration ফরম্যাট:

name: my_agent
prompt: You are a helpful data analyst.

executor:
  harness: claude-sdk

tools:
  word_count:
    type: function
    callable: mypackage.mymodule.word_count
  docs:
    type: mcp
    url: https://example.com/mcp
  researcher:
    type: agent
    prompt: Search for relevant information.

executor.harness লাইনটি পুরো প্রজেক্টের মূল ভিত্তি। claude-sdk-কে codex-এ পরিবর্তন করুন এবং একই prompt একই tools-এর সাথে ভিন্ন কোনো vendor-এ চলবে। একটি tool হলো একটি Python function, একটি MCP (model context protocol) server, অথবা অন্য একটি agent, এবং এই শেষোক্ত বিষয়টিই হলো multi-agent কাজের প্রকাশভঙ্গি: একটি sub-agent মূলত একটি tool। যদি আপনি এখনো সিদ্ধান্ত না নিয়ে থাকেন যে skills, MCP servers এবং rules ফাইলগুলো কোথায় থাকা উচিত, তবে agent skills, MCP এবং rules ফাইলের মধ্যে পার্থক্য আগে পড়ে নেওয়া ভালো, কারণ Omnigent তার নিচের harness যা সমর্থন করে, তা-ই উত্তরাধিকারসূত্রে গ্রহণ করে।

সরবরাহকৃত উদাহরণটি ধারণাটিকে স্পষ্ট করে। Polly হলো একটি coding orchestrator যা নিজে কোনো code লেখে না। এটি পরিকল্পনা করে, সমান্তরাল git worktrees-এ coding sub-agents-এর কাছে কাজ অর্পণ করে, এবং তারপর প্রতিটি diff-কে ভিন্ন কোনো vendor-এর মডেলে চলমান একজন reviewer-এর কাছে পাঠিয়ে দেয়।

প্রকাশিত script-এর মাধ্যমে এটি install করুন:

curl -fsSL https://raw.githubusercontent.com/omnigent-ai/omnigent/main/scripts/install_oss.sh | sh

অথবা ম্যানুয়ালি install করুন, যার জন্য Python 3.12 বা তার নতুন সংস্করণ প্রয়োজন:

uv tool install omnigent
omnigent setup
omnigent start

pip install "omnigent"-ও কাজ করে, এবং extras সাধারণত uv tool install "omnigent[databricks,modal]" দিয়ে নির্বাচন করা হয়। omnigent setup credentials এবং defaults সংগ্রহ করে। omnigent start server শুরু করে, machine-টিকে host হিসেবে register করে এবং http://localhost:6767-এ একটি web UI পরিবেশন করে। omnigent server status এবং omnigent stop হলো অন্য দুটি command যা আপনি প্রতিদিন ব্যবহার করবেন। একটি সাধারণ omnigent server শুরু না করেই একটি interactive session খোলে।

dependency তালিকাটি এক লাইনের installer-এর চেয়ে দীর্ঘ: Python 3.12 বা তার নতুন সংস্করণ, git, Node.js 22 LTS (long term support) বা তার নতুন সংস্করণ (npm এবং pnpm সহ), native terminal wrappers-এর জন্য tmux, এবং Linux sandbox-এর জন্য bubblewrap (bwrap)। এটি এর ডিজাইনের সরাসরি ফলাফল। Omnigent-কে নিজেই vendor CLI-গুলো install এবং supervise করতে হয়, তাই এটি এমন একটি Python software যার কাজ হলো Node.js software চালানো।

মডেল কারা সরবরাহ করে এবং এর খরচ কারা বহন করে?

এটি এমন একটি বিষয় যার ব্যবহারিক প্রভাব সবচেয়ে বেশি এবং এর তিনটি উত্তর সম্পূর্ণ ভিন্ন।

DeepSeek Harness-এর ক্ষেত্রে আপনাকে নিজের রিসোর্স ব্যবহার করতে হবে। এর ইনস্টল করা প্রোভাইডার ক্যাটালগে Anthropic, OpenAI, Bedrock, Vertex, Azure এবং Codex অন্তর্ভুক্ত রয়েছে। একটি কাস্টম প্রোভাইডার এন্ট্রির জন্য একটি ছোট হাতের অক্ষরের প্রোভাইডার আইডি, একটি ডিসপ্লে নেম, একটি বেস URL, একটি API প্রোটোকল, একটি ক্রেডেনশিয়াল এবং অন্তত একটি মডেল প্রয়োজন হয়; এভাবেই আপনি এটিকে কোনো কোম্পানির গেটওয়ে বা সেলফ-হোস্টেড সার্ভারের দিকে নির্দেশ করেন। কি (keys) গুলো $DSH_HOME/.credentials.yaml-এ লেখা হয় এবং $DSH_HOME/settings.yaml শুধুমাত্র সেগুলোর একটি রেফারেন্স রাখে, যার মানে হলো সেটিংস ফাইলটি শেয়ার করা নিরাপদ কিন্তু ক্রেডেনশিয়াল ফাইলটি নয়। একটি গেটওয়ে এন্ট্রিতে এর পরিবর্তে একটি এনভায়রনমেন্ট ভেরিয়েবলের নাম উল্লেখ করা যেতে পারে, যেমন apiKeyEnv: GATEWAY_API_KEY। প্রজেক্টের নামের সাথে মিল থাকলেও, এর কোনো কিছুই আপনাকে DeepSeek-এর নিজস্ব মডেল ব্যবহার করতে বাধ্য করে না। আপনি যদি আসল কি (key) দিয়ে ফাইলগুলো পূরণ করতে চান বা কোনো লোকাল Ollama এন্ডপয়েন্টের দিকে নির্দেশ করতে চান, তবে dsh কি, মডেল এবং এন্ডপয়েন্ট সংযোগ করা নির্দেশিকাটি প্রতিটি মোড এবং কোন মোডে আপনার মেশিন থেকে কী তথ্য বাইরে যায় বা যায় না তা বিস্তারিত ব্যাখ্যা করে।

Claude Code ডিজাইন অনুযায়ী একটি নির্দিষ্ট ভেন্ডরের সাথে যুক্ত। আপনি একটি পেইড অ্যাকাউন্ট দিয়ে লগ ইন করেন, অথবা ANTHROPIC_API_KEY সেট করেন এবং Claude Code ব্রাউজার খোলার পরিবর্তে সেই কি (key) অনুমোদন করার জন্য আপনাকে একবার প্রম্পট করবে। এই দ্বিতীয় পদ্ধতিটি হেডলেস সার্ভারে কাজ করে। যেসব প্রতিষ্ঠান ইতিমধ্যে অন্য কোথাও ক্যাপাসিটি কিনে রেখেছে, তারা Amazon Bedrock, Google Cloud-এর Agent Platform বা Microsoft Foundry-এর মাধ্যমে রাউট করতে পারে।

Omnigent-এর জন্য এর নিচের হার্নেস যা প্রয়োজন তা omnigent setup-এর মাধ্যমে সংগ্রহ করতে হয়। এটি API কি, বিদ্যমান CLI সাবস্ক্রিপশন, OpenAI-সামঞ্জস্যপূর্ণ বা Anthropic-সামঞ্জস্যপূর্ণ গেটওয়ে এবং Databricks ওয়ার্কস্পেস গ্রহণ করে। একটি মেটা-হার্নেসের আসল খরচ এখানেই: একটি মেশিন শেষ পর্যন্ত প্রতিটি ভেন্ডরের ক্রেডেনশিয়াল ধারণ করে। মেশিনটি পাবলিক ইন্টারনেটের কাছাকাছি নেওয়ার আগে কীভাবে সিক্রেটগুলোকে AI এজেন্টের নাগালের বাইরে রাখবেন তা পড়ে নিন।

2026 সালের আগস্ট মাস পর্যন্ত প্রতিটি টুলের পরিপক্কতা কেমন?

Claude Code 2025 সাল থেকে সবার জন্য উন্মুক্ত এবং 2026 সালের আগস্ট পর্যন্ত এটি 2.1.x লাইনে রয়েছে। এটি ব্যাকগ্রাউন্ডে স্বয়ংক্রিয়ভাবে আপডেট হয়, latest এবং stable রিলিজ চ্যানেল অফার করে, GPG-স্বাক্ষরিত রিলিজ ম্যানিফেস্ট প্রকাশ করে এবং যেসব প্রতিষ্ঠানের জন্য একটি নির্দিষ্ট ভার্সন প্রয়োজন তাদের জন্য minimumVersion পিন করার সুবিধা নথিবদ্ধ করে। এটি এমন একটি পণ্যের প্রোফাইল যা মানুষ ইতিমধ্যেই প্রোডাকশনে ব্যবহার করছে।

Omnigent 2026 সালের জুন মাস থেকে পাবলিক হয়েছে, এটি এখনও 0.x সিরিজে রয়েছে এবং এর README ফাইল এটিকে আলফা হিসেবে বর্ণনা করে। আশা করা যায় যে, হারনেস লিস্ট এবং YAML স্কিমা উভয়ই পরিবর্তন হতে থাকবে। এটি ব্যবহারযোগ্য, তবে এখনও স্থিতিশীল নয়।

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

প্রতিটির লাইসেন্স কী?

DeepSeek Harness হলো MIT লাইসেন্সভুক্ত, যার থার্ড-পার্টি লাইসেন্সগুলো THIRD_PARTY_NOTICES.md-এ উল্লেখ করা আছে। Omnigent হলো Apache 2.0 লাইসেন্সভুক্ত। Claude Code ওপেন সোর্স নয়: এটি Anthropic-এর একটি বাণিজ্যিক পণ্য এবং এটি চালানোর জন্য একটি পেইড অ্যাকাউন্ট বা বিলযোগ্য API অ্যাক্সেস প্রয়োজন। যদি আপনার প্রয়োজন হয় যে আপনি প্রতিটি লাইন পড়তে এবং প্যাচ করতে পারবেন, তবে কোনো ফিচার তুলনা করার আগেই Claude Code বাদ পড়ে যায়। যদি আপনার প্রয়োজন হয় যে টুলটি আপনার কোনো বাড়তি মনোযোগ ছাড়াই আগামী মাসেও কাজ চালিয়ে যাবে, তবে সেই প্রয়োজনটি অন্য দিকে নির্দেশ করে।

প্রতিটির জন্য একটি VPS-এ কী কী প্রয়োজন?

তিনটির মধ্যে Claude Code সবচেয়ে সহজ। এটি ইনস্টল করুন, লগ ইন করুন এবং tmux-এর ভেতরে চালান যাতে SSH (secure shell) সংযোগ বিচ্ছিন্ন হলেও সেশনটি টিকে থাকে। Anthropic-এর নথিপত্র অনুযায়ী, Ubuntu 20.04 বা তার পরবর্তী, Debian 10 বা তার পরবর্তী, অথবা Alpine 3.19 বা তার পরবর্তী সংস্করণে 4 GB বা তার বেশি RAM (random access memory) এবং একটি x64 বা ARM64 প্রসেসর প্রয়োজন। Alpine-এ কাজ করার জন্য প্রথমে bash, curl, libgcc, libstdc++ এবং ripgrep ইনস্টল করা থাকতে হবে, কারণ এগুলো ছাড়া ইনস্টল কমান্ডটি not found ত্রুটির কারণে ব্যর্থ হয়। tmux-এর ভেতরে VPS-এ Claude Code চালানো অংশে সেশন হ্যান্ডলিং বিস্তারিত আলোচনা করা হয়েছে।

DeepSeek Harness-এর জন্য Node.js এবং এর ওয়েব UI দেখার জন্য একটি ব্রাউজার প্রয়োজন। README-তে Node.js-এর কথা বলা হলেও কোনো নির্দিষ্ট ন্যূনতম সংস্করণের কথা উল্লেখ নেই, তাই Node 22 LTS ব্যবহার করা নিরাপদ, কারণ আশেপাশের ইকোসিস্টেম এটিকেই লক্ষ্য করে তৈরি। পোর্ট 3080 পাবলিক করবেন না। সার্ভারটিকে 127.0.0.1-এ রাখুন এবং আপনার ল্যাপটপ থেকে পোর্টটি ফরওয়ার্ড করুন:

ssh -N -L 3080:127.0.0.1:3080 you@your-vps

এরপর স্থানীয়ভাবে http://127.0.0.1:3080 ওপেন করুন। VPS-এ সম্পূর্ণ DeepSeek Harness ইনস্টলেশন অংশে প্রোফাইল লেআউট এবং প্লাগইন কমান্ডগুলো আলোচনা করা হয়েছে।

Omnigent সবচেয়ে ভারী, কারণ এটি অন্যদের CLI ইনস্টল ও সুপারভাইজ করে। এটি একই মেশিনে Python 3.12, Node.js 22, npm, pnpm, tmux এবং bubblewrap দাবি করে এবং এর পাশাপাশি আপনি যে ভেন্ডর CLI সক্রিয় করবেন, সেটিও এটি ডাউনলোড করে নেবে। একইভাবে এর পোর্ট ফরওয়ার্ড করুন:

ssh -N -L 6767:127.0.0.1:6767 you@your-vps

অন্যরা ব্যবহার করবে এমন সার্ভারের জন্য, সমর্থিত পদ্ধতি হলো deploy/-এর অধীনে Docker ডিপ্লয়মেন্ট, যা ডিফল্টভাবে মাল্টি-ইউজার অ্যাকাউন্ট সক্রিয় করে। ম্যানুয়ালি চালু করা সার্ভারেও OMNIGENT_AUTH_ENABLED=1 সেট করে একই সুবিধা পাওয়া যায় এবং OIDC (OpenID Connect) লগইন Google, GitHub, Okta ও Microsoft-এর সাথে কাজ করে। Omnigent মাল্টি-এজেন্ট হারনেস গাইড অংশে স্যান্ডবক্স প্রোভাইডারগুলো আলোচনা করা হয়েছে, যা এজেন্টরা ডিস্কে কিছু লেখার সাথে সাথেই গুরুত্বপূর্ণ হয়ে ওঠে।

আপনার সার্ভারের পাবলিক IP ঠিকানায় ওয়েব UI কেন খালি দেখাচ্ছে?

উভয় ওয়েব হারনেস ডিফল্টভাবে লুপব্যাক (loopback)-এ লিসেন করে, তাই স্বাভাবিকভাবেই মনে হতে পারে যে সেগুলোকে 0.0.0.0-এ বাইন্ড করে পোর্টটি খুলে দেওয়া উচিত। এতে দুটি আলাদা সমস্যা তৈরি হয়। প্রথমটি হলো নিরাপত্তা: ডিফল্ট লোকাল মোডে এগুলোর কোনোটিতেই অথেন্টিকেশন থাকে না, তাই পোর্ট খুলে দেওয়া মানে আপনার VPS-কে সবার জন্য উন্মুক্ত করে দেওয়া। দ্বিতীয়টি হলো ব্রাউজারের একটি নিয়ম যা ব্যবহারকারীদের অবাক করে। crypto.randomUUID() শুধুমাত্র একটি নিরাপদ কনটেক্সটে সংজ্ঞায়িত থাকে, যার অর্থ হলো HTTPS (hypertext transfer protocol secure), localhost অথবা 127.0.0.1। যদি আপনি http://203.0.113.10:3080-এর মতো সাধারণ কোনো ঠিকানায় UI লোড করেন, তবে ব্রাউজার কনসোলে এই রিপোর্ট দেখা যাবে:

TypeError: crypto.randomUUID is not a function

এর ফলে পেজটি আংশিকভাবে রেন্ডার হয় অথবা একেবারেই হয় না, কারণ কোনো কিছু ড্র হওয়ার আগেই সেশন তৈরির প্রক্রিয়া ব্যর্থ হয়। সার্ভারে কোনো সমস্যা নেই এবং লগেও স্বাভাবিক অনুরোধই দেখা যাবে। ব্রাউজার এই অরিজিনকে বিশ্বাস করে না, তাই ফ্রন্ট-এন্ড যে ফাংশনের ওপর নির্ভর করে তা সংজ্ঞায়িতই হয় না। একটি SSH টানেল কোনো সার্টিফিকেট ছাড়াই এই সমস্যার সমাধান করে, কারণ 127.0.0.1 একটি নিরাপদ কনটেক্সট হিসেবে গণ্য হয়। একটি রিভার্স প্রক্সি যাতে আসল TLS (transport layer security) সার্টিফিকেট আছে, সেটিও এই সমস্যার সমাধান করে, তবে সেক্ষেত্রে আপনাকে নিজেই অথেন্টিকেশন যোগ করতে হবে।

আপনার জন্য কোনটি উপযুক্ত?

আপনি যদি এমন একটি কোডিং এজেন্ট চান যা বর্তমানে কার্যকর, Anthropic-কে অর্থ প্রদান করতে ইচ্ছুক হন এবং টার্মিনালেই আপনার কাজ করতে পছন্দ করেন, তবে Claude Code বেছে নিন। এই তিনটির মধ্যে এটিই একমাত্র সমাপ্ত বাণিজ্যিক পণ্য, কোনো প্রিভিউ সংস্করণ নয়।

আপনি যদি প্লাগইন মডেলকে গুরুত্ব দেন তবে DeepSeek Harness বেছে নিন: আপনি যদি মডেল অ্যাডাপ্টার, স্যান্ডবক্স বা এজেন্ট লুপ পরিবর্তন করতে চান এবং এটি মেনে নেন যে আপনি যে ইন্টারফেসের বিপরীতে কোড লিখছেন তা পরিবর্তিত হবে। এর প্রোভাইডার ক্যাটালগে Anthropic এবং OpenAI অন্তর্ভুক্ত রয়েছে, তাই এটি বেছে নেওয়া মানে DeepSeek-এর মডেলের ওপর নয়, বরং রানটাইমের ওপর বাজি ধরা।

আপনি যদি ইতিমধ্যে একাধিক এজেন্ট CLI ব্যবহার করেন এবং আপনার মূল সমস্যাটি হয় সমন্বয় সাধন: যেমন পলিসি, স্যান্ডবক্সিং, দ্বিতীয় কোনো ভেন্ডরের মডেল দ্বারা পর্যালোচনা এবং একটি শেয়ারড সেশন যা অন্যরা দেখতে পারে, তবে Omnigent বেছে নিন। এটি আপনার স্ট্যাকে একটি বাড়তি স্তর যোগ করে, আর যে স্তরের প্রয়োজন নেই তা যেকোনো সময় ভেঙে পড়তে পারে। যদি আপনার সমন্বয়ের সমস্যাটি এর চেয়ে ছোট হয়, তবে একই মেশিনে দুটি Claude Code সেশন কোনো অর্কেস্ট্রেটর ছাড়াই একে অপরকে বার্তা পাঠাতে পারে।

আপনি যদি এখনও বাছাই প্রক্রিয়ায় থাকেন, তবে Mimo Code AI coding agent-ও Claude Code-এর মতোই একই টার্মিনাল-এজেন্ট ক্যাটাগরিতে পড়ে। এছাড়া, আপনি যেটিরই সিদ্ধান্ত নিন না কেন, একটি ডিসপোজেবল VM-এ কোডিং এজেন্ট চালানো বিষয়টি পড়ে দেখা জরুরি, কারণ এই তিনটির কোনোটিই একটি অসতর্ক rm -rf-কে নিজে থেকে নিরাপদ করতে পারে না। এই তিনটির কোনোটিই এজেন্ট কত বড় diff প্রস্তাব করবে তা নির্ধারণ করে না, এটি প্রম্পট-স্তরের একটি বিষয়। তাই আপনি যে হারনেসই বেছে নিন না কেন, তার ওপর সবচেয়ে ছোট কার্যকর পরিবর্তন করতে এজেন্টকে উৎসাহিত করার দক্ষতা যোগ করা বুদ্ধিমানের কাজ হবে।

FAQ

Claude Code ব্যবহার করার জন্য কি আমার কোনো পেইড Anthropic প্ল্যান প্রয়োজন?

হ্যাঁ। Claude Code ব্যবহারের জন্য একটি Pro, Max, Team, Enterprise বা Console অ্যাকাউন্ট প্রয়োজন; ফ্রি Claude.ai প্ল্যানে এই সুবিধা নেই। একটি headless VPS-এ প্রথমবার চালানোর আগে ANTHROPIC_API_KEY সেট করে নিন: এতে ব্রাউজার খোলার চেষ্টা করার পরিবর্তে Claude Code আপনাকে একবার সেই কি (key) অনুমোদন করতে বলবে। যেসব প্রতিষ্ঠানের অন্য কোথাও সক্ষমতা আছে, তারা চাইলে Amazon Bedrock, Google Cloud-এর Agent Platform বা Microsoft Foundry ব্যবহার করতে পারে।

DeepSeek Harness কি Claude বা OpenAI মডেল চালাতে পারে?

হ্যাঁ। ইনস্টল করা প্রোভাইডার ক্যাটালগে Anthropic, OpenAI, Bedrock, Vertex, Azure এবং Codex অন্তর্ভুক্ত রয়েছে। Settings-এর অধীনে Models মেনু থেকে আপনি প্রতিটি প্রোভাইডারের জন্য আলাদা কি (key) যোগ করতে পারবেন। ক্যাটালগের বাইরের যেকোনো কিছু কাস্টম প্রোভাইডার হিসেবে যোগ করা যায়, যার জন্য একটি ছোট হাতের অক্ষরের প্রোভাইডার আইডি, একটি base URL, একটি API প্রোটোকল, একটি ক্রেডেনশিয়াল এবং অন্তত একটি মডেল প্রয়োজন। কি (key) গুলো $DSH_HOME/.credentials.yaml-এ সংরক্ষিত থাকে, আর $DSH_HOME/settings.yaml-এ শুধুমাত্র একটি রেফারেন্স থাকে। তাই ক্রেডেনশিয়াল ফাইলটির আলাদা ব্যাকআপ রাখুন এবং এটিকে ভার্সন কন্ট্রোলের বাইরে রাখুন।

Omnigent কি Claude Code-এর বিকল্প?

না। Omnigent মূলত Claude Code চালায়। এর হারনেস তালিকায় Claude, Codex, Cursor, OpenCode, Hermes এবং Pi অন্তর্ভুক্ত রয়েছে। একটি এজেন্ট তার YAML ফাইলে একটি মাত্র harness: লাইনের মাধ্যমে যেকোনো একটি মডেল নির্বাচন করে। আপনাকে মূল CLI নিজে ইনস্টল এবং অথেন্টিকেট করতে হবে। Omnigent এর উপরে অর্কেস্ট্রেশন, পলিসি এবং স্যান্ডবক্সিং সুবিধা যোগ করে। তাই আপনি যখন একাধিক এজেন্ট বা একাধিক ভেন্ডর নিয়ে কাজ করবেন, তখনই কেবল এর প্রয়োজনীয়তা দেখা দেবে।

আমার সার্ভারের পাবলিক IP ঠিকানায় DeepSeek Harness-এর ওয়েব UI কেন খালি দেখাচ্ছে?

কারণ একটি সাধারণ HTTP অরিজিন নিরাপদ কনটেক্সট নয়, তাই সেখানে crypto.randomUUID() অনির্ধারিত থাকে এবং ব্রাউজার কনসোলে TypeError: crypto.randomUUID is not a function রিপোর্ট করে। সেশন তৈরি হতে ব্যর্থ হয়, ফলে সার্ভার লগ স্বাভাবিক দেখালেও পেজটি আংশিক বা পুরোপুরি লোড হয় না। SSH-এর মাধ্যমে ssh -N -L 3080:127.0.0.1:3080 you@your-vps ব্যবহার করে পোর্টটি ফরওয়ার্ড করুন এবং http://127.0.0.1:3080 ওপেন করুন, কারণ লুপব্যাক (loopback) একটি নিরাপদ কনটেক্সট হিসেবে গণ্য হয়। একটি আসল TLS সার্টিফিকেটসহ রিভার্স প্রক্সি ব্যবহার করলেও এটি কাজ করবে, তবে সেক্ষেত্রে আপনাকে নিজে অথেন্টিকেশন যোগ করতে হবে।

এই হারনেসগুলোর জন্য একটি VPS-এ কতটুকু RAM প্রয়োজন?

Anthropic-এর ডকুমেন্টেশন অনুযায়ী Claude Code-এর জন্য 4 GB বা তার বেশি RAM প্রয়োজন। DeepSeek Harness বা Omnigent কোনো নির্দিষ্ট পরিমাণের কথা উল্লেখ করেনি, তাই অনুমান না করে মেপে দেখা ভালো। এই তিনটি ক্ষেত্রেই মডেলটি রিমোটলি চলে, তাই হারনেসটি মূলত প্রসেস সুপারভিশন এবং ফাইল নিয়ে কাজ করে, ইনফারেন্স (inference) নয়। সার্ভারের আকার মূলত নির্ভর করে এজেন্ট তার ওপর কী ধরনের কাজ করছে তার ওপর, যেমন কোনো বিল্ড বা টেস্ট স্যুট চালানো। Omnigent-এর জন্য সবচেয়ে বেশি রিসোর্স প্রয়োজন হয়, কারণ Python, Node.js, tmux এবং আপনার এনাবল করা প্রতিটি ভেন্ডর CLI একই মেশিনে চলে।