VPS-এ Agentlas OS self-host করার পদ্ধতি ও খরচ
Linux VPS-এ Agentlas OS v1.2.0 install করুন: pinned command, state কোথায় থাকে, Ollama কীভাবে যুক্ত করবেন এবং idle agent hub চালাতে বাস্তবে কত খরচ হয় জানুন।
Agentlas OS আসলে কী
Agentlas OS একটি open source agent runtime। এটি specialist agent-গুলোকে package হিসেবে disk-এ সংরক্ষণ করে এবং প্রতিটি task-এর জন্য একটি অস্থায়ী orchestrator তৈরি করে। নিজের Linux VPS-এ নিজের user account-এর মধ্যে এটি install করে self-host করতে পারেন। এটি কোনো service নয়। এখানে কোনো daemon, listening port, web interface বা repository-তে container image নেই।
শেষের বাক্যটিই এই পৃষ্ঠার বাকি বিষয় নির্ধারণ করে। অধিকাংশ multi-agent system একটি supervisor process চালু রাখে এবং agent-গুলো সেখানে সংরক্ষণ করে। Agentlas এই পদ্ধতি উল্টে দেয়: specialist-গুলো স্থায়ী file হিসেবে থাকে, আর কোনো task চলার সময়ই শুধু orchestrator তৈরি হয়। এর বাস্তব ফল হলো, idle hub-এর জন্য memory নয়, শুধু disk space লাগে।
প্রকল্পটি তার open core-কে Hephaestus বলে। Commands, paths এবং environment variables-এ আপনি এই নামটিই দেখবেন। Repository হলো agentlas-ai/Agentlas-OS, এর license Apache-2.0, এবং এটি মূলত Python-এ লেখা।
এই প্রকল্পটি বাস্তবে কতটা প্রাথমিক পর্যায়ে আছে
Repository-টি 4 June 2026-এ তৈরি হয়েছে। 12 August 2026 পর্যন্ত এর বয়স প্রায় দশ সপ্তাহ, এবং এতে প্রায় 1,150টি star ও 112টি fork রয়েছে। বাস্তব কাজের জন্য ব্যবহার করার ক্ষেত্রে এটি এখনও যথেষ্ট নতুন।
বয়সের চেয়ে release cadence বেশি গুরুত্বপূর্ণ। Version v1.1.103 প্রকাশিত হয়েছিল 8 August 2026-এ, আর v1.2.0 প্রকাশিত হয় 12 August 2026-এ। অর্থাৎ 1.1 series-এ একশর বেশি tagged release হয়েছে; কিছু দিনে একাধিক release-ও হয়েছে, এবং সেগুলো automation-এর মাধ্যমে প্রকাশ করা হয়েছে। এই গতিতে পরিবর্তিত কোনো প্রকল্পে Tuesday থেকে Thursday-এর মধ্যেই আপনার অজান্তে আচরণ বদলে যেতে পারে।
তাই release নির্দিষ্ট করে দিন। Installer এ জন্য একটি environment variable পড়ে, এবং নিচের পুরো guide-এ সেটিই ব্যবহার করা হয়েছে। দিনে একাধিকবার release হওয়া কোনো প্রকল্পের unpinned install আপনাকে সেই সময় main-এ যা ছিল, সেটিই দেবে।
VPS-এ যা প্রয়োজন
কোনো কিছু background-এ চলবে না বলে প্রয়োজনীয়তা কম।
- একটি Linux VPS। Ubuntu 24.04 একটি উপযুক্ত baseline। installer
uname -sদিয়ে operating system শনাক্ত করে এবং Linux-এর জন্য non-macOS branch ব্যবহার করে, তাই headless box সমর্থিত। - box-এ
curl,tarএবংgit, পাশাপাশি একটি কার্যকর Python interpreter। raw.githubusercontent.comএবংgithub.com-এ outbound HTTPS। installer একটি release archive download করে এবং এর SHA-256 যাচাই করে। তাই outbound reach না থাকা box-এ এটি install করা যাবে না।- একটি host harness, অর্থাৎ যে coding agent সরাসরি model-এর সঙ্গে যোগাযোগ করে। Claude Code, Codex, opencode, goose এবং Hermes—সবগুলো adapter হিসেবে সমর্থিত।
আপনার root প্রয়োজন নেই। installer শুধু আপনার home directory এবং ~/.local/bin-এ লেখে। কোনো path-এ লেখার অনুমতি না থাকলে এটি abort না করে warning দেখায়। আপনি যদি এখনও box নির্বাচন করে থাকেন, VPS-এ coding agent চালানো অংশে সেই ভিত্তির উপরে প্রয়োজনীয় base image ও access setup সম্পর্কে বলা হয়েছে।
পিন করা release ইনস্টল করুন
upstream README-তে একটি মাত্র লাইন দেখানো আছে, যা একটি script-কে main থেকে সরাসরি bash-এ pipe করে। এটি আগে download করে পড়ুন। script-টি আপনার shell configuration এবং যে agent harness-গুলো খুঁজে পায়, সেগুলোর প্রতিটিতে লিখে। তাই এটি পরীক্ষা করতে দশ সেকেন্ড সময় দেওয়া যুক্তিসঙ্গত।
curl -fsSL -o install-all-runtimes.sh \
https://raw.githubusercontent.com/agentlas-ai/Agentlas-OS/main/scripts/install-all-runtimes.sh
less install-all-runtimes.sh
HEPHAESTUS_REF=v1.2.0 bash install-all-runtimes.shHEPHAESTUS_REF হলো pin। script-এর ভিতরে লাইনটি হলো version="${HEPHAESTUS_REF:-v1.2.0}"। তাই এটি unset রাখলে আজ v1.2.0 ইনস্টল হতে পারে, কিন্তু পরের সপ্তাহে অন্য version ইনস্টল হতে পারে। এটি explicitভাবে set করুন। তাহলে October-এ rebuild করলে August-এ test করা version-ই ইনস্টল হবে।
একটি সীমাবদ্ধতা মনে রাখুন: উপরের script URL-টি main অনুসরণ করে, আর HEPHAESTUS_REF script যে runtime payload download করে সেটি pin করে। এগুলো দুটি আলাদা বিষয়। উভয়টি pin করতে main-এর বদলে tag থেকে script আনুন। সেই URL-এ main-এর পরিবর্তে v1.2.0 বসান।
সফলভাবে run হলে script যে path-গুলোতে লিখেছে, সেগুলো দেখায়। এর মধ্যে এই দুটি লাইন থাকে:
Installed runner: /home/you/.agentlas/runtime/current/bin/hephaestus
Installed shell commands in /home/you/.local/bin (add ~/.local/bin to PATH to use them)দ্বিতীয় লাইনটি অনেকেই উপেক্ষা করেন। নতুন Ubuntu system-এ ~/.local/bin প্রায়ই PATH-এ থাকে না। তাই ইনস্টল সফল হলেও প্রতিটি hep-* command command not found দিয়ে ব্যর্থ হয়। এটি ঠিক করে নিশ্চিত করুন:
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
hep-global statushep-global status global router কী ইনস্টল করেছে এবং কোন harness শনাক্ত করেছে তা জানায়। এটি অন্তত একবার run হলে আপনার PATH সঠিক আছে।
স্টেট কোথায় থাকে
আপনার home directory-এর অধীনে সবকিছুই file হিসেবে থাকে। তাই backup এবং migration সহজ হয়।
~/.agentlas/runtime/v1.2.0/-এ runtime নিজেই থাকে, আর~/.agentlas/runtime/current/active version-এর দিকে নির্দেশ করা একটি symlink। পাশাপাশি দুটি pinned version রাখা যায়।~/.local/bin/-এ shell wrapper থাকে:hephaestus,hep-build,hep-network,hep-search,hep-storm,hep-cloudএবংhep-upload।~/.agentlas/networking/memory/-এ স্থায়ী memory থাকে:playbook-registry.json,playbook-candidates.jsonlএবংmemory-events.jsonl।~/.agentlas/networking/hub-agents/<slug>/memory/experience.sqlite-এ owner অনুযায়ী scope করা প্রতিটি agent-এর experience থাকে।<project>/.agentlas/ontology-runtime.sqlite-এ প্রতিটি project-এর state থাকে। তাই এটি server-এর বদলে repository-এর সঙ্গে স্থানান্তরিত হয়।~/.cache/agentlas/python-এ Linux-এর Python cache থাকে। macOS-এ ভিন্ন path ব্যবহৃত হয়; installerunameব্যবহার করে এই branch বেছে নেয়।
Memory documentation-এ স্পষ্টভাবে বলা আছে, কোনো memory scope-এ secrets, raw credentials এবং সম্পূর্ণ transcripts রাখা যাবে না। Credential value gitignored local file-এ থাকে, আর memory record-এ শুধু নাম ও path রাখা হয়। ~/.agentlas এবং আপনার project-এর .agentlas directory backup করুন। তাহলে নতুন VPS-এ সবকিছু পুনর্নির্মাণ করতে পারবেন।
এটি কোন মডেল backend-এ নির্দেশ করতে পারে
এখানে এমন একটি বিষয় আছে যা পুরো সেটআপটি নতুনভাবে বোঝায়: Agentlas সরাসরি কোনো model API কল করে না। এই কাজটি host harness করে।
Architecture document-এ এমন runtime adapter-এর বর্ণনা আছে, যা একটি core-কে প্রতিটি harness-এর উপযোগী করে অনুবাদ করে। সেখানে আরও বলা হয়েছে যে model credential-এর মালিক host runtime। Agentlas দুটি surface সরবরাহ করে, যা harness ব্যবহার করে: একটি AgentSkills file এবং একটি MCP (model context protocol) server, যা stdio-এর মাধ্যমে যোগাযোগ করে। তাই "Agentlas কোন model সমর্থন করে" প্রশ্নটির প্রকৃত অর্থ হলো "আপনার harness কোন model সমর্থন করে"। উত্তর হলো, Claude Code, Codex, opencode, goose বা Hermes যে model-এ পৌঁছাতে পারে, সেটিই ব্যবহার করা যাবে।
Codex-style TOML config-এ MCP server নিবন্ধনের ধরন:
[mcp_servers.hephaestus-network]
command = "~/.agentlas/runtime/current/bin/hephaestus"
args = ["mcp", "serve"]Install-এর সময় একই server স্বয়ংক্রিয়ভাবে ~/.cursor/mcp.json, ~/.config/goose/config.yaml এবং অন্যান্য harness config-এও নিবন্ধিত হয়। একই box-এ একাধিক server সংযুক্ত করলে VPS-এ MCP server চালানো অংশে stdio এবং process model সম্পর্কে আরও বিস্তারিত ব্যাখ্যা আছে।
স্থানীয়ভাবে হোস্ট করা Ollama endpoint-এ নির্দেশ করুন
Harness মডেলের সংযোগ নিয়ন্ত্রণ করে। তাই Agentlas-কে স্থানীয় মডেলের দিকে নির্দেশ করতে হলে আপনার harness-কে Ollama-এর দিকে নির্দেশ করতে হবে। এই কাজের জন্য Ollama v0.15-এ একটি launch subcommand যোগ করা হয়েছিল। 11 August 2026 পর্যন্ত v0.32.9-এও এটি রয়েছে। এটি কোনো environment variable সেট না করেই বিদ্যমান harness-কে স্থানীয় মডেলের জন্য configure করে:
ollama pull qwen3-coder:30b
ollama launch opencodeআপনি যে harness ইনস্টল করেছেন, তার ওপর নির্ভর করে opencode-এর পরিবর্তে claude, codex অথবা droid ব্যবহার করুন। এরপর স্থানীয় runtime-এর মাধ্যমে একটি request পাঠান:
~/.agentlas/runtime/current/bin/hephaestus route "summarise the failing tests" --runtime ollamaসফলভাবে route হলে একটি JSON decision ফেরত আসে। এতে নির্বাচিত agent বা team-এর নাম এবং একটি receipt_id থাকে। কার্যকর কোনো ফল না এলে সাধারণ কারণ হলো context length। Agentlas documentation routing-নির্ভর session-এর জন্য অন্তত 64k context-সমর্থিত model ব্যবহারের কথা বলে। উদাহরণ হিসেবে সেখানে qwen3-coder, gemma3 এবং deepseek-r1-এর নাম দেওয়া হয়েছে। Coding tool-এর জন্য Ollama-এর নিজস্ব নির্দেশনাতেও একই 64k minimum উল্লেখ করা হয়েছে। Routing decision-এর prompt-এর মধ্যে agent inventory থাকে। তাই 8k বা 32k context-সমর্থিত model inventory-টি truncate করে এবং ভুল নির্বাচন করে।
Tagline-এ একটি গুরুত্বপূর্ণ সীমাবদ্ধতা উল্লেখ করা হবে না। Ollama, Gemma এবং DeepSeek-এর নিজস্ব plugin বা command system নেই। তাই সেখানে /agentlas slash command-গুলো থাকে না। Local-model setup-এ আপনাকে MCP server এবং hephaestus route command-এর মাধ্যমে system পরিচালনা করতে হবে। এতে ব্যবহারের পরিসর সত্যিই কিছুটা কমে। তবে model weights নিজের server-এ রাখার বিনিময়ে এটাই বাস্তব সীমাবদ্ধতা।
নিষ্ক্রিয় specialist hub RAM-এ কত খরচ করে
কিছুই না। পুরো উত্তর এটাই, এবং অনুমানের বদলে আপনি এটি প্রমাণ করতে পারেন।
ধার করা hub specialist-রা process হিসেবে নয়, package artifact হিসেবে আসে। একটি specialist হলো একটি agent.md এবং JSON-সমৃদ্ধ একটি .agentlas/ directory: trigger ও capability-এর জন্য routing-card.json, লেখার সীমার জন্য memory-map.json, এবং এটি একা নাকি team হিসেবে চলে তা নির্ধারণের জন্য mode-map.json। Hephaestus Network-কে background service ছাড়া in-process scheduler হিসেবে বর্ণনা করা হয়েছে। task-এর মধ্যবর্তী সময়ে নিজেই পরীক্ষা করুন:
pgrep -af hephaestus
systemctl --user list-units --type=service | grep -i agentlas
du -sh ~/.agentlasনিষ্ক্রিয় box-এ প্রথম দুটি command কিছুই print করে না, কারণ কোনো কিছু resident নেই। তৃতীয় command-টি দেখায়, parked hub আপনার ওপর যে একমাত্র খরচ চাপায় তা হলো disk। আপনি যত বেশি specialist রাখবেন এবং runtime-এর সঙ্গে যত বড় bundled embedding model আসবে, এই খরচ তত বাড়বে।
তাই memory-সংক্রান্ত প্রশ্নটি সম্পূর্ণভাবে burst-এর প্রশ্ন, আর burst নির্ভর করে আপনার harness এবং model backend-এর ওপর। harness যদি hosted API-র সঙ্গে কথা বলে, resident খরচ কয়েকশো megabyte-এর একটি process। আপনি যদি weights self-host করেন, তাহলে মূল খরচ weights-এর:
The data behind this chart
[
{
"label": "Hosted API model",
"weights_gb": 0
},
{
"label": "gemma3:4b",
"weights_gb": 3.3
},
{
"label": "gemma3:12b",
"weights_gb": 8.1
},
{
"label": "gemma3:27b",
"weights_gb": 17
},
{
"label": "qwen3-coder:30b",
"weights_gb": 19
}
]এগুলো Ollama-এর model library-তে প্রকাশিত download size, কোনো benchmark run থেকে নেওয়া পরিমাপ নয়। উপরন্তু, 64k context-এর জন্য KV cache উপরের প্রতিটি শূন্যের চেয়ে বড় মানের সঙ্গে যোগ হয়। Agentlas docs-এ প্রথমে উল্লেখ করা model, qwen3-coder:30b, context-এর আগে 19 GB weights চায়। এমনকি 27B Gemma variant-ও 17 GB চায়। এই সংখ্যাগুলোর তুলনায় Agentlas layer নিজে budget-এ দৃশ্যমান হয় না।
একটি harness চালানোর তুলনায় এটি কেমন
একটি hosted API-এর বিরুদ্ধে একটি harness চালালে আপনার VPS-এ একটি process থাকে। Agentlas যোগ করলে একই একটি process-এর সঙ্গে files-ও থাকে। Orchestrator কোনো অতিরিক্ত দীর্ঘসময় চলমান program নয়। এটি disk-এ থাকা packages থেকে তৈরি করা একটি বড় prompt, যা কাজ শেষ হলে বাদ দেওয়া হয়।
যে খরচটি বাড়ে, তা memory নয়, context। কয়েকটি specialist card এবং তাদের routing metadata যুক্ত করা একটি orchestrator সাধারণ harness-এর তুলনায় প্রতিটি task-এ বেশি tokens ব্যবহার করে। hosted API-এর ক্ষেত্রে এটি RAM নয়, অর্থের খরচ। local weights ব্যবহার করলে এটি সময়ের খরচ, কারণ দীর্ঘ prompt CPU-তে prefill সময় বাড়ায় বা GPU-তে বেশি load সৃষ্টি করে।
এই কারণে এ ধরনের box-এর sizing পরামর্শ agent framework নয়, model নির্বাচন অনুসরণ করে। coding agent VPS-এর জন্য RAM ও CPU নির্ধারণ বিষয়টি বিস্তারিতভাবে ব্যাখ্যা করে। এখানেও একই সিদ্ধান্ত প্রযোজ্য: আপনি যে backend চালাতে চান, সেই অনুযায়ী plan নির্বাচন করুন। এরপর harness-এর জন্য কয়েক gigabytes অতিরিক্ত headroom রাখুন। তুলনার জন্য যদি always-on supervisor design চান, Omnigent multi-agent harness তার coordinator-কে resident রাখে। এটি বিপরীত trade-off, যা idle memory-তে সরাসরি দেখা যায়।
ব্যর্থতার ধরন এবং যে বার্তাগুলো আপনি দেখতে পাবেন
hep-build: command not found পরিষ্কার ইনস্টলের পরপরই। ইনস্টলারটি ~/.local/bin-এ লিখেছে, যা ডিফল্ট Ubuntu image-এ PATH-এর মধ্যে নেই। শেষ লাইনে এটি উল্লেখ করা হয়েছিল, কিন্তু সেই লাইনটি স্ক্রিনে আর দেখা যাচ্ছিল না। উপরে দেখানো export যোগ করুন।
বক্সটি পুনর্নির্মাণের পর আচরণ পরিবর্তিত হয়। আপনি HEPHAESTUS_REF সেট করেননি, তাই ইনস্টলারটি সেদিনের বর্তমান tag ব্যবহার করেছে। এটি নির্দিষ্ট করে দিন এবং অন্যান্য version number-এর পাশে সেই নির্ধারণটি লিখে রাখুন।
লোকাল model-এ routing ভুল specialist নির্বাচন করে। agent inventory-এর জন্য model-এর context window খুব ছোট। 64k বা তার বেশি context window-সমৃদ্ধ model ব্যবহার করুন এবং Ollama-এর context length-ও একই মানে সেট করুন, কারণ default মান coding tools-এর প্রয়োজনের চেয়ে কম।
ollama launch স্বীকৃত হচ্ছে না। এই subcommand Ollama v0.15-এ যুক্ত হয়েছে। distribution repository-এর পুরোনো package-গুলো এর আগের, তাই বর্তমান Ollama ইনস্টল করুন।
ইনস্টলেশন আপনার প্রত্যাশার বাইরে থাকা harness-এ লিখছে। script যে সব harness খুঁজে পায়, সেগুলো শনাক্ত করে configure করে এবং ~/.claude/, ~/.codex/, ~/.gemini/, ~/.cursor/ ও অন্যান্য directory-তে লেখে। shared build box-এ এটি চালানোর আগে script পড়ুন এবং কোন directory-গুলো আপনার প্রয়োজন তা নিশ্চিত করুন।
এটি কি এখনই চালানো উচিত
দিনে একাধিকবার স্বয়ংক্রিয় release হওয়া দশ সপ্তাহের পুরোনো কোনো project-কে production workload-এর অধীনে চালানো উচিত নয়। এর architecture সত্যিই আকর্ষণীয়, license হলো Apache-2.0, এবং file-based design-এর কারণে এটি uninstall করতে মাত্র দুটি directory মুছতে হয়। তাই এটি পরীক্ষা করে দেখা সহজ, কিন্তু এর ওপর নির্ভর করা ব্যয়বহুল।
এই মুহূর্তে একটি যুক্তিসংগত পদ্ধতি হলো: v1.2.0 pin করে রাখুন, এমন একটি box-এ এটি চালান যেটি প্রয়োজনে rebuild করতে পারবেন, আপনার backup-এ ~/.agentlas রাখুন, এবং pin পরিবর্তনের আগে changelog আবার পড়ুন। এই ক্ষেত্রের অন্যান্য বিকল্প এবং প্রতিটির maturity সম্পর্কে বিস্তৃত পর্যালোচনার জন্য self-hosted AI agent-এর roundup ভালো সূচনা। Agentlas যে harness-গুলোর একটি গ্রহণ করে, তার একটি VPS-এ Hermes agent self-host করার বিষয়ে VPS-এ Hermes agent self-host করা-এ আলোচনা করা হয়েছে।
FAQ
Agentlas OS কি আমার VPS-এ server হিসেবে চলে?
না। Repository-তে কোনো daemon, কোনো listening port এবং কোনো container image নেই। Installer ~/.agentlas/runtime/-এর অধীনে runtime এবং ~/.local/bin-এ command wrapper লেখে। Hephaestus Network background service নয়; এটি in-process scheduler। একটি idle machine-এ আপনি এটি যাচাই করতে পারেন: pgrep -af hephaestus কিছুই output করে না এবং enable করার মতো কোনো systemd unit নেই। এখানে self-hosting বলতে code ও state আপনার machine-এ থাকা বোঝায়; কোনো service listening করছে এমন নয়।
Idle specialist-সমৃদ্ধ একটি hub কত RAM ব্যবহার করে?
কোনোটিই নয়, কারণ idle specialist-গুলো process নয়। একটি specialist হলো একটি agent.md file এবং একটি .agentlas/ directory, যেখানে routing-card.json, memory-map.json এবং অনুরূপ metadata থাকে। তাই parked hub-এর খরচ disk space। এটি du -sh ~/.agentlas দিয়ে মাপুন। Memory কেবল task চলার সময় ব্যবহৃত হয়। এই memory ব্যবহার করে আপনার harness process এবং model backend, Agentlas layer নয়।
আমি কোন model ব্যবহার করতে পারি, এবং এটিকে কি নিজের Ollama-র দিকে নির্দেশ করা যায়?
Agentlas নিজে model API call করে না। Credentials এবং connection host harness পরিচালনা করে। তাই supported model হলো আপনার harness যে model সমর্থন করে সেগুলো। Local weights-এর জন্য ollama launch opencode চালান এবং claude, codex অথবা droid-এর একটি বসান। এতে কোনো environment variable ছাড়াই আপনার Ollama server-এর জন্য harness configure হয়। অন্তত 64k context-সহ একটি model ব্যবহার করুন, যেমন qwen3-coder অথবা gemma3। কারণ routing prompt-এ agent inventory থাকে এবং ছোট context window-এ তা দ্রুত truncate হয়।
কোন version install করা উচিত, এবং এখানে pinning গুরুত্বপূর্ণ কেন?
12 August 2026-এ বর্তমান tagged release v1.2.0 install করুন। এর জন্য installer চালানোর আগে HEPHAESTUS_REF=v1.2.0 সেট করুন। Script-এর নিজস্ব default হলো version="${HEPHAESTUS_REF:-v1.2.0}", যা maintainers পরবর্তী যে tag প্রকাশ করেন তা অনুসরণ করে। এখানে pinning স্বাভাবিকের চেয়ে বেশি গুরুত্বপূর্ণ। কারণ project তার 1.1 series-এ একশোর বেশি release প্রকাশ করেছে, কোনো কোনো দিনে একাধিক release-ও হয়েছে। তাই কয়েক সপ্তাহ পরে unpinned rebuild করলে আপনি যে system test করেছিলেন সেটি পাবেন না।