Courses
Gemini CLI là trợ lý AI mã nguồn mở trên terminal của Google, đưa Gemini trực tiếp vào quy trình phát triển của bạn. Bạn có thể chạy 60 yêu cầu mỗi phút và 1000 yêu cầu mỗi ngày, hoàn toàn miễn phí.
Tính đến năm 2026, Gemini CLI hỗ trợ các mô hình Gemini 3 Pro và Gemini Flash. Mặc định, CLI sử dụng chiến lược định tuyến tự động để chọn mô hình tốt nhất cho từng yêu cầu. Bạn có thể chuyển thủ công với /model hoặc dùng cờ như --model gemini-3-pro-preview khi khởi chạy.
Trong hướng dẫn này, tôi sẽ giải thích từng bước cách thiết lập Gemini CLI trên máy của bạn và sử dụng để:
- Hiểu và điều hướng các codebase lớn
- Phát hiện và sửa lỗi
- Viết và kiểm thử mã
- Tạo tài liệu và sơ đồ trực quan
Chúng tôi luôn cập nhật cho độc giả về những điều mới nhất trong AI qua The Median, bản tin miễn phí mỗi thứ Sáu tóm lược các câu chuyện nổi bật tuần qua. Đăng ký để luôn nắm bắt chỉ trong vài phút mỗi tuần:
Gemini CLI là gì?
Gemini CLI là công cụ chạy trực tiếp trong terminal, hiểu codebase của bạn và giúp bạn sửa lỗi bằng các nhắc lệnh ngôn ngữ tự nhiên. Đây là phản hồi của Google trước Claude Code của Anthropic.
Dưới đây là một số khả năng chính của Gemini CLI:
- Chỉnh sửa và tái cấu trúc: Tự động cải thiện và đơn giản hóa mã của bạn với hướng dẫn từ AI.
- Phát hiện và sửa lỗi: Xác định lỗi và đề xuất cách khắc phục.
- Hiểu mã: Gemini CLI yêu cầu Gemini tóm tắt kiến trúc, giải thích vai trò module hoặc vẽ sơ đồ luồng.
- Tạo kiểm thử: Gemini tự động tạo các ca kiểm thử pytest để nâng cao độ tin cậy và sự tự tin trong CI.
- Hỗ trợ tài liệu: Bạn có thể tạo tài liệu markdown có cấu trúc, changelog và phản hồi issue trên GitHub ngay trong terminal bằng công cụ này.
- Tìm kiếm làm nền tảng: Công cụ
@searchcó thể dùng để truy xuất thông tin thời gian thực nhằm kiểm chứng các thực hành tốt.
Giờ hãy đi sâu vào cách tôi dùng Gemini CLI để khám phá, khắc phục sự cố và triển khai thay đổi cho một dự án mã nguồn mở.
Bước 1: Yêu cầu tiên quyết
Để bắt đầu, hãy cài Node.js (phiên bản 18 trở lên). Bạn cũng có thể tải trình cài đặt bạn muốn tại đây, hoặc chạy các lệnh bash sau trong terminal:
# Download and install nvm:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
# in lieu of restarting the shell
\. "$HOME/.nvm/nvm.sh"
# Download and install Node.js:
nvm install 22
# Verify the Node.js version:
node -v # Should print "v22.17.0".
nvm current # Should print "v22.17.0".
# Verify npm version:
npm -v # Should print "10.9.2".
Để thiết lập môi trường cho Gemini CLI:
- Cài NVM (Node Version Manager) bằng cách chạy script cài đặt chính thức
- Sau đó khởi tạo trong phiên terminal hiện tại bằng source
- Cuối cùng, dùng NVM để cài Node.js v22 và xác minh cài đặt bằng các lệnh
node -v,nvm currentvànpm -v
Thiết lập này giúp hệ thống của bạn sẵn sàng chạy Gemini CLI mượt mà.
Bước 2: Thiết lập Gemini CLI
Với các yêu cầu tiên quyết đã sẵn sàng, chúng ta có thể thiết lập Gemini CLI trên hệ thống.
Bước 2.1: Cài đặt Gemini CLI
Sau khi Node.js và npm đã được cài và xác minh, hãy cài Gemini CLI bằng cách chạy lệnh sau trong terminal:
npx https://github.com/google-gemini/gemini-cli
Hoặc dùng npm để chạy:
npm install -g @google/gemini-cli
gemini
Sau khi gemini-cli được cài, gõ gemini trong terminal để truy cập.
Bước 2.2: Xác thực
Bạn có thể dùng tài khoản Google cá nhân để xác thực khi được nhắc. Điều này cho phép bạn dùng tối đa 60 yêu cầu mô hình mỗi phút và 1.000 yêu cầu mỗi ngày với Gemini.
Trong hướng dẫn này, tôi xác thực bằng Đăng nhập với Google, nhưng bạn cũng có thể dùng API Key (thiết lập dưới dạng biến môi trường) hoặc Vertex AI để xác thực. Để tạo API key mới, đăng nhập vào AI Studio bằng tài khoản Google của bạn và nhấp Create API key. Bạn cũng có thể dùng khóa hiện có từ một dự án Google Cloud để truy cập các mô hình cụ thể hoặc yêu cầu hạn mức cao hơn.
export GEMINI_API_KEY=”Your_API_Key”
Hoặc tạo tệp .env
GEMINI_API_KEY=”Your_API_Key”
Bạn có thể dùng /auth trong hộp nhập để chuyển phương thức xác thực khi cần.

Sau khi xác thực, bạn sẽ thấy một hộp nhập để tương tác với CLI trong terminal miễn phí.
Bước 3: Thiết lập một dự án trên Gemini CLI
Khi CLI đã chạy, chúng ta có thể bắt đầu tương tác với Gemini từ terminal. Có hai cách để làm việc trên một dự án với CLI.
1. Bắt đầu dự án mới
Để bắt đầu một dự án từ đầu, chạy các lệnh sau:
cd new-project/
gemini
Trong CLI, dùng một prompt để giải quyết vấn đề bạn quan tâm—ví dụ:
> Write the encoder code for a transformer from scratch.
Lệnh này sẽ tạo thư mục dự án mới và khởi tạo Gemini trên terminal. Sau đó, bạn có thể yêu cầu Gemini tạo mã vào thư mục mới của bạn.
2. Làm việc với dự án hiện có
Nếu bạn đã có một codebase, bạn có thể làm việc với nó bằng các lệnh sau:
git clone https://github.com/AashiDutt/Google-Agent-Development-Kit-Demo
cd Google-Agent-Development-Kit-Demo
gemini
Trong CLI, dùng một prompt như:
> Give me a summary of all of the changes made to the codebase today.
Nếu bạn đang làm việc với codebase hiện có, đã clone từ GitHub hoặc có sẵn trên máy, bạn có thể chạy Gemini CLI từ trong thư mục dự án.
Ngoài ra, sau khi khởi chạy Gemini, bạn có thể nhập đường dẫn đầy đủ tới thư mục mã trong hộp nhập bằng lệnh /path để tải dự án nội bộ thủ công.
Bước 4: Thử nghiệm với Gemini CLI
Trong hướng dẫn này, chúng ta sẽ làm việc với một dự án mà tôi đã dùng để viết bài hướng dẫn về Agent Development Kit (ADK) của Google. Kho lưu trữ đặt trên GitHub. Sử dụng Gemini CLI, chúng ta sẽ:
- Khám phá và hiểu codebase
- Phát hiện lỗi hoặc vấn đề trên GitHub hay trong tệp
- Tái cấu trúc mã và tạo unit test
- Tạo báo cáo markdown về các thay đổi đã thực hiện
- Trực quan hóa codebase bằng sơ đồ luồng hoặc biểu đồ
Khám phá và hiểu codebase
Hãy bắt đầu bằng cách yêu cầu Gemini khám phá và giải thích codebase.
Prompt: Khám phá thư mục hiện tại và mô tả kiến trúc của dự án.

Gemini CLI trả về bản tóm tắt có cấu trúc, giải thích rằng:
agents/chứa các triển khai tác tử riêng lẻshared/định nghĩa các schema dùng chung cho mọi tác tửcommon/bao gồm các hàm tiện ích A2A tái sử dụng cho nhắn tin giữa các tác tử
Điều này giúp tôi định hướng mà không cần đọc thủ công từng tệp.
Phân tích và khắc phục một issue trên GitHub
Hãy khám phá một số issue đang mở từ kho GitHub. Bạn có thể dùng công cụ /compress để nén ngữ cảnh bằng cách thay thế bằng bản tóm tắt. Điều này giúp truyền tải nhiều thông tin hơn trong độ dài ngữ cảnh giới hạn.
Lưu ý: Gemini sẽ yêu cầu xác nhận trước khi truy cập kho GitHub. Trong trường hợp này, repo là mã nguồn mở.
Prompt: Đây là một issue trên GitHub: [@search https://github.com/AashiDutt/Google-Agent-Development-Kit-Demo/issues/1]. Phân tích codebase và đề xuất kế hoạch sửa 3 bước. Tôi nên sửa những tệp/hàm nào?

Gemini CLI đã khám phá issue:
- Sử dụng tính năng
@searchvà trả về kế hoạch sửa 3 bước cho issue trên GitHub. - Sau đó xác định nguyên nhân gốc là lỗi tuần tự hóa JSON.
- Cuối cùng, Gemini đề xuất thay đổi và xử lý phản hồi trong một vài tệp.
Tiếp theo, CLI chờ đầu vào từ người dùng để đánh giá các thay đổi, và nếu người dùng đồng ý, nó sẽ thực hiện các thay đổi được đề xuất. Chọn áp dụng các thay đổi gợi ý bằng cách nhấn Enter.

CLI sẽ chỉnh sửa mọi tệp bị ảnh hưởng. Khi hoàn tất, nó sẽ trả về bản tóm tắt các thay đổi đã thực hiện.
Triển khai và kiểm thử bản sửa
Hãy triển khai và kiểm thử các bản sửa mà Gemini đề xuất. Với việc này, tôi dùng prompt sau và cho phép thực thi.
Prompt: Viết một unit test bằng pytest cho thay đổi này trong test_shared.py.

Gemini CLI:
- Chèn
json.dumps()trước khi gửi payload tác vụ trong các tệp đã đề xuất trước đó. - Sau đó, tạo
test_agents.pynếu thiếu để thêm unit test. - Cuối cùng, thêm một ca kiểm thử mới để xác thực schema và việc truyền thông điệp lồng nhau giữa các tác tử.
CLI tạo tệp test_agents.py và chạy nó bằng nhiều script shell. Tuy nhiên, tại một thời điểm, Gemini rơi vào vòng lặp lặp lại cùng một lỗi. Một prompt tinh chỉnh, chạy lại, hoặc đơn giản là dùng mô hình khác qua API có thể giải quyết điều này.
Dưới đây là tệp mới do Gemini tạo trong thư mục dự án:

Tạo tài liệu
Sau khi đã sửa lỗi, hãy tóm tắt các thay đổi và viết chúng dưới dạng Markdown trong một tệp .txt.
Với việc này, tôi dùng prompt sau:
Prompt: Viết bản tóm tắt markdown về lỗi, bản sửa và phạm vi kiểm thử. Định dạng như một mục changelog dưới "v0.2.0".

Để lưu bản tóm tắt vào tài liệu, tôi dùng prompt sau:
Prompt: Lưu bản tóm tắt này vào tệp .txt và đặt tên là summary.txt

Gemini CLI dùng công cụ WriteFile để lưu tệp summary.txt trong thư mục dự án.

Đây là tệp summary.txt do Gemini tạo cho dự án này:

Tạo sơ đồ luồng bằng MCP
Phần này mở rộng các thử nghiệm trước, nơi tôi khám phá cách Gemini CLI sử dụng Model Context Protocol (MCP) để duy trì tóm tắt cấp tệp và lịch sử tác vụ xuyên suốt các prompt. Điều này mang lại cho Gemini một bộ nhớ làm việc trong phiên. Tận dụng khả năng này, tôi yêu cầu Gemini tạo sơ đồ luồng của dự án và chuyển nó thành ảnh.
Đây là prompt tôi dùng:
Prompt: Tạo sơ đồ luồng cho thấy cách các tác tử giao tiếp qua A2A và cách main.py điều phối hệ thống. Tô đậm vị trí xảy ra sự cố và cách đã khắc phục.

Hình minh họa này được hỗ trợ bởi bộ nhớ bền vững của Gemini, vốn giữ nguyên đầy đủ ngữ cảnh về bản sửa lỗi và cấu trúc tác tử trước đó mà không cần tải lại hay gợi ý tệp.
Mặc dù công cụ tạo ảnh không có sẵn trực tiếp trong CLI (có thể truy cập qua API), hình minh họa này vẫn hữu ích để hiểu định tuyến giữa các tác tử.
Các công cụ có sẵn của Gemini CLI
Một số công cụ mà Gemini CLI hỗ trợ gồm:
- ReadFile, WriteFile, Edit
- FindFiles, ReadFolder, ReadManyFiles
- Shell, SaveMemory
- GoogleSearch hoặc Search, WebFetch
Những công cụ này giúp bạn điều hướng, truy vấn và chỉnh sửa các codebase lớn một cách hiệu quả.
Để tìm hiểu thêm về Gemini CLI, tôi khuyên bạn đọc tài liệu chính thức và trang GitHub.
Kết luận
Tóm lại, hướng dẫn này minh họa cách dùng Gemini CLI để:
- Hiểu cấu trúc codebase đa tác tử
- Sửa một issue trên GitHub
- Tạo unit test và tài liệu markdown cho các thay đổi.
- Trực quan hóa luồng dữ liệu
Gemini CLI giúp giảm thời gian tôi thường phải dành để đọc tệp và tự lên kế hoạch sửa lỗi. Dù vẫn ở giai đoạn đầu và đôi khi có thể hơi chậm khi dùng qua API, công cụ này đã sánh ngang với Claude Code.
Nếu bạn là nhà phát triển muốn bổ sung tác tử AI vào quy trình làm việc, hãy xem loạt hướng dẫn bốn phần về Devin:
Câu hỏi thường gặp về Gemini CLI
Gemini CLI là gì và có thể làm gì?
Gemini CLI là trợ lý AI trên terminal mã nguồn mở của Google, cho phép nhà phát triển tích hợp các mô hình Gemini trực tiếp vào quy trình làm việc trên dòng lệnh. Công cụ được thiết kế để hiểu codebase của bạn, giúp tự động gỡ lỗi, tái cấu trúc các hàm phức tạp, tạo unit test và viết tài liệu mà không cần rời terminal.
Làm thế nào để cài Gemini CLI?
Để cài Gemini CLI, bạn cần có Node.js phiên bản 18 trở lên trên hệ thống. Sau đó, chạy lệnh sau trong terminal: npm install -g @google/gemini-cli. Ngoài ra, bạn có thể chạy mà không cần cài đặt bằng npx google-gemini/gemini-cli.
Gemini CLI có miễn phí không?
Có, Gemini CLI nhìn chung miễn phí sử dụng với hạn mức khá rộng rãi. Khi xác thực bằng tài khoản Google, bạn thường được truy cập gói miễn phí (ví dụ, tối đa 60 yêu cầu mỗi phút và 1.000 yêu cầu mỗi ngày) với các mô hình như Gemini 3 Pro hoặc Flash. Để có hạn mức cao hơn, bạn có thể kết nối API key của Google Cloud.
Làm thế nào để dùng Gemini CLI với một dự án hiện có?
Để dùng Gemini CLI với codebase hiện có, chỉ cần điều hướng tới thư mục dự án trong terminal (cd my-project) và gõ gemini. Công cụ sẽ đọc ngữ cảnh của thư mục hiện tại, cho phép bạn đặt câu hỏi như "Giải thích kiến trúc của ứng dụng này" hoặc "Sửa lỗi trong main.py" dựa trên các tệp ngay xung quanh bạn.
Yêu cầu tiên quyết để chạy Gemini CLI là gì?
Điều kiện tiên quyết chính để thiết lập Google Gemini CLI là có Node.js (v18+) và npm. Bạn cũng cần một tài khoản Google hợp lệ để xác thực. Công cụ hoạt động trên các hệ điều hành chính, bao gồm macOS, Windows và Linux.
Tôi là Chuyên gia Google Developers trong lĩnh vực ML (Gen AI), Chuyên gia Kaggle 3x và Đại sứ Women Techmakers với hơn 3 năm kinh nghiệm trong ngành công nghệ. Tôi đồng sáng lập một startup công nghệ y tế vào năm 2020 và hiện đang theo học thạc sĩ khoa học máy tính tại Georgia Tech, chuyên sâu về học máy.
