# Copilot आपका वर्कस्पेस देखता है। Maguyva पूरे रिपो का नक्शा बनाता है।

Canonical source: https://maguyva.ai/hi/for-vscode

License: text under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/); code samples under [MIT-0](https://opensource.org/license/mit-0); the Maguyva name, logos, brand assets and other code are not covered. Details: [maguyva.ai/license](https://maguyva.ai/license).

VS Code में एजेंट वे फ़ाइलें पढ़ता है जो आप अटैच करते हैं और वे जो उसकी सर्च में मिलती हैं। Maguyva पूरा रिपो इंडेक्स करता है और उसे MCP पर देता है, ताकि एजेंट बदलाव से पहले पूछे कि कोई सिंबल कहां है और उसे कौन कॉल करता है।

> .vscode/mcp.json में एक servers एंट्री: एक URL और एक Authorization हेडर।

## VS Code के बारे में क्या जानना ज़रूरी है

VS Code से जुड़ी चार खास बातें।

### .vscode/mcp.json

सर्वर `servers` के नीचे जाते हैं, `mcpServers` के नीचे नहीं। हर वर्कस्पेस के लिए `MCP: Open User Configuration` चलाएं और वही एंट्री अपनी प्रोफ़ाइल की `mcp.json` में जोड़ें।

### type: http

VS Code, Maguyva के एंडपॉइंट से Streamable HTTP पर कनेक्ट होता है और SSE पर तभी लौटता है जब सर्वर उसे सपोर्ट न करे। लोकल कुछ नहीं चलता।

### एक एनवायरनमेंट रेफ़रेंस

हेडर `Bearer ${env:MAGUYVA_API_KEY}` है, जिसे VS Code उस एनवायरनमेंट से पढ़ता है जिसमें वह शुरू हुआ, इसलिए कुंजी उस फ़ाइल से बाहर रहती है जिसे आप कमिट करते हैं। पूछे जाना पसंद है? एक इनपुट वेरिएबल एक बार पूछता है और कुंजी सेव कर लेता है।

### वर्कस्पेस ट्रस्ट

`.vscode/mcp.json` के सर्वर वर्कस्पेस पर भरोसा करते ही बिना अलग प्रॉम्प्ट के शुरू हो जाते हैं, और प्रतिबंधित मोड में कभी शुरू नहीं होते। चैट इनपुट में Configure Tools अलग-अलग टूल चालू या बंद करता है।

## कस्टम इंस्ट्रक्शन एक वर्किंग एग्रीमेंट हैं। इनका उपयोग करें।

```text
# .github/copilot-instructions.md
- किसी बदलाव को पूरा कहने से पहले npm test चलाओ।
- src/gen/ में जनरेट हुई फ़ाइलें कभी एडिट मत करो।
```

VS Code पूरे प्रोजेक्ट के निर्देश `.github/copilot-instructions.md` या `AGENTS.md` से पढ़ता है, और लक्षित निर्देश `applyTo` पैटर्न वाली `.github/instructions/*.instructions.md` फ़ाइलों से। इन्हें इनके लिए इस्तेमाल करें:

- बिल्ड, टेस्ट और लिंट कमांड।
- वे कन्वेंशन जिनमें एजेंट बार-बार गलती करता है।
- वे फ़ोल्डर जिन्हें एजेंट को नहीं छूना चाहिए।

निर्देश एजेंट को बताते हैं कि कैसे काम करना है। वे यह नहीं बता सकते कि चार हज़ार फ़ाइलों में से कौन-सी उस टाइप को import करती हैं जिसका नाम वह बदलने वाला है।

## जहां वर्कस्पेस व्यू कम पड़ता है

तीन बातें जो एजेंट खुली फ़ाइलों से नहीं सीख सकता।

### // अटैच किया हुआ सब कुछ नहीं है

एजेंट उसी से काम करता है जो आप अटैच करते हैं और जो उसकी सर्च लौटाती है। दूसरे पैकेज का वह कॉलर, जो बदलाव के बाद टूटता है, किसी भी लिस्ट में नहीं था।

### // टेक्स्ट मैच रेफ़रेंस नहीं है

वर्कस्पेस सर्च स्ट्रिंग ढूंढ लेती है। पर वह असली कॉल को कमेंट, mock या किसी दूसरी क्लास के उसी नाम वाले मेथड से अलग नहीं कर सकती।

### // हर रीड कॉन्टेक्स्ट खर्च करता है

दिशा समझने के लिए एजेंट जो भी फ़ाइल खोलता है, वह उस कॉन्टेक्स्ट को खर्च करती है जिसकी ज़रूरत बदलाव के लिए है। file:line के साथ एक रैंक किया गया जवाब दस खोजी रीड्स से सस्ता है।

## VS Code में MCP सर्वर के तौर पर Maguyva

एक servers एंट्री एजेंट को देती है:

- **आपके इंडेक्स किए गए रिपो पर 11 टूल**: सिमेंटिक, स्ट्रक्चरल (AST), ग्राफ़ और टेक्स्ट सर्च, साथ में सिंबल लुकअप, डिपेंडेंट्स और फ़ाइल रिट्रीवल।
- **फ़ाइल पाथ और लाइन नंबर के साथ जवाब**: 285+ भाषाओं में, ताकि एजेंट पहली बार में ही सही फ़ाइल खोले।
- **सिर्फ़ पढ़ने वाले टूल**: Maguyva के टूल सिर्फ़ इंडेक्स से क्वेरी करते हैं। कोई भी आपकी फ़ाइलें एडिट नहीं करता, इसलिए हर अप्रूवल पढ़ने के बारे में है, लिखने के बारे में नहीं।

> VS Code एजेंट को *आपका वर्कस्पेस* देता है।
> Maguyva एजेंट को *रिपो का नक्शा* देता है।

## दो वर्कफ़्लो

पहले नक़्शे से पूछें, फिर एडिट करें।

### 01. पार्सर बदलने से पहले टेस्ट ढूंढें

```text
vscode agent> कौन-से टेस्ट parseConfig तक पहुंचते हैं?

dependency_search("parseConfig", dependents)
  tests/config/parse.test.ts:12
  tests/cli/flags.test.ts:88

→ एडिट के बाद एजेंट पूरा सूट नहीं, सिर्फ़ ये दो फ़ाइलें चलाता है।
[exit 0]
```

जवाब उन दो टेस्ट फ़ाइलों का नाम बताता है जो पार्सर तक पहुंचती हैं, ताकि एजेंट बदलाव वहीं जांचे जहां वह टूट सकता है।

### 02. पहले एडिट से पहले रीनेम का दायरा आंकें

```text
vscode agent> OrderStatus.PENDING का नाम बदलकर OrderStatus.QUEUED करो

find_symbol("OrderStatus", references)
  9 फ़ाइलों में 23 रेफ़रेंस

→ एजेंट नौ फ़ाइलों पर एक ही पास की योजना बनाता है।
[exit 0]
```

रेफ़रेंस की गिनती एडिट से पहले आ जाती है, टाइप चेकर के फ़ेल होने के बाद नहीं।

## VS Code में सेटअप

तीन चरण। Free स्तर: 3 रिपॉज़िटरी, 50K तक इंडेक्स्ड रिपॉज़िटरी लाइनें, क्रेडिट कार्ड की ज़रूरत नहीं।

### 01. maguyva.ai पर एक रिपो इंडेक्स करें

ऐसा रिपो चुनें जिसे आप पहले से जानते हैं, ताकि आप जवाबों को परख सकें।

### 02. Maguyva को .vscode/mcp.json में जोड़ें

`.vscode/mcp.json`

```json
{
  "servers": {
    "maguyva": {
      "type": "http",
      "url": "https://maguyva.tools/mcp",
      "headers": {
        "Authorization": "Bearer ${env:MAGUYVA_API_KEY}"
      }
    }
  }
}
```

### 03. अपनी कुंजी सेट करें और सर्वर शुरू करें

जिस एनवायरनमेंट से आप VS Code शुरू करते हैं, उसमें `MAGUYVA_API_KEY` सेट करें, फिर उसकी एंट्री के ऊपर वाले कोड लेंस से सर्वर शुरू करें। एजेंट से एक ऐसा सवाल पूछें जिसका जवाब आप पहले से जानते हैं।

VS Code के [MCP डॉक्स](https://code.visualstudio.com/docs/agent-customization/mcp-servers) इनपुट वेरिएबल, पोर्टेबल .mcp.json फ़ॉर्मैट और सर्वर ट्रस्ट के बारे में बताते हैं।

## एक ऐसा रिपो इंडेक्स करें जिसे आप पहले से जानते हैं।

VS Code को MCP पर कनेक्ट करें, फिर एक ऐसा सवाल पूछें जिसे आप जांच सकें।
