इस प्रोजेक्ट के बारे में

Downcity एक एजेंट इंफ्रास्ट्रक्चर प्रोजेक्ट है जो डेवलपर्स, इंडी बिल्डर्स और टीमों के लिए है जो कई एजेंट-पावर्ड प्रोडक्ट्स और वर्कफ़्लोज़ को शिप करते हैं। इसका आधार एक पुन: उपयोग करने योग्य रनटाइम लेयर है जो कई एजेंटों और प्रोडक्ट्स की सेवा करता है, ताकि मॉडल रूटिंग, टूल्स, मेमोरी, टास्क, ऑथेंटिकेशन, यूसेज, बिलिंग और ऑपरेशंस को हर नए AI प्रोडक्ट के लिए फिर से बनाने की आवश्यकता न हो। यह रिपॉजिटरी एक pnpm वर्कस्पेस मोनोरेपो है। पब्लिक downcity पैकेज दो कमांड सतहों को उजागर करता है: city/downcity, जो लोकल सिटी कंटेनर है जो एजेंटों को प्रबंधित और चलाता है, और fed/downfed, जो एक फेडरेशन सर्वर मैनेजर है। सपोर्टिंग पैकेजेस में @downcity/workspace (वर्कस्पेस रिसोर्सेज, रूटेड फ़ाइल और सर्च टूल्स, एनवायरनमेंट, प्राइवेट स्टोरेज और बिल्ट-इन शेल), @downcity/agent (एजेंट रनटाइम और सिटी कंटेनर जिसमें AgentWorkspace, Session, Plugin SDK, मल्टी-एजेंट ओनरशिप और HTTP/RPC ट्रांसपोर्ट है), @downcity/federation (फेडरेशन रनटाइम और एम्बेसी SDK जिसमें सर्विसेज, ऑथ, एनवायरनमेंट, ब्यूरो, यूजर और एडमिन एक्सेस है), @downcity/type (शेयर किए गए प्रोटोकॉल टाइप), @downcity/services (अकाउंट्स, बैलेंस, यूसेज, पेमेंट और स्ट्राइप फ़्लोज़) और @downcity/ui (कंसोल और होस्ट एप्लिकेशन के लिए रिएक्ट + टेलविंड कंपोनेंट्स) शामिल हैं। स्टार्टर टेम्पलेट्स एजेंट, एज फेडरेशन, लोकल फेडरेशन और रिएक्ट UI परिदृश्यों को कवर करते हैं, और एक होमपेज डायरेक्टरी में वेबसाइट और एंड-यूजर डॉक्यूमेंटेशन है। सामान्य लोकल यूसेज: npm या pnpm के साथ CLI इंस्टॉल करें, downcity federation use और federation status के साथ एक फेडरेशन से कनेक्ट करें, downcity agent create . के साथ एक रिपॉजिटरी को वर्कस्पेस के रूप में रजिस्टर करें, फिर downcity on के साथ लोकल सिटी शुरू करें और downcity agent list या downcity status के साथ इसे इंस्पेक्ट करें। एजेंट पहचान और कॉन्फ़िग यूजर-लेवल ~/.downcity डायरेक्टरी (agents/, plugins/) में रहते हैं, जबकि वर्कस्पेस को एक्ज़ीक्यूशन टाइम पर एंटर किया जाता है। README में कहा गया है कि एजेंटों की कोई स्वतंत्र स्टार्टेड/स्टॉप्ड स्टेट नहीं है, और चैट तब भी काम करती है जब CLI सिटी बंद हो, क्योंकि इंटरैक्शन के लिए एक अस्थायी लोकल सिटी बनाई और डिस्पोज की जाती है। सूचीबद्ध बिल्ट-इन एजेंट क्षमताओं में चैट, टास्क, मेमोरी, शेल, कॉन्टैक्ट, स्किल, वेब, साउंड और वर्कबोर्ड शामिल हैं। एकीकरण कई स्तरों पर पेश किया गया है। SDK उदाहरण एक शेल सैंडबॉक्स के साथ एक वर्कस्पेस बनाता है, एक एजेंट और सेशन बनाता है, होस्ट एप्लिकेशन द्वारा बनाए गए मॉडल को इंजेक्ट करता है (README में कहा गया है कि @downcity/agent खुद प्रोवाइडर या मॉडल IDs को रिज़ॉल्व नहीं करता है), एक प्रॉम्प्ट भेजता है और समाप्त टर्न का इंतज़ार करता है। एक RemoteAgent क्लास बेस URL के माध्यम से HTTP पर एक चल रही सिटी से कनेक्ट होता है। प्रोडक्ट सतहों में Downcity CLI, Agent SDK, City SDK और UI SDK, साथ ही प्लगइन्स, सर्विसेज और रिएक्ट UI कंपोनेंट्स शामिल हैं। प्लेटफ़ॉर्म सपोर्ट और सेफ्टी: macOS सीटबेल्ट का उपयोग करता है, लिनक्स बबल रैप का उपयोग करता है, और विंडोज़ 11 24H2 और उससे आगे (बिल्ड 26100+) को विकास/अस्थिर के रूप में वर्णित किया गया है, जिसमें माइक्रोसॉफ्ट MXC प्रोसेस कंटेनर और नेटिव cmd.exe एक्ज़ीक्यूशन है। README में कहा गया है कि प्रीफ़्लाइट फेलियर कभी भी अनरिस्ट्रिक्टेड एक्ज़ीक्यूशन में वापस नहीं जाते, और MXC एक प्रोडक्शन सिक्योरिटी बाउंडरी के बजाय पब्लिक प्रीव्यू में है। शेल और स्क्रिप्ट कमांड डिफ़ॉल्ट रूप से एजेंट सैंडबॉक्स में चलते हैं, जिसमें एक लिखने योग्य प्रोजेक्ट, ओपन नेटवर्क और .downcity/sandbox के तहत सैंडबॉक्स होम/कैश है। सलाह में git status और git diff के साथ परिवर्तनों का ऑडिट करना, लोकल एनवायरनमेंट वेरिएबल्स या downcity env में सीक्रेट्स रखना, कंसोल, HTTP और चैट बाउंड्री के लिए टोकन का उपयोग करना, और यह ध्यान रखना शामिल है कि होस्ट-लेवल इंस्टॉल्स और सिस्टम-डायरेक्टरी राइट्स सैंडबॉक्स के बाहर पड़ते हैं। डॉक्यूमेंटेशन downcity.ai/docs पर प्रकाशित है, जिसमें अलग-अलग सिटी SDK, एजेंट SDK और UI SDK पेज, पैकेज-लेवल READMEs, और मुख्य README का एक सरलीकृत चीनी अनुवाद शामिल है।