Platforms overview

Linux ऐप

Gateway Linux पर पूरी तरह समर्थित है और इसके लिए Node आवश्यक है। Bun का उपयोग अब भी निर्भरता इंस्टॉलर या पैकेज-स्क्रिप्ट रनर के रूप में किया जा सकता है, लेकिन यह OpenClaw नहीं चला सकता क्योंकि यह node:sqlite प्रदान नहीं करता।

डेस्कटॉप सहयोगी

OpenClaw Linux सहयोगी स्थानीय Gateway के लिए एक Tauri डेस्कटॉप ऐप है। यह:

  • OpenClaw CLI और प्रबंधित Node रनटाइम अनुपस्थित होने पर उन्हें इंस्टॉल करता है; रिलीज़ बिल्ड स्थिर चैनल को स्वचालित रूप से इंस्टॉल करते हैं, जबकि डेवलपमेंट बिल्ड पहले चैनल पूछते हैं
  • सेवा में बदलाव करने का प्रयास करने से पहले किसी स्वस्थ Gateway से जुड़ता है
  • इंस्टॉल, शुरू करने, रोकने और पुनः शुरू करने की कार्रवाइयाँ CLI-प्रबंधित systemd उपयोगकर्ता सेवा को सौंपता है
  • आस-पास के Bonjour Gateways खोजता है और प्रत्येक Control UI को रूट-स्कोप वाली विंडो में खोलता है, ताकि कई Gateway डैशबोर्ड जुड़े रह सकें और उनका एक साथ उपयोग किया जा सके
  • Gateway द्वारा उपलब्ध कराए गए Control UI को उसके निर्धारित प्रमाणीकरण URL के साथ खोलता है
  • पहली बार इंस्टॉल होने के बाद Control UI को ऑनबोर्डिंग मोड में खोलता है, जो पहचानी गई Claude Code, Codex या Hermes मेमोरी को एजेंट कार्यक्षेत्र में आयात करने का विकल्प देता है (यही आयात बाद में भी Settings → Import Memory के अंतर्गत उपलब्ध रहता है)
  • सह-स्थित CLI नोड होस्ट के लिए एजेंट-संचालित Canvas और बंडल की गई A2UI सामग्री रेंडर करता है
  • अपनी विंडो बंद होने पर भी सिस्टम ट्रे से उपलब्ध रहता है

main से निर्मित स्थिर रिलीज़, टैग की GitHub रिलीज़ पर एसेट के रूप में .deb और AppImage बंडल भेजती हैं, जिनके नाम OpenClaw-<version>-amd64.deb और OpenClaw-<version>-amd64.AppImage होते हैं और उनके पास एक SHA256SUMS.linux-app.txt चेकसम फ़ाइल होती है। .deb डाउनलोड करें और उसे sudo apt install ./OpenClaw-<version>-amd64.deb से इंस्टॉल करें, या AppImage को निष्पादन योग्य चिह्नित करके सीधे चलाएँ। AppImage रनटाइम को FUSE 2 (sudo apt install libfuse2, या Ubuntu 24.04+ पर libfuse2t64) चाहिए; इसके बिना AppImage को APPIMAGE_EXTRACT_AND_RUN=1 के साथ चलाएँ।

आप स्रोत चेकआउट से भी यही बंडल बना सकते हैं:

bash
cd apps/linux/src-tauripnpm dlx @tauri-apps/cli@2.11.4 build --bundles deb,appimage

Linux App CI कार्यप्रवाह ऐप को प्रभावित करने वाले पुल रिक्वेस्ट और मैन्युअल रन के लिए इन्हीं बंडलों को openclaw-linux-companion आर्टिफ़ैक्ट के रूप में अपलोड करता है। Linux बिल्ड निर्भरताओं और डेवलपमेंट कमांड के लिए रिपॉज़िटरी में apps/linux/README.md देखें।

त्वरित चैट

Ctrl+Shift+Space या त्वरित चैट ट्रे आइटम से त्वरित चैट खोलें। एजेंट चिप कॉन्फ़िगर किया गया अवतार, इमोजी या मोनोग्राम दिखाती है; एजेंट बदलने के लिए इसे चुनें। संदेश चुने गए एजेंट के मुख्य सत्र का उपयोग करते हैं और वैश्विक सत्र स्कोप का पालन करते हैं। मूल Rust क्लाइंट एक स्थायी Ed25519 डिवाइस पहचान का स्वामी है। यह पेयरिंग शुरू करने के लिए केवल CLI हैंडऑफ़ के साझा टोकन या पासवर्ड का उपयोग करता है, फिर बाद के कनेक्शनों पर Gateway द्वारा जारी डिवाइस टोकन को संग्रहीत करता है और प्राथमिकता देता है। पहचान और डिवाइस टोकन ऐप कॉन्फ़िगरेशन डायरेक्टरी में मोड 0600 वाली फ़ाइल में रहते हैं; त्वरित चैट के WebView को न तो क्रेडेंशियल मिलते हैं, न WebSocket।

मूल कनेक्शन अनुपलब्ध होने पर त्वरित चैट Gateway तक नहीं पहुँचा जा सकता — पुनः प्रयास जारी है दिखाती है और पुनः कनेक्शन होने तक भेजना अक्षम रखती है। पेयरिंग चरण तक पहुँच चुका रिमोट डिवाइस इसके बजाय डैशबोर्ड (Nodes) में इस डिवाइस को स्वीकृति दें दिखाता है और Gateway द्वारा उपलब्ध कराने पर एक छोटा डिवाइस ID भी दिखाता है। आवश्यक साझा क्रेडेंशियल न मिलने वाला Gateway Gateway को क्रेडेंशियल चाहिए — Gateway होस्ट पर डैशबोर्ड खोलें दिखाता है; उस स्थिति में कोई पेयरिंग अनुरोध स्वीकृति की प्रतीक्षा नहीं कर रहा होता। सर्वर द्वारा उपलब्ध कराया गया सुधार मार्गदर्शन अधिक विशिष्ट होने पर इन फ़ॉलबैक सूचनाओं को प्रतिस्थापित करता है। TLS Gateways के लिए CLI ऐप को Gateway प्रमाणपत्र का SHA-256 फ़िंगरप्रिंट देता है; मूल क्लाइंट उस प्रमाणपत्र को पिन करता है और डाउनटाइम से अलग Gateway TLS विश्वास विफल — प्रमाणपत्र फ़िंगरप्रिंट जाँचें रिपोर्ट करता है। जिन Gateways का साझा सीक्रेट SecretRef के माध्यम से कॉन्फ़िगर किया गया है, वे उसे CLI हैंडऑफ़ से बाहर रखते हैं। मौजूदा पेयर किए गए इंस्टॉल अपने संग्रहीत डिवाइस टोकन के माध्यम से काम करते रहते हैं, लेकिन नया इंस्टॉल उस बूटस्ट्रैप क्रेडेंशियल के बिना साझा-सीक्रेट प्रमाणीकरण के अंतर्गत लंबित पेयरिंग अनुरोध नहीं बना सकता। सेटअप-कोड और bootstrapToken रिडेम्पशन के लिए समर्पित उत्पाद UI आवश्यक है और यह भावी कार्य बना हुआ है; त्वरित चैट इनमें से किसी भी प्रवाह का प्रयास नहीं करती।

X11 पर कस्टम शॉर्टकट रिकॉर्ड या रीसेट करने के लिए त्वरित चैट में गियर का उपयोग करें। त्वरित चैट शॉर्टकट ट्रे टॉगल सामान्य त्वरित चैट ट्रे आइटम को अक्षम किए बिना इसे सक्षम या अक्षम करता है। Wayland पर वैश्विक शॉर्टकट उपलब्ध नहीं हैं, इसलिए शॉर्टकट सेटिंग्स छिपी रहती हैं और ट्रे आइटम प्रवेश बिंदु बना रहता है। भेजना स्वीकार होने के बाद त्वरित चैट खुली रहती है और चुने गए एजेंट का सादा-पाठ उत्तर कंपोज़र के नीचे स्ट्रीम करती है। बार और उसके उत्तर को हटाने के लिए Esc दबाएँ; Ctrl+Enter अब भी डैशबोर्ड खोलता है।

Canvas

Linux Canvas दो सहयोगी प्रक्रियाओं का उपयोग करता है। openclaw node run एकमात्र Gateway नोड कनेक्शन बना रहता है; बंडल किया गया linux-canvas Plugin, canvas.* कॉल को केवल-उपयोगकर्ता Unix सॉकेट पर चल रहे डेस्कटॉप ऐप को अग्रेषित करता है। ऐप एक ऑन-डिमांड WebView विंडो का स्वामी है, जिसमें बंडल किया गया A2UI रेंडरर और एजेंट तक वापस जाने वाला एक्शन ब्रिज शामिल है।

Plugin डिफ़ॉल्ट रूप से सक्षम है। यह Canvas का विज्ञापन केवल तब करता है जब डेस्कटॉप सॉकेट $XDG_RUNTIME_DIR/openclaw-canvas.sock पर मौजूद हो, या XDG_RUNTIME_DIR अनुपलब्ध होने पर /tmp/openclaw-canvas-$UID.sock पर मौजूद हो। इसे plugins.entries.linux-canvas.enabled: false से अक्षम करें। डेस्कटॉप ऐप के बिना हेडलेस Linux सर्वर पर Canvas का विज्ञापन नहीं किया जाता।

Linux v1 एक Canvas विंडो का उपयोग करता है। HTTP और HTTPS पेज रेंडर किए जा सकते हैं, लेकिन A2UI एक्शन केवल बंडल किए गए रेंडरर से स्वीकार किए जाते हैं।

CLI और SSH विकल्प

हेडलेस सर्वर, VPS या रिमोट Gateway के लिए CLI सबसे सरल विकल्प बना रहता है:

  1. Node 24.15+ (अनुशंसित), Node 22.22.3+ (LTS), या Node 25.9+ इंस्टॉल करें।
  2. npm i -g openclaw@latest
  3. openclaw onboard --install-daemon
  4. अपने लैपटॉप से: ssh -N -L 18789:127.0.0.1:18789 <user>@<host>
  5. http://127.0.0.1:18789/ खोलें और कॉन्फ़िगर किए गए साझा सीक्रेट से प्रमाणित करें (डिफ़ॉल्ट रूप से टोकन; यदि gateway.auth.mode, "password" है तो पासवर्ड)।

संपूर्ण सर्वर गाइड: Linux सर्वर। चरण-दर-चरण VPS उदाहरण: exe.dev

Node क्षमताएँ

बंडल किया गया Linux Node Plugin, डेस्कटॉप ऐप की आवश्यकता के बिना CLI को openclaw node सेवा डिवाइस क्षमताएँ देता है। कमांड का विज्ञापन Gateway को केवल तभी किया जाता है जब उनकी क्षमता सक्षम हो और आवश्यक स्थानीय टूल मौजूद हो।

क्षमता डिफ़ॉल्ट आवश्यकता
डेस्कटॉप सूचनाएँ (system.notify) चालू libnotify का notify-send और डेस्कटॉप सूचना सत्र
कैमरा फ़ोटो और क्लिप (camera.*) बंद FFmpeg, V4L2 कैमरा एक्सेस और क्लिप ऑडियो के लिए PulseAudio या PipeWire
स्थान (location.get) बंद GeoClue2 और इसका where-am-i डेमो

Plugin को openclaw.json में कॉन्फ़िगर करें:

json5
{  plugins: {    entries: {      "linux-node": {        config: {          notify: { enabled: true },          camera: { enabled: true },          location: { enabled: true },        },      },    },  },}

इन सेटिंग्स को बदलने के बाद नोड सेवा पुनः शुरू करें। उपलब्धता प्रत्येक प्रक्रिया के लिए एक बार निर्धारित होती है और पुनः शुरू होने पर नोड विज्ञापन फिर बनाया जाता है।

Gateway नोड के कमांड और क्षमता सरफ़ेस को डिवाइस पेयरिंग से अलग स्वीकृत करता है। पहली बार शुरू होने पर या अधिक क्षमताएँ सक्षम करने के बाद लंबित सरफ़ेस को स्वीकृति दें:

bash
openclaw nodes pendingopenclaw nodes approve <requestId>

नोड कनेक्ट और डिवाइस-पेयर हो सकता है, जबकि स्वीकृति पूरी होने तक उसके प्रभावी caps और commands खाली रह सकते हैं।

कैमरा डिवाइस सेवा उपयोगकर्ता द्वारा पठनीय होने चाहिए, आमतौर पर video समूह के माध्यम से। includeAudio के true होने पर कैमरा क्लिप डिफ़ॉल्ट PulseAudio या PipeWire स्रोत का उपयोग करती हैं; माइक्रोफ़ोन ऑडियो केवल उस क्लिप ट्रैक के रूप में मौजूद होता है, स्वतंत्र कमांड के रूप में नहीं। स्थान के लिए नोड-सेवा उपयोगकर्ता को होस्ट की GeoClue नीति द्वारा अनुमति मिलनी आवश्यक है।

camera.snap और camera.clip के लिए gateway.nodes.commands.allow के माध्यम से स्पष्ट Gateway आर्मिंग भी आवश्यक है। पेलोड, सीमाओं और त्रुटियों के लिए कैमरा कैप्चर और स्थान कमांड देखें।

इंस्टॉल

Gateway सेवा (systemd)

इनमें से किसी एक से इंस्टॉल करें:

bash
openclaw onboard --install-daemonopenclaw gateway installopenclaw configure   # संकेत मिलने पर "Gateway service" चुनें

मौजूदा इंस्टॉल की मरम्मत या माइग्रेशन करें:

bash
openclaw doctor

openclaw gateway install डिफ़ॉल्ट रूप से एक systemd उपयोगकर्ता यूनिट रेंडर करता है। साझा या हमेशा चालू रहने वाले होस्ट के लिए सिस्टम-स्तरीय यूनिट प्रकार सहित संपूर्ण सेवा मार्गदर्शन Gateway रनबुक में उपलब्ध है।

केवल कस्टम सेटअप के लिए यूनिट मैन्युअल रूप से लिखें। न्यूनतम उपयोगकर्ता-यूनिट उदाहरण (~/.config/systemd/user/openclaw-gateway[-<profile>].service):

ini
[Unit]Description=OpenClaw Gateway (प्रोफ़ाइल: <profile>, v<version>)After=network-online.targetWants=network-online.targetStartLimitBurst=5StartLimitIntervalSec=60 [Service]ExecStart=/usr/local/bin/openclaw gateway --port 18789Restart=alwaysRestartSec=5RestartPreventExitStatus=78TimeoutStopSec=30TimeoutStartSec=30SuccessExitStatus=0 143OOMPolicy=continueKillMode=control-group [Install]WantedBy=default.target

हाथ से लिखी गई यूनिटें उस अनुकूली हीप आकार निर्धारण को इनहेरिट नहीं करतीं जिसे openclaw gateway install प्रबंधित Gateway सेवाओं के लिए लिखता है। प्रबंधित इंस्टॉलर को प्राथमिकता दें, या नेटिव-मेमोरी हेडरूम का हिसाब लगाने के बाद कस्टम सुपरवाइज़र में स्पष्ट हीप सीमा सेट करें।

इसे सक्षम करें:

bash
systemctl --user enable --now openclaw-gateway[-<profile>].service

मेमोरी दबाव और OOM द्वारा समाप्ति

Linux पर जब किसी होस्ट, VM या कंटेनर cgroup की मेमोरी समाप्त हो जाती है, तो कर्नेल एक OOM लक्ष्य चुनता है। Gateway अनुपयुक्त लक्ष्य है क्योंकि यह दीर्घकालिक सत्रों और चैनल कनेक्शनों का स्वामी है, इसलिए OpenClaw जहाँ संभव हो अस्थायी चाइल्ड प्रक्रियाओं को पहले समाप्त करने की ओर झुकाव रखता है।

योग्य Linux चाइल्ड स्पॉन के लिए OpenClaw कमांड को एक छोटे /bin/sh शिम में रैप करता है, जो चाइल्ड के अपने oom_score_adj को 1000 तक बढ़ाता है, फिर वास्तविक कमांड को exec करता है। इसके लिए विशेषाधिकार आवश्यक नहीं हैं: कोई प्रक्रिया हमेशा अपना OOM स्कोर बढ़ा सकती है।

शामिल चाइल्ड प्रक्रिया सरफ़ेस:

  • सुपरवाइज़र-प्रबंधित कमांड चाइल्ड
  • PTY शेल चाइल्ड
  • MCP stdio सर्वर चाइल्ड
  • OpenClaw द्वारा लॉन्च की गई ब्राउज़र/Chrome प्रक्रियाएँ (Plugin SDK प्रोसेस रनटाइम के माध्यम से)

रैपर केवल Linux के लिए है और /bin/sh अनुपलब्ध होने पर या चाइल्ड env द्वारा OPENCLAW_CHILD_OOM_SCORE_ADJ को 0, false, no या off पर सेट करने पर छोड़ दिया जाता है।

चाइल्ड प्रक्रिया सत्यापित करें:

bash
cat /proc/<child-pid>/oom_score_adj

शामिल चाइल्ड के लिए अपेक्षित मान 1000 है; Gateway प्रक्रिया स्वयं अपना सामान्य स्कोर (आमतौर पर 0) बनाए रखती है।

systemd यूनिट का OOMPolicy=continue किसी अस्थायी चाइल्ड को OOM किलर द्वारा चुने जाने पर पूरी यूनिट को विफल चिह्नित करके सभी चैनल पुनः शुरू करने के बजाय Gateway सेवा को चालू रखता है; विफल चाइल्ड/सत्र अपनी त्रुटि स्वयं रिपोर्ट करता है।

यह सामान्य मेमोरी ट्यूनिंग का विकल्प नहीं है। यदि VPS या कंटेनर बार-बार चाइल्ड प्रक्रियाओं को समाप्त करता है, तो मेमोरी सीमा बढ़ाएँ, समवर्तीता घटाएँ या अधिक सशक्त संसाधन नियंत्रण जोड़ें (systemd MemoryMax=, कंटेनर मेमोरी सीमाएँ)।

संबंधित

Was this useful?
On this page

On this page