NanoClaw – Apple container isolation environment में चलने वाला 500-line TypeScript-आधारित Claude assistant
(github.com/gavrielc)- NanoClaw Apple container में चलने वाला एक personal Claude-आधारित AI assistant है, जो single-process architecture और बहुत कम files वाले lightweight system के रूप में बना है
- हर group-स्तरीय container isolation के जरिए chat history और file system को अलग रखा जाता है, और यह WhatsApp messaging, scheduled tasks, web access आदि को support करता है
- किसी config file के बिना Claude Code installation और customization को guide करता है, और user सीधे code बदलकर इसे अपने अनुसार ढाल सकता है
- नए features code जोड़कर नहीं बल्कि ‘Skill’ files से extend किए जाते हैं, और
/add-telegram,/convert-to-dockerजैसी कई extension requests दी गई हैं - जटिल frameworks की जगह समझ में आने वाली security structure और simplicity को प्राथमिकता दी गई है, ताकि solo developers या startups सुरक्षित रूप से AI assistant बना सकें
परियोजना अवलोकन
- NanoClaw, Apple Container environment में चलने वाला एक personal Claude assistant है, जिसे lightweight और security को केंद्र में रखकर design किया गया है
- यह एक single Node.js process में चलता है, और हर agent Linux container के भीतर isolated file system का उपयोग करता है
- codebase लगभग 500 lines के TypeScript से बना है, और इसका दावा है कि user पूरी structure को 8 मिनट के भीतर समझ सकता है
- यह MIT license के तहत open source है और GitHub पर 500 से अधिक Stars प्राप्त कर चुका है
design philosophy
- समझने योग्य scale: microservices, message queues, या जटिल abstractions के बिना single process structure
- isolation के जरिए security: केवल explicitly mounted directories तक access संभव है, और Bash commands भी सिर्फ container के अंदर चलती हैं
- single-user focus: framework नहीं बल्कि personal software, जिसे fork करने के बाद सीधे modify किया जा सकता है
- config की जगह code edits: config files को न्यूनतम रखा गया है, और इच्छित behavior code changes से लागू किया जाता है
- AI-native approach: installation, debugging, monitoring — सब कुछ Claude Code conversational interface के जरिए
- skill-based extensibility: feature additions code changes से नहीं बल्कि
.claude/skillsdirectory की skill files से की जाती हैं
मुख्य features
- WhatsApp I/O: phone से सीधे Claude के साथ message exchange
- group-wise context isolation: हर group का अपना
CLAUDE.mdmemory और container file system होता है - main channel: administration के लिए personal channel, जो बाकी groups से पूरी तरह अलग है
- scheduled tasks: periodic jobs चलाना और automatic messages भेजना
- web access: search और content collection capabilities
- optional integrations:
/add-gmailजैसी skills के जरिए Gmail सहित external services integration
customization
- बिना config file के Claude Code conversation के जरिए सीधे changes किए जा सकते हैं
- उदाहरण: “trigger word को @Bob में बदलो”, “responses को और छोटा करो”, “हर हफ्ते conversation summary save करो”
/customizecommand step-by-step modification support देता है- codebase छोटा होने के कारण Claude इसे सीधे और सुरक्षित रूप से modify कर सकता है
विस्तार और contribution model
- नए features PR के रूप में सीधे जोड़ने के बजाय skills के रूप में दिए जाते हैं
- उदाहरण:
/add-telegram,/add-slack,/add-discordजैसी communication channel extensions /convert-to-dockerसे Apple Container को Docker में बदला जा सकता है/setup-windowsसे WSL2-आधारित Windows support/add-clearसे session summary और compression feature जोड़ा जा सकता है
- उदाहरण:
- contributors skills के जरिए अपने fork को बदलते हैं और फिर उसे वापस project के साथ share करते हैं
system requirements और structure
- macOS Tahoe(26) या उससे ऊपर, Node.js 20+, Claude Code, Apple Container आवश्यक हैं
- architecture flow:
WhatsApp (baileys) → SQLite → Polling loop → Container (Claude Agent SDK) → Response - मुख्य files:
src/index.ts: main app और WhatsApp connectionsrc/container-runner.ts: container execution managementsrc/task-scheduler.ts: scheduling featuressrc/db.ts: SQLite integrationgroups/*/CLAUDE.md: group-wise memory storage
FAQ सारांश
- WhatsApp क्यों: क्योंकि author व्यक्तिगत रूप से WhatsApp इस्तेमाल करता है; दूसरे channels skills से बदले जा सकते हैं
- Apple Container क्यों: macOS में built-in, lightweight और fast
- क्या Linux पर चल सकता है: Claude Code के जरिए लगभग 30 मिनट में port किया जा सकता है
- security: container isolation आधारित, explicit mounts के अलावा access संभव नहीं
- config files क्यों नहीं: config sprawl रोकने और code-centric customization बनाए रखने के लिए
- debugging कैसे: Claude Code से सीधे पूछकर problem solving
- किस तरह के changes allowed हैं: केवल security, bug fixes, और default configuration improvements
license
- MIT License के तहत वितरित
- कोई भी इसे स्वतंत्र रूप से modify और redistribute कर सकता है
1 टिप्पणियां
Hacker News की राय
इसे सच में चलाना बहुत खतरनाक लग रहा है
अभी ठीक दिखे तो भी, एक बार गड़बड़ हुई तो खेल खत्म
Claw जैसी चीज़ को shared conversation space से जोड़ना सचमुच एक खतरनाक प्रयोग जैसा लगता है
black hat लोग पहले से नज़र रखे हुए हैं, और आखिर में बहुत से लोगों को बड़ा नुकसान हो सकता है
शायद अभी हम सस्ते LLM और बिना ads वाले एक सुनहरे दौर का आनंद ले रहे हैं
मैं भी इन दिनों search results के बहुत spammy हो जाने की वजह से, AI से सीधे comparison या quote पूछकर काम चला रहा हूँ
लेकिन डर है कि जल्द ही जवाबों में ads और paid recommendations मिलने लगेंगी
आजकल जब मैं अपना बनाया code public करता हूँ, तो docs या README मैं खुद हाथ से लिखने की कोशिश करता हूँ
LLM की गंध वाली documentation हो तो project अच्छा होने पर भी दिलचस्पी कम हो जाती है
उसमें किसी इंसान का सच्चा इरादा महसूस नहीं होता
typo हों तब भी मानवीय explanation कहीं बेहतर लगती है
वैसे, लेखक ने मेरे comment के बाद README बदल दिया
बदले हुए commit का लिंक
तुम्हारी बात के मुताबिक AI जैसी गंध वाले हिस्से ठीक कर दिए हैं, और अब यह काफी बेहतर है
यह code कोई masterpiece नहीं, बल्कि मेरे काम का व्यावहारिक code है
उम्मीद है दूसरों को भी reference के तौर पर मदद मिलेगी
इसे वीकेंड में security structure पर ध्यान देकर बनाया था, और अभी फिलहाल समेटना था इसलिए थोड़ा rough state में डाल दिया
README पढ़ोगे तो project का context बेहतर समझ आएगा
code में AI का इस्तेमाल ठीक है, लेकिन intro इंसान को खुद लिखना चाहिए
पहले code खुद ‘मेहनत का सबूत’ होता था, लेकिन अब वह बहुत आसानी से बन जाता है, इसलिए उसका वज़न कम हो गया है
संबंधित thread लिंक
Clawdbot की एक खासियत यह है कि यह सभी permissions allow करता है
लेकिन ऐसे external actions की sandboxing कैसे हो रही है, यह सवाल बना हुआ है
Apple Container में हर container का lightweight VM के साथ 1:1 mapping होता है, इसलिए यह काफी स्थिर लगता है
इसका इस्तेमाल करने वाले general code execution sandbox के उदाहरण के रूप में instavm/coderunner है
इसे Claude Code जैसे AI के साथ भी जोड़ा जा सकता है
Clawdbot ऐसा लगता है जैसे 100 दूसरे साल के छात्र दरवाज़ा पीटकर root access माँग रहे हों
यह project बढ़िया लग रहा है
मैं भी सोच रहा था कि क्या आजकल Claude Pro/Max subscription के साथ Agent SDK इस्तेमाल किया जा सकता है,
और official Quickstart docs के अनुसार यह संभव है
उसमें लिखा है कि install के बाद terminal में login करने पर SDK automatic authentication इस्तेमाल करता है
यानी subscription account से सीधे SDK इस्तेमाल नहीं किया जा सकता, ऐसा लगता है
अच्छा होगा अगर Anthropic इसे साफ करे
क्योंकि यह Agents SDK इस्तेमाल करता है, मुझे लगता है कि यह TOS violation नहीं होगा
लेकिन container के अंदर auth session बनाए रखना नहीं आता था, इसलिए OAuth token को environment variable के रूप में inject करने वाली एक तरकीब लगाई
यही एक security hole है। कोई malicious user prompt injection से token निकाल सकता है
अगर किसी को container में session auth सही तरह जोड़ने का तरीका पता हो तो मदद करे
इन docs के हिसाब से subscription account से भी खुलकर agent-style apps बनाए जा सकते हैं
गैर-तकनीकी लोग अक्सर सिर्फ hallucination rate में कमी देखकर model पर ज़्यादा भरोसा करने लगते हैं
लेकिन असली खतरा malicious prompt attacks है
credit card के शुरुआती दौर की तरह, अभी बस नुकसान खुलकर सामने नहीं आया है
जल्द ही कई घटनाएँ सामने आने के बाद ही लोग सचेत होंगे
मैं चाहता था कि कोई इसका ज़्यादा सुरक्षित version बना दे
OpenClaw उपयोगी है, लेकिन साथ ही डरावना भी
इसलिए मेरा Mac mini अभी बंद पड़ा है
Docker की जगह Apple Container इस्तेमाल करना दिलचस्प है
शायद Mac Mini पर resources बचाने के लिए ऐसा किया गया होगा
लेकिन सवाल है कि क्या इससे standard Linux tooling सीमित तो नहीं होती
OpenClaw के छोटे version का idea अच्छा लगा
code लगभग 2500 lines का दिखता है, और Apple Container की संरचना भी दिलचस्प है
Quick Start में
git clone https://github.com/anthropics/nanoclaw.gitलिखा हैलेकिन वह repository मौजूद नहीं है। यह क्या आधिकारिक Anthropic project है, यही सवाल है
शक होता है कि कहीं README hallucination से तो नहीं बना
संबंधित commit लिंक
इसमें Obsidian vault से Claude Code जोड़ा गया है, और WhatsApp से cron jobs schedule की जा सकती हैं
बड़े OpenClaw की तुलना में यह कहीं सरल है और मेरी समझ की सीमा में है, इसलिए ज़्यादा सहज लगता है
अच्छा होगा अगर दूसरे लोग भी इसे सिर्फ reference के रूप में इस्तेमाल करें
आजकल ऐसे vibe-coded apps देखकर, मैं सीधे Claude Code से वैसी चीज़ खुद बना लेता हूँ
किसी और की चीज़ इस्तेमाल करने से बेहतर है कि अपनी ज़रूरत के हिसाब से बनाया जाए
इससे बाहरी libraries की value घट रही है
supply-chain attacks या license बदलने का जोखिम भी कम हो जाता है
यह ऐसा समय है जहाँ code खुद documentation भी है और configuration भी
इसलिए OpenClaw से ज़्यादा ऐसे हल्के customized versions पसंद आते हैं
इसे fork करके starting point की तरह इस्तेमाल करो, या Claude को reference के रूप में दे दो, और अपना version तुरंत बना लो