במאמר הזה מוסבר איך להגדיר את מצב הסוכן של Gemini Code Assist ולהשתמש בו כמתכנת עמית בסביבת הפיתוח המשולבת (IDE).
במצב סוכן, אתם יכולים לבצע את הפעולות הבאות ועוד:
- לשאול שאלות על הקוד.
- השתמשו בהקשר ובכלים המובנים כדי לשפר את התוכן שנוצר.
- כדי להרחיב את היכולות של הסוכן, אפשר להגדיר שרתי MCP.
- לקבל פתרונות למשימות מורכבות עם כמה שלבים.
- ליצור קוד ממסמכי עיצוב, מבעיות ומתגובות ב-
TODO. - אתם יכולים לשלוט בהתנהגות של הנציג באמצעות הוספת הערות, עריכה ואישור של תוכניות ושימוש בכלים במהלך הביצוע.
מגבלות
יכול להיות שחלק מהתכונות של הצ'אט הרגיל של Gemini Code Assist לא יהיו זמינות במצב סוכן, או שהן יפעלו בצורה שונה מאשר בצ'אט הרגיל.
אי אפשר להשתמש ב-Recitation במצב Agent. במצב סוכן, Gemini לא מפנה למקורות ואי אפשר להשבית הצעות קוד שתואמות למקורות המצוטטים.
לפני שמתחילים
הפעלת Agent Mode
במצב סוכן, אתם יכולים לבקש מ-Gemini להשלים מטרות ברמה גבוהה ומשימות מורכבות.
כדי להפיק את המקסימום ממצב סוכן, כדאי לפעול לפי השיטות המומלצות להנחיות ולתת כמה שיותר פרטים.
כדי לעבור למצב Agent:
VS Code
- כדי לפתוח את הצ'אט של Gemini Code Assist, בסרגל הפעילות של סביבת הפיתוח המשולבת לוחצים על spark Gemini Code Assist.
- לוחצים על המתג סוכן כדי לעבור למצב סוכן. המתג מודגש כשעוברים למצב סוכן, ומופיע באפור כשנמצאים בצ'אט רגיל.
- בצ'אט של Gemini Code Assist, מזינים את ההנחיה.
Gemini נותן תשובה להנחיה או מבקש הרשאה להשתמש בכלי.
כדי לעצור את הסוכן, לוחצים על Stop.
כדי להשתמש בצ'אט הרגיל של Gemini Code Assist, לוחצים על New chat כדי ליצור צ'אט חדש.
IntelliJ
- בסרגל של חלון הכלי, לוחצים על spark Gemini. אם מוצגת בקשה להיכנס לחשבון, מזינים את פרטי הכניסה.
- לוחצים על הכרטיסייה נציג.
- מתארים את המשימה שרוצים שהסוכן יבצע.
בזמן שהנציג מבצע את השלבים להשלמת המשימה, תוכלו לבדוק ולאשר את השינויים.
אופציונלי: כדי לאשר שינויים באופן אוטומטי, לוחצים על הגדרות אפשרויות לסוכן ומסמנים את התיבה לצד אישור אוטומטי של שינויים.
הגדרת כלים למצב Agent
כלים הם קטגוריה רחבה של שירותים שהסוכן יכול להשתמש בהם כדי לקבל הקשר ולבצע פעולות בתשובה להנחיה שלכם. דוגמאות לכלים: כלים מובנים כמו grep וקריאה או כתיבה של קבצים, שרתי Model Context Protocol (MCP) מקומיים או מרוחקים והפונקציות שלהם שניתנות להפעלה, או הטמעות של שירותים בהתאמה אישית.
שליטה בשימוש בכלים מובנים
במצב Agent יש גישה לכלים המובנים כמו חיפוש קבצים, קריאת קבצים, כתיבת קבצים, פקודות מסוף ועוד.
VS Code
אתם יכולים להשתמש בהגדרות coreTools ו-excludeTools כדי לקבוע לאילו כלים תהיה ל-Gemini גישה במצב סוכן.
coreTools- מאפשר לציין רשימה של כלים שרוצים שיהיו זמינים למודל. אתם יכולים גם לציין הגבלות ספציפיות לפקודות בכלים שתומכים בכך. לדוגמה, אם תוסיפו את הקוד הבא לקובץ ה-JSON של הגדרות Gemini, רק הפקודה
ls -lשל המעטפת תוכל לפעול:"coreTools": ["ShellTool(ls -l)"]. excludeTools- מאפשרת לציין רשימה של כלים שלא רוצים שיהיו זמינים למודל. אתם יכולים גם לציין הגבלות ספציפיות לפקודות בכלים שתומכים בכך. לדוגמה, אם תוסיפו את הטקסט הבא לקובץ ה-JSON של הגדרות Gemini, המשתמשים לא יוכלו להשתמש בפקודה
rm -rf:"excludeTools": ["ShellTool(rm -rf)"].
כלי שמופיע גם ב-excludeTools וגם ב-coreTools מוחרג.
כדי להגדיר את הכלים המובנים שזמינים במצב סוכן:
- פותחים את קובץ ה-JSON של הגדרות Gemini שנמצא ב-
~/.gemini/settings.json, כאשר~היא ספריית הבית. כדי להגביל את השימוש בכלים של הסוכן לרשימה של כלים מאושרים, מוסיפים את השורה הבאה לקובץ ה-JSON של הגדרות Gemini:
"coreTools": ["TOOL_NAME_1,TOOL_NAME_2"]מחליפים את
TOOL_NAME_1ואתTOOL_NAME_2בשמות של הכלים המובְנים שרוצים לתת לנציג גישה אליהם.אפשר להוסיף כמה כלים מובנים שרוצים. כברירת מחדל, כל הכלים המובנים זמינים לסוכן.
כדי להגביל את השימוש בכלים של הסוכן לפקודות ספציפיות, מוסיפים את השורה הבאה לקובץ ה-JSON של הגדרות Gemini:
"coreTools": ["TOOL_NAME(COMMAND)"]מחליפים את מה שכתוב בשדות הבאים:
-
TOOL_NAME: השם של הכלי המובנה -
COMMAND: השם של פקודת הכלי המובנה שרוצים שהנציג יוכל להשתמש בה.
-
כדי להחריג כלי משימוש של נציג, מוסיפים את השורה הבאה לקובץ ה-JSON של הגדרות Gemini:
"excludeTools": ["TOOL_NAME_1,TOOL_NAME_2"]מחליפים את
TOOL_NAME_1ואתTOOL_NAME_2בשמות של הכלים המובְנים שרוצים להחריג מהשימוש של הנציג.כדי להחריג פקודת כלי משימוש של נציג, מוסיפים את השורה הבאה לקובץ ה-JSON של הגדרות Gemini:
"excludeTools": ["TOOL_NAME(COMMAND)"]מחליפים את מה שכתוב בשדות הבאים:
-
TOOL_NAME: השם של הכלי המובנה -
COMMAND: שם הפקודה של הכלי המובנה שאתם רוצים להחריג מהשימוש של הנציג.
-
מידע נוסף על הגדרות coreTools ו-excludeTools מופיע במסמכי התיעוד של Gemini CLI.
IntelliJ
התכונה הזו לא נתמכת ב-Gemini Code Assist ל-IntelliJ או לסביבות פיתוח משולבות (IDE) אחרות של JetBrains.
הגדרת שרתי MCP
בהוראות הבאות מוסבר איך להפוך שרתי MCP לזמינים לשימוש במצב סוכן ב-IDE. אחרי שאתם הופכים שרת MCP לזמין, Gemini Code Assist מחליט באופן אוטומטי מתי ואיך להשתמש בכלי השרת שכלולים בשרת ה-MCP הזה.
VS Code
כדי ששרתי MCP יהיו זמינים לשימוש במצב סוכן, צריך להוסיף את ההגדרות של כל שרת לקובץ ה-JSON של הגדרות Gemini, בהתאם למסמכי התיעוד של כל שרת.
- מתקינים את כל יחסי התלות שנדרשים לשרתי ה-MCP שאתם מוסיפים.
- פותחים את קובץ ה-JSON של הגדרות Gemini, שנמצא ב-
~/.gemini/settings.json, כאשר~היא ספריית הבית. מגדירים כל שרת MCP מקומי או מרוחק בקובץ ה-JSON של הגדרות Gemini, בהתאם להוראות של כל שרת.
בקובץ ה-JSON הבא של הגדרות Gemini, מגדירים שני שרתי MCP מרוחקים של Cloudflare, שרת MCP מרוחק של GitLab ושרת MCP מקומי של GitHub לשימוש עם 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"] } } }פותחים את לוח הפקודות ובוחרים באפשרות Developer: Reload Window.
הסוכן יכול להשתמש בשרתי ה-MCP שהגדרתם במצב סוכן.
IntelliJ
כדי ששרתי MCP יהיו זמינים לשימוש במצב סוכן, מוסיפים את ההגדרות של כל שרת בקובץ mcp.json וממקמים את הקובץ mcp.json בספריית ההגדרות של ה-IDE.
- מתקינים את כל יחסי התלות שנדרשים לשרתי ה-MCP שאתם מוסיפים.
- יוצרים קובץ בשם
mcp.jsonבספריית ההגדרות של ה-IDE. מגדירים כל שרת MCP מקומי או מרוחק בקובץ
mcp.json, בהתאם להוראות של כל שרת.בקובץ
mcp.jsonשבדוגמה הבאה מגדירים שני שרתי MCP מרוחקים של Cloudflare, שרת MCP מרוחק של GitLab ושרת MCP מקומי של GitHub לשימוש עם 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 דורשים אימות. כדי ליצור את אסימוני המשתמשים הנדרשים, פועלים לפי ההוראות במסמכי התיעוד של השרת, ואז מציינים אותם בהתאם. בדרך כלל, מציינים אסימוני אימות לשרתים מקומיים באמצעות משתנה הסביבה המתאים לשרת, ומציינים אסימוני אימות לשרתים מרוחקים באמצעות הכותרת Authorization של HTTP.
VS Code
אם שרתי ה-MCP דורשים אימות, אתם יכולים להוסיף אותם לקובץ ה-JSON של הגדרות Gemini.
בדוגמה הבאה מוסבר איך לציין טוקן גישה אישי לשרתי 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 הוא טוקן הגישה של המשתמש.
IntelliJ
אם שרתי ה-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 Code
יוצרים קובץ בשם
GEMINI.mdבמיקום שתואם להיקף שרוצים להחיל עליו את ההקשר. בטבלה הבאה מפורטים המיקומים של קובצי ההקשר בהיקפים שונים:היקף מיקום כל הפרויקטים שלכם ~/.gemini/GEMINI.mdפרויקט ספציפי ספריית העבודה או כל ספריית אם עד לספריית הבסיס של הפרויקט (שמזוהה על ידי תיקיית .git) או ספריית הבית.רכיב, מודול או תת-קטע ספציפיים של פרויקט ספריות משנה של ספריית העבודה. מערכת הזיכרון של הנציג נוצרת על ידי טעינת קובצי הקשר מכמה מיקומים. הקשר מקבצים ספציפיים יותר, כמו קבצים של רכיבים או מודולים ספציפיים, מבטל או משלים תוכן מקובצי הקשר כלליים יותר, כמו קובץ ההקשר הגלובלי ב-
~/.gemini/GEMINI.md.כותבים את הכללים, המידע ממדריך הסגנון או ההקשר שרוצים שהסוכן ישתמש בהם ב-Markdown ושומרים את הקובץ. מידע נוסף זמין בקובץ ההקשר לדוגמה ב-GitHub.
הסוכן כולל את המידע בקובץ ההקשר יחד עם כל ההנחיות שאתם שולחים אליו.
IntelliJ
יוצרים קובץ בשם
GEMINI.mdאוAGENT.mdבתיקיית השורש של הפרויקט.כותבים ב-Markdown את הכללים, המידע ממדריך הסגנון או ההקשר שרוצים שהסוכן ישתמש בהם, ושומרים את הקובץ.
הסוכן כולל את המידע בקובץ ההקשר יחד עם כל ההנחיות שאתם שולחים אליו. אתם יכולים גם להוסיף הקשר על ידי הוספה ידנית של קובץ באמצעות התחביר @FILENAME, כאשר FILENAME הוא שם הקובץ עם המידע לפי הקשר שאתם רוצים לכלול.
שימוש בפקודות
פקודות לוחסן / מאפשרות להריץ במהירות פקודות שדומות לפקודות בחלון הטרמינל.
VS Code
במצב סוכן, אתם יכולים להשתמש בפקודות המובנות הבאות של Gemini CLI:
-
/tools: הצגת רשימה של הכלים שזמינים בסשן במצב סוכן. -
/mcp: מציגה רשימה של שרתי Model Context Protocol (MCP) שהוגדרו, סטטוס החיבור שלהם, פרטי השרת והכלים הזמינים.
-
/deploy: פריסת אפליקציית אינטרנט ב-Cloud Run. הפקודה המותאמת אישית הזו, שמבוססת על Gemini CLI, משתמשת בשרת Model Context Protocol (MCP) של Cloud Run כדי ליצור, להכיל בקונטיינר, לדחוף, להגדיר ולהחזיר כתובת URL ציבורית לאפליקציה. כדי להשתמש בפקודה הזו, צריך להפעיל את Cloud Run בפרויקט ב- Google Cloudולהתקין את שרת ה-MCP של Cloud Run בתור תוסף ל-Gemini.
מידע נוסף על פקודות Gemini CLI זמין במאמרים פקודות Gemini CLI ופקודות Gemini בהתאמה אישית. חשוב לזכור שלא כל הפקודות של Gemini CLI זמינות במצב סוכן.
IntelliJ
התכונה הזו לא נתמכת ב-Gemini Code Assist ל-IntelliJ או לסביבות פיתוח משולבות (IDE) אחרות של JetBrains.
תמיד לאפשר פעולות של הסוכן
אתם יכולים לאשר באופן אוטומטי את כל הפעולות של הסוכן.
כדי לאשר אוטומטית את כל הפעולות של הסוכן:
VS Code
כדי לאשר אוטומטית את כל הפעולות של הנציג, צריך להשתמש במצב YOLO. אפשר להשתמש במצב Yolo רק בסביבת עבודה מהימנה.
כדי להגדיר את מצב YOLO:
פותחים את קובץ ה-JSON של הגדרות המשתמש ב-VS Code:
- פותחים את לוח הפקודות (
ctrl/command+Shift+P). - בוחרים באפשרות Preferences: Open User Settings (JSON).
- פותחים את לוח הפקודות (
מוסיפים את הקוד הבא לקובץ ה-JSON של הגדרות המשתמש ב-VS Code:
//other settings... "geminicodeassist.agentYoloMode": true, //other settings...פותחים את לוח הפקודות ובוחרים באפשרות Developer: Reload Window.
במצב סוכן, המערכת משתמשת במצב YOLO ולא מבקשת אישור לפני שהיא מבצעת פעולות כששולחים לה הנחיה. כשמשתמשים בסביבת עבודה מוגבלת, הסוכן יציג בקשה לפני ביצוע פעולות, בלי קשר להגדרה הזו.
IntelliJ
כדי לאשר שינויים באופן אוטומטי, בכרטיסייה של סוכן Gemini Chat, לוחצים על הגדרות אפשרויות הסוכן ואז מסמנים את התיבה לצד אישור אוטומטי של שינויים.
במצב סוכן, כל הבקשות מאושרות באופן אוטומטי, והוא לא מבקש אישור לפני שהוא מבצע פעולות כששולחים לו הנחיה.
הנחיות נוספות
נסו את ההנחיות הבאות עם המידע שלכם:
- "מה המאגר הזה עושה? תעזור לי להבין את הארכיטקטורה".
- "What does this [class/function] do?"
- "הוסף תכונה לבסיס הקוד הזה – [קישור או נתיב לבסיס הקוד]".
- "Refactor function [A] and [B] to use the common method [C]."
- "Fix the GitHub issue [link-to-github-issue]."
- "פתח אפליקציה שמבצעת [מטרה] עם ממשק משתמש שמאפשר למשתמש לבצע [משימה] ב[סביבה]."
- "Migrate library versions in this repository from [X] to [Y]."
- "Optimize performance of this Go code so that it runs faster." (שפר את הביצועים של קוד Go הזה כדי שהוא יפעל מהר יותר.)
- "השתמש ב-[שם ה-API] כדי לפתח את התכונה הזו".
- "הטמע אלגוריתם שיבצע את [X], [Y] ו-[Z]".
אופציונלי: שימוש במפתח API
Gemini Code Assist כולל מכסות יומיות שונות לתכונות של סוכנים, בהתאם לרמה שלכם.
אם מיציתם את המכסה היומית של מצב הסוכן ב-Gemini Code Assist, אתם יכולים להמשיך להשתמש בשירות באמצעות מפתח API. אפשר להשתמש במפתח Gemini API או במפתח Vertex AI API.
כדי להוסיף את מפתח ה-API:
עוברים להגדרות של ה-IDE.
פותחים את הקובץ
settings.json.מוסיפים את השורה הבאה, ומחליפים את
YOUR_KEYבמפתח ה-API שלכם:"geminicodeassist.geminiApiKey": "YOUR_KEY"