ब्लॉग · गाइड · 28 अक्टूबर 2026
नए Ubuntu VPS पर AEGIS इंस्टॉल करें और अपना पहला स्वीकृत टास्क चलाएँ
प्रकटीकरण: AEGIS को 100monkeys.ai बनाता है, इसलिए इस गाइड को बनाने वाले का विवरण मानकर पढ़ें। इसका मसौदा हमारे एक AI एजेंट ने docs.100monkeys.ai पर सार्वजनिक AEGIS दस्तावेज़ों (अंग्रेज़ी में) से तैयार किया और कंपनी ने इसकी समीक्षा की; यह हिन्दी संस्करण मूल अंग्रेज़ी गाइड का अनुवाद है। नीचे दी गई हर कमांड उन्हीं दस्तावेज़ों या हमारे होम पेज से हूबहू कॉपी की गई है। इस गाइड के लिए हमने यह पूरा क्रम किसी नए VPS पर नहीं चलाया, और जहाँ दस्तावेज़ आपस में अलग बात कहते हैं, वहाँ हम अनुमान लगाने के बजाय यही बताते हैं।
AEGIS by 100monkeys.ai, in beta एक सेल्फ़-होस्टेड ऑर्केस्ट्रेटर है जो स्वायत्त एजेंटों को अलग-थलग, नीति-लागू रनटाइम में टिकाऊ स्थिति (durable state) के साथ चलाता है। यह गाइड एक नए Ubuntu सर्वर को चालू लोकल स्टैक तक ले जाती है, फिर एक एजेंट को इंसानी स्वीकृति गेट के पीछे चलाती है, ताकि एजेंट का काम रुककर तब तक इंतज़ार करे जब तक आप yes न कहें।
शुरू करने से पहले
जान लें कि क्विक इंस्टॉल किस लिए है। Getting Started पेज साफ़ कहता है: aegis init "is designed for local testing and evaluation only. It uses an in-memory secrets store and does not deploy Keycloak (IAM) or OpenBao (secrets management)." (यह केवल लोकल टेस्टिंग और मूल्यांकन के लिए बना है। यह मेमोरी में रखे सीक्रेट स्टोर का उपयोग करता है और Keycloak (IAM) या OpenBao (सीक्रेट प्रबंधन) डिप्लॉय नहीं करता।) Infrastructure Requirements पेज इसका IAM "None (unauthenticated)" (कोई नहीं, बिना प्रमाणीकरण) और TLS "None" (कोई नहीं) बताता है। प्रोडक्शन के लिए दस्तावेज़ इसके बजाय aegis-deploy रिपॉज़िटरी की ओर इशारा करते हैं।
इसलिए VPS पर इस स्टैक को एक निजी लैब की तरह रखें। CLI के हेल्थ चेक डिफ़ॉल्ट रूप से होस्ट 127.0.0.1 और पोर्ट 8088 का उपयोग करते हैं। उस पोर्ट को इंटरनेट के लिए न खोलें; मशीन तक SSH से पहुँचें।
आपको चाहिए:
- एक Ubuntu या Debian सर्वर, जिस तक आप SSH से ऐसे यूज़र के साथ पहुँच सकें जो
sudoचला सके। इंस्टॉलर "runs on Ubuntu or Debian (it needsapt-get)" (Ubuntu या Debian पर चलता है और उसेapt-getचाहिए)। - एक x86_64 मशीन। इंस्टॉलर जिस रिलीज़ को पिन करता है उसमें Linux x86_64 आर्काइव
aegis-linux-x86_64.tar.gzहै। - किसी मॉडल प्रदाता की API कुंजी। दस्तावेज़ों का प्रदाता पेज अपना-मॉडल-लाएँ alias प्रणाली के तहत OpenAI, Anthropic और Ollama को कवर करता है।
चरण 1. इंस्टॉलर चलाएँ
100monkeys.ai पर छपी लाइन कॉपी करें और उसे अपने सामान्य यूज़र के रूप में चलाएँ:
curl -fsSL https://get.100monkeys.ai | bash
चाहें तो पहले स्क्रिप्ट पढ़ लें। दस्तावेज़ कहते हैं कि https://get.100monkeys.ai, aegis-orchestrator की main ब्रांच पर मौजूद install.sh पर रीडायरेक्ट करता है। Linux पर यह curl, ca-certificates और fuse3 न होने पर इंस्टॉल करता है, जहाँ बाइनरी को ज़रूरत हो वहाँ libfuse3 इंस्टॉल करता है, और Docker न होने पर Docker Engine (docker-ce) इंस्टॉल करता है। अगर Docker चल रहा है पर आपका यूज़र उस तक नहीं पहुँच सकता, तो यह आपको docker समूह में जोड़ देता है। फिर यह aegis को /usr/local/bin/aegis में इंस्टॉल करता है और aegis up --tag <version> से स्टैक शुरू करता है।
किसी रिलीज़ को पिन करने के लिए, चलाने से पहले AEGIS_VERSION को किसी रिलीज़ टैग पर सेट करें; दस्तावेज़ों के Releases पेज पर हर प्रकाशित पैकेज की सूची है।
चरण 2. बाइनरी और स्टैक जाँचें
aegis --version
aegis status
aegis status लोकल स्टैक की सेहत बताता है। अगर इंस्टॉल के दौरान आपको docker समूह में जोड़ा गया था, तो लॉग आउट करके फिर लॉग इन करें ताकि नए शेल में वह समूह आ जाए।
चरण 3. गाइडेड सेटअप चलाएँ और मॉडल प्रदाता चुनें
aegis init
विज़ार्ड "prepares stack files, configures the node, starts Docker Compose services, verifies health, and can optionally load smoke-test agents" (स्टैक फ़ाइलें तैयार करता है, नोड कॉन्फ़िगर करता है, Docker Compose सेवाएँ शुरू करता है, सेहत जाँचता है, और चाहें तो स्मोक-टेस्ट एजेंट लोड कर सकता है)। पूछे जाने पर hello-world स्मोक टेस्ट स्वीकार करें; अगला चरण उसी का उपयोग करता है। यह जो कॉन्फ़िगरेशन लिखता है वह मॉडल alias default, smart, judge और tool-judge को आपके चुने प्रदाता से जोड़ता है। hello-world एजेंट smart का नाम लेता है, और जिस alias को नोड नहीं जोड़ता वह Model alias '<alias>' not found के साथ विफल होता है, इसलिए प्रदाता वाला सवाल पूरा करें। जब तक आप --dir न दें, स्टैक फ़ाइलें ~/.aegis में जाती हैं।
चरण 4. hello-world को एक बार, बिना निगरानी, चलाएँ
गेट जोड़ने से पहले साबित करें कि लूप काम करता है:
aegis task execute hello-world \
--input '{"task": "Write a Python function that returns the Fibonacci sequence up to n."}' \
--follow
--follow इटरेशन इवेंट स्ट्रीम करता है। एजेंट कोड बनाता है, वैलिडेशन चलाता है, और या तो सफल होता है या कई इटरेशन में सुधार करता रहता है जब तक उसके वैलिडेटर पास न हो जाएँ।
चरण 5. स्वीकृति गेट वाला वर्कफ़्लो लिखें
AEGIS में स्वीकृति kind: Human वाली वर्कफ़्लो स्थिति है। इसे approved-task.yaml के रूप में सहेजें। यह Building Workflows पेज के उदाहरण के ढाँचे पर है, जिसे एक एजेंट और एक गेट तक छोटा किया गया है:
apiVersion: 100monkeys.ai/v1
kind: Workflow
metadata:
name: approved-task
version: "1.0.0"
description: "One agent drafts, a person approves, then the run completes."
spec:
initial_state: DRAFT
states:
DRAFT:
kind: Agent
agent: hello-world
timeout: 600s
transitions:
- condition: on_success
target: APPROVE
- condition: on_failure
target: FAILED
APPROVE:
kind: Human
prompt: |
Draft:
{{DRAFT.output}}
Approve? (yes/no)
timeout: 86400s
transitions:
- condition: input_equals_yes
target: DONE
- condition: input_equals_no
target: FAILED
DONE:
kind: System
command: "echo 'Approved'"
transitions: []
FAILED:
kind: System
command: "echo 'Rejected or failed'"
transitions: []
चरण 6. इसे डिप्लॉय करें और एक रन शुरू करें
aegis workflow deploy ./approved-task.yaml --force
aegis workflow run approved-task \
--input '{"task": "Write a Python function that returns the Fibonacci sequence up to n."}'
run कमांड एक execution id छापती है। उस पर नज़र रखें:
aegis workflow logs <execution-id> --follow --verbose
aegis workflow executions get <execution-id>
ड्राफ़्ट पूरा होने पर executions get मौजूदा स्थिति APPROVE (WAITING FOR HUMAN SIGNAL) दिखाता है। जब तक कोई जवाब न दे, गेट के बाद का कुछ भी नहीं चलता।
चरण 7. ड्राफ़्ट पढ़ें, फिर जवाब दें
aegis workflow signal <execution-id> --response yes
इसके बजाय no जवाब देने पर रन FAILED में जाता है। जिस गेट का कोई जवाब नहीं देता वह अपने टाइमआउट के बाद समाप्त हो जाता है; डिफ़ॉल्ट व्यवहार में रन human_input_timeout कारण के साथ विफल चिह्नित होता है।
एक बात जान लें: दस्तावेज़ इस शब्द पर एकमत नहीं हैं। Human Approvals पेज कहता है कि हाँ-या-ना गेट ["yes", "no"] जवाब लेता है; Building Workflows पेज --response approved से सिग्नल भेजता है; CLI पेज --response "approve" दिखाता है। हम yes का उपयोग करते हैं क्योंकि input_equals_yes ट्रांज़िशन का नाम उसी पर है। अगर रन आगे न बढ़े, तो executions get जाँचें और दूसरे रूप आज़माएँ।
यह गाइड क्या कवर नहीं करती
- प्रोडक्शन। aegis-deploy का उपयोग करें, जो Keycloak, OpenBao, Caddy के ज़रिए TLS और ऑब्ज़र्वेबिलिटी जोड़ता है।
- API को बाहर खोलना।
aegis initस्टैक पर कोई IAM नहीं है, इसलिए पोर्ट 8088 तक पहुँचने वाला कोई भी उस पर कार्रवाई कर सकता है। - हार्डवेयर का आकार। दस्तावेज़ एक निर्भरता तालिका देते हैं (Docker 24.0+ या Podman 4.0+, PostgreSQL 15+, SeaweedFS, वर्कफ़्लो के लिए Temporal), पर हमें लोकल स्टैक के लिए न्यूनतम RAM का आँकड़ा नहीं मिला, इसलिए हम कोई आँकड़ा नहीं बताते।
आगे
गेट के पीछे की सोच के लिए How to give an orchestrator an approval step (अंग्रेज़ी में) पढ़ें। हर रन के आसपास क्या दर्ज करना है, इसके लिए प्रोडक्शन में AI एजेंटों के लिए ट्रेसबिलिटी चेकलिस्ट पढ़ें। अगर आप चाहते हैं कि आपके एजेंटों के नोट्स और कोड एक ही रिकॉर्ड में हों जिसे वे MCP से पढ़ और लिख सकें, तो MCP से Claude Code को Carbon Forge से जोड़ें देखें।