# AGENTS.md, OpenCode को आपके नियम बताता है। Maguyva उसे कोड दिखाता है।

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

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).

OpenCode काम का तरीका AGENTS.md से पढ़ता है और बाकी सब के लिए MCP सर्वर कॉल करता है। Maguyva एक रिमोट MCP सर्वर है जो OpenCode को आपके रिपो का क्वेरी करने लायक नक़्शा देता है, फ़ाइल पाथ और लाइन नंबर के साथ।

> mcp के नीचे एक रिमोट एंट्री। लोकल कुछ नहीं चलता।

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

OpenCode से जुड़े चार तथ्य।

### opencode.json

सर्वर को अपने प्रोजेक्ट के `opencode.json` में `mcp` के नीचे जोड़ें, या हर प्रोजेक्ट के लिए `~/.config/opencode/opencode.json` में।

### type: remote

OpenCode, Maguyva के एंडपॉइंट से HTTP पर जुड़ता है। लोकल कुछ नहीं चलता और Node.js की ज़रूरत नहीं।

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

OpenCode अपने कॉन्फ़िग में एनवायरनमेंट वेरिएबल्स बदल देता है, इसलिए हेडर `Bearer {env:MAGUYVA_API_KEY}` लिखा जाता है और कुंजी उस फ़ाइल से बाहर रहती है जिसे आप कमिट करते हैं।

### हर एजेंट के हिसाब से सीमित करें

हर MCP सर्वर कॉन्टेक्स्ट में टूल परिभाषाएं जोड़ता है। OpenCode किसी सर्वर के टूल्स को `"maguyva*": false` जैसे glob से ग्लोबली बंद कर सकता है और सिर्फ़ ज़रूरत वाले एजेंट्स के लिए फिर से चालू कर सकता है।

## AGENTS.md एक वर्किंग एग्रीमेंट है। इसे इस्तेमाल करें।

```text
> /init
# रिपो स्कैन करता है और AGENTS.md लिखता है
```

OpenCode प्रोजेक्ट रूट में `AGENTS.md` और निजी नियमों के लिए `~/.config/opencode/AGENTS.md` पढ़ता है। `AGENTS.md` न हो तो वह `CLAUDE.md` पर लौटता है। इसे इनके लिए रखें:

- बिल्ड, टेस्ट और लिंट कमांड।
- वे कन्वेंशन और सीमाएं जिनका एजेंट को सम्मान करना चाहिए।
- ज़रूरी दस्तावेज़ों के पॉइंटर।

`/init` के समय का स्कैन एक सारांश है, इंडेक्स नहीं। वह OpenCode को नहीं बताता कि कल जोड़े गए फ़ंक्शन को कौन कॉल करता है।

## जहां AGENTS.md कम पड़ता है

तीन कमियां जिन्हें OpenCode grep और धैर्य से भरता है।

### // सारांश इंडेक्स नहीं है

AGENTS.md ज़रूरी पैकेजों के नाम ले सकता है। वह हर सिंबल और कॉल साइट की सूची नहीं बना सकता, और उसे कोशिश भी नहीं करनी चाहिए।

### // grep स्ट्रिंग ढूंढता है, कॉलर नहीं

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

### // फ़ाइल पीछे छूट जाती है

AGENTS.md जिस दिन लिखा जाता है उस दिन सही होता है। कोड आगे बढ़ता रहता है; फ़ाइल तब बदलती है जब किसी को अपडेट करना याद आता है।

## OpenCode में रिमोट MCP सर्वर के रूप में Maguyva

mcp के नीचे एक एंट्री OpenCode को देती है:

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

> AGENTS.md, OpenCode को बताता है *कैसे काम करना है*।
> Maguyva, OpenCode को *काम करने के लिए कुछ ठोस* देता है।

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

उसी टर्मिनल से नक़्शे से पूछें।

### 01. कई पैकेजों में शेयर किए गए type का नाम बदलें

```text
opencode> OrderStatus का नाम बदलकर FulfillmentStatus करो

dependency_search("OrderStatus", dependents)
  8 पैकेजों में 23 रेफ़रेंस
structural_search(switch_statement, "OrderStatus")
  4 एग्ज़ॉस्टिव switch

→ OpenCode switch समेत पूरी सूची एडिट करता है।
[exit 0]
```

एग्ज़ॉस्टिव switch ही वे जगहें हैं जिन्हें टेक्स्ट सर्च चूक जाता है और कंपाइलर देर से पकड़ता है।

### 02. कोड को डॉक्यूमेंटेशन से अलग करें

```text
opencode> FEATURE_BULK_EXPORT कहां पढ़ा जाता है?

text_pattern_search("FEATURE_BULK_EXPORT")
  src/config/flags.ts:17
  src/export/bulk.ts:5
  docs/flags.md:40   ← सिर्फ़ डॉक्स

→ दो कोड पाथ, एक पुराना डॉक।
[exit 0]
```

सटीक मैच पाथ के साथ लौटते हैं, ताकि OpenCode किसी को भी एडिट करने से पहले कोड को डॉक्यूमेंटेशन से अलग कर सके।

## OpenCode में सेटअप

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

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

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

### 02. opencode.json में mcp के नीचे Maguyva जोड़ें

`opencode.json`

```json
{
  "mcp": {
    "maguyva": {
      "type": "remote",
      "url": "https://maguyva.tools/mcp",
      "enabled": true,
      "headers": {
        "Authorization": "Bearer {env:MAGUYVA_API_KEY}"
      }
    }
  }
}
```

### 03. अपनी कुंजी export करें और कनेक्शन जांचें

जिस शेल से OpenCode शुरू होता है उसमें `MAGUYVA_API_KEY` सेट करें। `opencode mcp list` हर कॉन्फ़िगर किया गया सर्वर दिखाता है; फिर एक ऐसा सवाल पूछें जिसका जवाब आप पहले से जानते हैं।

OpenCode के [MCP डॉक्स](https://opencode.ai/docs/mcp-servers/) टाइमआउट, OAuth और हर एजेंट के टूल एक्सेस के बारे में बताते हैं।

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

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