ลองใช้ Gemini CLI

1. บทนำ

ใน Codelab นี้ คุณจะได้เรียนรู้เกี่ยวกับ Gemini CLI ซึ่งเป็นเอเจนต์ AI แบบโอเพนซอร์สที่นำพลังของ Gemini มาไว้ในเทอร์มินัลของคุณโดยตรง

สิ่งที่คุณจะได้เรียนรู้

  1. การติดตั้งและกำหนดค่า Gemini CLI
  2. การสำรวจเครื่องมือ คำสั่งในตัว และการกำหนดค่าเซิร์ฟเวอร์ MCP ใน Gemini CLI
  3. การปรับแต่ง Gemini CLI ผ่านไฟล์ GEMINI.md
  4. สำรวจกรณีการใช้งานบางอย่างด้วย Gemini CLI

สิ่งที่คุณต้องมี

คุณสามารถเรียกใช้ Codelab นี้ได้ทั้งหมดภายใน Google Cloud Shell ซึ่งติดตั้ง Gemini CLI ไว้ล่วงหน้า

หรือหากต้องการทำงานบนเครื่องของคุณเอง ก็มีส่วนสำหรับติดตั้ง Gemini CLI ในเครื่อง

คุณจะต้องมีสิ่งต่อไปนี้

  • เว็บเบราว์เซอร์ Chrome
  • บัญชี Gmail

Codelab นี้ออกแบบมาสำหรับผู้ใช้และนักพัฒนาซอฟต์แวร์ทุกระดับ (รวมถึงผู้เริ่มต้น) กรณีการใช้งานใน Codelab ได้รับการจัดหมวดหมู่เป็นงานสำหรับนักพัฒนาแอปและงานสำหรับผู้ที่ไม่ใช่นักพัฒนาแอป กรณีการใช้งานของนักพัฒนาซอฟต์แวร์แสดงให้เห็นวิธีเขียนโค้ดด้วย Gemini CLI และการทำงานกับที่เก็บ GitHub เพื่อทำงานด้านการพัฒนาทั่วไป เช่น การอธิบาย/ทำความเข้าใจโค้ด การสร้างเอกสาร การแก้ไขปัญหา และอื่นๆ เราขอแนะนำให้คุณทำตามกรณีการใช้งานเหล่านี้ใน Codelab ส่วนท้ายจะมีส่วนที่ไม่บังคับซึ่งครอบคลุมงานประจำวันหลายอย่างที่ไม่ได้มุ่งเน้นไปที่นักพัฒนาซอฟต์แวร์

2. ก่อนเริ่มต้น

สร้างโปรเจ็กต์

  1. ในคอนโซล Google Cloud ให้เลือกหรือสร้างโปรเจ็กต์ Google Cloud ในหน้าตัวเลือกโปรเจ็กต์
  2. ตรวจสอบว่าได้เปิดใช้การเรียกเก็บเงินสำหรับโปรเจ็กต์ Cloud แล้ว ดูวิธีตรวจสอบว่าได้เปิดใช้การเรียกเก็บเงินในโปรเจ็กต์แล้วหรือไม่
  3. คุณจะใช้ Cloud Shell ซึ่งเป็นสภาพแวดล้อมบรรทัดคำสั่งที่ทำงานใน Google Cloud และโหลด bq ไว้ล่วงหน้า คลิกเปิดใช้งาน Cloud Shell ที่ด้านบนของคอนโซล Google Cloud

รูปภาพปุ่มเปิดใช้งาน Cloud Shell

  1. เมื่อเชื่อมต่อกับ Cloud Shell แล้ว ให้ตรวจสอบว่าคุณได้รับการตรวจสอบสิทธิ์แล้วและตั้งค่าโปรเจ็กต์เป็นรหัสโปรเจ็กต์โดยใช้คำสั่งต่อไปนี้
gcloud auth list
  1. เรียกใช้คำสั่งต่อไปนี้ใน Cloud Shell เพื่อยืนยันว่าคำสั่ง gcloud รู้จักโปรเจ็กต์ของคุณ
gcloud config list project
  1. หากไม่ได้ตั้งค่าโปรเจ็กต์ ให้ใช้คำสั่งต่อไปนี้เพื่อตั้งค่า
gcloud config set project <YOUR_PROJECT_ID>

3. การติดตั้ง

ก่อนที่จะตั้งค่าและเรียกใช้ Gemini CLI ให้เราสร้างโฟลเดอร์ที่จะใช้เป็นโฟลเดอร์หลักสำหรับโปรเจ็กต์ทั้งหมดที่เราสร้างไว้ภายใน นี่คือจุดเริ่มต้นที่ Gemini CLI จะใช้ทำงาน แม้ว่า Gemini CLI จะอ้างอิงโฟลเดอร์อื่นๆ ในระบบด้วย และคุณจะเข้าถึงโฟลเดอร์เหล่านั้นได้ในภายหลังตามความจำเป็น

สร้างโฟลเดอร์ตัวอย่าง (gemini-cli-projects) แล้วไปที่โฟลเดอร์ดังกล่าวผ่านคำสั่งที่แสดงด้านล่าง หากต้องการใช้ชื่อโฟลเดอร์อื่น โปรดดำเนินการ

mkdir gemini-cli-projects

มาไปยังโฟลเดอร์นั้นกัน

cd gemini-cli-projects

คุณเปิดใช้ Gemini CLI ได้โดยตรงผ่านคำสั่ง gemini

โปรดไปที่ส่วนถัดไปโดยตรง (การกำหนดค่า Gemini CLI ผ่าน settings.json)

หากต้องการติดตั้ง Gemini CLI ในเครื่อง ให้ทำตามวิธีการด้านล่าง

ขั้นตอนแรกคือติดตั้ง Node 20 ขึ้นไปในเครื่อง เมื่อดำเนินการเสร็จแล้ว คุณจะติดตั้งและเรียกใช้ Gemini CLI ได้โดยใช้วิธีใดวิธีหนึ่งต่อไปนี้

  1. คุณสามารถติดตั้ง Gemini CLI ทั่วโลกในระบบก่อนได้ คุณอาจต้องมีสิทธิ์เข้าถึงระดับผู้ดูแลระบบจึงจะดำเนินการในขั้นตอนนี้ได้
# option 1: install Gemini CLI

npm install -g @google/gemini-cli

# .. and then run
gemini
  1. เรียกใช้ด้วยคำสั่งต่อไปนี้
# option 2: run without installing Gemini CLI

npx https://github.com/google-gemini/gemini-cli

คุณยืนยันได้ว่าติดตั้ง CLI แล้วโดยเรียกใช้คำสั่งต่อไปนี้

gemini --version

หากคุณเปิดใช้ Gemini CLI ผ่านวิธีใดวิธีหนึ่งข้างต้น คุณควรเห็นหน้าจอต่อไปนี้ที่ถามเกี่ยวกับการเลือกธีม เลือกรายการที่คุณต้องการได้เลย

35a98edaf7f22e8e.png

เมื่อเลือกแล้ว ระบบจะขอให้ระบุวิธีการตรวจสอบสิทธิ์ เราขอแนะนำให้คุณใช้บัญชี Google ส่วนตัวและไม่ใช้บัญชีที่ไม่ใช่ของ Google หรือบัญชีที่เกี่ยวข้องกับ Google Workspace ใน Labs นี้ ใบอนุญาตฟรีดังกล่าวจะช่วยให้คุณเข้าถึง Gemini 2.5 Pro และหน้าต่างบริบทขนาด 1 ล้านโทเค็นได้ ระดับฟรีอนุญาตให้ส่งคำขอโมเดล 60 รายการต่อนาทีและ 1,000 รายการต่อวันโดยไม่มีค่าใช้จ่าย

หากโควต้าฟรีปัจจุบันที่มอบให้แก่บัญชี Google เต็มแล้ว คุณสามารถเลือกใช้คีย์ Gemini API หรือแม้แต่ Vertex AI ของ Google Cloud ซึ่งคุณจะต้องมีรหัสโปรเจ็กต์และชื่อสถานที่ตั้งของโปรเจ็กต์นั้น โปรดดูส่วนการตรวจสอบสิทธิ์ในเอกสารประกอบ หากคุณวางแผนที่จะใช้วิธีการตรวจสอบสิทธิ์อื่นๆ

57bad75cedaaaa38.png

คลิก Enter ได้เลย ซึ่งจะเปิดหน้าการตรวจสอบสิทธิ์ของ Google ในเบราว์เซอร์ ดำเนินการต่อด้วยการตรวจสอบสิทธิ์ด้วยบัญชี Google ยอมรับข้อกำหนด และเมื่อตรวจสอบสิทธิ์สำเร็จแล้ว คุณจะเห็นว่า Gemini CLI พร้อมและรอคำสั่งของคุณ ตัวอย่างภาพหน้าจอแสดงอยู่ด้านล่าง

4dbc0138b78dc354.png

4. การกำหนดค่า Gemini CLI ผ่าน settings.json

หากเลือก Cloud Shell เพื่อเรียกใช้ Gemini ระบบจะเลือกและกำหนดค่าธีมเริ่มต้นสำหรับ Gemini CLI และวิธีการตรวจสอบสิทธิ์ให้คุณแล้ว

หากคุณติดตั้ง Gemini CLI ในเครื่องและเปิดใช้เป็นครั้งแรก คุณได้เลือกธีมและวิธีการตรวจสอบสิทธิ์แล้ว

ตอนนี้เมื่อเรียกใช้ Gemini CLI ในครั้งต่อๆ ไป ระบบจะไม่ขอให้คุณเลือกธีมและวิธีการตรวจสอบสิทธิ์อีก ซึ่งหมายความว่าระบบจะบันทึกไว้ที่ใดที่หนึ่ง และไฟล์ที่ใช้จะเรียกว่า settings.json และเป็นวิธีปรับแต่ง Gemini CLI

การตั้งค่าจะมีลำดับความสำคัญดังนี้ (Cloud Shell จะแสดงเฉพาะการตั้งค่าของผู้ใช้)

  1. ระบบ: /etc/gemini-cli/settings.json (มีผลกับผู้ใช้ทุกคน ลบล้างการตั้งค่าผู้ใช้และ Workspace)
  2. Workspace: .gemini/settings.json (ลบล้างการตั้งค่าของผู้ใช้)
  3. ผู้ใช้: ~/.gemini/settings.json

ผู้ใช้ Windows: %USERPROFILE%.gemini\settings.json (ซึ่งโดยปกติจะขยายเป็น C:\Users&lt;YourUsername&gt;.gemini\settings.json)

ระบบ: %ProgramData%\gemini-cli\settings.json (ซึ่งโดยปกติจะขยายเป็น C:\ProgramData\gemini-cli\settings.json)

ผู้ใช้ Mac: ~/.gemini/settings.json (ซึ่งขยายเป็น /Users/<YourUsername>/.gemini/settings.json)

ระบบ: /etc/gemini-cli/settings.json

หากจำได้ ตอนที่เลือกธีม คุณได้เลือกให้บันทึกการตั้งค่าไว้ในการตั้งค่าผู้ใช้ ดังนั้นไปที่ ~/.gemini folder แล้วคุณจะเห็นไฟล์ settings.json

ไฟล์ settings.json ของฉันแสดงอยู่ด้านล่าง หากคุณเลือกธีมอื่นไว้ คุณจะเห็นชื่อธีมนั้นที่นี่

{
  "theme": "Default",
  "selectedAuthType": "oauth-personal" or "cloud-shell"
}

5. การโต้ตอบครั้งแรกกับ Gemini CLI

มาเริ่มใช้ Gemini CLI และพิมพ์คำค้นหาแรกตามที่แสดงด้านล่างกัน

Give me a famous quote on Artificial Intelligence and who said that?

การตอบกลับที่คาดไว้แสดงอยู่ด้านล่าง

GoogleSearch Searching the web for: "famous quote on Artificial Intelligence and who said it"                                                                                                                 ...
Search results for "famous quote on Artificial Intelligence and who said it" returned.                                                                                                                             

✦ "The development of full artificial intelligence could spell the end of the human race." - Stephen Hawking.

คุณจะเห็นว่าคำค้นหาของเราทำให้เครื่องมือ GoogleSearch (เครื่องมือในตัวใน Gemini CLI) ทำงาน กล่าวคือ คุณได้ใช้เครื่องมือที่มีประสิทธิภาพในตัวของ Gemini CLI ไปแล้วอย่างหนึ่ง นั่นคือ GoogleSearch ซึ่งจะอ้างอิงคำตอบตามข้อมูลที่ได้รับจากเว็บ คุณจะได้ดูข้อมูลเพิ่มเติมเกี่ยวกับเครื่องมือในส่วนถัดไป

วิธีที่รวดเร็วในการทำความเข้าใจ Gemini CLI และคำสั่งต่างๆ ที่รองรับคือการพิมพ์ /help (เครื่องหมายทับ) แล้วคุณจะเห็นคำสั่งและแป้นพิมพ์ลัดต่างๆ

มาออกจาก Gemini CLI กันก่อน คุณทำได้โดยใช้คำสั่ง /quit หรือใช้คำสั่ง Ctrl-C 2 ครั้งในเซสชันเทอร์มินัล CLI ของ Gemini แบบอินเทอร์แอกทีฟ

6. Gemini CLI - พารามิเตอร์คำสั่ง

เมื่อเริ่มใช้ Gemini CLI คุณจะระบุพารามิเตอร์บรรทัดคำสั่งได้ 2-3 รายการ หากต้องการดูรายการตัวเลือกทั้งหมด ให้ใช้ --help ตามที่แสดงด้านล่าง

gemini --help

ซึ่งควรแสดงตัวเลือกทั้งหมดที่ใช้ได้ เราขอแนะนำให้คุณอ่านเอกสารประกอบที่นี่

มาดูตัวอย่างกัน วิธีแรกคือการกำหนดค่า Gemini CLI ให้ใช้โมเดล Pro หรือ Flash ปัจจุบัน ณ เวลาที่เขียนแล็บนี้ มีเพียง 2 โมเดลนี้เท่านั้นที่รองรับ โดยค่าเริ่มต้น ระบบจะใช้โมเดล Gemini 2.5 Pro แต่หากต้องการใช้โมเดล Flash คุณสามารถทำได้เมื่อเริ่มใช้ Gemini CLI ผ่านพารามิเตอร์ -m ดังที่แสดงด้านล่าง

gemini -m "gemini-2.5-flash"

คุณจะเห็นว่าหากเริ่มต้นด้วยวิธีข้างต้น คุณจะตรวจสอบโมเดลได้ที่ด้านขวาล่างของเทอร์มินัล Gemini CLI ดังที่แสดงด้านล่าง

60c4c0e6d277ade7.png

เมื่ออยู่ในแอปพลิเคชัน Gemini CLI แล้ว คุณจะใช้คำสั่ง /model เพื่อเปิดกล่องโต้ตอบที่ให้คุณเลือกโมเดลได้ ตัวอย่างการเรียกใช้แสดงอยู่ด้านล่าง และคุณสามารถสลับโมเดลเพื่อเลือกโมเดลที่เหมาะสมกับงานได้ตามข้อกำหนดและคำแนะนำที่ได้รับ โดยขึ้นอยู่กับความซับซ้อนและความจำเป็นในการควบคุมต้นทุน

4bd48822b92ba012.png

โหมดที่ไม่ใช่แบบอินเทอร์แอกทีฟ

ตัวเลือกที่น่าสนใจคือการเรียกใช้ Gemini CLI ในโหมดที่ไม่โต้ตอบ ซึ่งหมายความว่าคุณจะป้อนพรอมต์ให้โดยตรง แล้วโมเดลจะตอบกลับโดยไม่ต้องเปิดเทอร์มินัลแบบอินเทอร์แอกทีฟของ Gemini CLI ซึ่งจะมีประโยชน์อย่างมากหากคุณวางแผนที่จะใช้ Gemini CLI ในลักษณะอัตโนมัติเป็นส่วนหนึ่งของสคริปต์หรือกระบวนการอัตโนมัติอื่นๆ คุณใช้พารามิเตอร์ -p เพื่อระบุพรอมต์ไปยัง Gemini CLI ดังที่แสดงด้านล่าง หรือจะใช้อาร์กิวเมนต์ตำแหน่งเพื่อระบุพรอมต์ก็ได้

gemini "What is the gcloud command to deploy to Cloud Run"

โปรดทราบว่าคุณไม่สามารถสนทนาต่อด้วยคำถามติดตามผล โหมดนี้ยังไม่อนุญาตให้คุณให้สิทธิ์เครื่องมือ (รวมถึง WriteFile) หรือเรียกใช้คำสั่งเชลล์ด้วย

7. Gemini CLI - เครื่องมือในตัว

Gemini CLI มาพร้อมชุดเครื่องมือในตัว และเอกสารประกอบของเครื่องมือระบุว่า "โมเดล Gemini ใช้เครื่องมือเหล่านี้เพื่อโต้ตอบกับสภาพแวดล้อมในเครื่อง เข้าถึงข้อมูล และดำเนินการต่างๆ เครื่องมือเหล่านี้จะช่วยเพิ่มความสามารถของ CLI ทำให้ CLI ทำได้มากกว่าการสร้างข้อความและช่วยในงานต่างๆ ได้"

หากต้องการดูรายการเครื่องมือในตัวปัจจุบัน ให้เรียกใช้คำสั่ง /tools ดังที่แสดงด้านล่าง

Available Gemini CLI tools:

  - Codebase Investigator Agent (codebase_investigator)
  - Edit (replace)
  - FindFiles (glob)
  - GoogleSearch (google_web_search)
  - ReadFile (read_file)
  - ReadFolder (list_directory)
  - SaveMemory (save_memory)
  - SearchText (search_file_content)
  - Shell (run_shell_command)
  - WebFetch (web_fetch)
  - WriteFile (write_file)
  - WriteTodos (write_todos)

สิ่งหนึ่งที่คุณควรทำทันทีคือถามตัวเองว่า Gemini CLI สามารถเรียกใช้เครื่องมือเหล่านี้ได้หรือไม่เมื่อต้องการ คำตอบเริ่มต้นคือไม่ เมื่อพูดถึงการดำเนินการที่ละเอียดอ่อนซึ่งอาจเกี่ยวข้องกับการเขียนไปยังระบบภายใน การอ่านจากระบบภายนอก การไปที่เครือข่ายภายนอก และอื่นๆ

แม้ว่าจะมี--yoloให้ใช้งานเมื่อคุณเริ่ม CLI (โดยปกติเราไม่แนะนำ) แต่คุณจะเห็นว่า Gemini CLI จะแจ้งให้คุณขอสิทธิ์เพื่อเรียกใช้เครื่องมือที่เลือก คุณปฏิเสธสิทธิ์ หรืออนุญาตให้ทำงานครั้งเดียว หรือให้สิทธิ์แบบครอบคลุมเพื่ออนุญาตให้ทำงานได้ตลอดก็ได้ คุณควรควบคุมทุกอย่างได้อย่างเต็มที่

มาใช้พรอมต์ที่จะทำให้ Gemini CLI เลือกเครื่องมือที่มีอยู่เพื่อดำเนินการและจะช่วยให้คุณเข้าใจวิธีการทำงานทั้งหมดได้ดีกัน

ลองนึกถึงสถานการณ์ที่คุณต้องการรับข้อมูลเกี่ยวกับข่าวสารทางการเงินล่าสุดทั่วโลกและบันทึกข้อมูลนั้นลงในไฟล์ในไดเรกทอรีการทำงานในเครื่องจากที่ที่คุณเปิดใช้ Gemini CLI ใช้พรอมต์ต่อไปนี้

Search for the latest headlines today in the world of finance and save them in a file named finance-news-today.txt

ลองนึกดูสักครู่ว่าควรทำอย่างไร ในอุดมคติแล้ว ควรไปที่ Google Search เพื่อรับข่าวสารจากแหล่งข้อมูลที่เกี่ยวข้องซึ่งสามารถให้ข่าวสารทางการเงินได้ จากนั้นจะต้องสร้างไฟล์ชื่อ finance-news-today.txt (การดำเนินการเขียนในระบบภายในซึ่งจะต้องได้รับสิทธิ์จากคุณ) พร้อมเนื้อหา

มาดูกันว่าจะเกิดอะไรขึ้น (คุณควรทำตามขั้นตอนเดียวกันนี้ในเครื่องของคุณ)

สิ่งแรกที่เครื่องมือนี้ทำคือเรียกใช้เครื่องมือ GoogleSearch เพื่อค้นหาเว็บและดึงผลลัพธ์ ดังที่แสดงด้านล่าง

GoogleSearch Searching the web for: "latest finance headlines today"                                                                                                                                            

Search results for "latest finance headlines today" returned.  

เมื่อดำเนินการเสร็จแล้ว ก็พร้อมที่จะเขียนข้อมูลนี้ลงในไฟล์และจะใช้เครื่องมือ WriteFile แต่เนื่องจากเป็นการดำเนินการที่ละเอียดอ่อน (เขียน) จึงต้องขอสิทธิ์จากคุณ คุณสามารถกำหนดประเภทสิทธิ์ได้ เช่น อนุญาตครั้งเดียว อนุญาตเสมอ ฯลฯ เลือกอนุญาตครั้งเดียวไปก่อน

c84c5b58e202f98f.png

จากนั้นระบบจะเขียนข้อมูลลงในไฟล์และแสดงข้อความว่าดำเนินการสำเร็จดังนี้

✦ I have successfully saved the latest finance headlines into the file finance-news-today.txt.

คุณจะตรวจสอบได้อย่างไรว่าไฟล์เขียนแล้วหรือไม่ คุณสามารถใช้ @file เพื่อขอให้ระบบอ่านเนื้อหาได้ เมื่อคุณพิมพ์ @ ระบบจะแสดงรายการไฟล์ในโฟลเดอร์ปัจจุบันและแสดงไฟล์ที่เพิ่งสร้าง เลือกข้อความนั้นแล้วส่ง พรอมต์ของฉันแสดงอยู่ด้านล่าง

read the contents of @finance-news-today.txt

ซึ่งจะทำให้มีการเรียกใช้เครื่องมือที่จำเป็น (ReadManyFiles, ReadFile) และแสดงเนื้อหาตามที่แสดงด้านล่าง

7a5fc5d834cbb93b.png

8. Gemini CLI - โหมดเชลล์

ตอนนี้เป็นเวลาที่ดีที่จะเรียนรู้วิธีทำงานกับ Shell โดยตรงจากภายใน Gemini CLI คุณเข้าสู่โหมดเชลล์ได้โดยกด ! ในกล่องข้อความ ซึ่งจะสลับไปเป็นโหมด Shell คุณกลับไปได้โดยกด ! อีกครั้งหรือกดปุ่ม ESC

เมื่ออยู่ในโหมดเชลล์ คุณจะเห็น ! ที่จุดเริ่มต้นของพรอมต์ดังที่แสดงด้านล่าง

a87f54bb3066b82d.png

คุณตรวจสอบได้โดยตรงโดยใช้คำสั่งมาตรฐาน เช่น pwd และ ls ดังที่แสดงด้านล่าง โปรดทราบว่าคำสั่งต่างๆ จะถือว่าใช้ระบบปฏิบัติการประเภท Linux หากคุณใช้ระบบปฏิบัติการอื่น (Windows) โปรดใช้คำสั่งที่เทียบเท่า เช่น (cd, dir และ type) โปรดทราบว่าเอาต์พุตของการเรียกเหล่านี้จะรวมอยู่ในหน้าต่างบริบทของโมเดล

33a18abe5581ff74.png

คุณสามารถพิมพ์เนื้อหาของไฟล์ผ่านคำสั่ง cat ได้แล้ววันนี้

6dbe0049ed002553.png

แบบฝึกหัด: ลองทำแบบฝึกหัดสั้นๆ ต่อไปนี้ เลือกฟีด RSS ที่ต้องการ ป้อนพรอมต์ไปยัง Gemini CLI เพื่อดึงเนื้อหาของฟีด RSS และจัดรูปแบบผลลัพธ์ให้คุณในลักษณะที่เฉพาะเจาะจง ซึ่งเป็นวิธีที่ดีในการตั้งค่าการทำงานอัตโนมัติเมื่อเริ่มวันใหม่ คุณอาจขอให้ Gemini CLI ตรวจสอบว่ามีฟีด RSS สำหรับพื้นที่หนึ่งๆ หรือไม่ เช่น บันทึกประจำรุ่นของ Google Cloud Platform

ตัวอย่างพรอมต์แสดงอยู่ด้านล่าง

Get the latest release notes for Google Cloud from its RSS Feed and display the key points in a well-formatted list.

โดยพรอมต์นี้ควรเรียกใช้เครื่องมือ GoogleSearch ก่อนเพื่อค้นหาฟีด RSS ของ Google Cloud Platform จากนั้นจึงใช้เครื่องมือ WebFetch เพื่อรับเนื้อหาของฟีด RSS และแสดงเนื้อหา

9. ส่วนขยาย Gemini CLI

ดังที่เอกสารระบุไว้ ส่วนขยาย Gemini CLI จะจัดแพ็กเกจพรอมต์ เซิร์ฟเวอร์ MCP และคำสั่งที่กำหนดเองให้อยู่ในรูปแบบที่คุ้นเคยและใช้งานง่าย ส่วนขยายช่วยให้คุณเพิ่มขีดความสามารถของ Gemini CLI และแชร์ความสามารถเหล่านั้นกับผู้อื่นได้ ซึ่งเป็นกลไกหลักในการขยายฟังก์ชันการทำงานของ Gemini CLI ให้เหนือกว่าเครื่องมือในตัว

ส่วนขยายคือแพ็กเกจแบบสแตนด์อโลนที่กำหนดเวอร์ชันได้และแจกจ่ายได้ง่าย คิดเสียว่านี่คือ "ตู้คอนเทนเนอร์" สำหรับการปรับแต่ง Gemini CLI ซึ่งรวมทุกอย่างที่จำเป็นสำหรับเวิร์กโฟลว์ที่เฉพาะเจาะจงไว้ในแพ็กเกจเดียวที่เรียบร้อย

f5ae3e229462c130.png

ส่วนขยายสามารถรวมชุดค่าผสมต่อไปนี้

  • คำสั่งเครื่องหมายทับที่กำหนดเอง (ไฟล์ .toml)
  • การกำหนดค่าเซิร์ฟเวอร์ MCP (ซึ่งก่อนหน้านี้อยู่ใน settings.json)
  • ไฟล์บริบท (GEMINI.md) เพื่อให้คำสั่งและหลักเกณฑ์ที่เฉพาะเจาะจงแก่โมเดล
  • การจำกัดเครื่องมือ (excludeTools) เพื่อสร้างสภาพแวดล้อมที่ปลอดภัยและมุ่งเน้นยิ่งขึ้น

แกลเลอรีส่วนขยายเป็นมาร์เก็ตเพลสส่วนกลางสำหรับการค้นหาส่วนขยายอย่างเป็นทางการทั้งหมดที่ Google สร้างขึ้นและส่วนขยายของบุคคลที่สาม

  1. เปิด URL ต่อไปนี้ในเบราว์เซอร์: https://geminicli.com/extensions/browse/
  2. แกลเลอรีนี้เป็นเครื่องมือที่ช่วยให้ค้นพบแอปในระบบนิเวศได้ คุณจะเห็นส่วนขยายจากบริษัทต่างๆ เช่น GitHub, Redis และ DynaTrace ซึ่งแสดงให้เห็นถึงความหลากหลายของเครื่องมือที่มีให้ใช้งาน
  3. เลื่อนลงแล้วค้นหาการ์ดส่วนขยายสำหรับ Cloud Run
  4. โปรดสังเกตว่าการ์ดมีคำอธิบาย ผู้เขียน (Google) และCopyปุ่มคำสั่งที่คลิกได้ครั้งเดียว นี่เป็นวิธีที่ง่ายที่สุดในการรับคำสั่งติดตั้งสำหรับส่วนขยาย

ส่วนขยาย Gemini CLI - คำสั่งการจัดการ

gemini extensions command คือจุดเริ่มต้นในการจัดการส่วนขยายในเครื่อง

เรียกใช้ในเทอร์มินัลเพื่อดูรายการคำสั่งที่ใช้ได้

gemini extensions <command>

Manage Gemini CLI extensions.

Commands:
  gemini extensions install <source> [--auto-update] [--pre-release]   
      Installs an extension from a git repository URL or a local path.
  gemini extensions uninstall <names..>                                  
      Uninstalls one or more extensions.
  gemini extensions list
      Lists installed extensions.
  gemini extensions update [<name>] [--all]                           
      Updates all extensions or a named extension to the latest version.
  gemini extensions disable [--scope] <name>                          
      Disables an extension.
  gemini extensions enable [--scope] <name>                           
      Enables an extension.
  gemini extensions link <path>                                       
     Links an extension from a local path. Updates made to the local path 
     will always be reflected.
  gemini extensions new <path> [template]                             
     Create a new extension from a boilerplate example.
  gemini extensions validate <path>                                   
     Validates an extension from a local path.

คำสั่งนั้นตรงไปตรงมา (ติดตั้ง/ถอนการติดตั้ง แสดงรายการ อัปเดต เปิด/ปิด ฯลฯ) และเราจะใช้คำสั่งบางอย่างเหล่านี้ในโค้ดแล็บนี้

ตรวจสอบรายการส่วนขยายปัจจุบัน

ก่อนติดตั้งสิ่งใด เรามาตรวจสอบ "สถานะเริ่มต้น" กันก่อน

  1. เรียกใช้คำสั่ง gemini extensions list
  2. คุณควรเห็นเอาต์พุตต่อไปนี้ ซึ่งยืนยันว่ายังไม่ได้ติดตั้งส่วนขยาย
No extensions installed.

การกำหนดค่าเซิร์ฟเวอร์ MCP ของ Github

ประเภทส่วนขยาย Gemini CLI อย่างหนึ่งคือเซิร์ฟเวอร์ MCP เซิร์ฟเวอร์ MCP เป็นแอปพลิเคชันที่แสดงเครื่องมือและทรัพยากรไปยัง Gemini CLI ผ่าน Model Context Protocol ซึ่งช่วยให้โต้ตอบกับระบบภายนอกและแหล่งข้อมูลได้ เซิร์ฟเวอร์ MCP ทำหน้าที่เป็นสะพานเชื่อมระหว่างโมเดล Gemini กับสภาพแวดล้อมในเครื่องหรือบริการอื่นๆ เช่น API

เรามี Github MCP Server พร้อมให้บริการในแกลเลอรีส่วนขยาย Gemini คลิกที่ปุ่มดังกล่าวเพื่อเปิดการ์ดส่วนขยาย ซึ่งคุณจะเห็นคำสั่งในการติดตั้งส่วนขยายด้วย

4eee33951dabd2db.png

เพียงคัดลอกหรือใช้คำสั่งด้านล่าง

gemini extensions install https://github.com/github/github-mcp-server

ดำเนินการต่อโดยใช้สิทธิ์ที่จำเป็น เมื่อติดตั้งแล้ว คุณควรจะเห็นส่วนขยายนี้พร้อมใช้งานในรายการส่วนขยายเมื่อใช้คำสั่ง gemini extensions list

✓ github (1.0.0)
 ID: faa318861b48de8d83c95eb8cd5e82c02393493978d198a0e7bf67fcb1bd22cb
 name: c0b0109d9439de57fe3cf03abeccbc52f4c98170c732d3b69af5e6395ace574e
 Path: /home/romin/.gemini/extensions/github
 Source: https://github.com/github/github-mcp-server (Type: git)
 Enabled (User): true
 Enabled (Workspace): true
 MCP servers:
  github

คุณจะเห็นเส้นทางของส่วนขยายและในโฟลเดอร์นั้นจะมีไฟล์ชื่อ gemini-extension.json ซึ่งมีเนื้อหาดังที่แสดงด้านล่าง

{
  "name": "github",
  "version": "1.0.0",
  "mcpServers": {
    "github": {
      "description": "--description–",
      "httpUrl": "https://api.githubcopilot.com/mcp/",
      "headers": {
            "Authorization": "Bearer $GITHUB_MCP_PAT"
      }
     }
  }
}

คุณจะเห็นว่าระบบอ่านโทเค็นเพื่อการเข้าถึงส่วนบุคคล (PAT) ผ่านตัวแปรสภาพแวดล้อม คุณจะต้องมีโทเค็นเพื่อการเข้าถึงส่วนบุคคล (PAT) จาก Github ก่อน เมื่อมีแล้ว ให้ตรวจสอบว่าคุณได้สร้างไฟล์ .env ทั้งหมดและวางค่านี้ไว้ที่นั่น หรือสร้างตัวแปรสภาพแวดล้อมดังนี้ (แทนที่ PAT_VALUE ด้วยค่าจริง)

export GITHUB_MCP_PAT=PAT_VALUE

คุณควรรีสตาร์ท Gemini CLI เมื่อเปิดตัวแล้ว คุณจะใช้คำสั่ง /mcp list เพื่อดูรายการเซิร์ฟเวอร์ MCP และเครื่องมือที่เกี่ยวข้องได้ คุณควรเห็นเซิร์ฟเวอร์ MCP ของ GitHub แสดงเป็นสีเขียวพร้อมกับเครื่องมือ (มากกว่า 30 รายการ) ข้อมูลบางส่วนแสดงอยู่ด้านล่าง

🟢 github (จาก github) - พร้อมใช้งาน (40 เครื่องมือ)

เครื่องมือ:

  • add_comment_to_pending_review
  • add_issue_comment
  • assign_copilot_to_issue
  • create_branch
  • create_or_update_file
  • create_pull_request
  • create_repository
  • delete_file
  • fork_repository
  • get_commit
  • get_file_contents
  • get_label
  • get_latest_release
  • get_me
  • get_release_by_tag
  • get_tag
  • get_team_members
  • get_teams
  • issue_read

มาเริ่มกันด้วยพรอมต์ที่จะเรียกใช้เครื่องมืออย่างใดอย่างหนึ่งจากเซิร์ฟเวอร์ MCP ของ Github ป้อนพรอมต์ต่อไปนี้ (ฉันคือใครใน GitHub) ซึ่งจะทำให้ Gemini CLI เลือกเครื่องมือที่ถูกต้องและขอสิทธิ์จากคุณ

c9873c3f51b26866.png

เมื่อคุณอนุญาตแล้ว ระบบจะดึงผลลัพธ์ดังที่แสดงด้านล่าง

✦ You are rominirani, a Developer Advocate at Google Cloud, located in Mumbai. You have 125 public repositories and 256 followers.

ตอนนี้คุณควรทำงานกับโปรเจ็กต์ GitHub อย่างใดอย่างหนึ่ง ป้อนคำค้นหาด้วยภาษาง่ายๆ เช่น

  • อธิบาย <repo-name> ให้ฉันหน่อย
  • โคลน <ชื่อที่เก็บ> ในเครื่องของฉัน
  • อธิบาย @<ชื่อไฟล์> หรือ @<ชื่อไดเรกทอรี>/
  • ส่วนประกอบต่างๆ ของที่เก็บนี้มีอะไรบ้าง
  • ฉันได้ทำการเปลี่ยนแปลงที่จำเป็นแล้ว คุณสามารถพุชการเปลี่ยนแปลงไปยัง Github และใช้เครื่องมือเซิร์ฟเวอร์ MCP ของ Github เพื่อดำเนินการดังกล่าวได้

คุณจะได้พบแบบฝึกหัดสำหรับการทำงานกับเซิร์ฟเวอร์ MCP ของ Github โดยละเอียดในแล็บในภายหลัง

การกำหนดค่าเซิร์ฟเวอร์ MCP ของ Cloud Run

ส่วนขยาย Cloud Run ที่มีอยู่ในแกลเลอรีส่วนขยาย Gemini CLI คือเซิร์ฟเวอร์ MCP ที่ช่วยให้เราติดตั้งใช้งานแอปพลิเคชันใน Cloud Run ได้

การ์ดส่วนขยาย Cloud Run จากแกลเลอรีส่วนขยายจะแสดงด้านล่าง

ed9b19eac1fbde78.png

ก่อนอื่นให้ติดตั้งส่วนขยาย Cloud Run โดยคลิกคัดลอกคำสั่งติดตั้งตามที่แสดงด้านบน จากนั้นวางคำสั่งนั้นในเทอร์มินัลของ Cloud Shell (คำสั่งควรมีลักษณะคล้ายกับคำสั่งต่อไปนี้)

gemini extensions install https://github.com/GoogleCloudPlatform/cloud-run-mcp

เมื่อเรียกใช้คำสั่งข้างต้น คุณจะเห็นข้อความที่ขอให้ยืนยัน อนุมัติได้เลย จากนั้นส่วนขยาย Cloud Run ควรจะติดตั้งได้สำเร็จ

หากตอนนี้คุณเรียกใช้คำสั่ง gemini extensions list คุณควรเห็นส่วนขยาย Cloud Run ที่ติดตั้งไว้ดังที่แสดงด้านล่าง

✓ cloud-run (1.0.0)
 ID: 3c1a38909b6d7d90b6acc8ca1e80d97b4a867253a3cd12d841b2aab4e556a58f
 name: 0b1820c1f0c043bbb3b54f496d862c02172424c930eb965d61f468be52e6f127
 Path: /home/romin/.gemini/extensions/cloud-run
 Source: https://github.com/GoogleCloudPlatform/cloud-run-mcp (Type: git)
 Enabled (User): true
 Enabled (Workspace): true
 Context files:
  /home/romin/.gemini/extensions/cloud-run/gemini-extension/GEMINI.md
 MCP servers:
  cloud-run

หากเปิดใช้ Gemini CLI ตอนนี้และเรียกใช้คำสั่ง /mcp list คุณจะเห็นข้อความต่อไปนี้

🟢 cloud-run (from cloud-run) - Ready (8 tools, 2 prompts)
  Tools:
  - create_project
  - deploy_container_image
  - deploy_file_contents
  - deploy_local_folder
  - get_service
  - get_service_log
  - list_projects
  - list_services
  Prompts:
  - deploy
  - logs

ส่วนขยาย Gemini CLI ที่กล่าวถึงข้างต้นเป็นเพียงส่วนขยาย 2 รายการที่เราได้แสดงวิธีตั้งค่า คุณสามารถดูแกลเลอรีส่วนขยายเพื่อค้นหาส่วนขยายเพิ่มเติม หรือแม้แต่ทำ Codelab "การเริ่มต้นใช้งานส่วนขยาย Gemini CLI"

10. กรณีการใช้งานที่ควรลอง

คุณใช้ Gemini CLI ได้กับ Use Case ที่หลากหลายซึ่งใช้ได้กับทั้งนักพัฒนาแอปและผู้ที่ไม่ได้เป็นนักพัฒนาแอป ต่อไปนี้คือสถานการณ์บางส่วน และคุณสามารถลองใช้สถานการณ์ใดก็ได้หรือทั้งหมดก็ได้ ขึ้นอยู่กับความสนใจของคุณ

ในแต่ละกรณีเหล่านี้ ระบบจะแสดงข้อความแจ้ง คุณสามารถลองใช้ฟีเจอร์นี้ในโหมดอินเทอร์แอกทีฟหรือโหมดที่ไม่ใช่แบบอินเทอร์แอกทีฟของ Gemini CLI ผ่านพารามิเตอร์ -p ในขณะที่เปิดใช้ Gemini CLI

การเขียนโค้ดแบบสบายๆ ด้วย Gemini CLI

มาใช้ Gemini CLI เพื่อเขียนโค้ดแอปพลิเคชันกัน ในงานนี้ คุณจะขอให้ Gemini CLI สร้างแอปพลิเคชัน แล้วพุชเวอร์ชันเริ่มต้นไปยังที่เก็บ GitHub

ข้อกำหนดเบื้องต้น

หากต้องการทำงานในส่วนนี้ คุณต้องมีสิ่งต่อไปนี้

  • Git
  • Gemini CLI พร้อมส่วนขยาย Gemini CLI ของ GitHub (เราได้ดำเนินการไปก่อนหน้านี้แล้ว) หรือหากคุณตั้งค่า gh ( เครื่องมือ GitHub CLI) ไว้ ก็จะใช้งานได้เช่นกัน
  • มีความรู้พื้นฐานเกี่ยวกับ Git และมีความรู้ด้านการเขียนโปรแกรมเล็กน้อย

เราจะถือว่าคุณได้เปิดใช้ Gemini CLI ในโฟลเดอร์ที่เฉพาะเจาะจงที่คุณเลือก

เริ่มต้นด้วยพรอมต์แรก คุณสามารถแก้ไขได้ตามที่เห็นสมควร โปรดทราบว่าตลอดเซสชันกับ Gemini CLI ระบบจะขอสิทธิ์ในการสร้างไฟล์ ฯลฯ จากคุณ โปรดให้สิทธิ์ที่จำเป็น

ในงานนี้ เราไม่ได้ต้องการให้ Gemini CLI เรียกใช้แอปพลิเคชันหรือทดสอบให้เรา เนื่องจากเราต้องการควบคุมเพิ่มเติมเล็กน้อย แต่คุณจะเลือกทำหรือไม่ก็ได้

Generate a website for a 1-day event filled with technical talks. There are going to be 6 talks in a single track of 1 hour each. Each talk has the following information: title, 1 or maximum of 2 speakers, category (1 or maximum of 3 keywords), duration and a description. The website has a single page where users can see the schedule for the entire day with the timings. There will be one lunch break of an hour and the event starts at 10:00 AM. Keep a 10 minute transition between talks. I would like to use Node.js on the server side and standard HTML, JavaScript and CSS on the front-end. The users should be able to search the talks based on category.

I would like you to proceed in the following way: 
1. Plan out how you would design and code this application.
2. Ask me for any clarifications along the way.
3. Once I am fine with it, do generate the code and provide me instructions to run and test locally. 

พรอมต์และคำตอบ 2-3 รายการถัดไปเป็นตัวอย่างโฟลว์ที่เราสังเกตเห็น Gemini CLI จะวางแผนและขอให้คุณยืนยัน / ชี้แจง หรือดำเนินการต่อ โปรดทำตามวิธีการ ตัวอย่างชุดข้อความแบบสนทนาของฉันมีดังนี้

   1. Backend (Node.js/Express):
       * Set up an Express server to serve the static frontend files.
       * Create an /api/schedule endpoint that will:
           * Generate the event schedule dynamically, including talk timings and the lunch break, based on your requirements.
           * Store mock talk data (title, speakers, category, description).
           * Filter the schedule based on a category query parameter.

   2. Frontend (HTML, CSS, JavaScript):
       * Create an index.html file for the main structure.
       * Develop style.css for a clean and responsive design.
       * Write script.js to:
           * Fetch the schedule data from the backend.
           * Dynamically render the talks and lunch break on the page.
           * Implement a search input that filters talks by category, updating the displayed schedule without a full page reload.

   3. Schedule Logic:
       * The backend will handle calculating the precise start and end times for each 1-hour talk, factoring in the 10:00 AM start, 10-minute transitions, and the 1-hour lunch break.

  Before I proceed with the code, could you please clarify the following:

   * Example Talk Data: Could you provide some example talk titles, speakers, categories (keywords), and descriptions? This will help me create realistic dummy data for the schedule.
   * Lunch Break Placement: Where should the 1-hour lunch break be placed in the schedule? (e.g., after the 3rd talk, at 1 PM, etc.)
   * Styling Preferences: Do you have any specific styling preferences (e.g., color scheme, modern/minimalist, etc.)? If not, I will go with a clean, simple design.

 I will create a single-page website for your event. Here's my plan:

  WriteTodos Set 7 todo(s)                                                                                                                                                                                        

 I am waiting for your clarifications regarding the example talk data, lunch break placement, and styling preferences before I proceed with generating the code.

สุดท้ายนี้ เครื่องมือก็ให้ข้อมูลสรุปต่อไปนี้

 Instructions to Run and Test Locally:

   1. Start the server:
      Open your terminal in the project directory (/home/romin/gemini-cli-projects/event-website/) and run:
   1     node server.js
      You should see a message in the terminal indicating: Server running on http://localhost:3000.

   2. Open in your browser:
      Open your web browser and navigate to:
      http://localhost:3000

   3. Test functionality:
       * You should see the event schedule displayed on the page, with talks and a lunch break.
       * Search by category: In the "Search by category..." input box, type a category keyword (e.g., "AI", "Web Development", "Python", "Security").
       * Click the "Search" button. The schedule displayed should filter to only show talks matching that category.
       * Click the "Reset" button to clear the search filter and view the full schedule again.

  Let me know if you encounter any issues or if you'd like to make any modifications or additions to the website!

เมื่อทำตามวิธีการเพื่อเริ่มเซิร์ฟเวอร์และไปยังหน้าแรก เราจะเห็นเว็บไซต์ตัวอย่างดังที่แสดงด้านล่าง (คุณควรเห็นเว็บไซต์ที่คล้ายกันหากใช้พรอมต์เดียวกัน)

78c224b7ce29bb4d.png

คุณสามารถทำการเปลี่ยนแปลงเพิ่มเติมได้โดยใช้ Gemini CLI เมื่อพอใจกับการเปลี่ยนแปลงแล้ว คุณสามารถพุชการเปลี่ยนแปลงนี้ไปยังที่เก็บ Github ได้

ก่อนอื่นมาสร้างไฟล์ .gitignore กัน โดยคุณสามารถขอความช่วยเหลือจาก Gemini CLI ได้

Create a .gitignore file for this project.

ขั้นตอนถัดไปคือการให้คำสั่งแก่ Gemini CLI เพื่อพุชที่เก็บนี้ภายใต้บัญชี Github ของเรา และควรใช้เครื่องมือเซิร์ฟเวอร์ MCP ของ Github ในเบื้องหลัง

ป้อนพรอมต์ที่คล้ายกับพรอมต์ด้านล่าง

Great! I would now like to push all of this to a new repository in my Github account. I would like to name this repository <Your-Name>-event-talks-app

โดยจะอธิบายคำสั่งต่างๆ ดังนี้

  1. สร้างที่เก็บ
  2. โดยจะใช้คำสั่ง Git หลายคำสั่ง ได้แก่ init, add, commit เพื่อจัดการที่เก็บ Git ในเครื่อง
  3. จากนั้นจะตั้งค่ารีโมต Git และทำการพุช

หมายเหตุ: มีบางกรณีที่ Gemini CLI อาจหมดเวลาหรือใช้ชื่อผู้ใช้ที่ไม่ถูกต้อง ฯลฯ โปรดโต้ตอบกับ Gemini CLI และแนะนำวิธีแก้ไข

หากทุกอย่างเป็นไปด้วยดี คุณควรมีที่เก็บข้อมูล GitHub ตัวอย่างภาพหน้าจอแสดงอยู่ด้านล่าง

d046ee11d28e4d33.png

โปรดทราบว่าคุณยังไม่ได้สร้าง README.md สำหรับโปรเจ็กต์นี้ และนี่เป็นแบบฝึกหัดที่ดีสำหรับส่วนถัดไป ซึ่งเราจะทำงานกับที่เก็บที่คุณเพิ่งสร้างขึ้นนี้

การใช้ Gemini CLI เพื่อทำงานในที่เก็บ GitHub

ในกรณีการใช้งานนี้ คุณควรใช้ Gemini CLI เพื่อทำงานกับที่เก็บ GitHub คุณจะต้องทำงานหลายอย่าง ซึ่งรวมถึง

  • ทำความเข้าใจฐานของโค้ด
  • การสร้างเอกสาร
  • การติดตั้งใช้งานฟีเจอร์ใหม่
  • คอมมิตและพุชการเปลี่ยนแปลงกลับไปยังที่เก็บ
  • ทำงานในปัญหาของ GitHub และใช้การเปลี่ยนแปลงที่เสนอ

ซึ่งจะช่วยให้คุณมีพื้นฐานที่ดีในการทำงานกับที่เก็บและใช้ Gemini CLI เป็นผู้ช่วยสำหรับงานที่เฉพาะเจาะจงสำหรับนักพัฒนาซอฟต์แวร์เหล่านี้

ข้อกำหนดเบื้องต้น

หากต้องการทำงานในส่วนนี้ คุณจะต้องมีสิ่งต่อไปนี้

  • Git
  • Gemini CLI ที่มีส่วนขยาย Github MCP Gemini CLI (เราได้ดำเนินการไปก่อนหน้านี้แล้ว) หรือหากคุณตั้งค่า gh ( เครื่องมือ Github CLI) ก็จะใช้ได้เช่นกัน
  • คุ้นเคยกับพื้นฐานของ Git และมีความรู้ด้านการเขียนโปรแกรมเล็กน้อย (เราจะใช้ Node.js ในตัวอย่างนี้เนื่องจากคุณอาจมีสภาพแวดล้อมพร้อมใช้งานในเครื่องอยู่แล้วเพราะได้ติดตั้ง Gemini CLI ไว้) แต่คุณสามารถเลือกที่เก็บที่ต้องการด้วยภาษาการเขียนโปรแกรมและเฟรมเวิร์กอื่นได้ในภายหลัง
  • คุณควรทำส่วนก่อนหน้าให้เสร็จและมีที่เก็บข้อมูลพร้อมใช้งาน ซึ่งเราได้สร้างเว็บไซต์ Event Talks ไว้

มาใช้ Gemini CLI ต่อจากโฟลเดอร์/ไดเรกทอรีที่คุณใช้สร้างแอปพลิเคชัน Event Talks หรือหากจำเป็น คุณสามารถโคลนที่เก็บไปยังเครื่องในเครื่อง แล้วเริ่ม Gemini CLI จากไดเรกทอรีนั้น ลองใช้สถานการณ์ต่อไปนี้ตามที่ระบุไว้ด้านล่าง

ทำความเข้าใจฐานของโค้ด

  • ฉันอยากทราบรายละเอียดเกี่ยวกับโปรเจ็กต์นี้ ช่วยอธิบายฟีเจอร์หลักๆ แล้วแยกออกเป็นฝั่งเซิร์ฟเวอร์และฝั่งไคลเอ็นต์ ลองใช้โฟลว์ตัวอย่างและแสดงให้ฉันดูว่าคำขอและการตอบกลับทำงานอย่างไร
  • Explain @server.js

การสร้างไฟล์ README

  • สร้างไฟล์ README สำหรับโปรเจ็กต์นี้

การติดตั้งใช้งานฟีเจอร์ใหม่

  • ฉันต้องการใช้ฟีเจอร์ใหม่ที่อนุญาตให้ผู้ใช้ค้นหาตามผู้บรรยายที่เฉพาะเจาะจงด้วย ก่อนอื่นให้แสดงแผนการที่คุณจะใช้ในการเปลี่ยนแปลงนี้ จากนั้นเราจะสร้างโค้ด

ซึ่งจะแสดงแผนให้คุณอนุมัติ เมื่อได้รับอนุมัติ Gemini CLI จะทำการเปลี่ยนแปลงเหล่านั้น โปรดทดสอบการเปลี่ยนแปลงของคุณ และหากมีข้อบกพร่อง (ซึ่งมีแนวโน้มที่จะเกิดขึ้น) โปรดขอให้ Gemini CLI แก้ไข

เมื่อการเปลี่ยนแปลงดูดีแล้ว คุณสามารถทำตามขั้นตอนเดียวกันเพื่อคอมมิตและพุชไปยังที่เก็บข้อมูลระยะไกลได้

สร้างปัญหาตามฟีเจอร์ที่แนะนำ

มาลองทำอะไรน่าสนใจกัน คุณจะถาม Gemini CLI เกี่ยวกับวิธีปรับปรุงประสบการณ์ของผู้ใช้แอปพลิเคชันนี้ และอิงตามการประเมินของ Gemini CLI ก็จะสร้างคำแนะนำเหล่านั้นเป็นปัญหาในที่เก็บ GitHub เดียวกันได้ โดยจะใช้เครื่องมือ "create_issue" จากเซิร์ฟเวอร์ MCP ของ Github

ลองใช้พรอมต์ต่อไปนี้

  • เราอยากให้คุณประเมินแอปพลิเคชันจากมุมมองของประสบการณ์ของผู้ใช้ ใช้งานง่าย ตอบสนองได้ดี มีข้อความที่เป็นประโยชน์ และอื่นๆ โปรดจัดทำรายการการปรับปรุงและสร้างเป็นปัญหาในที่เก็บ GitHub

โดยเราจะแชร์การปรับปรุงกับคุณก่อน จากนั้นจะดำเนินการต่อโดยขอสิทธิ์จากคุณเพื่อสร้างปัญหาในที่เก็บ GitHub นี่คือภาพหน้าจอตัวอย่างจากการทดสอบของเรา

86c33b7815c7872a.png

ทำงานในปัญหาของ GitHub และใช้การเปลี่ยนแปลงที่เสนอ

ตอนนี้คุณสามารถเลือกปัญหาที่สร้างขึ้นก่อนหน้านี้และขอให้ Gemini CLI ทำงานและแก้ไขปัญหาดังกล่าวได้แล้ว

ตัวอย่างปัญหาที่สร้างขึ้นแสดงอยู่ด้านล่าง

2778bde35f41efe9.png

คัดลอก URL ของปัญหาทั้งหมด แล้วป้อนพรอมต์ดังนี้

  • โปรดอ่านปัญหา: <YOUR_ISSUE_URL> และทำความเข้าใจการเปลี่ยนแปลงที่ต้องดำเนินการ ก่อนอื่นให้พูดคุยเกี่ยวกับแผน แล้วจึงแสดงการเปลี่ยนแปลงที่เสนอในโค้ด

คุณสามารถอนุมัติการเปลี่ยนแปลงและพุชไปยังที่เก็บได้ คุณยังขอให้ปิดปัญหาได้ด้วย

(ไม่บังคับ) งานประจำวัน

กรณีการใช้งานที่ระบุไว้ด้านล่างคืองานที่คุณอาจต้องทำเป็นประจำ ซึ่งรวมถึงการจัดเรียงไฟล์ลงในโฟลเดอร์ การดึงและสรุปเนื้อหาจากเว็บ การประมวลผลไฟล์รูปภาพและการแยกเนื้อหาจากไฟล์ การทำงานกับฐานข้อมูล และอื่นๆ

คุณสามารถสำรวจกรณีการใช้งานที่ต้องการได้

การจัดระเบียบไฟล์/โฟลเดอร์

คุณใช้ Gemini CLI เพื่อจัดระเบียบไฟล์ตามประเภทในโฟลเดอร์ต่างๆ ได้ตามต้องการ ไปที่โฟลเดอร์ในเครื่องที่มีไฟล์หลายไฟล์ เช่น .txt, .png, .jpg, .pdf, .mp4 และอื่นๆ ซึ่งมักจะเป็นโฟลเดอร์เดสก์ท็อปหรือโฟลเดอร์ดาวน์โหลด

นี่คือโฟลเดอร์ตัวอย่างและเนื้อหาของโฟลเดอร์ที่แสดงด้านล่าง (คุณอาจมีไฟล์อื่นๆ)

7011e3dfaf628e9b.png

ไปที่โฟลเดอร์นั้นแล้วเริ่ม Gemini CLI คุณจะขอให้ Gemini CLI สร้างโฟลเดอร์ก่อน ได้แก่ รูปภาพ เอกสาร และวิดีโอ จากนั้นจะขอให้ Gemini CLI จัดระเบียบไฟล์ในโฟลเดอร์

CLI ของ Gemini มักจะขอสิทธิ์จากคุณก่อนที่จะเรียกใช้คำสั่ง โดยเฉพาะคำสั่งที่แก้ไขระบบไฟล์ (เช่น การเขียน การย้าย หรือการลบไฟล์) โปรดตรวจสอบพรอมต์เหล่านี้อย่างละเอียดก่อนให้สิทธิ์ทุกครั้ง นี่คือตาข่ายนิรภัยของคุณ

Create the following folders "Images","Documents","Videos"

จากนั้นป้อนพรอมต์ต่อไปนี้

Go through all the files in this folder and then organize them by moving all the files ending with .jpg, .jpeg, .gif into the "Images" folder. Move all ".txt" files into the "Documents" folder. Move all the ".mp4" files in the "Videos" folder.

ตัวอย่างลักษณะที่โฟลเดอร์ควรมีในขั้นสุดท้ายแสดงอยู่ด้านล่าง คุณควรเห็นโฟลเดอร์ย่อยใหม่ที่สร้างขึ้นและไฟล์ที่ย้ายไปยังโฟลเดอร์ย่อยที่เกี่ยวข้องตามประเภทของไฟล์

4c1ee9ddea4b3f5f.png

สถานการณ์การจัดระเบียบอื่นๆ (ข้อความแจ้งจะอยู่ข้างสถานการณ์แต่ละอย่าง)

  1. การสรุป: สำหรับเอกสารแต่ละฉบับในโฟลเดอร์ "เอกสาร" ให้สร้างไฟล์ txt ในโฟลเดอร์เดียวกันชื่อ "summary_ORIGINAL_FILENAME.txt" ซึ่งมีสรุป 3 ประโยคของประเด็นหลักในเอกสาร
  2. จัดหมวดหมู่ตามประเภท: สแกนไฟล์ PDF และ DOCX ทั้งหมดในไดเรกทอรีนี้ ย้ายไฟล์ทั้งหมดที่มีคำว่า "ใบแจ้งหนี้" ในชื่อหรือเนื้อหาไปยังโฟลเดอร์ "Financial/Invoices" ย้ายไฟล์ที่มีคำว่า "ใบเสร็จ" ไปยังโฟลเดอร์ "การเงิน/ใบเสร็จ" ส่วนไฟล์ .docx อื่นๆ จะอยู่ในโฟลเดอร์ "รายงาน"
  3. การแยกข้อมูลสำคัญ (และการ "ติดแท็ก"): อ่านเนื้อหาของไฟล์ PDF แต่ละไฟล์ในโฟลเดอร์ "การเงิน/ใบแจ้งหนี้" หากพบวันที่ ให้เปลี่ยนชื่อไฟล์ให้มีวันที่ดังกล่าวในรูปแบบ YYYY-MM-DD เช่น ‘invoice_2025-07-26_original_name.pdf'.

การจัดระเบียบรูปภาพ

มาดูกันว่าคุณจะจัดระเบียบเนื้อหารูปภาพในเครื่องได้อย่างไร

วิธีลองใช้

  • คุณจะต้องมีไดเรกทอรี/โฟลเดอร์ที่มีไฟล์รูปภาพต่างๆ (.jpg, .png ฯลฯ) รวมรูปภาพที่มีข้อมูล EXIF (รูปภาพส่วนใหญ่จากกล้อง/โทรศัพท์จะมีข้อมูลนี้)
  • ไปที่ไดเรกทอรีนี้
  • เปิดใช้ Gemini CLI

ลองใช้สถานการณ์ต่อไปนี้ (พรอมต์จะอยู่ข้างสถานการณ์แต่ละอย่าง)

  • เปลี่ยนชื่อตามวันที่ (ข้อมูล EXIF): เปลี่ยนชื่อไฟล์ .jpg และ .png ทั้งหมดในไดเรกทอรีนี้ให้มีวันที่สร้างจากข้อมูล EXIF ในรูปแบบ "ปปปปดดวว_ชมมวว_ชื่อเดิม.jpg" หากไม่พบวันที่ EXIF ให้ใช้วันที่แก้ไขล่าสุดของไฟล์
  • สร้างคำอธิบายรูปภาพ: สำหรับรูปภาพแต่ละรูปในโฟลเดอร์นี้ ให้อธิบายสิ่งที่อยู่ในรูปภาพและบันทึกคำอธิบายนั้นในไฟล์ข้อความชื่อ "description_ORIGINAL_FILENAME.txt" ในไดเรกทอรีเดียวกัน
  • ระบุรายการที่ซ้ำกัน (เชิงแนวคิด ต้องใช้ตรรกะขั้นสูงกว่า): ค้นหารูปภาพที่ซ้ำกันในโฟลเดอร์นี้ตามเนื้อหาภาพ และแสดงชื่อไฟล์ของรูปภาพเหล่านั้น อย่าเพิ่งลบ

สรุปบทความ (ไฟล์ในเครื่องหรือเว็บ)

สำหรับแต่ละสถานการณ์ด้านล่างนี้ คุณสามารถเปลี่ยน URL, หัวข้อที่สนใจ และชื่อไฟล์ในเครื่องได้ตามต้องการ ชื่อไฟล์ที่ระบุเป็นชื่อไฟล์ตัวอย่าง คุณสามารถแทนที่ชื่อไฟล์เหล่านั้นด้วยชื่อไฟล์ที่คุณมีในระบบ

ลองใช้สถานการณ์ต่อไปนี้ (พรอมต์จะอยู่ข้างสถานการณ์แต่ละอย่าง)

  • สรุปบทความบนเว็บ (URL เดียว): ไปที่ https://medium.com/google-cloud/getting-started-with-gemini-cli-8cc4674a1371 แล้วสรุปประเด็นสำคัญ 3 อันดับแรกจากบทความข่าวนี้
  • สรุปบทความบนเว็บหลายบทความ (เช่น จากการค้นหา): ค้นหาบทความข่าวล่าสุดเกี่ยวกับ "Gemini CLI" โดยใช้ Google Search สำหรับบทความที่เกี่ยวข้อง 5 อันดับแรก ให้สรุปแต่ละบทความใน 2-3 ประโยคและแสดง URL ของบทความ
  • สรุปไฟล์ข้อความในเครื่อง: สรุปประเด็นหลักของบทความใน "my_research_paper.txt" มุ่งเน้นที่ระเบียบวิธีวิจัยและข้อสรุป
  • สรุป PDF ในเครื่อง: อ่าน "financial_report_Q2_2025.pdf" ระบุข้อมูลสรุปเกี่ยวกับผลประกอบการทางการเงินและความท้าทายที่สำคัญที่กล่าวถึง

การดึงข้อมูลที่เฉพาะเจาะจง (ไฟล์ในเครื่องหรือเว็บ)

สำหรับแต่ละสถานการณ์ด้านล่างนี้ คุณสามารถเปลี่ยน URL, หัวข้อที่สนใจ และชื่อไฟล์ในเครื่องได้ตามต้องการ ชื่อไฟล์ที่ระบุเป็นชื่อไฟล์ตัวอย่าง คุณสามารถแทนที่ชื่อไฟล์เหล่านั้นด้วยชื่อไฟล์ที่คุณมีในระบบ

ลองใช้สถานการณ์ต่อไปนี้ (พรอมต์จะอยู่ข้างสถานการณ์แต่ละอย่าง)

  • ดึงข้อมูลเอนทิตีจากบทความในเครื่อง: จาก "biography.txt" ให้แสดงรายชื่อบุคคลทั้งหมดที่มีชื่อและวันที่สำคัญที่เกี่ยวข้อง
  • ดึงข้อมูลจากตารางใน PDF: ในไฟล์ "quarterly_sales.pdf" ให้ดึงข้อมูลจากตารางในหน้า 3 ที่แสดง "ยอดขายผลิตภัณฑ์ตามภูมิภาค" และนำเสนอในรูปแบบตาราง Markdown
  • ดึงพาดหัวข่าวและแหล่งที่มาจากเว็บไซต์ข่าว: ไปที่ "https://news.google.com/" (หรือเว็บไซต์ข่าวที่คล้ายกัน) ดึงหัวข้อข่าวหลักจากหน้าแรกและแหล่งข่าวที่เกี่ยวข้อง นำเสนอเป็นรายการสัญลักษณ์หัวข้อย่อย
  • ค้นหาสเปคผลิตภัณฑ์จากหน้าอีคอมเมิร์ซ: ไปที่ "https://www.amazon.in/Google-Cloud-Certified-Associate-Engineer/dp/1119871441" (ตัวอย่างสำหรับหนังสือ) ดึงข้อมูลชื่อหนังสือ ผู้เขียน และรายละเอียดอื่นๆ แสดงข้อมูลนี้ในรูปแบบ JSON ที่มีโครงสร้าง
  • ดึงข้อมูลระยะเวลาจากวิดีโอในรูปแบบที่กำหนด (เช่น "2h37m42s")

ตอบคำถามโดยอิงตามเนื้อหา (ลักษณะการทำงานคล้าย RAG)

สำหรับแต่ละสถานการณ์ด้านล่างนี้ คุณสามารถเปลี่ยน URL, หัวข้อที่สนใจ และชื่อไฟล์ในเครื่องได้ตามต้องการ ชื่อไฟล์ที่ระบุเป็นชื่อไฟล์ตัวอย่าง คุณสามารถแทนที่ชื่อไฟล์เหล่านั้นด้วยชื่อไฟล์ที่คุณมีในระบบ

ลองใช้สถานการณ์ต่อไปนี้ (พรอมต์จะอยู่ข้างสถานการณ์แต่ละอย่าง)

  • ถามและตอบเกี่ยวกับเอกสารในเครื่อง: ฉันจะแนบไฟล์ "คู่มือผู้ใช้.pdf" ขั้นตอนในการแก้ปัญหาการเชื่อมต่อเครือข่ายมีอะไรบ้าง
  • ถามและตอบในหน้าเว็บ: จากเนื้อหาใน"https://www.who.int/news-room/fact-sheets/detail/climate-change-and-health" ความเสี่ยงด้านสุขภาพหลักๆ ที่เกี่ยวข้องกับการเปลี่ยนแปลงสภาพภูมิอากาศตามข้อมูลของ WHO คืออะไร
  • เปรียบเทียบข้อมูลจากแหล่งที่มาหลายแห่ง: ฉันมีบทความข่าว 2 บทความคือ "article1.txt" และ "article2.txt" ซึ่งทั้ง 2 บทความพูดถึงการเปลี่ยนแปลงนโยบายเศรษฐกิจล่าสุด เปรียบเทียบและเปรียบต่างมุมมองของพวกเขาเกี่ยวกับผลกระทบที่อาจเกิดขึ้นกับธุรกิจขนาดเล็ก

การสร้างเนื้อหาตามข้อมูลที่ดึงออกมา

สำหรับแต่ละสถานการณ์ด้านล่างนี้ คุณสามารถเปลี่ยน URL, หัวข้อที่สนใจ และชื่อไฟล์ในเครื่องได้ตามต้องการ

ลองใช้สถานการณ์ต่อไปนี้ (พรอมต์จะอยู่ข้างสถานการณ์แต่ละอย่าง)

  • สร้างสรุปข่าวจากบทความ: อ่าน @tech_innovation_article.txt เขียนสรุปข่าวสั้นๆ ที่น่าสนใจ (ประมาณ 150 คำ) ซึ่งเหมาะสำหรับจดหมายข่าวของบริษัท โดยเน้นเทคโนโลยีใหม่และศักยภาพของเทคโนโลยีดังกล่าว
  • ร่างอีเมลสรุปข้อความถอดเสียงจากการประชุม: นี่คือไฟล์ข้อความถอดเสียงจากการประชุม @meeting_transcript.txt ร่างอีเมลถึงทีมเพื่อสรุปการตัดสินใจที่สำคัญและรายการการทำงานที่กำหนด รวมถึงผู้รับผิดชอบแต่ละรายการ

การรองรับมัลติโมดัลของ Gemini CLI

Gemini CLI รองรับหลายโมเดลผ่าน Gemini และคุณขอให้ประมวลผลไฟล์ที่มีรูปแบบเนื้อหาต่างๆ ตามข้อกำหนดได้

คุณจะประมวลผลรูปภาพใบแจ้งหนี้จำนวนมากด้วย Gemini CLI และดึงข้อมูลสำคัญจากรูปภาพเหล่านั้น ทำตามขั้นตอนด้านล่าง

  • สร้างโฟลเดอร์ในเครื่องและดาวน์โหลดใบแจ้งหนี้จากที่เก็บ GitHub ต่อไปนี้
  • เปิดใช้ Gemini CLI จากโฟลเดอร์นั้น

ป้อนพรอมต์ต่อไปนี้เพื่อดึงข้อมูลจากใบแจ้งหนี้ในรูปแบบตาราง

The current folder contains a list of invoice files in Image format. Go through all the files in this folder and extract the following invoice information in the form of a table: Invoice No, Invoice Date, Invoice Sent By, Due Date, Due Amount.

คุณควรได้รับเอาต์พุตที่มีลักษณะดังนี้

7203d699d875a91f.png

ต่อไปนี้คืออีกสถานการณ์หนึ่งที่คุณขอคอลัมน์ที่ได้มาเพิ่มเติมได้ สมมติว่าคุณต้องการแสดงอีโมจิเครื่องหมายกากบาทสีแดงสำหรับวันที่ครบกำหนดชำระใบแจ้งหนี้ทั้งหมดที่ผ่านมา คุณสามารถป้อนพรอมต์ได้ดังนี้

list all files with .png extension in this folder. Extract the invoice information from it by reading them locally and display it in a table format containing the following column headers: : Invoice No, Invoice Date, Invoice Sent By, Due Date, Due Amount. Add a column at the end of the table that shows a red cross emoji in case the due date is in the past.

ซึ่งจะสร้างเอาต์พุตต่อไปนี้

e11fcde0400f5a0b.png

นำไปใช้กับไฟล์ของคุณเองที่อยู่ในรูปแบบอื่นที่ไม่ใช่ข้อความ

การใช้ Gemini CLI เพื่อทำงานกับฐานข้อมูล

คุณใช้ Gemini CLI เพื่อทำงานกับฐานข้อมูลต่างๆ ได้อย่างมีประสิทธิภาพมากขึ้น คุณสามารถใช้ Gemini สำหรับหลายสถานการณ์ เช่น การค้นหาด้วยภาษาง่ายๆ การส่งออกข้อมูล การออกแบบสคีมาฐานข้อมูล การสร้างข้อมูลทดสอบที่สมจริง และอื่นๆ

คุณจะต้องใช้ SQLite3 เพื่อทำงานนี้ คุณจะต้องติดตั้ง SQLite3 และมีฐานข้อมูล Chinook ตัวอย่าง

วิธีการตั้งค่า SQLite3 โดยย่อมีดังนี้

  1. macOS: SQLite3 ติดตั้งมาให้ล่วงหน้า ยืนยันด้วย sqlite3 --version หากจำเป็น ให้ติดตั้งด้วย Homebrew: brew install sqlite3
  2. Windows: ดาวน์โหลดไบนารีที่คอมไพล์ล่วงหน้าจากเว็บไซต์ SQLite แตกไฟล์ไปยังไดเรกทอรี (เช่น C:\sqlite) เพิ่มไดเรกทอรีนั้นลงในตัวแปรสภาพแวดล้อม PATH ของระบบ
  3. Linux: Debian/Ubuntu: sudo apt update && sudo apt install sqlite3

ดาวน์โหลดฐานข้อมูล Chinook ตัวอย่าง (ลิงก์โดยตรงสำหรับดาวน์โหลด)

หากต้องการเรียกใช้พรอมต์เหล่านี้ ขอแนะนำให้คุณสร้างโฟลเดอร์ (database-tasks) ในไดเรกทอรี gemini-cli-projects คัดลอกไฟล์ฐานข้อมูล Chinook ไปยังโฟลเดอร์นั้น ตรวจสอบว่าได้ตั้งค่าเครื่องมือ sqlite3 ในระบบและพร้อมใช้งานในเส้นทาง เพื่อให้ Gemini CLI ใช้เครื่องมือดังกล่าวได้ เปิดใช้ Gemini CLI

แผนภาพสคีมาฐานข้อมูลแสดงอยู่ด้านล่าง

4178b54e03a07d60.png

สมมติว่าคุณอยู่ในโฟลเดอร์ชื่อ database-tasks และไฟล์ฐานข้อมูล Chinook ชื่อ chinook.db

ด้านล่างนี้คือพรอมต์หลายรายการที่จะช่วยให้คุณทำงานกับฐานข้อมูลได้ เรามาดูข้อแรกโดยย่อเพื่อแสดงสิทธิ์ที่จะมีการขอ

เริ่มต้นด้วยพรอมต์เพื่อแสดงรายการตารางที่มีอยู่ในฐานข้อมูล โดยใช้พรอมต์ต่อไปนี้

What tables are present in the file: chinook.db 

ซึ่งจะใช้เครื่องมือเพื่ออ่านไฟล์ จากนั้นจะใช้ยูทิลิตี sqlite3 ที่อยู่ในระบบเพื่อดำเนินการที่จำเป็น

a8d782201eba1eb8.png

ให้สิทธิ์เพื่อเรียกใช้คำสั่งดังกล่าว 1 ครั้งเพื่อให้ได้เอาต์พุตที่คาดไว้

69e96f22610e7892.png

ลองใช้พรอมต์ต่อไปนี้หรือพรอมต์อื่นๆ ที่คุณเลือก

  • มีพนักงานกี่คน
  • สคีมาของตารางใบแจ้งหนี้คืออะไร
  • ใบแจ้งหนี้ 3 อันดับแรกตามยอดรวมคือใบแจ้งหนี้ใด และลูกค้าใดเป็นผู้สั่งซื้อใบแจ้งหนี้เหล่านั้น

คุณจะเห็นว่า Gemini CLI จะดูแล 2 สิ่ง ได้แก่ การสร้างคำสั่ง SQL ที่ถูกต้องเพื่อให้ตรงกับความต้องการของคุณ และการให้คำสั่ง sqlite3 ที่ถูกต้อง

การใช้ Gemini CLI เพื่อสร้างข้อมูล

คุณสามารถแจ้งให้ Gemini CLI สร้างข้อมูลในรูปแบบข้อมูลต่างๆ ได้ ซึ่งอาจมีตั้งแต่ชิ้นเนื้อหาไปจนถึงข้อมูล JSON ที่คุณอาจต้องจำลอง มาดูสถานการณ์ที่เกี่ยวข้องกับนักพัฒนาแอป/ผู้ทดสอบกัน

ลองใช้พรอมต์ต่อไปนี้

สร้างข้อมูล JSON ของรีวิวตัวอย่างจากลูกค้า

Generate a JSON array of 3 synthetic customer reviews for a new smartphone. Each review should have 'reviewId' (string, UUID-like), 'productId' (string, e.g., 'SMARTPHONE_X'), 'rating' (integer, 1-5), 'reviewText' (string, 20-50 words), and 'reviewDate' (string, YYYY-MM-DD format).

การสร้างการตอบกลับ API แบบจำลอง (JSON)

Generate a JSON array representing 7 daily sales records for a mock API endpoint. Each record should include 'date' (YYYY-MM-DD, chronologically increasing), 'revenue' (float, between 5000.00 and 20000.00), 'unitsSold' (integer, between 100 and 500), and 'region' (string, either 'North', 'South', 'East', 'West').

การสร้างคำสั่งแทรกฐานข้อมูลตัวอย่าง (SQL)

Generate 5 SQL INSERT statements for a table named 'users' with columns: 'id' (INTEGER, primary key), 'username' (VARCHAR(50), unique), 'email' (VARCHAR(100)), 'password_hash' (VARCHAR(255)), 'created_at' (DATETIME, current timestamp). Ensure the password_hash is a placeholder string like 'hashed_password_X'.

การสร้างข้อมูล CSV สำหรับการโหลด/วิเคราะห์ข้อมูล

Generate 10 lines of CSV data, including a header row, for customer transactions. Columns should be: 'TransactionID' (unique string), 'CustomerID' (integer), 'ItemPurchased' (string, e.g., 'Laptop', 'Monitor', 'Keyboard'), 'Quantity' (integer, 1-3), 'UnitPrice' (float, between 100.00 and 1500.00), 'TransactionDate' (YYYY-MM-DD).

สร้างไฟล์การกำหนดค่า (YAML)

Generate a sample YAML configuration for a 'user_service'. Include sections for 'database' with 'host', 'port', 'username', 'password', 'database_name'. Also include a 'api_keys' section with 'payment_gateway' and 'email_service' placeholders. Use realistic default values.

การสร้างข้อมูลทดสอบสำหรับกรณีขอบ/การตรวจสอบ

Generate a JSON array of 8 email addresses for testing purposes. Include a mix of: 2 valid standard emails, 2 with missing '@', 2 with invalid domains (e.g., '.com1'), and 2 with special characters in the local part that are usually invalid (e.g., spaces or multiple dots).

11. ขอแสดงความยินดี

ขอแสดงความยินดี คุณได้สำรวจ Gemini CLI, ความสามารถของ Gemini CLI และนำไปใช้กับกรณีการใช้งานบางอย่างเรียบร้อยแล้ว

เอกสารอ้างอิง