เริ่มต้นใช้งาน Google Antigravity

1. บทนำ

ในโค้ดแล็บนี้ คุณจะได้เรียนรู้เกี่ยวกับ Google Antigravity (ต่อไปนี้จะเรียกว่า Antigravity ในเอกสารนี้) ซึ่งเป็นแพลตฟอร์มการพัฒนาแบบเอเจนต์ที่พัฒนา IDE ไปสู่ยุคที่เอเจนต์มาเป็นอันดับแรก

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

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

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

  • การติดตั้งและกำหนดค่า Antigravity
  • สำรวจแนวคิดหลักของ Antigravity เช่น Agent Manager, Editor, Browser และอื่นๆ
  • สำรวจกรณีการใช้งานบางอย่างด้วย Antigravity

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

ปัจจุบัน Antigravity พร้อมให้บริการในเวอร์ชันตัวอย่างสำหรับบัญชี Gmail ส่วนตัว โดยจะมีโควต้าฟรีสำหรับใช้โมเดลชั้นนำ

คุณต้องติดตั้ง Antigravity ในระบบของคุณ ผลิตภัณฑ์นี้พร้อมให้บริการใน Mac, Windows และ Linux บางรุ่น นอกจากเครื่องของคุณเองแล้ว คุณจะต้องมีสิ่งต่อไปนี้ด้วย

  • เว็บเบราว์เซอร์ Chrome
  • บัญชี Gmail (บัญชี Gmail ส่วนตัว)

Codelab นี้ออกแบบมาสำหรับผู้ใช้และนักพัฒนาซอฟต์แวร์ทุกระดับ (รวมถึงผู้เริ่มต้น)

การรายงานปัญหา

คุณอาจพบปัญหาขณะทำ Codelab และใช้ Antigravity

หากพบปัญหาที่เกี่ยวข้องกับ Codelab (การสะกดผิด คำสั่งที่ไม่ถูกต้อง) โปรดเปิดข้อบกพร่องโดยใช้ปุ่ม Report a mistake ที่มุมล่างซ้ายของ Codelab นี้

b06b582bcd847f6d.png

หากพบข้อบกพร่องหรือต้องการขอฟีเจอร์ที่เกี่ยวข้องกับ Antigravity โปรดรายงานปัญหาภายใน Antigravity คุณทำได้ใน Agent Manager โดยใช้Provide Feedbackลิงก์ที่มุมซ้ายล่าง

281ac826fb44d427.png

นอกจากนี้ คุณยังไปที่เครื่องมือแก้ไขได้โดยใช้Report Issueลิงก์ใต้ไอคอนโปรไฟล์

e8afd782a8f92129.png

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

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

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

29fada39721093c.png

โปรดคลิก Next ทุกครั้ง ขั้นตอนสำคัญมีดังนี้

  • เลือกขั้นตอนการตั้งค่า: ตัวเลือกนี้จะแสดงตัวเลือกให้คุณนำเข้าจากการตั้งค่า VS Code หรือ Cursor ที่มีอยู่ เราจะเริ่มต้นใหม่
  • เลือกประเภทธีมของเอดิเตอร์: เราจะใช้ธีมมืด แต่คุณเลือกได้ตามต้องการ
  • คุณต้องการใช้สารป้องกันแรงโน้มถ่วงอย่างไร

7ca55560ec377130.png

มาทำความเข้าใจเรื่องนี้อย่างละเอียดมากขึ้นกัน โปรดทราบว่าคุณเปลี่ยนการตั้งค่าได้ทุกเมื่อผ่านการตั้งค่าผู้ใช้ Antigravity (Cmd + ,)

ก่อนที่จะเจาะลึกตัวเลือกต่างๆ มาดูพร็อพเพอร์ตี้บางอย่าง (ซึ่งคุณเห็นทางด้านขวาของกล่องโต้ตอบ) กันก่อน

นโยบายการดำเนินการที่เทอร์มินัล

ซึ่งเป็นการให้สิทธิ์ Agent ในการเรียกใช้คำสั่ง (แอปพลิเคชัน/เครื่องมือ) ในเทอร์มินัลของคุณ

  • ดำเนินการเสมอ: เรียกใช้คำสั่งเทอร์มินัลโดยอัตโนมัติเสมอ (ยกเว้นคำสั่งในรายการปฏิเสธที่กำหนดค่าได้)
  • ขอรับการตรวจสอบ: ขอรับการตรวจสอบและการอนุมัติจากผู้ใช้ก่อนที่จะเรียกใช้คำสั่งเทอร์มินัล

นโยบายการรีวิว

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

  • ดำเนินการเสมอ: ตัวแทนจะไม่ขอรีวิว
  • Agent เป็นผู้กำหนด: Agent จะเป็นผู้กำหนดเวลาที่ควรขอรับการตรวจสอบ
  • ขอรับการตรวจสอบ: Agent จะขอรับการตรวจสอบเสมอ

นโยบายการดำเนินการ JavaScript

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

  • ดำเนินการต่อเสมอ: Agent จะไม่หยุดเพื่อขอสิทธิ์ในการเรียกใช้ JavaScript ในเบราว์เซอร์ ซึ่งจะช่วยให้ Agent มีอิสระสูงสุดในการดำเนินการที่ซับซ้อนและการตรวจสอบในเบราว์เซอร์ แต่ก็มีความเสี่ยงสูงสุดต่อการใช้ช่องโหว่ด้านความปลอดภัย
  • ขอรับการตรวจสอบ: เอเจนต์จะหยุดเพื่อขอสิทธิ์ในการเรียกใช้โค้ด JavaScript ในเบราว์เซอร์เสมอ
  • ปิดใช้: Agent จะไม่เรียกใช้โค้ด JavaScript ในเบราว์เซอร์

ตอนนี้เราได้ทำความเข้าใจนโยบายต่างๆ แล้ว ตัวเลือก 4 รายการทางด้านซ้ายก็คือการตั้งค่าเฉพาะสำหรับการดำเนินการในเทอร์มินัล การตรวจสอบ และนโยบายการดำเนินการ JavaScript สำหรับ 3 รายการ และตัวเลือกที่ 4 ที่เราสามารถควบคุมได้อย่างสมบูรณ์ เรามีตัวเลือก 4 อย่างนี้เพื่อให้คุณเลือกได้ว่าจะให้อำนาจเอเจนต์มากน้อยเพียงใดในการรันคำสั่งในเทอร์มินัลและรับการตรวจสอบอาร์ติแฟกต์ก่อนที่จะดำเนินการต่อกับงาน

โดยมี 4 ตัวเลือกดังนี้

  • โหมดปลอดภัย: โหมดปลอดภัยมีการควบคุมความปลอดภัยที่ดียิ่งขึ้นสำหรับ Agent ซึ่งช่วยให้คุณจำกัดการเข้าถึงทรัพยากรภายนอกและการดำเนินการที่ละเอียดอ่อนได้ เมื่อเปิดใช้โหมดปลอดภัย ระบบจะบังคับใช้มาตรการรักษาความปลอดภัยหลายอย่างเพื่อปกป้องสภาพแวดล้อมของคุณ
  • การพัฒนาที่ขับเคลื่อนด้วยการตรวจสอบ (แนะนํา): Agent จะขอรับการตรวจสอบบ่อยครั้ง
  • การพัฒนาที่ขับเคลื่อนด้วย Agent: Agent จะไม่ขอรับการตรวจสอบ
  • การกำหนดค่าที่กำหนดเอง

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

ถัดไปคือหน้าการตั้งค่ากำหนดค่าเอดิเตอร์ ซึ่งคุณสามารถเลือกค่ากำหนดสำหรับรายการต่อไปนี้ได้

  • การเชื่อมโยงคีย์: กำหนดค่าการเชื่อมโยงคีย์
  • ส่วนขยาย: ติดตั้งส่วนขยายภาษาที่ได้รับความนิยมและส่วนขยายอื่นๆ ที่แนะนำ
  • บรรทัดคำสั่ง: ติดตั้งเครื่องมือบรรทัดคำสั่งเพื่อเปิด Antigravity ด้วย agy

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

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

ซึ่งจะนำคุณไปสู่ช่วงเวลาแห่งความจริงที่ Antigravity จะรอทำงานร่วมกับคุณ

3. ผู้จัดการตัวแทน

เราพร้อมที่จะเริ่มต้นแล้ว

Antigravity แยกจากพื้นฐานของ Visual Studio Code (VS Code) แบบโอเพนซอร์ส แต่เปลี่ยนประสบการณ์ของผู้ใช้อย่างสิ้นเชิงเพื่อจัดลำดับความสำคัญของการจัดการเอเจนต์มากกว่าการแก้ไขข้อความ อินเทอร์เฟซแบ่งออกเป็น 2 หน้าต่างหลักที่แตกต่างกัน ได้แก่ Editor และ Agent Manager การแยกความกังวลนี้สะท้อนถึงความแตกต่างระหว่างการมีส่วนร่วมของแต่ละบุคคลและการจัดการด้านวิศวกรรม

Agent Manager: Mission Control

เมื่อเปิดตัว Antigravity โดยปกติแล้วผู้ใช้จะไม่เห็นโครงสร้างไฟล์ แต่จะเห็น Agent Manager ดังที่แสดงด้านล่าง

d5ae91fc746e1bba.png

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

ในมุมมองนี้ นักพัฒนาแอปจะทำหน้าที่เป็นสถาปนิก โดยจะกำหนดวัตถุประสงค์ระดับสูง ซึ่งตัวอย่างได้แก่

  • ปรับโครงสร้างโมดูลการตรวจสอบสิทธิ์
  • อัปเดตแผนผังทรัพยากร Dependency
  • สร้างชุดทดสอบสำหรับ Billing API

ดังที่แผนภาพด้านบนระบุ คำขอแต่ละรายการเหล่านี้จะสร้างอินสแตนซ์ของเอเจนต์เฉพาะ UI จะแสดงภาพของสตรีมงานแบบคู่ขนานเหล่านี้ โดยแสดงสถานะของตัวแทนแต่ละราย Artifact ที่ตัวแทนสร้างขึ้น (แผน ผลลัพธ์ ความแตกต่าง) และคำขอที่รอการอนุมัติจากเจ้าหน้าที่

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

หากคลิก Next ด้านบน คุณจะมีตัวเลือกในการเปิดพื้นที่ทำงาน

ec72712ea24bf6d5.png

คิดว่าพื้นที่ทำงานเหมือนกับที่คุณรู้จักจาก VS Code แล้วคุณก็จะพร้อมใช้งาน เราจึงเปิดโฟลเดอร์ในเครื่องได้โดยคลิกปุ่ม แล้วเลือกโฟลเดอร์ที่จะเริ่มต้น ในกรณีของฉัน ฉันมีโฟลเดอร์ในโฟลเดอร์หน้าแรกชื่อ my-agy-projects และฉันเลือกโฟลเดอร์นั้น คุณใช้โฟลเดอร์อื่นที่แตกต่างกันโดยสิ้นเชิงได้ โปรดทราบว่าคุณสามารถข้ามขั้นตอนนี้ไปได้เลยหากต้องการ และคุณยังเปิดพื้นที่ทำงานได้ทุกเมื่อในภายหลังด้วย

เมื่อทำขั้นตอนนี้เสร็จแล้ว คุณจะอยู่ในหน้าต่าง Agent Manager ซึ่งแสดงอยู่ด้านล่าง

156224e223eeda36.png

คุณจะเห็นว่าแอปพลิเคชันพร้อมที่จะเริ่มการสนทนาใหม่ในโฟลเดอร์พื้นที่ทำงาน (my-agy-projects) ที่เลือกทันที คุณสามารถใช้ความรู้ที่มีอยู่เกี่ยวกับการทำงานกับแอปพลิเคชัน AI อื่นๆ (Cursor, Gemini CLI) และใช้ @ รวมถึงวิธีอื่นๆ เพื่อรวมบริบทเพิ่มเติมขณะพรอมต์

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

fb0744dc43911365.png

ในทำนองเดียวกัน เราพบว่าเอเจนต์จะอยู่ในโหมด Planning เริ่มต้น แต่เราก็เลือกใช้โหมด Fast ได้เช่นกัน

f403e40ad480efc9.png

มาดูกันว่าเอกสารกล่าวถึงเรื่องนี้ว่าอย่างไร

  • Planning: เอเจนต์สามารถวางแผนก่อนที่จะดำเนินการตามงาน ใช้สำหรับการค้นคว้าข้อมูลเชิงลึก งานที่ซับซ้อน หรือการทำงานร่วมกัน ในโหมดนี้ Agent จะจัดระเบียบงานเป็นกลุ่มงาน สร้างอาร์ติแฟกต์ และทำตามขั้นตอนอื่นๆ เพื่อค้นคว้าอย่างละเอียด คิดทบทวน และวางแผนงานเพื่อให้ได้คุณภาพสูงสุด คุณจะเห็นเอาต์พุตมากขึ้นที่นี่
  • Fast: Agent จะทำงานโดยตรง ใช้สำหรับงานง่ายๆ ที่ทำได้เร็วขึ้น เช่น การเปลี่ยนชื่อตัวแปร การเริ่มคำสั่ง Bash 2-3 รายการ หรือการทำงานอื่นๆ ที่มีขนาดเล็กกว่าและเฉพาะเจาะจง ซึ่งจะเป็นประโยชน์ในกรณีที่ความเร็วเป็นปัจจัยสำคัญ และงานนั้นง่ายพอที่จะไม่ต้องกังวลเรื่องคุณภาพที่แย่ลง

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

ตอนนี้เรามาใช้เวลาสักครู่กับ Agent Manager (หน้าต่าง) ที่นี่และทำความเข้าใจสิ่งต่างๆ เพื่อให้เห็นภาพที่ชัดเจนเกี่ยวกับองค์ประกอบพื้นฐาน วิธีไปยังส่วนต่างๆ ใน Antigravity และอื่นๆ หน้าต่าง Agent Manager จะปรากฏขึ้นดังนี้

22f6dcf7b3edc583.png

โปรดดูแผนภาพด้านบนที่มีหมายเลข

  1. Inbox: ถือว่านี่เป็นวิธีติดตามการสนทนาทั้งหมดในที่เดียว เมื่อคุณส่งเอเจนต์ไปทำงานแล้ว งานเหล่านั้นจะปรากฏในกล่องจดหมาย และคุณสามารถคลิกกล่องจดหมายเพื่อดูรายการการสนทนาทั้งหมดที่กำลังดำเนินอยู่ การแตะการสนทนาใดๆ จะนำคุณไปยังข้อความทั้งหมดที่มีการแลกเปลี่ยน สถานะของงาน สิ่งที่ตัวแทนสร้างขึ้น หรือแม้กระทั่งหากกำลังรอการอนุมัติจากคุณในงาน ซึ่งเป็นวิธีที่ยอดเยี่ยมในการกลับมาทำงานที่ทำค้างไว้ในภายหลัง ฟีเจอร์ที่มีประโยชน์มาก
  2. Start Conversation: คลิกที่นี่เพื่อเริ่มการสนทนาใหม่ ซึ่งจะนำคุณไปยังอินพุตที่มีข้อความ Ask anything โดยตรง
  3. Workspaces: เราได้พูดถึงพื้นที่ทำงานและคุณสามารถทำงานในพื้นที่ทำงานใดก็ได้ที่ต้องการ คุณเพิ่มพื้นที่ทำงานได้ทุกเมื่อและเลือกพื้นที่ทำงานใดก็ได้ขณะเริ่มการสนทนา
  4. Playground: วิธีนี้เป็นวิธีที่ยอดเยี่ยมในการเริ่มการสนทนากับตัวแทนอย่างง่ายดาย จากนั้นหากต้องการเปลี่ยนการสนทนานั้นเป็นพื้นที่ทำงานที่คุณควบคุมไฟล์ได้เข้มงวดมากขึ้น ฯลฯ ให้คิดว่านี่เป็นพื้นที่ทดลอง
  5. Editor View: ตอนนี้เราอยู่ในมุมมองผู้จัดการตัวแทน คุณเปลี่ยนเป็นมุมมองเอดิเตอร์ได้ทุกเมื่อหากต้องการ ซึ่งจะแสดงโฟลเดอร์พื้นที่ทำงานและไฟล์ที่สร้างขึ้น คุณสามารถแก้ไขไฟล์ได้โดยตรง หรือแม้แต่ให้คำแนะนำแบบอินไลน์ คำสั่งในเครื่องมือแก้ไข เพื่อให้เอเจนต์ดำเนินการบางอย่างหรือเปลี่ยนแปลงตามคำแนะนำ/วิธีการที่แก้ไขแล้ว เราจะกล่าวถึงมุมมองเอดิเตอร์อย่างละเอียดในส่วนถัดไป
  6. Browser: สุดท้ายนี้ เรามาถึงหนึ่งในความแตกต่างที่ชัดเจนซึ่งทำให้ Antigravity มีประสิทธิภาพมาก นั่นคือการผสานรวมอย่างใกล้ชิดกับเบราว์เซอร์ Chrome มาเริ่มตั้งค่าเบราว์เซอร์ในส่วนถัดไปกันเลย

4. Antigravity Browser

ตามเอกสารประกอบ เมื่อเอเจนต์ต้องการโต้ตอบกับเบราว์เซอร์ เอเจนต์จะเรียกใช้เอเจนต์ย่อยของเบราว์เซอร์เพื่อจัดการงานที่กำลังทำอยู่ Subagent ของเบราว์เซอร์จะเรียกใช้โมเดลที่เชี่ยวชาญในการทำงานในหน้าที่เปิดภายในเบราว์เซอร์ที่ Antigravity จัดการ ซึ่งแตกต่างจากโมเดลที่คุณเลือกสำหรับ Agent หลัก

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

ซึ่งหมายความว่าเราต้องเปิดตัวและติดตั้งส่วนขยายเบราว์เซอร์ Antigravity มาเริ่มกันเลยด้วยการเริ่มการสนทนาใน Playground และทำตามขั้นตอน

เลือก Playground แล้วมอบหมายงานต่อไปนี้ go to antigravity.google ให้กับตัวแทนตามที่แสดงด้านล่าง

51a373d3da23db56.png

ส่งงาน คุณจะเห็นเอเจนต์วิเคราะห์งานและตรวจสอบกระบวนการคิดได้ ในที่สุดแล้ว ระบบจะดำเนินการอย่างถูกต้องและแจ้งว่าต้องตั้งค่าเอเจนต์เบราว์เซอร์ตามที่แสดงด้านล่าง คลิก Setup

e7119f40e093afd2.png

ซึ่งจะเปิดเบราว์เซอร์และแสดงข้อความให้ติดตั้งส่วนขยายดังที่แสดงด้านล่าง

82fb87d7d75b4a6c.png

จากนั้นระบบจะนำคุณไปยังส่วนขยาย Chrome ที่คุณติดตั้งได้

f3468f0e5f3bb075.png

เมื่อติดตั้งส่วนขยายเรียบร้อยแล้ว Antigravity Agent จะเริ่มทำงานและระบุว่าต้องการให้คุณอนุญาตสิทธิ์ในการทำงาน คุณควรเห็นกิจกรรมบางอย่างในหน้าต่างเบราว์เซอร์ที่เปิดอยู่

7f0367e00ac36d5a.png

เปลี่ยนกลับไปที่มุมมอง Agent Manager แล้วคุณจะเห็นสิ่งต่อไปนี้

b9d89e1ebefcfd76.png

ซึ่งเป็นสิ่งที่เราคาดหวังว่าจะเกิดขึ้นเนื่องจากเราขอให้ Agent ไปที่เว็บไซต์ antigravity.google ให้สิทธิ์ดังกล่าว แล้วคุณจะเห็นว่าระบบนำทางไปยังเว็บไซต์อย่างปลอดภัย ดังที่แสดงด้านล่าง

77fcc38b5fb4ca7c.png

5. อาร์ติแฟกต์

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

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

อาร์ติแฟกต์หลักที่ Antigravity สร้างขึ้นมีดังนี้

  • Task Lists: ก่อนเขียนโค้ด Agent จะสร้างแผนที่มีโครงสร้าง โดยปกติแล้ว คุณไม่จำเป็นต้องแก้ไขแผนนี้ แต่สามารถตรวจสอบและในบางกรณีก็เพิ่มความคิดเห็นเพื่อเปลี่ยนแปลงได้หากจำเป็น
  • Implementation Plan: ใช้เพื่อออกแบบการเปลี่ยนแปลงภายในโค้ดเบสเพื่อทำงานให้สำเร็จ แผนเหล่านี้มีรายละเอียดทางเทคนิคเกี่ยวกับสิ่งที่ต้องแก้ไข และมีไว้เพื่อให้ผู้ใช้ตรวจสอบ เว้นแต่คุณจะตั้งค่านโยบายการตรวจสอบอาร์ติแฟกต์เป็น "ดำเนินการต่อเสมอ"
  • Walkthrough: เอกสารนี้จะสร้างขึ้นเมื่อตัวแทนใช้งานงานเสร็จสมบูรณ์แล้ว โดยเป็นข้อมูลสรุปการเปลี่ยนแปลงและวิธีทดสอบการเปลี่ยนแปลง
  • Code diffs: แม้ว่าในทางเทคนิคแล้วจะไม่ใช่สิ่งประดิษฐ์ แต่ Antigravity ก็สร้างส่วนต่างของโค้ดที่คุณสามารถตรวจสอบและแสดงความคิดเห็นได้
  • Screenshots: ตัวแทนจะบันทึกสถานะของ UI ก่อนและหลังการเปลี่ยนแปลง
  • Browser Recordings: สำหรับการโต้ตอบแบบไดนามิก (เช่น "คลิกปุ่มเข้าสู่ระบบ รอวงกลมหมุน ยืนยันว่าแดชบอร์ดโหลดแล้ว") เอเจนต์จะบันทึกวิดีโอเซสชันของตน นักพัฒนาแอปสามารถดูวิดีโอนี้เพื่อยืนยันว่าตรงตามข้อกำหนดด้านฟังก์ชันการทำงานโดยไม่ต้องเรียกใช้แอปด้วยตนเอง

ระบบจะสร้างอาร์ติแฟกต์และแสดงในทั้งมุมมองผู้จัดการเอเจนต์และมุมมองเอดิเตอร์

ในมุมมองเครื่องมือแก้ไข คุณสามารถคลิก Artifacts ที่มุมขวาล่างเพื่อทำสิ่งต่อไปนี้

5deff47fe0a93aa1.png

ในมุมมองตัวจัดการเอเจนต์ คุณควรเห็นปุ่มสลับอาร์ติแฟกต์ที่ด้านขวาบนข้าง Review changes หรือหากสลับเปิดอยู่ คุณจะเห็นรายการอาร์ติแฟกต์ที่สร้างขึ้น

5320f447471c43eb.png

คุณควรเห็นมุมมองอาร์ติแฟกต์ดังที่แสดงด้านล่าง ในกรณีนี้ เราได้สั่งให้ตัวแทนไปที่หน้า antigravity.google จึงได้มีการจับภาพหน้าจอและสร้างวิดีโอของหน้าดังกล่าว

19d9738bb3c7c0c9.png

คุณดูความแตกต่างของโค้ดได้ใน Review Changes ในมุมมองเครื่องมือแก้ไข

e1d8fd6e7df4daf3.png

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

6. กลับไปที่กล่องจดหมาย

หากคุณเริ่มการสนทนากับตัวแทนไปแล้ว 2-3 ราย ตอนนี้คุณควรดูInboxในหน้าต่างAgent Manager ซึ่งจะแสดงการสนทนาทั้งหมด คลิกการสนทนาใดก็ได้เพื่อดูประวัติการสนทนานั้น อาร์ติแฟกต์ที่สร้างขึ้น และอื่นๆ ในกรณีของเรา หลังจากที่เราเริ่มการสนทนาครั้งแรก กล่องจดหมายจะแสดงการสนทนาตามที่แสดงด้านล่าง

1a2a1bbdd4464ecf.png

การคลิกการสนทนาดังกล่าวจะแสดงรายละเอียดต่อไปนี้

b7e493765cfb1b1a.png

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

7. ผู้แก้ไข

ตัวแก้ไขยังคงความคุ้นเคยของ VS Code ไว้ เพื่อให้มั่นใจว่านักพัฒนาแอปที่มีประสบการณ์จะยังคงใช้เครื่องมือนี้ได้อย่างถนัดมือ ซึ่งรวมถึง File Explorer มาตรฐาน การไฮไลต์ไวยากรณ์ และระบบนิเวศของส่วนขยาย

คุณคลิกปุ่ม Open Editor ที่ด้านขวาบนใน Agent Manager เพื่อไปที่ Editor ได้

การตั้งค่าและส่วนขยาย

ในการตั้งค่าทั่วไป คุณจะเห็นเอดิเตอร์ เทอร์มินัล และเอเจนต์

7996408528de93e1.png

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

  • หากต้องการเปิด/ปิดแผงเทอร์มินัล ให้ใช้แป้นพิมพ์ลัด Ctrl + `
  • หากต้องการเปิด/ปิดแผงตัวแทน ให้ใช้แป้นพิมพ์ลัด Cmd + L

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

bd33a79837b5a12a.png

ผู้แก้ไข

เติมคำอัตโนมัติ

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

e90825ed7a009350.png

กด Tab เพื่อนำเข้า

คุณจะได้รับคำแนะนำให้แท็บเพื่อนำเข้าเพื่อเพิ่มการอ้างอิงที่ขาดหายไป

bcab60794caa0aec.png

แตะเพื่อข้าม

คุณจะได้รับคำแนะนำให้กด Tab เพื่อข้ามเพื่อให้เคอร์เซอร์ไปยังตำแหน่งถัดไปในโค้ด

8610ae5217be7fe5.png

คำสั่ง

คุณสามารถทริกเกอร์คำสั่งด้วย Cmd + I ในโปรแกรมแก้ไขหรือเทอร์มินัลเพื่อการเติมข้อความในบรรทัดโดยใช้ภาษาที่เป็นธรรมชาติ

ในโปรแกรมแก้ไข คุณสามารถขอวิธีคำนวณตัวเลขฟีโบนัชชี แล้วยอมรับหรือปฏิเสธได้โดยทำดังนี้

13a615e515cea100.png

คุณรับคำแนะนำคำสั่งเทอร์มินัลได้ในเทอร์มินัลโดยทำดังนี้

5a75e560f998cedc.png

แผงด้านข้างของตัวแทน

คุณสลับแผงด้านข้างของเอเจนต์ได้หลายวิธีจากเครื่องมือแก้ไข

เปิดด้วยตนเอง

คุณสามารถสลับแผงตัวแทนทางด้านขวาด้วยตนเองโดยใช้แป้นพิมพ์ลัด Cmd + L

คุณเริ่มถามคำถามได้โดยใช้ @ เพื่อใส่บริบทเพิ่มเติม เช่น ไฟล์ ไดเรกทอรี เซิร์ฟเวอร์ MCP หรือใช้ / เพื่ออ้างอิงเวิร์กโฟลว์ (พรอมต์ที่บันทึกไว้)

95c5a6d31d771748.png

นอกจากนี้ คุณยังเลือกโหมดการสนทนาได้ 2 โหมด ได้แก่ Fast หรือ Planning

d3d1449f12510e3e.png

Fast เหมาะสำหรับงานที่รวดเร็ว ส่วน Planning เหมาะสำหรับงานที่ซับซ้อนกว่าซึ่งเอเจนต์จะสร้างแผนที่คุณอนุมัติได้

นอกจากนี้ คุณยังเลือกโมเดลอื่นๆ สำหรับการสนทนาได้ด้วย

af709bcc03c1e21e.png

อธิบายและแก้ไข

อีกวิธีในการเรียกใช้ตัวแทนคือการวางเมาส์เหนือปัญหาแล้วเลือก Explain and fix

e45cbe02ed76b9c1.png

ส่งปัญหาไปยังตัวแทน

นอกจากนี้ คุณยังไปที่ส่วน Problems แล้วเลือก Send all to Agent เพื่อให้ตัวแทนลองแก้ไขปัญหาเหล่านั้นได้ด้วย

e4992d14708005d0.png

ส่งเอาต์พุตเทอร์มินัลไปยัง Agent

คุณยังเลือกส่วนหนึ่งของเอาต์พุตเทอร์มินัลและส่งไปยังเอเจนต์ด้วย Cmd + L ได้ด้วย

c40293bab474c9b1.png

การสลับระหว่างโปรแกรมแก้ไขและตัวจัดการเอเจนต์

คุณสามารถสลับระหว่างโหมดเอดิเตอร์กับโหมดผู้จัดการเอเจนต์แบบเต็มได้ทุกเมื่อผ่านปุ่ม Open Agent Manager ที่ด้านขวาบนเมื่ออยู่ในโหมดเอดิเตอร์ และกลับมาได้โดยคลิกปุ่ม Open Editor ที่ด้านขวาบนเมื่ออยู่ในโหมดผู้จัดการเอเจนต์

หรือจะใช้แป้นพิมพ์ลัด Cmd + E เพื่อสลับระหว่าง 2 โหมดก็ได้

8. แสดงความคิดเห็น

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

  • แผนการติดตั้งใช้งานและรายการงาน (ก่อนเขียนโค้ด)
  • ส่วนต่างของโค้ด (ขณะที่สร้างโค้ด)
  • คำแนะนำแบบทีละขั้นตอนในการยืนยันผลลัพธ์ (หลังจากเขียนโค้ด)

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

มาลองสร้างแอปพลิเคชันรายการสิ่งที่ต้องทำอย่างง่ายและดูวิธีแสดงความคิดเห็นต่อ Antigravity ไปพร้อมกัน

โหมดการวางแผน

ก่อนอื่นคุณต้องตรวจสอบว่า Antigravity อยู่ในPlanningโหมด (แทนที่จะเป็นFastโหมด) คุณเลือกโหมดนี้ได้ในแชทแผงด้านข้างของตัวแทน ซึ่งจะช่วยให้ Antigravity สร้างแผนการติดตั้งใช้งานและรายการงานก่อนที่จะเริ่มเขียนโค้ด จากนั้นลองใช้พรอมต์ เช่น Create a todo list web app using Python ซึ่งจะช่วยให้เอเจนต์เริ่มวางแผนและสร้างแผนการติดตั้งใช้งานได้

แผนการติดตั้งใช้งาน

แผนการติดตั้งใช้งานคือภาพรวมของสิ่งที่ Antigravity ตั้งใจจะทำ กลุ่มเทคโนโลยีที่จะใช้ และคำอธิบายระดับสูงของการเปลี่ยนแปลงที่เสนอ

Implementation Plan - Python Todo App
Goal
Create a simple, functional, and aesthetically pleasing Todo List web application using Python (Flask).

Tech Stack
Backend: Python with Flask
Frontend: HTML5, CSS3 (Vanilla), Jinja2 templates
...

นอกจากนี้ คุณยังให้ความคิดเห็นได้ที่นี่เป็นที่แรกด้วย ในกรณีของเรา เอเจนต์ต้องการใช้ Flask เป็นเฟรมเวิร์กเว็บ Python เราสามารถเพิ่มความคิดเห็นในแผนการติดตั้งใช้งานเพื่อใช้ FastAPI แทนได้ เมื่อเพิ่มความคิดเห็นแล้ว ให้ส่งความคิดเห็นหรือขอให้ Antigravity Proceed พร้อมแผนการติดตั้งใช้งานที่อัปเดตแล้ว

รายการงาน

หลังจากอัปเดตแผนการติดตั้งใช้งานแล้ว Antigravity จะสร้างรายการงาน นี่คือรายการขั้นตอนที่ชัดเจนซึ่ง Antigravity จะทำตามเพื่อสร้างและยืนยันแอป

Task Plan
 Create requirements.txt
 Create directory structure (static/css, templates)
 Create static/css/style.css
 Create templates/index.html
 Create main.py with FastAPI setup and Database logic
 Verify application

นี่คือส่วนที่ 2 ที่คุณสามารถแสดงความคิดเห็นได้

ตัวอย่างเช่น ในกรณีการใช้งานของเรา คุณสามารถเพิ่มวิธีการยืนยันที่ละเอียดยิ่งขึ้นได้โดยเพิ่มความคิดเห็นต่อไปนี้ Verify application by adding, editing, and deleting a todo item and taking a screenshot.

การเปลี่ยนแปลงโค้ด

ตอนนี้ Antigravity จะสร้างโค้ดบางส่วนในไฟล์ใหม่ คุณAccept allหรือReject allการเปลี่ยนแปลงเหล่านี้ได้ในแผงด้านข้างของแชทกับตัวแทนโดยไม่ต้องดูรายละเอียด

นอกจากนี้ คุณยังคลิก Review changes เพื่อดูรายละเอียดการเปลี่ยนแปลงและแสดงความคิดเห็นแบบละเอียดในโค้ดได้ด้วย ตัวอย่างเช่น เราสามารถเพิ่มความคิดเห็นต่อไปนี้ใน main.py: Add basic comments to all methods

ซึ่งเป็นวิธีที่ยอดเยี่ยมในการทำซ้ำโค้ดด้วย Antigravity

คำแนะนำแบบทีละขั้น

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

คุณยังแสดงความคิดเห็นในภาพหน้าจอหรือการบันทึกเบราว์เซอร์ในคำแนะนำแบบทีละขั้นตอนได้ด้วย เช่น เราสามารถเพิ่มความคิดเห็น Change the blue theme to orange theme แล้วส่ง หลังจากส่งความคิดเห็นแล้ว Antigravity จะทำการเปลี่ยนแปลง ตรวจสอบผลลัพธ์ และอัปเดตคำแนะนำแบบทีละขั้นตอน

เลิกทำการเปลี่ยนแปลง

สุดท้ายนี้ หลังจากแต่ละขั้นตอน หากไม่พอใจกับการเปลี่ยนแปลง คุณจะมีตัวเลือกในการเลิกทำการเปลี่ยนแปลงจากแชท เพียงเลือก ↩️ Undo changes up to this point ในแชท

9. กฎและเวิร์กโฟลว์

Antigravity มีตัวเลือกการปรับแต่ง 2 แบบ ได้แก่ กฎและเวิร์กโฟลว์

คลิก ... ที่มุมขวาบน แล้วเลือก Customizations คุณจะเห็น Rules และ Workflows ดังนี้

ff8babd8d8bcfa83.png

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

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

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

คุณใช้ทั้งกฎและเวิร์กโฟลว์ได้ทั่วโลกหรือต่อพื้นที่ทำงาน และบันทึกไว้ในตำแหน่งต่อไปนี้

  • กฎส่วนกลาง: ~/.gemini/GEMINI.md
  • เวิร์กโฟลว์ส่วนกลาง: ~/.gemini/antigravity/global_workflows/global-workflow.md
  • กฎของพื้นที่ทำงาน: your-workspace/.agent/rules/
  • เวิร์กโฟลว์ของ Workspace: your-workspace/.agent/workflows/

มาเพิ่มกฎและเวิร์กโฟลว์ในพื้นที่ทำงานกัน

เพิ่มกฎ

ก่อนอื่น มาเพิ่มกฎรูปแบบโค้ดกัน ไปที่ Rules แล้วเลือกปุ่ม +Workspace ตั้งชื่อ เช่น code-style-guide โดยใช้กฎการจัดรูปแบบโค้ดต่อไปนี้

* Make sure all the code is styled with PEP 8 style guide
* Make sure all the code is properly commented

ประการที่สอง มาเพิ่มกฎอีกข้อเพื่อให้แน่ใจว่าโค้ดจะสร้างขึ้นในลักษณะโมดูลาร์พร้อมตัวอย่างในcode-generation-guideกฎกัน

* The main method in main.py is the entry point to showcase functionality.
* Do not generate code in the main method. Instead generate distinct functionality in a new file (eg. feature_x.py)
* Then, generate example code to show the new functionality in a new method in main.py (eg. example_feature_x) and simply call that method from the main method.

ระบบจะบันทึกกฎทั้ง 2 ข้อและพร้อมใช้งาน

bfd179dfef6b2355.png

เพิ่มเวิร์กโฟลว์

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

ไปที่ Workflows แล้วเลือกปุ่ม +Workspace ตั้งชื่อ เช่น generate-unit-tests โดยมีข้อมูลต่อไปนี้

* Generate unit tests for each file and each method
* Make sure the unit tests are named similar to files but with test_ prefix

นอกจากนี้ เวิร์กโฟลว์ก็พร้อมใช้งานแล้วเช่นกัน

d22059258592f0e1.png

ลองเลย

ตอนนี้มาดูกฎและเวิร์กโฟลว์ที่ใช้งานจริงกัน สร้างไฟล์โครงร่าง main.py ในพื้นที่ทำงาน

def main():
    pass

if __name__ == "__main__":
    main()

ตอนนี้ ให้ไปที่หน้าต่างแชทกับตัวแทนแล้วถามตัวแทนว่า Implement binary search and bubble sort.

หลังจากผ่านไป 1-2 นาที คุณควรจะได้รับไฟล์ 3 ไฟล์ในพื้นที่ทำงาน ได้แก่ main.py, bubble_sort.py, binary_search.py นอกจากนี้ คุณจะเห็นว่ามีการใช้กฎทั้งหมด ไฟล์หลักไม่รกและมีโค้ดตัวอย่าง ฟีเจอร์แต่ละอย่างจะได้รับการติดตั้งใช้งานในไฟล์ของตัวเอง โค้ดทั้งหมดมีเอกสารประกอบและมีรูปแบบที่ดี

from binary_search import binary_search, binary_search_recursive
from bubble_sort import bubble_sort, bubble_sort_descending


def example_binary_search():
    """
    Demonstrate binary search algorithm with various test cases.
    """
    ...

def example_bubble_sort():
    """
    Demonstrate bubble sort algorithm with various test cases.
    """
    ...

def main():
    """
    Main entry point to showcase functionality.
    """
    example_binary_search()
    example_bubble_sort()
    print("\n" + "=" * 60)


if __name__ == "__main__":
    main()

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

ไปที่แชทแล้วเริ่มพิมพ์ /generate และ Antigravity จะทราบขั้นตอนการทำงานของเรา

8a3efd9e3be7eb6f.png

เลือก generate-unit-tests แล้วกด Enter หลังจากผ่านไปสักครู่ คุณจะได้รับไฟล์ใหม่ในพื้นที่ทำงาน ได้แก่ test_binary_search.py, test_bubble_sort.py ซึ่งมีการทดสอบจำนวนหนึ่งที่ใช้งานได้แล้ว

11febd7940ef8199.png

เยี่ยมไปเลย

10. การรักษาความปลอดภัยของ Agent

การให้สิทธิ์เข้าถึงเทอร์มินัลและเบราว์เซอร์แก่เอเจนต์ AI เป็นดาบสองคม ซึ่งช่วยให้การแก้ไขข้อบกพร่องและการติดตั้งใช้งานเป็นไปโดยอัตโนมัติ แต่ก็เปิดช่องทางสำหรับการแทรกพรอมต์และการกรองข้อมูลออกด้วย

Antigravity แก้ปัญหานี้ผ่านระบบสิทธิ์แบบละเอียดที่หมุนรอบนโยบายการดำเนินการคำสั่งเทอร์มินัลโดยอัตโนมัติ รายการที่อนุญาต และรายการที่ไม่อนุญาต

เมื่อกำหนดค่า Antigravity เป็นครั้งแรกหรือผ่านเมนูการตั้งค่า คุณต้องเลือกTerminal Command Auto Executionนโยบาย การตั้งค่านี้กำหนดความเป็นอิสระของเอเจนต์เกี่ยวกับคำสั่งเชลล์

คุณดูการตั้งค่าปัจจุบันสำหรับฟีเจอร์นี้ได้โดยไปที่ Antigravity — Settings แล้วเลือก Advanced Settings คุณควรเห็นส่วน Terminal สำหรับการตั้งค่า Agent โปรดทราบว่าตารางนี้จะช่วยให้คุณเปลี่ยนการตั้งค่านี้เป็นอย่างอื่นได้

โหมดนโยบาย

คำอธิบาย

ปิด

เอเจนต์จะไม่เรียกใช้คำสั่งเทอร์มินัลโดยอัตโนมัติ เว้นแต่จะได้รับอนุญาตอย่างชัดเจน

อัตโนมัติ

เอเจนต์จะตัดสินใจว่าจะดำเนินการหรือไม่ตามโมเดลความปลอดภัยภายใน โดยจะขอสิทธิ์สำหรับคำสั่งที่มีความเสี่ยง

Turbo

Agent จะเรียกใช้คำสั่งโดยอัตโนมัติเสมอ เว้นแต่จะมีการปฏิเสธอย่างชัดแจ้ง

การกำหนดค่ารายการที่อนุญาต

รายการที่อนุญาตใช้กับนโยบายปิดเป็นหลัก ซึ่งแสดงถึงโมเดลความปลอดภัยเชิงบวก หมายความว่าทุกอย่างจะถูกห้ามเว้นแต่จะได้รับอนุญาตอย่างชัดแจ้ง ซึ่งเป็นการกำหนดค่าที่ปลอดภัยที่สุด

การกำหนดค่าทีละขั้นตอน

  1. ตั้งค่าการเรียกใช้คำสั่งเทอร์มินัลอัตโนมัติเป็นปิด
  2. เพิ่มคำสั่งต่อไปนี้ในคำสั่งเทอร์มินัลในรายการที่อนุญาตโดยคลิกปุ่มเพิ่มข้างคำสั่ง ls -al คุณยังเพิ่มคำสั่งเทอร์มินัลอื่นๆ ได้ด้วยหากต้องการ

การทดสอบรายการที่อนุญาต

  • ถามตัวแทน: List the files in this directory
  • โดย Agent จะทํางานlsโดยอัตโนมัติ
  • ถามตัวแทน: Delete the <some file>
  • เอเจนต์จะพยายาม rm <filepath> แต่ Antigravity จะบล็อกและบังคับให้ผู้ใช้ตรวจสอบเนื่องจาก rm ไม่อยู่ในรายการที่อนุญาต Antigravity ควรขอสิทธิ์จากคุณก่อนที่จะเรียกใช้คำสั่ง

การกำหนดค่ารายการปฏิเสธ

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

การกำหนดค่าทีละขั้นตอน

  1. ตั้งค่าการดำเนินการคำสั่งเทอร์มินัลอัตโนมัติเป็นเทอร์โบ
  2. เพิ่มคำสั่งต่อไปนี้ในคำสั่งเทอร์มินัลของรายการที่ไม่อนุญาตโดยคลิกปุ่มเพิ่มข้างคำสั่ง
  3. rm
  4. rmdir
  5. sudo
  6. curl
  7. wget

การทดสอบรายการที่ถูกปฏิเสธ

  • ถามตัวแทน: Check the version of python
  • โดย Agent จะทํางานpython --versionโดยอัตโนมัติ
  • ถามตัวแทน: Download www.google.com home page
  • ตัวแทนพยายามcurl Antigravity จะตรวจหา curl ในรายการที่ไม่อนุญาตและบล็อกการดำเนินการ พร้อมแจ้งให้คุณอนุมัติด้วยตนเอง

ความปลอดภัยของเบราว์เซอร์

ความสามารถในการท่องเว็บของแอนติกราวิตีเป็นพลังพิเศษ แต่ก็เป็นช่องโหว่ด้วยเช่นกัน ตัวแทนที่เข้าชมเว็บไซต์เอกสารที่ถูกบุกรุกอาจพบการโจมตีแบบแทรกพรอมต์

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

คุณดูการตั้งค่าปัจจุบันสำหรับฟีเจอร์นี้ได้โดยไปที่ Antigravity — Settings แล้วไปที่ Advanced Settings คุณควรเห็นส่วนรายการที่อนุญาตของ URL ของเบราว์เซอร์สำหรับการตั้งค่าเบราว์เซอร์ดังที่แสดงด้านล่าง

5ed231150122ecc5.png

คลิก "เปิดไฟล์รายการที่อนุญาต" แล้วไฟล์จะเปิดขึ้นในโฟลเดอร์ HOME/.gemini/antigravity/browserAllowlist.txt. คุณตรวจสอบได้ว่ามีการป้อนเฉพาะโดเมนที่เชื่อถือได้ที่นี่

11. กรณีการใช้งาน

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

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

ไฮไลต์ข่าว

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

ในกรณีนี้ เราจะไปที่เว็บไซต์ Google News และดึงข้อมูลบางอย่างจากที่นั่น แต่คุณสามารถทดสอบกับเว็บไซต์ที่เลือกได้อย่างง่ายดายและดูผลลัพธ์ได้

ตรวจสอบว่าคุณอยู่ใน Agent Manager และได้เลือก Playground ดังที่แสดงด้านล่าง

cffa12c98a68cb6c.png

จากนั้นให้คำสั่งต่อไปนี้

8513d489eea0b014.png

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

9d594588f2ffe6bc.png

เมื่อดำเนินการเสร็จแล้ว คุณควรเห็นการสร้างอาร์ติแฟกต์ด้วย ดังที่แสดงด้านล่าง

dc6cf4e7d8425df8.png

ตัวอย่างการดำเนินการโดยเอเจนต์แสดงอยู่ด้านล่าง

fb7397cd2cce0682.png

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

สิ่งที่ควรลอง

  • เมื่อเข้าใจแล้ว ให้เลือกเว็บไซต์ที่พร้อมใช้งานและเว็บไซต์ที่คุณต้องการให้เอเจนต์ไปรับ/สรุปข้อมูลบางอย่าง ลองพิจารณาเว็บไซต์ที่คุณทราบว่ามีแดชบอร์ดและแผนภูมิ แล้วขอให้เลือกค่า 2-3 ค่า
  • ลองใช้พรอมต์ต่อไปนี้ Visit https://docs.cloud.google.com/release-notes and get me a summary of the release notes, categorized by product.

สร้างเว็บไซต์แบบไดนามิกด้วย Python + Flask

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

โปรดตรวจสอบอีกครั้งว่าคุณอยู่ใน Agent Manager และได้เลือก Playground แล้ว

ป้อนพรอมต์ต่อไปนี้

I would like to generate a website that is a 1-day technical conference informational site.

The website should have the following functionality:
        1. A home page that shows the current date, location, schedule and time table.
        2. The 1-day event is a list of 8 talks in total.
        3. Each talk has 1 or 2 max. speakers. 
        4. A talk has an ID, Title, Speakers, Category (1 or 2), Description and time of the talk.
        5. Each speaker has a First Name, Last Name and LinkedIn url.
        6. Allow for users to search by category, speaker, title.
        7. Give a lunch break of 60 minutes.
        8. Use dummy data for events and speakers, come up with a schedule, the event is about Google Cloud Technologies.
        9. Tech Stack: Python and Flask framework on server side. Front-end is basic HTML, CSS and JavaScript. 
        10. Test out the site on your own for all functionality and provide a detailed README on how to setup, run and make any further changes. 
11. Launch the web application for me to review. 

คุณเริ่มการสนทนาได้โดยใช้พรอมต์ด้านบน

เมื่อเอเจนต์ทำงานตามที่ได้รับมอบหมาย ก็จะสร้างอาร์ติแฟกต์ต่อไปนี้

  • อาร์ติแฟกต์ของงาน
  • อาร์ติแฟกต์การใช้งาน
  • อาร์ติแฟกต์คำแนะนำแบบทีละขั้น

อาร์ติแฟกต์งานที่ระบุไว้ด้านล่างเป็นลำดับงานเริ่มต้นที่เอเจนต์ถอดรหัสว่าควรทำตามงานที่ได้รับ ภาพหน้าจอตัวอย่างจากการดำเนินการแสดงอยู่ด้านล่าง

c95d82e1c040698f.png

จากนั้นคลิกอาร์ติแฟกต์แผนการติดตั้งใช้งาน ตัวอย่างภาพหน้าจอแสดงอยู่ด้านล่าง

632169a236bc62cc.png

และสุดท้าย คุณจะมีอาร์ติแฟกต์คำแนะนำแบบทีละขั้นตอน ซึ่งจะประกอบด้วยทุกสิ่งที่เอเจนต์ทำดังที่แสดงด้านล่าง

e3f6152d6f54d4f9.png

สังเกตว่าเซิร์ฟเวอร์เริ่มทำงานแล้วและมี URL ให้ฉันคลิกเพื่อเข้าถึงแอปพลิเคชัน ตัวอย่างภาพหน้าจอแสดงอยู่ด้านล่าง

abf879f2ce53d055.png

หากฉันเปลี่ยนไปใช้เอดิเตอร์ โปรดสังเกตในหน้าจอว่ามีโฟลเดอร์ที่สร้างแอปพลิเคชัน Python Flask นอกจากนี้ คุณจะเห็นว่ามีการติดแท็ก Agent mode ไว้ทางด้านขวา และคุณสามารถสนทนาต่อได้ที่นั่นด้วย

b0fea8aa65c3a1c5.png

สมมติว่าเราต้องการเพิ่มการบรรยายในกิจกรรม เราสามารถอยู่ในเครื่องมือแก้ไขและแผง Agent แล้วป้อนคำสั่ง เช่น Add two more talks to the schedule

ซึ่งจะส่งผลให้ Agent วิเคราะห์ข้อกำหนด อัปเดตงาน แผนการติดตั้งใช้งาน แล้วจึงตรวจสอบฟังก์ชันการทำงานที่อัปเดตด้วย ตัวอย่างการสนทนาแสดงอยู่ด้านล่าง

ba8455e6f68973e9.png

คุณเปลี่ยนกลับไปใช้ Agent Manager ได้หากต้องการ กระบวนการนี้จะช่วยให้คุณเข้าใจกระบวนการเปลี่ยนจากผู้จัดการตัวแทนเป็นผู้แก้ไข ทำการเปลี่ยนแปลงตามนั้น และอื่นๆ

สิ่งที่ควรลอง

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

สร้างแอปเพิ่มประสิทธิภาพการทำงานอย่างง่าย

ตอนนี้เราจะสร้างเว็บแอปพลิเคชันตัวจับเวลา Pomodoro อย่างง่าย

ตรวจสอบว่าคุณอยู่ใน Agent Manager และได้เลือก Playground แล้ว ป้อนพรอมต์ต่อไปนี้

Create a productivity app that features a Pomodoro timer. Give a calm and aesthetic look to the application.

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

5be0a668e5a67d85.png

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

แอปสุดท้ายมีลักษณะเหมือนแอปด้านล่างและดูดีมาก

c9ab6bca97a51a8c.png

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

Add an image to the application that displays a timer.

ซึ่งส่งผลให้ตัวแทนเพิ่มงานใหม่ลงในอาร์ติแฟกต์งาน

498dd946d4e9ae55.png

จากนั้นก็สร้างรูปภาพขณะที่ทำงาน

c291da9bdb37ff96.png

ในที่สุดแอปก็มีรูปภาพตามที่เราขอ

de8f418ba8e4600d.png

สิ่งที่ควรลอง

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

สร้างการทดสอบหน่วย, สตับจำลอง และตรวจสอบการทดสอบ

Use Case สุดท้ายที่เราจะลองใช้ที่นี่คือการสร้างการทดสอบหน่วยสำหรับไฟล์โค้ดที่เฉพาะเจาะจงที่เรามี และให้ Agent ดำเนินการทดสอบและตรวจสอบด้วย

เราจะใช้พื้นที่ทำงานที่มีไฟล์ Python ไฟล์เดียวตามที่แสดงด้านล่าง

from typing import Dict

# --- Custom Exceptions ---
class InventoryShortageError(Exception):
    """Raised when there is not enough item stock."""
    pass

class PaymentFailedError(Exception):
    """Raised when the payment gateway rejects the transaction."""
    pass

class InvalidOrderError(Exception):
    """Raised when the order violates business rules."""
    pass

# --- External Service Interfaces (To be Mocked) ---
class InventoryService:
    def get_stock(self, product_id: str) -> int:
        """Connects to DB to check stock."""
        raise NotImplementedError("Real connection required")

    def decrement_stock(self, product_id: str, quantity: int):
        """Connects to DB to reduce stock."""
        raise NotImplementedError("Real connection required")

class PaymentGateway:
    def charge(self, amount: float, currency: str) -> bool:
        """Connects to Stripe/PayPal."""
        raise NotImplementedError("Real connection required")

# --- Main Business Logic ---
class Order:
    def __init__(self, 
                 inventory_service: InventoryService, 
                 payment_gateway: PaymentGateway,
                 customer_email: str,
                 is_vip: bool = False):
        
        self.inventory = inventory_service
        self.payment = payment_gateway
        self.customer_email = customer_email
        self.is_vip = is_vip
        self.items: Dict[str, Dict] = {} # {product_id: {'price': float, 'qty': int}}
        self.is_paid = False
        self.status = "DRAFT"

    def add_item(self, product_id: str, price: float, quantity: int = 1):
        """Adds items to the cart. Rejects invalid prices or quantities."""
        if price < 0:
            raise ValueError("Price cannot be negative")
        if quantity <= 0:
            raise ValueError("Quantity must be greater than zero")

        if product_id in self.items:
            self.items[product_id]['qty'] += quantity
        else:
            self.items[product_id] = {'price': price, 'qty': quantity}

    def remove_item(self, product_id: str):
        """Removes an item entirely from the cart."""
        if product_id in self.items:
            del self.items[product_id]

    @property
    def total_price(self) -> float:
        """Calculates raw total before discounts."""
        return sum(item['price'] * item['qty'] for item in self.items.values())

    def apply_discount(self) -> float:
        """
        Applies business logic:
        1. VIPs get flat 20% off.
        2. Regulars get 10% off if total > 100.
        3. No discount otherwise.
        """
        total = self.total_price
        
        if self.is_vip:
            return round(total * 0.8, 2)
        elif total > 100:
            return round(total * 0.9, 2)
        
        return round(total, 2)

    def checkout(self):
        """
        Orchestrates the checkout process:
        1. Validates cart is not empty.
        2. Checks stock for all items.
        3. Calculates final price.
        4. Charges payment.
        5. Updates inventory.
        """
        if not self.items:
            raise InvalidOrderError("Cannot checkout an empty cart")

        # 1. Check Inventory Logic
        for product_id, data in self.items.items():
            available_stock = self.inventory.get_stock(product_id)
            if available_stock < data['qty']:
                raise InventoryShortageError(f"Not enough stock for {product_id}")

        # 2. Calculate Final Price
        final_amount = self.apply_discount()

        # 3. Process Payment
        try:
            success = self.payment.charge(final_amount, "USD")
            if not success:
                raise PaymentFailedError("Transaction declined by gateway")
        except Exception as e:
            # Catching generic network errors from the gateway
            raise PaymentFailedError(f"Payment gateway error: {str(e)}")

        # 4. Decrement Stock (Only occurs if payment succeeded)
        for product_id, data in self.items.items():
            self.inventory.decrement_stock(product_id, data['qty'])

        self.is_paid = True
        self.status = "COMPLETED"
        
        return {"status": "success", "charged_amount": final_amount}

ตรวจสอบว่าคุณมีไฟล์ Python ข้างต้นในโฟลเดอร์ในเครื่อง และโหลดไฟล์ดังกล่าวเป็นพื้นที่ทำงานใน Antigravity

นี่คือบริการคำสั่งซื้ออย่างง่ายที่มีฟังก์ชันการทำงานหลักต่อไปนี้ในฟังก์ชัน checkout

  1. ตรวจสอบว่ารถเข็นไม่ว่างเปล่า
  2. ตรวจสอบสินค้าคงคลังของสินค้าทั้งหมด
  3. คำนวณราคาสุดท้าย
  4. การชำระเงิน
  5. อัปเดตพื้นที่โฆษณา

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

เราจะเปิดโฟลเดอร์พื้นที่ทำงานที่เฉพาะเจาะจง และคุณจะเห็นว่าตอนนี้เราใช้สัญลักษณ์ @ เพื่ออ้างอิงไฟล์ได้แล้ว ตัวอย่างเช่น เราอาจทำสิ่งต่อไปนี้

8368856e51a7561a.png

ซึ่งจะแสดงพร้อมคำอธิบายเกี่ยวกับไฟล์นี้

b69c217d3372d802.png

เราขอให้สร้างภาพที่ดีขึ้นได้ผ่านพรอมต์

Can you visually show this class for better understanding

da5bd701323818d4.png

ขั้นตอนต่อไปคือการสร้างการทดสอบหน่วยและขอให้ Agent ทดสอบ ฉันป้อนพรอมต์ต่อไปนี้

generate unit tests for this module and test it out with mock implementations.

โดยสร้างอาร์ติแฟกต์งานต่อไปนี้และดำเนินการตามงาน

21425379db336dc6.png

นอกจากนี้ คุณยังดูรายละเอียดของการทดสอบที่ดำเนินการได้ด้วย

48f3320cd76b5cd8.png

ไฟล์ที่สร้างขึ้นไฟล์หนึ่งคือไฟล์ทดสอบด้วย ภาพหน้าจอของส่วนนี้แสดงอยู่ด้านล่าง

f962061f115c040f.png

สิ่งที่ควรลอง

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

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

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

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