4 पॉइंट द्वारा GN⁺ 2024-09-18 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • Void एक VS Code fork था जिसे codebase में AI agents इस्तेमाल करने, बदलावों को checkpoints के रूप में विज़ुअलाइज़ करने, और local models या hosts लाने के लिए बनाया गया था, लेकिन अब यह deprecated स्थिति में है और अब योगदान स्वीकार नहीं करता
  • प्रोजेक्ट अब भी open source है, और VS Code को fork करना चाहने वाले developers, Void के logic और structure को reference के रूप में देख सकते हैं
  • README में React + Tailwind integration, packaging·signing·automatic updates के लिए GitHub Actions, और शुरू से implement किया गया AI provider code, साथ ही IPC और CSP handling structure को reference points के रूप में बताया गया है
  • Void बताता है कि वह messages सीधे provider को भेजता है और data store नहीं करता, तथा autocomplete(FIM), <thinking> tags, tool tags जैसी response syntax को support करता है
  • नए version development की बजाय, यह अब Void Forks, पुराने Releases, Codebase Guide, HOW_TO_CONTRIBUTE, और void-builder जैसे resources के ज़रिए fork और reuse को support कर रहा है

प्रोजेक्ट की स्थिति

  • Void deprecated स्थिति में है और अब योगदान स्वीकार नहीं करता
  • समुदाय के code contributions और support के लिए आभार व्यक्त किया गया है, और बताया गया है कि Void आगे भी open source रहेगा
  • यह भी कहा गया है कि VS Code को fork करते समय यह एक अच्छा reference बना रहेगा

डाउनलोड और fork संसाधन

  • नवीनतम Void forks की सूची Void Forks में देखी जा सकती है
  • पुराने versions को Releases से डाउनलोड किया जा सकता है
  • VS Code fork developers, Codebase Guide और How to Contribute को reference के रूप में देख सकते हैं

VS Code fork implementation में ध्यान देने योग्य हिस्से

  • Void, React + Tailwind को mount करता है
    • सामान्य VS Code में यह संभव नहीं है, इसलिए React compilation और Tailwind scope handling के लिए build pipeline को extend किया गया
    • Tailwind scope handling के लिए scope का उपयोग किया गया है
  • GitHub Actions को कॉपी करके Void को package, sign, और auto-update किया जा सकता है
    • इसमें बताया गया है कि VS Code की build pipeline private होने के कारण यह आम तौर पर बहुत कठिन होता है
  • AI provider code शुरू से खुद implement किया गया है
    • यह autocomplete(FIM) और custom responses को support करता है
    • common <thinking> tags, tool tags आदि के लिए syntax expose करता है
    • IPC के उपयोग और CSP को satisfy करने वाली architecture को reference किया जा सकता है
  • file editing के लिए custom services का उपयोग किया गया है
    • EditCodeService code stream होने पर token स्तर पर भी diff दिखा सकता है
    • VoidModelService background में files को edit करता है और OS files तथा text buffer को sync करता है
  • Void को बनाने वाले पूरे repositories की सूची repos में देखी जा सकती है

Void की फीचर व्याख्या

  • Void codebase में AI agents का उपयोग संभव बनाता है
  • बदलावों को checkpoints के रूप में save और visualize किया जा सकता है
  • किसी भी model या host को local में लाया जा सकता है
  • यह बताता है कि messages सीधे provider को भेजे जाते हैं और user data store नहीं किया जाता
  • इस repository में Void Desktop app का पूरा source code शामिल है

संदर्भ लिंक और समर्थन

  • वेबसाइट: Website
  • रोडमैप: Roadmap
  • योगदान गाइड: Contribute
  • Void, vscode repository का एक fork है
  • अपना Void version विकसित करने के लिए HOW_TO_CONTRIBUTE और void-builder को देखा जा सकता है
  • support channels हैं Discord server और hello@voideditor.com ईमेल

1 टिप्पणियां

 
GN⁺ 2024-09-18
Hacker News की रायें
  • हाल ही में VSCode को एक प्लेटफ़ॉर्म की तरह इस्तेमाल करके ऐप को refactor करने की कोशिश की, लेकिन UI design के ऐसे फैसलों से बुरी तरह झटका लगा जिन्हें न तो bypass करना आसान था और न maintain करना
    MS का बंद extension marketplace भी open source लक्ष्यों में मददगार नहीं था
    इसके बजाय HN पर Theia(https://theia-ide.org) के बारे में पता चला, और foundation-owned होने, open source marketplace और पूरी तरह modify कर सकने की वजह से यह open source लक्ष्यों के लिए कहीं बेहतर fit लगा
    सिद्धांततः यह VSCode extension API के साथ भी compatible है, इसलिए इस ऐप के लिए भी Theia पर विचार करने की सलाह दूंगा

    • संदर्भ के लिए, extensions को OpenVSX पर publish किया जा सकता है
      आजकल कई projects ऐसा करने लगे हैं, सभी नहीं लेकिन काफ़ी ज़्यादा
    • उत्सुकता है कि Theia का मौजूदा Java IDE Eclipse से कोई संबंध है या नहीं
      या “eclipse” का जिक्र बस नाम का दुर्भाग्यपूर्ण टकराव है, पता नहीं
    • अगर Theia Monaco के ऊपर बना है, तो सोच रहा हूं कि क्या one-click switch जैसी चीज़ भी संभव होगी
      Monaco editor सिद्धांततः vscode repository का हिस्सा है, और settings/configuration वाला “workbench” उसके ऊपर की layer में है
  • अच्छा होगा अगर कोई लेख साफ़-साफ़ समझाए कि Cursor, Void जैसे tools ने मौजूदा editor extensions (VSCode extensions, JetBrains plugins) के बजाय नया editor बनाने का फैसला क्यों किया
    जानना चाहता हूं कि वजह extension API की technical limitations हैं, या editor extension की तुलना में नए editor की marketing आसान है
    individuals या छोटी companies के लिए adoption आसान हो सकता है, लेकिन बड़े organizations ने पहले से existing IDEs और कई integrations set कर रखे होते हैं, इसलिए उन्हें एक और IDE पर switch करवाना मुश्किल मांग लगती है

    • Cursor team के जवाब के मुताबिक, VSCode extension की editor UI control करने की क्षमता बहुत सीमित है
      Command-K और Copilot++ features extension से संभव नहीं हैं, और आगे वे जो कई features बनाना चाहते हैं, उनके साथ भी यही बात है
      https://forum.cursor.com/t/why-not-a-plugin/2448/2
    • अच्छा सवाल है
      मुझे लगता है extensions अक्सर काफ़ी buggy होते हैं, या naturally integrate होना मुश्किल होता है। उदाहरण के लिए Copilot में selection झटके से बदलती है, और Codeium या दूसरे open source extensions में भी ऐसी ही limitations हैं
      कई extensions user के prompt input के लिए quick selection dropdown इस्तेमाल करते हैं, जो unnatural लगता है
      इन समस्याओं से बचने के लिए Cursor की तरह IDE को खुद own करना अहम है, और मेरे हिसाब से Cursor के popular होने की वजह भी यही है
      IDE adoption कठिन है, यह बात सही है। पहले से popular base पर बनाने से छोटे user base तक बेहतर पहुंच सकते हैं, और long term में privacy और अच्छे AI features के centralization के जरिए बड़ी companies को भी convince करना चाहेंगे
    • Cody ने ठीक बताए गए तरीके से इसे extension के रूप में implement किया है और Cursor से compete कर सकता है
      “fork” वाली कमी झेलते हुए Cursor इस्तेमाल करने की वजह मुझे अभी तक नहीं मिली
      हालांकि आजकल मैं ज़्यादातर Aider पर चला गया हूं
      किसी और ने monetization का जिक्र किया था, शायद असली वजह वही हो सकती है
  • competition बढ़ना अच्छी बात है, लेकिन थोड़ा rude लग सकता है, फिर भी ज़्यादातर software forks गायब हो जाते हैं
    basic VSCode या VSCodium में चलने वाले open source extension Continue + Claude-dev के बजाय इसे इस्तेमाल करने की वजह के लिए मुझे convince करें
    कहा गया कि “Microsoft ने भी extension marketplace को closed बना दिया,” लेकिन Open VSX Registry मौजूद है

    • जानना चाहता हूं कि क्या आप Continue के साथ local model इस्तेमाल कर रहे हैं
  • यहां तक जो बनाया है वह बधाई के काबिल है, और लगता है अब मज़ेदार हिस्सा शुरू हो रहा है
    snippets जैसी tab autocomplete देने वाले extensions और AI editors काफ़ी हैं, लेकिन मेरी जानकारी में पूरे file को देखे बिना “tab-tab-tab-tab” से auto-fix करने वाला workflow ठीक से implement करने वाला सिर्फ Cursor है
    शायद यह Monaco/VSCode hacking और custom tuned model, यानी off-the-shelf large language model नहीं, का combination होगा; इसलिए जब “Cursor की सारी core features” कहते हैं तो क्या आपका निशाना यही हिस्सा है, या focus कहीं और है—यह जानना चाहता हूं
    Cursor local VSCode profile में पहले से downloaded extensions को काफ़ी अच्छे से “import” कर पाया, लेकिन extension search के लिए marketplace API इस्तेमाल करने में कभी-कभी मुश्किल आई
    starting point के तौर पर इतना तरीका ठीक मानना बेहतर होगा, और Microsoft से deal कर रहे हैं तो brand guidelines जैसी चीज़ों का भी ध्यान रखना होगा
    दुनिया को यह बताने से बचना बेहतर है कि आप Microsoft API को “hack कर रहे हैं।” छोटा लगने वाला काम भी सफल हो जाए तो समस्या बन सकता है
    अगर contributors recruit करना भी उद्देश्य है, तो GitHub workflow और CI को काफ़ी व्यवस्थित करना होगा
    मौजूदा commit history में ज़्यादातर commits docs edit के बाद review या checks के बिना सीधे main branch पर commit करने जैसे दिखते हैं, और जिस शुरुआती commit में एकमात्र check लगा है, वह Monaco check fail होने के बाद बस disable कर दिया गया लगता है
    project को grow करने या ज़रूरी level के contributors आकर्षित करने के लिए test baseline बनानी होगी और बहुत ज़्यादा cleanup करना होगा

    • मेरे Cursor इस्तेमाल करने की एकमात्र वजह भी वही feature है
      autocomplete बहुत अच्छा है, और refactoring करते समय लगभग जादू जैसा लगता है
      पूरे महीने Cursor इस्तेमाल करने के बाद VSCode फिर से आज़माया, तो तुलना में Copilot सच में बहुत खराब लगा
      Cursor जारी रखना चाहता हूं, लेकिन Claude subscription दो बार नहीं खरीदना चाहता। Cursor internally Claude इस्तेमाल करता है, और मैं ChatGPT की तुलना में Claude Sonnet पसंद करता हूं
    • Cursor में बेहद उपयोगी feature apply है
      AI-generated code को यह अपने-आप मेरे code के साथ merge कर देता है, और मुझे सिर्फ approve या reject करना होता है
      लगता है इस feature में भी custom AI इस्तेमाल होता है, और मेरी API key लाने वाले तरीके से यह काम नहीं करता; subscription चाहिए
  • “AI editor” क्षेत्र में competition बढ़ना अच्छी बात है, लेकिन जिज्ञासा है कि इसे VSCode extension के रूप में क्यों नहीं बनाया जाता
    extension वाला रास्ता कहीं ज़्यादा accessible लगता है
    जानना चाहूंगा कि क्या extension API की ऐसी limitations हैं जो implementation को मुश्किल बनाती हैं

    • शायद इसलिए कि extensions से monetization मुश्किल है, और बड़ी VC valuation को justify करना भी कठिन है
      Void को HN का support मिला है
    • सहमत हूं। परफेक्ट न सही, VSCode का ecosystem काफी rich है
      fork और original product के बीच के फर्क को लगातार track करना पड़ेगा, और इस process में features छूटना या extensions टूटना—यह मैं अपने workflow में झेलना नहीं चाहूंगा
      Cursor काफी polished experience देता है, लेकिन आखिर में मैं VSCode पर लौट आया और continue.dev इस्तेमाल करने लगा। यह कहीं ज़्यादा rough है, फिर भी UI पर्याप्त रूप से ठीक काम करता है
    • अच्छा सवाल है, और यह सही है कि extension ज़्यादा accessible है
      लेकिन सिर्फ extension से मनचाहा native UI बनाने का अच्छा तरीका नहीं है
      उदाहरण के लिए, changes से पहले और बाद दिखाना core feature है, लेकिन extension के अंदर यह natural नहीं लगता
      Codeium जैसे extensions सबसे simple तरीका अपनाते हैं—file में सीधे <<<<<<< DIFF >>>>>>>> जैसा लिख देते हैं, जिससे syntax highlighting टूट जाती है
      Copilot जैसे दूसरे extensions में bugs बहुत हैं
      फिलहाल Void extension के ऊपर बना है, लेकिन ज़्यादा native user experience बनाने के लिए IDE के कुछ हिस्सों को भी modify और integrate कर रहा है
    • कई लोग VSC से ज़्यादा JetBrains को पसंद करते हैं
      उदाहरण के लिए, अभी मेरा नंबर-1 AI editor Zed.dev है, जिसमें JetBrains समेत कई keymaps बहुत आसानी से configure किए जा सकते हैं
      https://zed.dev/
    • पक्का नहीं, लेकिन अभी continue सच में बहुत खराब है
      Vim shortcuts सहित मेरे पूरे VSCode environment को बिगाड़ देता है
  • मुझे नहीं पता कि यह करने के लिए सच में पूरे editor को “own” करना ज़रूरी है या नहीं
    upstream के साथ sync बनाए रखना ही बहुत बड़ा burden है, और इससे क्या हासिल होता है यह दिखता नहीं
    जैसा दूसरों ने कहा, alternate registry भी हैं, और users से पूरा editor download/install करवाने की तुलना में independent plugin install करने के instructions देना आसान है
    सोचता हूं कि बस अपना Copilot extension बनाकर उसे ollama instance से connect क्यों नहीं कर सकते
    क्या Continue यही नहीं करता? https://marketplace.visualstudio.com/items?itemName=Continue...

  • क्या यह अभी इतना शुरुआती stage में है कि download भी नहीं किया जा सकता? code editor के लिए Discord server में क्यों जाना पड़े, समझ नहीं आता
    जब VS Code सारे features अपना लेगा, तब plan क्या होगा—यह जानना चाहूंगा

    • code यहां है: https://github.com/voideditor/void/tree/main/extensions/void
      हालांकि अभी यह सच में बहुत basic है। side pane से large language model calls करने और diffs apply/reject करने के लिए view बनाने वाला minimal implementation जैसा है
      अभी के लिए यह लगभग weekend project level है
    • शायद वही point हो सकता है
      यह देखने का game हो सकता है कि कौन Microsoft द्वारा acquire होकर आखिरकार VS Code का हिस्सा बनता है
  • PearAI भी है। इसे “VSCode और Continue का fork वाला open source AI code editor” कहा जाता है
    यह space धीरे-धीरे भीड़भाड़ वाला हो रहा है: cursor.sh, continue.dev, double.bot, supermaven, codium.ai, PearAI, और अब Void भी
    https://github.com/trypear/pearai-app

    • अगर आपने बाकी चीजें try की हैं, तो जानना चाहूंगा कि specifically क्या पसंद नहीं आया
      मैं https://double.bot के creators में से एक हूं
  • काश कोई Omnivim2 को fork करे ताकि वह VS Code से बेहतर compete कर सके
    मेरी समझ में यह editor VS Code जैसा दिखता है, लेकिन natively compiled है और VS Code plugins support करता है
    दुर्भाग्य से project abandoned लगता है, और यह ReasonML में लिखा गया था
    development tools के web browser के इर्द-गिर्द बनने से मैं तंग आ चुका हूं
    90s और 00s में हमारे पास ऐसे fully native apps थे जिन्हें आज जितना complex होने की जरूरत नहीं थी
    साथ ही, internally यह Vim पर आधारित होकर चलता है—मेरी नजर में यह उल्टा strength है
    https://github.com/onivim/oni2

  • यह उसी user की 4 दिन पहले डाली गई दूसरी Show HN post की duplicate post जैसी लगती है
    https://news.ycombinator.com/item?id=41523197

    • अगर post को अभी पर्याप्त attention नहीं मिला है, तो कुछ reposts ठीक हैं
      FAQ में भी है: https://news.ycombinator.com/newsfaq.html#reposts
    • कुछ दिन पहले हमने छोटा launch किया था, लेकिन उस feedback के आधार पर GitHub contribution page, website और logo में काफी बदलाव किए
      बस जल्दी-जल्दी launch करने की कोशिश कर रहे हैं
    • दो बार launch किया? competitive मैदान में जितना हो सके उतनी बार launch करना चाहिए
    • इसे बहुत उचित practice माना जाता है