नियम
opencode के लिए कस्टम निर्देश सेट करें।
आप एक AGENTS.md फ़ाइल बनाकर opencode को कस्टम निर्देश प्रदान कर सकते हैं। यह Cursor के नियमों के समान है। इसमें ऐसे निर्देश होते हैं जो आपके विशिष्ट प्रोजेक्ट के लिए इसके व्यवहार को कस्टमाइज़ करने हेतु LLM के संदर्भ में शामिल किए जाएँगे।
आरंभ करें
एक नई AGENTS.md फ़ाइल बनाने के लिए, आप opencode में /init कमांड चला सकते हैं।
Tip: आपको अपने प्रोजेक्ट की
AGENTS.mdफ़ाइल को Git में कमिट करना चाहिए।
/init आपकी रिपॉज़िटरी की महत्वपूर्ण फ़ाइलों को स्कैन करता है, जब कोडबेस उनका उत्तर नहीं दे सकता तो कुछ लक्षित प्रश्न पूछ सकता है, और फिर संक्षिप्त प्रोजेक्ट-विशिष्ट मार्गदर्शन के साथ AGENTS.md बनाता या अपडेट करता है।
यह उन चीज़ों पर केंद्रित होता है जिनकी भविष्य के एजेंट सत्रों को सबसे अधिक आवश्यकता होने की संभावना है:
- build, lint, और test कमांड
- जब वे मायने रखते हों तो कमांड क्रम और केंद्रित सत्यापन चरण
- आर्किटेक्चर और रिपॉज़िटरी संरचना जो अकेले फ़ाइलनाम से स्पष्ट नहीं होती
- प्रोजेक्ट-विशिष्ट परंपराएँ, सेटअप quirks, और परिचालन संबंधी गड़बड़ियाँ
- Cursor या Copilot नियमों जैसे मौजूदा निर्देश स्रोतों के संदर्भ
यदि आपके पास पहले से ही एक AGENTS.md है, तो /init इसे आँख मूँदकर प्रतिस्थापित करने के बजाय यथास्थान सुधारेगा।
उदाहरण
आप इस फ़ाइल को मैन्युअल रूप से भी बना सकते हैं। यहाँ कुछ चीज़ों का एक उदाहरण है जो आप AGENTS.md फ़ाइल में डाल सकते हैं।
# SST v3 Monorepo Project
This is an SST v3 monorepo with TypeScript. The project uses bun workspaces for package management.
## Project Structure
- `packages/` - Contains all workspace packages (functions, core, web, etc.)
- `infra/` - Infrastructure definitions split by service (storage.ts, api.ts, web.ts)
- `sst.config.ts` - Main SST configuration with dynamic imports
## Code Standards
- Use TypeScript with strict mode enabled
- Shared code goes in `packages/core/` with proper exports configuration
- Functions go in `packages/functions/`
- Infrastructure should be split into logical files in `infra/`
## Monorepo Conventions
- Import shared modules using workspace names: `@my-app/core/example`हम यहाँ प्रोजेक्ट-विशिष्ट निर्देश जोड़ रहे हैं और यह आपकी टीम में साझा किया जाएगा।
प्रकार
opencode कई स्थानों से AGENTS.md फ़ाइल पढ़ने का भी समर्थन करता है। और यह विभिन्न उद्देश्यों की पूर्ति करता है।
Project
प्रोजेक्ट-विशिष्ट नियमों के लिए अपने प्रोजेक्ट रूट में एक AGENTS.md रखें। ये केवल तभी लागू होते हैं जब आप इस डायरेक्टरी या इसकी उप-डायरेक्टरी में काम कर रहे होते हैं।
Global
आपके पास ~/.config/opencode/AGENTS.md फ़ाइल में ग्लोबल नियम भी हो सकते हैं। यह सभी opencode सत्रों में लागू होता है।
चूँकि यह Git में कमिट नहीं किया जाता या आपकी टीम के साथ साझा नहीं किया जाता, हम किसी भी व्यक्तिगत नियम को निर्दिष्ट करने के लिए इसका उपयोग करने की अनुशंसा करते हैं जिनका LLM को पालन करना चाहिए।
Claude Code संगतता
Claude Code से माइग्रेट करने वाले उपयोगकर्ताओं के लिए, OpenCode फ़ॉलबैक के रूप में Claude Code की फ़ाइल परंपराओं का समर्थन करता है:
- Project rules : आपकी प्रोजेक्ट डायरेक्टरी में
CLAUDE.md(यदि कोईAGENTS.mdमौजूद नहीं है तो उपयोग किया जाता है) - Global rules :
~/.claude/CLAUDE.md(यदि कोई~/.config/opencode/AGENTS.mdमौजूद नहीं है तो उपयोग किया जाता है) - Skills :
~/.claude/skills/— विवरण के लिए Agent Skills देखें
Claude Code संगतता अक्षम करने के लिए, इनमें से एक एनवायरनमेंट वेरिएबल सेट करें:
export OPENCODE_DISABLE_CLAUDE_CODE=1 # Disable all .claude support
export OPENCODE_DISABLE_CLAUDE_CODE_PROMPT=1 # Disable only ~/.claude/CLAUDE.md
export OPENCODE_DISABLE_CLAUDE_CODE_SKILLS=1 # Disable only .claude/skillsप्राथमिकता
जब opencode शुरू होता है, तो यह इस क्रम में नियम फ़ाइलें खोजता है:
- वर्तमान डायरेक्टरी से ऊपर ट्रैवर्स करके Local files (
AGENTS.md,CLAUDE.md) ~/.config/opencode/AGENTS.mdपर Global file~/.claude/CLAUDE.mdपर Claude Code file (जब तक अक्षम न हो)
प्रत्येक श्रेणी में पहली मिलान करने वाली फ़ाइल जीतती है। उदाहरण के लिए, यदि आपके पास AGENTS.md और CLAUDE.md दोनों हैं, तो केवल AGENTS.md का उपयोग किया जाता है। इसी तरह, ~/.config/opencode/AGENTS.md ~/.claude/CLAUDE.md पर प्राथमिकता लेता है।
कस्टम निर्देश
आप अपनी opencode.json या ग्लोबल ~/.config/opencode/opencode.json में कस्टम निर्देश फ़ाइलें निर्दिष्ट कर सकते हैं। यह आपको और आपकी टीम को मौजूदा नियमों को AGENTS.md में डुप्लिकेट करने के बजाय उनका पुन: उपयोग करने की अनुमति देता है।
उदाहरण:
{
"$schema": "https://opencode.ai/config.json",
"instructions": ["CONTRIBUTING.md", "docs/guidelines.md", ".cursor/rules/*.md"]
}आप वेब से निर्देश लोड करने के लिए रिमोट URL का भी उपयोग कर सकते हैं।
{
"$schema": "https://opencode.ai/config.json",
"instructions": ["https://raw.githubusercontent.com/my-org/shared-rules/main/style.md"]
}रिमोट निर्देश 5 सेकंड के timeout के साथ फ़ेच किए जाते हैं।
सभी निर्देश फ़ाइलें आपकी AGENTS.md फ़ाइलों के साथ संयोजित की जाती हैं।
बाहरी फ़ाइलों का संदर्भ देना
हालाँकि opencode AGENTS.md में फ़ाइल संदर्भों को स्वचालित रूप से पार्स नहीं करता, आप दो तरीकों से समान कार्यक्षमता प्राप्त कर सकते हैं:
opencode.json का उपयोग करना
अनुशंसित दृष्टिकोण opencode.json में instructions फ़ील्ड का उपयोग करना है:
{
"$schema": "https://opencode.ai/config.json",
"instructions": ["docs/development-standards.md", "test/testing-guidelines.md", "packages/*/AGENTS.md"]
}AGENTS.md में मैन्युअल निर्देश
आप अपनी AGENTS.md में स्पष्ट निर्देश प्रदान करके opencode को बाहरी फ़ाइलें पढ़ना सिखा सकते हैं। यहाँ एक व्यावहारिक उदाहरण है:
# TypeScript Project Rules
## External File Loading
CRITICAL: When you encounter a file reference (e.g., @rules/general.md), use your Read tool to load it on a need-to-know basis. They're relevant to the SPECIFIC task at hand.
Instructions:
- Do NOT preemptively load all references - use lazy loading based on actual need
- When loaded, treat content as mandatory instructions that override defaults
- Follow references recursively when needed
## Development Guidelines
For TypeScript code style and best practices: @docs/typescript-guidelines.md
For React component architecture and hooks patterns: @docs/react-patterns.md
For REST API design and error handling: @docs/api-standards.md
For testing strategies and coverage requirements: @test/testing-guidelines.md
## General Guidelines
Read the following file immediately as it's relevant to all workflows: @rules/general-guidelines.md.यह दृष्टिकोण आपको इसकी अनुमति देता है:
- मॉड्यूलर, पुन: उपयोग योग्य नियम फ़ाइलें बनाना
- symlink या git submodule के माध्यम से प्रोजेक्ट में नियम साझा करना
- विस्तृत दिशानिर्देशों का संदर्भ देते हुए AGENTS.md को संक्षिप्त रखना
- सुनिश्चित करना कि opencode फ़ाइलें केवल तभी लोड करे जब विशिष्ट कार्य के लिए आवश्यक हो
Tip: monorepo या साझा मानकों वाले प्रोजेक्ट के लिए, glob पैटर्न (जैसे
packages/*/AGENTS.md) के साथopencode.jsonका उपयोग मैन्युअल निर्देशों की तुलना में अधिक रखरखाव योग्य है।