از حالت کمکی کد جمینی استفاده کنید

این سند نحوه پیکربندی و استفاده از حالت عامل Gemini Code Assist را به عنوان یک برنامه‌نویس جفتی در محیط توسعه یکپارچه (IDE) شما شرح می‌دهد.

با حالت عامل، می‌توانید هر یک از موارد زیر و موارد دیگر را انجام دهید:

  • در مورد کد خود سوال بپرسید.
  • از ابزارهای زمینه‌ای و داخلی برای بهبود محتوای تولید شده استفاده کنید.
  • سرورهای MCP را برای گسترش قابلیت‌های عامل پیکربندی کنید.
  • با چندین مرحله، برای کارهای پیچیده راه‌حل دریافت کنید.
  • تولید کد از اسناد طراحی، مسائل و نظرات TODO .
  • با اظهار نظر، ویرایش و تأیید برنامه‌ها و استفاده از ابزار در حین اجرا، رفتار عامل را کنترل کنید.

محدودیت‌ها

برخی از ویژگی‌های چت استاندارد Gemini Code Assist ممکن است در حالت عامل در دسترس نباشند یا ممکن است متفاوت از چت استاندارد عمل کنند.

تلاوت در حالت عامل در دسترس نیست. در حالت عامل، Gemini منابع را ذکر نمی‌کند و شما نمی‌توانید پیشنهادهای کدی را که با منابع ذکر شده مطابقت دارند غیرفعال کنید .

قبل از اینکه شروع کنی

کد VS

  1. نسخه‌ای از Gemini Code Assist را که می‌خواهید در IDE خود استفاده کنید، تنظیم کنید:

اینتلی جی

نسخه‌ای از Gemini Code Assist را که می‌خواهید در IDE خود استفاده کنید، تنظیم کنید:

از حالت عامل استفاده کنید

در حالت عامل، می‌توانید از Gemini بخواهید اهداف سطح بالا و وظایف پیچیده را انجام دهد.

برای بهره‌مندی هرچه بیشتر از حالت عامل، از بهترین شیوه‌های پیشنهادی پیروی کنید و تا حد امکان جزئیات را ارائه دهید.

برای رفتن به حالت عامل:

کد VS

  1. برای باز کردن چت Gemini Code Assist، در نوار فعالیت IDE خود، روی spark Gemini Code Assist کلیک کنید.
  2. برای ورود به حالت عامل، روی دکمه‌ی تغییر وضعیت عامل کلیک کنید. این دکمه هنگام تغییر وضعیت به حالت عامل، هایلایت و هنگام چت معمولی، خاکستری می‌شود.
  3. در چت Gemini Code Assist، درخواست خود را وارد کنید.

Gemini به درخواست شما پاسخ می‌دهد، یا اجازه استفاده از یک ابزار را درخواست می‌کند.

برای متوقف کردن عامل، روی » کلیک کنید.

برای استفاده از چت استاندارد Gemini Code Assist، روی چت جدید کلیک کنید تا یک چت جدید ایجاد شود.

حالت عامل Gemini Code Assist توسط رابط خط فرمان Gemini پشتیبانی می‌شود.

اینتلی جی

  1. در نوار ابزار پنجره، روی spark Gemini کلیک کنید. در صورت درخواست، وارد سیستم شوید.
  2. برگه نماینده را انتخاب کنید.
  3. وظیفه‌ای را که می‌خواهید نماینده انجام دهد، شرح دهید.
  4. همزمان با اینکه نماینده مراحل انجام وظیفه را طی می‌کند، شما می‌توانید هرگونه تغییری را بررسی و تأیید کنید.

  5. اختیاری: برای تأیید خودکار تغییرات، تنظیمات گزینه‌های نماینده را انتخاب کنید و روی کادر تأیید خودکار تغییرات کلیک کنید.

پیکربندی ابزارها برای حالت عامل

ابزارها دسته‌ی گسترده‌ای از سرویس‌ها هستند که یک عامل می‌تواند برای زمینه‌سازی و انجام اقدامات در پاسخ به درخواست شما از آنها استفاده کند. برخی از ابزارها، ابزارهای داخلی مانند grep و خواندن یا نوشتن فایل، سرورهای محلی یا راه دور پروتکل زمینه مدل (MCP) و توابع اجرایی آنها یا پیاده‌سازی‌های سفارشی سرویس هستند.

کنترل استفاده از ابزار داخلی

حالت عامل به ابزارهای داخلی شما مانند جستجوی فایل، خواندن فایل، نوشتن فایل، دستورات ترمینال و موارد دیگر دسترسی دارد.

کد VS

شما می‌توانید از تنظیمات coreTools و excludeTools برای کنترل ابزارهایی که Gemini در حالت عامل به آنها دسترسی دارد، استفاده کنید.

coreTools
به شما امکان می‌دهد فهرستی از ابزارهایی را که می‌خواهید در مدل در دسترس باشند، مشخص کنید. همچنین می‌توانید محدودیت‌های خاص دستور را برای ابزارهایی که از آن پشتیبانی می‌کنند، مشخص کنید. به عنوان مثال - با اضافه کردن موارد زیر به تنظیمات Gemini خود، JSON فقط اجازه اجرای دستور ls -l پوسته را می‌دهد: "coreTools": ["ShellTool(ls -l)"] .
excludeTools
به شما امکان می‌دهد فهرستی از ابزارهایی را که نمی‌خواهید در مدل در دسترس باشند، مشخص کنید. همچنین می‌توانید محدودیت‌های خاص دستوری را برای ابزارهایی که از آن پشتیبانی می‌کنند، مشخص کنید. به عنوان مثال، اضافه کردن JSON زیر به تنظیمات Gemini شما، استفاده از دستور rm -rf را مسدود می‌کند: "excludeTools": ["ShellTool(rm -rf)"] .

ابزاری که هم در excludeTools و هم در coreTools فهرست شده باشد، مستثنی است.

برای پیکربندی ابزارهای داخلی موجود در حالت عامل، موارد زیر را انجام دهید:

  1. تنظیمات Gemini خود را با فرمت JSON که در مسیر ~/.gemini/settings.json قرار دارد، باز کنید. در اینجا ~ دایرکتوری خانگی شماست.
  2. برای محدود کردن استفاده از ابزار عامل به فهرستی از ابزارهای تأیید شده، خط زیر را به تنظیمات Gemini JSON خود اضافه کنید:

    "coreTools": ["TOOL_NAME_1,TOOL_NAME_2"]
    

    TOOL_NAME_1 و TOOL_NAME_2 را با نام ابزارهای داخلی که می‌خواهید عامل به آنها دسترسی داشته باشد، جایگزین کنید.

    شما می‌توانید هر تعداد ابزار داخلی که می‌خواهید را فهرست کنید. به طور پیش‌فرض، همه ابزارهای داخلی برای عامل در دسترس هستند.

  3. برای محدود کردن استفاده از ابزار عامل به دستورات ابزار خاص، خط زیر را به تنظیمات Gemini JSON خود اضافه کنید:

    "coreTools": ["TOOL_NAME(COMMAND)"]
    

    موارد زیر را جایگزین کنید:

    • TOOL_NAME : نام ابزار داخلی
    • COMMAND : نام دستور ابزار داخلی که می‌خواهید عامل بتواند از آن استفاده کند.
  4. برای حذف یک ابزار از استفاده توسط عامل، خط زیر را به تنظیمات JSON جمینی خود اضافه کنید:

    "excludeTools": ["TOOL_NAME_1,TOOL_NAME_2"]
    

    TOOL_NAME_1 و TOOL_NAME_2 با نام ابزارهای داخلی که می‌خواهید از استفاده‌ی عامل مستثنی شوند، جایگزین کنید.

  5. برای حذف یک دستور ابزار از استفاده توسط عامل، خط زیر را به تنظیمات JSON جمینی خود اضافه کنید:

    "excludeTools": ["TOOL_NAME(COMMAND)"]
    

    موارد زیر را جایگزین کنید:

    • TOOL_NAME : نام ابزار داخلی
    • COMMAND : نام دستور ابزار داخلی که می‌خواهید از استفاده عامل مستثنی شود.

برای اطلاعات بیشتر در مورد تنظیمات پیکربندی coreTools و excludeTools ، به مستندات پیکربندی Gemini CLI مراجعه کنید.

اینتلی جی

این ویژگی در Gemini Code Assist برای IntelliJ یا سایر IDE های JetBrains پشتیبانی نمی‌شود.

پیکربندی سرورهای MCP

دستورالعمل‌های زیر نحوه‌ی در دسترس قرار دادن سرورهای MCP برای استفاده در حالت عامل در IDE شما را نشان می‌دهد. پس از در دسترس قرار دادن یک سرور MCP، Gemini Code Assist به طور خودکار تصمیم می‌گیرد که چه زمانی و چگونه از ابزارهای سرور موجود در آن سرور MCP استفاده کند.

کد VS

برای اینکه سرورهای MCP برای استفاده در حالت عامل در دسترس باشند، پیکربندی هر سرور را طبق مستندات هر سرور، در فایل JSON تنظیمات Gemini خود اضافه کنید.

  1. هرگونه وابستگی مورد نیاز سرورهای MCP که اضافه می‌کنید را نصب کنید.
  2. فایل JSON تنظیمات Gemini خود را که در ~/.gemini/settings.json قرار دارد، باز کنید. در اینجا ~ دایرکتوری خانگی شماست.
  3. هر سرور MCP محلی یا راه دور را در فایل JSON تنظیمات Gemini، طبق دستورالعمل‌های هر سرور، پیکربندی کنید.

    فایل JSON تنظیمات Gemini در مثال زیر، دو سرور Cloudflare MCP از راه دور، یک سرور GitLab MCP از راه دور و یک سرور GitHub MCP محلی را برای استفاده با Gemini Code Assist در VS Code پیکربندی می‌کند.

    {
      "mcpServers": {
        "github": {
          "command": "npx",
          "args": ["-y", "@modelcontextprotocol/server-github"],
          "env": {
            "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_example_personal_access_token12345"
          }
        },
        "gitlab": {
          "command": "npx",
          "args": ["mcp-remote", "https://your-gitlab-instance.com/api/v4/mcp"]
        },
        "cloudflare-observability": {
          "command": "npx",
          "args": ["mcp-remote", "https://observability.mcp.cloudflare.com/sse"]
        },
        "cloudflare-bindings": {
          "command": "npx",
          "args": ["mcp-remote", "https://bindings.mcp.cloudflare.com/sse"]
        }
      }
    }
    

  4. پالت فرمان را باز کنید و Developer: Reload Window را انتخاب کنید.

سرورهای MCP پیکربندی‌شده شما برای استفاده توسط عامل در حالت عامل در دسترس هستند.

اینتلی جی

برای اینکه سرورهای MCP برای استفاده در حالت عامل در دسترس باشند، پیکربندی هر سرور را در یک فایل mcp.json اضافه کنید و فایل mcp.json را در دایرکتوری پیکربندی IDE خود قرار دهید.

  1. هرگونه وابستگی مورد نیاز سرورهای MCP که اضافه می‌کنید را نصب کنید.
  2. فایلی با نام mcp.json در پوشه‌ی پیکربندی IDE خود ایجاد کنید.
  3. هر سرور MCP محلی یا راه دور را در فایل mcp.json ، طبق دستورالعمل‌های هر سرور، پیکربندی کنید.

    فایل mcp.json مثال زیر، دو سرور Cloudflare MCP از راه دور، یک سرور GitLab MCP از راه دور و یک سرور GitHub MCP محلی را برای استفاده با Gemini Code Assist در IntelliJ پیکربندی می‌کند.

    {
      "mcpServers": {
        "github": {
          "command": "npx",
          "args": ["-y", "@modelcontextprotocol/server-github"],
          "env": {
            "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_example_personal_access_token12345"
          }
        },
        "gitlab": {
          "command": "npx",
          "args": ["mcp-remote", "https://your-gitlab-instance.com/api/v4/mcp"]
        },
        "cloudflare-observability": {
          "command": "npx",
          "args": ["mcp-remote", "https://observability.mcp.cloudflare.com/sse"]
        },
        "cloudflare-bindings": {
          "command": "npx",
          "args": ["mcp-remote", "https://bindings.mcp.cloudflare.com/sse"]
        }
      }
    }
    

سرورهای MCP پیکربندی‌شده شما برای استفاده توسط عامل در حالت عامل در دسترس هستند.

احراز هویت سرور MCP

برخی از سرورهای MCP نیاز به احراز هویت دارند. برای ایجاد توکن‌های کاربری مورد نیاز، مستندات سرور را دنبال کنید و سپس آنها را به طور مناسب مشخص کنید. معمولاً توکن‌های احراز هویت را برای سرورهای محلی با استفاده از متغیر محیطی مناسب مختص سرور و توکن‌های احراز هویت را برای سرورهای راه دور با استفاده از هدر HTTP Authorization مشخص می‌کنید.

کد VS

برای سرورهای MCP که نیاز به احراز هویت دارند، می‌توانید آنها را به تنظیمات Gemini خود با فرمت JSON اضافه کنید.

مثال زیر نحوه تعیین یک توکن دسترسی شخصی برای سرورهای محلی و راه دور MCP در GitHub را نشان می‌دهد:

{
  "mcpServers": {
    "github-remote": {
      "httpUrl": "https://api.githubcopilot.com/mcp/",
      "headers": {
        "Authorization": "Bearer ACCESS_TOKEN"
      }
    },
    "github-local": {
      "command": "/Users/username/code/github-mcp-server/cmd/github-mcp-server/github-mcp-server",
      "args": ["stdio"],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "ACCESS_TOKEN"
      }
    }
  }
}

که در آن ACCESS_TOKEN توکن دسترسی کاربر است.

اینتلی جی

برای سرورهای MCP که نیاز به احراز هویت دارند، می‌توانید آنها را به فایل mcp.json خود اضافه کنید.

مثال زیر یک توکن دسترسی شخصی برای سرور محلی GitHub اضافه می‌کند:

{
  "mcpServers": {
    "github-local": {
      "command": "/Users/username/code/github-mcp-server/cmd/github-mcp-server/github-mcp-server",
      "args": ["stdio"],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "ACCESS_TOKEN"
      }
    }
  }
}

که در آن ACCESS_TOKEN توکن دسترسی کاربر است.

ایجاد یک فایل زمینه

زمینه به یک عامل اجازه می‌دهد تا پاسخ‌های بهتری برای یک اعلان داده شده تولید کند. زمینه را می‌توان از فایل‌های موجود در IDE شما، فایل‌های موجود در پوشه‌های سیستم محلی شما، پاسخ‌های ابزار و جزئیات اعلان شما دریافت کرد. برای اطلاعات بیشتر، به زمینه حالت عامل مراجعه کنید.

کد VS

  1. فایلی با نام GEMINI.md در مکانی که با محدوده‌ای که می‌خواهید context در آن اعمال شود، مطابقت دارد، ایجاد کنید. جدول زیر جزئیات مکان فایل‌های context را برای محدوده‌های مختلف نشان می‌دهد:

    محدوده مکان
    تمام پروژه‌های شما ~/.gemini/GEMINI.md
    یک پروژه مشخص دایرکتوری کاری شما یا هر دایرکتوری والد دیگری تا ریشه پروژه شما (که با پوشه .git مشخص می‌شود) یا دایرکتوری خانگی شما.
    یک جزء، ماژول یا زیربخش خاص از یک پروژه زیرشاخه‌های دایرکتوری کاری شما.

    سیستم حافظه عامل با بارگذاری فایل‌های زمینه از چندین مکان ایجاد می‌شود. زمینه از فایل‌های خاص‌تر، مانند فایل‌های مربوط به اجزا یا ماژول‌های خاص، محتوای فایل‌های زمینه عمومی‌تر مانند فایل زمینه سراسری در ~/.gemini/GEMINI.md را لغو یا تکمیل می‌کند.

  2. هر قانون، اطلاعات راهنمای سبک یا زمینه‌ای را که می‌خواهید عامل از آن استفاده کند، در Markdown بنویسید و فایل را ذخیره کنید. برای اطلاعات بیشتر، به فایل زمینه نمونه در GitHub مراجعه کنید.

عامل، اطلاعات موجود در فایل زمینه شما را به همراه هرگونه درخواستی که برای آن ارسال می‌کنید، درج می‌کند.

اینتلی جی

  1. فایلی با نام GEMINI.md یا AGENT.md در ریشه پروژه خود ایجاد کنید.

  2. هر قانون، اطلاعات راهنمای سبک یا زمینه‌ای را که می‌خواهید عامل از آن در Markdown استفاده کند، بنویسید و فایل را ذخیره کنید.

عامل، اطلاعات موجود در فایل context شما را به همراه هر گونه درخواستی که به آن ارسال می‌کنید، در خود جای می‌دهد. همچنین می‌توانید با افزودن دستی یک فایل با سینتکس @ FILENAME که در آن FILENAME نام فایلی است که اطلاعات context مورد نظر شما در آن قرار دارد، context را اضافه کنید.

استفاده از دستورات

دستورات اسلش / به شما امکان می‌دهند دستوراتی مشابه دستورات موجود در یک پنجره ترمینال را به سرعت اجرا کنید.

کد VS

می‌توانید از دستورات داخلی Gemini CLI زیر در حالت عامل استفاده کنید:

  • /tools : فهرستی از ابزارهای موجود در جلسه حالت عامل شما را نمایش می‌دهد.
  • /mcp : فهرستی از سرورهای پیکربندی‌شده‌ی پروتکل زمینه مدل (MCP)، وضعیت اتصال آنها، جزئیات سرور و ابزارهای موجود را نمایش می‌دهد.

برای اطلاعات بیشتر در مورد دستورات Gemini CLI، به دستورات Gemini CLI و دستورات سفارشی Gemini مراجعه کنید. توجه داشته باشید که همه دستورات Gemini CLI در حالت عامل در دسترس نیستند.

اینتلی جی

این ویژگی در Gemini Code Assist برای IntelliJ یا سایر IDE های JetBrains پشتیبانی نمی‌شود.

همیشه به عامل اجازه دهید اقدامات انجام دهد

شما می‌توانید به طور خودکار به همه اقدامات عامل اجازه دهید.

برای مجاز کردن خودکار همه اقدامات عامل:

کد VS

از حالت yolo برای مجاز کردن خودکار تمام اقدامات عامل استفاده کنید. حالت Yolo فقط در یک فضای کاری قابل اعتماد قابل استفاده است.

برای پیکربندی حالت yolo:

  1. فایل JSON تنظیمات کاربری VS Code خود را باز کنید:

    1. پالت Command را باز کنید ( ctrl / command + Shift + P ).
    2. تنظیمات برگزیده را انتخاب کنید: تنظیمات کاربر (JSON) را باز کنید .
  2. موارد زیر را به فایل JSON تنظیمات کاربر VS Code خود اضافه کنید:

    //other settings...
    
    "geminicodeassist.agentYoloMode": true,
    //other settings...
    
  3. پالت فرمان را باز کنید و Developer: Reload Window را انتخاب کنید.

حالت عامل از حالت yolo استفاده می‌کند و قبل از انجام اقدامات، وقتی به آن اعلان ارسال می‌کنید، اجازه نمی‌گیرد. هنگام استفاده از یک فضای کاری محدود، عامل صرف نظر از این تنظیم، قبل از انجام اقدامات، اعلان می‌کند.

اینتلی جی

برای تأیید خودکار تغییرات، در برگه «نماینده چت Gemini»، «تنظیمات» «گزینه‌های نماینده» را انتخاب کنید و سپس روی کادر تأیید خودکار تغییرات کلیک کنید.

حالت عامل (Agent mode) به طور خودکار همه درخواست‌ها را تأیید می‌کند و قبل از انجام اقدامات، وقتی که برای آن درخواستی ارسال می‌کنید، اجازه نمی‌گیرد.

دستورالعمل‌های اضافی

با اطلاعات خودتان، دستورالعمل‌های زیر را امتحان کنید:

  • «این مخزن چه کاری انجام می‌دهد؟ به من کمک کن معماری آن را بفهمم.»
  • «این [کلاس/تابع] چه کاری انجام می‌دهد؟»
  • "یک ویژگی به این پایگاه کد اضافه کنید - "[لینک یا مسیر به پایگاه کد]"."
  • «تابع [A] و [B] را برای استفاده از روش رایج [C]، بازسازی کنید.»
  • «مشکل گیت‌هاب را برطرف کنید [link-to-github-issue].»
  • «یک برنامه برای انجام [هدف] با رابط کاربری بسازید که به کاربر اجازه دهد [وظیفه] را در [محیط] انجام دهد.»
  • "نسخه‌های کتابخانه موجود در این مخزن را از [X] به [Y] منتقل کنید."
  • «عملکرد این کد Go را بهینه کنید تا سریع‌تر اجرا شود.»
  • «از [نام API] برای ساخت این ویژگی استفاده کنید.»
  • «الگوریتمی برای انجام [x]، [Y] و [Z] پیاده‌سازی کنید.»

اختیاری: از کلید API استفاده کنید

بسته به سطحی که در آن هستید، Gemini Code Assist سهمیه‌های روزانه متفاوتی برای ویژگی‌های agentic دارد. اگر ظرفیت روزانه خود را برای حالت agent Gemini Code Assist تمام کرده‌اید، می‌توانید با ارائه یک کلید API به استفاده از سرویس ادامه دهید. می‌توانید از کلید API Gemini یا کلید API Vertex AI استفاده کنید.

برای اضافه کردن کلید API خود:

  1. به تنظیمات IDE خود بروید.

  2. فایل settings.json را باز کنید.

  3. خط زیر را اضافه کنید و به جای YOUR_KEY ، کلید API خود را قرار دهید:

    "geminicodeassist.geminiApiKey": " YOUR_KEY "

قدم بعدی چیست؟