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

Serena एक Model Context Protocol (MCP) टूलकिट है जिसे AI कोडिंग एजेंटों को सिमेंटिक कोड खोज, संपादन, रीफैक्टरिंग और डिबगिंग के लिए IDE-स्तरीय क्षमताएँ प्रदान करने के लिए डिज़ाइन किया गया है। यह प्रतीक (symbol) स्तर पर कार्य करता है, कोड में संबंधपरक संरचना का उपयोग करता है, जिससे एजेंट तेज़ी, अधिक कुशलता और अधिक विश्वसनीयता से काम कर सकते हैं, विशेष रूप से बड़े और जटिल कोडबेस में। मुख्य विशेषताएँ निम्नलिखित हैं: - **सिमेंटिक रिट्रीवल**: प्रतीक खोजें, फ़ाइल रूपरेखा प्राप्त करें, संदर्भित प्रतीक खोजें, प्रोजेक्ट निर्भरताएँ खोजें, टाइप पदानुक्रम, घोषणाएँ और कार्यान्वयन खोजें, बाहरी प्रोजेक्ट क्वेरी करें, और डायग्नोस्टिक्स प्राप्त करें। - **रीफैक्टरिंग**: प्रतीकों, फ़ाइलों और निर्देशिकाओं का नाम बदलें; प्रतीकों/फ़ाइलों/निर्देशिकाओं को स्थानांतरित करें; इनलाइन करें; और अप्रयुक्त कोड हटाने के लिए विलोपन का प्रचार करें। - **सिम्बोलिक एडिटिंग**: प्रतीक निकाय बदलें, प्रतीकों से पहले/बाद में सम्मिलित करें, और सुरक्षित हटाना, जो टेक्स्ट-आधारित विकल्पों की तुलना में कम त्रुटि-प्रवण और अधिक टोकन-कुशल है। - **इंटरैक्टिव डिबगिंग** (केवल JetBrains प्लगइन): ब्रेकपॉइंट सेट करें, चर निरीक्षण करें, अभिव्यक्तियों का मूल्यांकन करें, और एक स्थायी REPL-शैली इंटरफ़ेस के माध्यम से निष्पादन प्रवाह नियंत्रित करें। - **बुनियादी उपयोगिताएँ**: रेगेक्स खोज, टेक्स्ट प्रतिस्थापन, निर्देशिका सूची, फ़ाइल पढ़ना, और शेल कमांड निष्पादन (अक्सर Claude Code या Codex जैसे एजेंटिक हार्नेस में डिफ़ॉल्ट रूप से अक्षम)। - **मेमोरी प्रबंधन**: लंबे समय तक चलने वाले एजेंट वर्कफ़्लो के लिए एक सरल मेमोरी सिस्टम, जो सत्रों, उपयोगकर्ताओं और प्रोजेक्टों में साझा करने योग्य है। - **कॉन्फ़िगरेबिलिटी**: वैश्विक, प्रति-प्रोजेक्ट, निष्पादन-संदर्भ-विशिष्ट, और गतिशील रूप से रचना योग्य कॉन्फ़िगरेशन टुकड़ों के साथ बहु-स्तरीय YAML कॉन्फ़िगरेशन प्रणाली। Serena 40 से अधिक प्रोग्रामिंग भाषाओं को लैंग्वेज सर्वर (डिफ़ॉल्ट, मुफ्त/ओपन-सोर्स बैकएंड) या एक भुगतान वाले JetBrains प्लगइन (मुफ्त परीक्षण उपलब्ध) के माध्यम से समर्थन करता है जो IDE की विश्लेषण क्षमताओं का लाभ उठाता है। यह किसी भी MCP-संगत क्लाइंट के साथ एकीकृत होता है, जिसमें टर्मिनल-आधारित क्लाइंट (Claude Code, Codex, OpenCode, Gemini-CLI), IDE (VSCode, Cursor, JetBrains), और डेस्कटॉप/वेब क्लाइंट (Claude Desktop, Codex App, OpenWebUI) शामिल हैं। स्थापना के लिए `uv` की आवश्यकता होती है और यह `uv tool install -p 3.13 serena-agent` के माध्यम से किया जाता है, उसके बाद `serena init`। परियोजना GPL-3.0-or-later (SolidLSP घटक MIT के अंतर्गत) के तहत लाइसेंस प्राप्त है।