Tracks
Tôi thường sao chép và dán mã vào ChatGPT để hỏi vì sao nó không chạy, để refactor, hoặc đơn giản là để giải thích cho tôi. Tuy nhiên, việc chuyển qua lại giữa trình soạn thảo mã và ChatGPT có thể hơi mất công.
Các trình soạn thảo có AI giải quyết vấn đề này bằng cách tích hợp LLM trực tiếp vào trình soạn thảo mã. Nhờ tích hợp trực tiếp với mã của chúng ta, LLM có thêm ngữ cảnh về toàn bộ dự án, từ đó cải thiện đáng kể chất lượng đầu ra.
Trong bài viết này, chúng ta sẽ khám phá một trong những trình soạn thảo mã phổ biến nhất: Cursor AI. Được các kỹ sư tại OpenAI và Perplexity tin dùng, Cursor AI cung cấp khả năng hỗ trợ viết mã bằng AI, gợi ý mã thông minh và tích hợp với nhiều công cụ phát triển. Bạn cũng nên xem hướng dẫn về Cursor 2.0 nếu muốn khám phá các tính năng.
Chúng tôi luôn cập nhật cho độc giả những tin tức AI mới nhất qua The Median, bản tin thứ Sáu miễn phí giúp bạn nắm bắt những câu chuyện quan trọng trong tuần. Đăng ký để luôn sắc bén chỉ với vài phút mỗi tuần:
Cursor AI là gì và có thể làm gì?
Cursor AI là một trình soạn thảo mã được hỗ trợ bởi AI, được thiết kế để giúp việc phát triển phần mềm dễ dàng hơn. Là một fork của Visual Studio Code (VS Code), nó giữ lại giao diện thân thiện với người dùng và hệ sinh thái phong phú của VS Code, giúp các nhà phát triển quen thuộc với nền tảng này chuyển đổi dễ dàng hơn.
Cursor AI tích hợp các khả năng AI tiên tiến thông qua ChatGPT của OpenAI và Claude. Nhờ tích hợp này, Cursor AI có thể đưa ra gợi ý mã thông minh, tự động phát hiện lỗi và tối ưu hóa mã động.
Các tính năng tự động hoàn thành chính
Cursor cung cấp các tính năng tự động hoàn thành và dự đoán mã quan trọng:
- Tự động hoàn thành và dự đoán mã: Cursor cung cấp chức năng tự động hoàn thành có thể dự đoán các chỉnh sửa nhiều dòng và điều chỉnh dựa trên thay đổi gần đây.
- Sinh mã: Nhờ nắm được các thay đổi gần đây, Cursor dự đoán bước tiếp theo chúng ta muốn làm và gợi ý mã tương ứng.
- Chỉnh sửa nhiều dòng: Có thể đề xuất các chỉnh sửa trải dài nhiều dòng.
- Viết lại thông minh: Trình soạn thảo có thể tự động sửa và cải thiện mã của chúng ta, kể cả khi gõ cẩu thả.
- Dự đoán con trỏ: Dự đoán vị trí con trỏ tiếp theo, cho phép di chuyển mượt mà trong mã.
Tính năng chat
Cursor cũng tích hợp các tính năng chat nâng cao để hỗ trợ tương tác tốt hơn:
- Trả lời theo codebase: Hỏi Cursor về codebase, nó sẽ tìm trong các tệp để đưa ra câu trả lời phù hợp.
- Tham chiếu mã: Tham chiếu các khối mã hoặc tệp cụ thể, tích hợp chúng vào ngữ cảnh câu hỏi của chúng ta.
- Hỗ trợ hình ảnh: Kéo ảnh vào cửa sổ chat hoặc dùng nút để thêm ngữ cảnh trực quan.
- Tìm kiếm web: Lấy thông tin mới nhất từ internet đưa trực tiếp vào truy vấn mã.
- Áp dụng tức thì: Áp dụng gợi ý mã từ chat trực tiếp vào codebase chỉ với một cú nhấp.
- Tích hợp tài liệu: Tham chiếu thư viện phổ biến và thêm tài liệu của riêng chúng ta để truy cập nhanh.
Để xem danh sách đầy đủ tính năng, hãy truy cập trang tính năng của Cursor.
Cách cài đặt Cursor AI
Cursor AI cung cấp tệp cài đặt cho Linux, Windows và MacOS mà bạn có thể tải miễn phí trên trang web của họ.

Để cài đặt trên Windows và MacOS, chúng ta tải từ trang chủ và cài đặt tệp như với bất kỳ chương trình nào khác.
Trên Linux, tệp ở định dạng AppImage. Trước khi chạy, chúng ta cần cấp quyền thực thi bằng lệnh:
chmod a+x cursor_2.6.14_x86_64.AppImage
Sau đó có thể chạy với:
./cursor_2.6.14_x86_64.AppImage
Có thể chúng ta cần thay thế phiên bản 0.40.3x86_64 trong các lệnh trên, tùy vào phiên bản đã tải. Bản phát hành hiện tại, tính đến tháng 3 năm 2026, là phiên bản 2.6, nhưng định dạng tên có thể khác nhau giữa các hệ thống (ví dụ, cursor_2.4.46_arm64.deb trên macOS hoặc Linux). Để biết thêm hướng dẫn về cách cài đặt tệp AppImage, hãy xem trang web của họ.

- Bàn phím: Tùy chọn này cho phép cấu hình phím tắt. Mặc định dùng phím tắt của VS Code, tôi khuyên nên giữ nguyên trừ khi bạn quen với một trình soạn thảo khác trong danh sách.
- Ngôn ngữ cho AI: Tại đây, chúng ta có thể chọn ngôn ngữ không phải tiếng Anh để tương tác với AI.
- Phạm vi toàn codebase: Bật tùy chọn này cho phép AI hiểu ngữ cảnh của toàn bộ codebase.
- Thêm lệnh terminal: Nếu cài đặt, các mục này cho phép mở trình soạn thảo Cursor AI từ terminal.
Cách sử dụng Cursor AI: 10 trường hợp sử dụng
Xuyên suốt hướng dẫn, chúng tôi cung cấp phím tắt MacOS với phím Cmd ⌘. Phím tắt tương tự nếu bạn dùng Cursor trên Windows hoặc Linux, chỉ khác là dùng phím Ctrl.
Sinh mã trực tiếp trong dòng
Chúng ta dùng phím tắt Cmd+K để mở trình tạo mã trong dòng. Một cửa sổ nhắc nhỏ sẽ mở ra để chúng ta nhập prompt sinh mã:

Để sinh mã, chúng ta nhập prompt rồi bấm nút generate:

Mã sẽ được tạo ra, và chúng ta thêm vào dự án bằng cách nhấp nút chấp nhận:

Trong ví dụ này, chúng ta dùng mô hình cloude-3.5-sonnet. Có thể chọn mô hình khác bằng bộ chọn trong danh sách thả xuống:

Tương tác với mã hiện có
Chúng ta cũng có thể dùng chat trong dòng để tương tác với mã hiện có bằng cách bôi chọn đoạn mã liên quan trước khi dùng phím tắt Cmd+K. Có thể dùng để chỉnh sửa mã, như refactor, hoặc đặt câu hỏi về đoạn mã. Sau khi nhập prompt, nhấp nút Submit Edit để nhận các thay đổi:

Các thay đổi mã trong Cursor được hiển thị dạng diff. Các dòng đỏ là dòng sẽ bị xóa, còn dòng xanh là thay đổi mới sẽ được thêm vào:

Đặt câu hỏi về mã hiện có
Tương tự, chúng ta có thể đặt câu hỏi về một đoạn mã bằng cách bôi chọn và dùng phím tắt Cmd+K. Với câu hỏi, hãy bấm nút quick question để gửi prompt:

Sau khi gửi câu hỏi, hệ thống sẽ tạo câu trả lời và hiển thị như sau:

Tự động hoàn thành bằng phím Tab
Khi viết mã, Cursor sẽ gợi ý phần hoàn thành được sinh bởi AI. Tương tự tính năng gợi ý truyền thống, chúng ta có thể dùng phím Tab để chèn gợi ý vào mã.
Ví dụ, giả sử chúng ta bắt đầu viết hàm tên maximum(). Cursor sẽ nhận ra ý định và gợi ý cách triển khai phù hợp. Bấm Tab để thêm đoạn mã gợi ý:

Tự động hoàn thành cũng hoạt động với mô tả bằng ngôn ngữ tự nhiên. Ví dụ, nếu muốn tạo vòng lặp for lồng nhau để duyệt mọi cặp trong một danh sách, chúng ta chỉ cần mô tả bằng văn bản. Cursor sẽ đưa ra gợi ý tương ứng, có thể chèn bằng phím Tab:

Tổng quan giao diện chat
Để mở cửa sổ chat, dùng phím tắt Cmd+L. Cửa sổ chat đa năng hơn trình tạo trong dòng, vì cho phép không chỉ sinh mã mà còn đặt câu hỏi. Sau đây là tổng quan giao diện chat:

Sinh mã với chat
Tương tự sinh mã với chat trong dòng, chúng ta cũng có thể sinh mã bằng tính năng chat. Mã sinh ra trong chat có thể được chèn vào dự án bằng cách nhấp nút Apply ở góc trên bên phải của cửa sổ mã.

Tăng cường ngữ cảnh truy vấn với @
Có lẽ tính năng quan trọng nhất của cửa sổ chat là tùy chọn @ Mention. Tùy chọn này cho phép chúng ta cung cấp thêm dữ liệu để AI tạo câu trả lời. Phạm vi từ các tệp và thư mục đơn giản đến tìm kiếm web hoặc cấp quyền truy cập một kho GitHub cho AI.
Ví dụ, có thể dùng @Web để cho phép AI tìm kiếm trên web để trả lời.

Lưu ý rằng trong một số trường hợp, việc chia sẻ toàn bộ codebase hoặc kho GitHub riêng tư với AI có thể gây vấn đề. Chúng ta cần cân nhắc kỹ những gì chia sẻ với AI và tránh chia sẻ thông tin nhạy cảm hoặc dữ liệu riêng tư.
Câu hỏi trên toàn bộ codebase
Một trong những tính năng tôi thấy hữu ích nhất khi làm việc với dự án lớn là khả năng nhanh chóng tìm một đoạn mã bằng cách đặt câu hỏi với phạm vi toàn bộ codebase. Gần đây, tôi muốn tìm một hàm trong dự án tính toán hướng điều hướng trong một ứng dụng. Với Cursor, tôi chỉ cần mô tả chức năng của hàm là có thể định vị nó rất nhanh:

Lưu ý chúng ta dùng tùy chọn codebase trong trường hợp này. Dù Cursor không hiển thị mã thực tế vì lý do nào đó, nhấp vào hộp mã vẫn mở đúng tệp và cuộn tới hàm tôi cần:

Hỗ trợ hình ảnh
Chat của Cursor cũng hỗ trợ nhập hình ảnh. Ví dụ, chúng ta có thể phác thảo thiết kế UI cho một website và yêu cầu sinh mã HTML và CSS cho nó. Để thêm ảnh, kéo thả ảnh vào cửa sổ chat.

Thêm tài liệu
Một tính năng rất hữu ích của Cursor AI là khả năng thêm tham chiếu tài liệu. Điều này đặc biệt hữu ích cho các thư viện ít phổ biến hoặc riêng tư mà tài liệu có thể chưa được dùng trong quá trình huấn luyện AI.
Để thêm mục tài liệu, dùng ký hiệu @ rồi chọn Docs từ menu thả xuống:

Cửa sổ sẽ yêu cầu URL tài liệu. Hãy thêm tài liệu PyTorch làm ví dụ:

Sau khi chèn URL, chúng ta có thể đặt tên cho mục tài liệu. Ở đây dùng PyTorch. Sau đó có thể dùng tên này để tham chiếu trong prompt chat bằng @PyTorch.

Các tham chiếu tài liệu cũng có thể quản lý trong thẻ Features trong phần cài đặt của Cursor:

Cursor AI: Tính năng và lợi ích bổ sung
Hỗ trợ ngôn ngữ
Các ví dụ trong bài viết này dùng Python, HTML và CSS. Nhưng Cursor không được xây dựng dành riêng cho ngôn ngữ cụ thể nào. Vì việc sinh mã dựa trên LLM mục đích chung, Cursor có thể sinh mã ở bất kỳ ngôn ngữ lập trình nào. Nó sẽ dùng phần mở rộng tệp để đoán ngôn ngữ cần dùng.
Tiện ích mở rộng
Vì Cursor được xây dựng trên VS Code, nó thừa hưởng hệ sinh thái tiện ích mở rộng phong phú. Có thể truy cập qua menu View.

Để thiết lập Cursor làm việc với Python, tôi khuyến nghị hướng dẫn thiết lập Python trên VSCode, vì các tính năng tương tự sẽ có trên cả VSCode và Cursor.
Sự hợp tác với người khác
Việc dùng các công cụ cộng tác như Git với Cursor tương tự như với bất kỳ trình soạn thảo mã nào. Các công cụ này không phụ thuộc vào cách mã được viết. Có các tiện ích mở rộng hỗ trợ Git chuyên biệt.
Hãy nhớ rằng chat của Cursor cho phép bạn sử dụng kho Git trong ngữ cảnh bằng toán tử @. Cần thận trọng nếu kho chứa dữ liệu riêng tư.

Thiết lập quy tắc AI tùy chỉnh
Cursor cho phép chúng ta định hướng AI bằng các quy tắc cụ thể. Có thể truy cập trong menu cài đặt chung:

Các quy tắc này có thể điều chỉnh hành vi của AI mà không cần nhắc lại nhiều lần. Ví dụ, chúng ta có thể đảm bảo AI luôn dùng type hint trong Python bằng cách thêm quy tắc như "Luôn dùng type hint trong định nghĩa hàm Python."
Mô hình AI tùy chỉnh
Một tính năng thú vị khác của Cursor là khả năng thêm các mô hình AI khác. Tùy chọn này có trong phần cài đặt Models:

Tại đây chúng ta có thể thêm mô hình mới. Phần cài đặt mô hình cũng cho phép thêm khóa API nếu muốn.
Cursor AI so với GitHub Copilot
Cursor AI và GitHub Copilot đều là các trợ lý viết mã dùng AI, mỗi bên có những tính năng riêng.
Cursor AI được xây dựng trên VSCode và hoạt động như một trình soạn thảo độc lập. Nó tích hợp chặt chẽ với môi trường lập trình để tự động hóa tác vụ và đưa ra gợi ý mã trực quan, giúp tối ưu việc viết và refactor mã. Đặc biệt phù hợp với các nhà phát triển ưa thích tích hợp sâu trong một IDE quen thuộc.
GitHub Copilot, do GitHub và OpenAI phát triển, tích hợp với nhiều trình soạn thảo phổ biến như Visual Studio Code. Nó đưa ra gợi ý mã theo ngữ cảnh dựa trên phong cách lập trình và ngữ cảnh dự án của người dùng. GitHub Copilot nổi trội trong việc dự đoán các dòng mã tiếp theo và hỗ trợ nhiều ngôn ngữ, framework.
Về mặt tích hợp, Cursor AI cung cấp mức độ tùy biến đáng kể trong môi trường độc lập dựa trên VSCode, có thể tăng hiệu quả quy trình với một số người dùng. Ngược lại, GitHub Copilot được đánh giá cao nhờ thiết lập dễ dàng và tích hợp với các IDE thông dụng, giúp nhiều nhà phát triển dễ tiếp cận.
Cả hai công cụ đều cung cấp gợi ý mã theo thời gian thực và hỗ trợ nhiều ngôn ngữ, framework. Cursor AI có thể lợi thế trong các tác vụ chuyên biệt nhờ tích hợp sâu, trong khi GitHub Copilot với hỗ trợ IDE rộng và thiết lập đơn giản phù hợp với đông đảo người dùng.
Cuối cùng, lựa chọn giữa Cursor AI và GitHub Copilot có thể phụ thuộc vào nhu cầu tùy biến, sở thích tích hợp và ngân sách. Cả hai đều hướng đến nâng cao hiệu quả lập trình theo những cách khác nhau.
Kết luận
Các công cụ như ChatGPT đã giúp lập trình trở nên dễ tiếp cận hơn nhờ cho phép người dùng viết mã chỉ bằng cách diễn đạt mục tiêu bằng ngôn ngữ tự nhiên. Cursor tiến thêm một bước bằng cách tích hợp trực tiếp với trình soạn thảo mã, loại bỏ nhu cầu chuyển qua lại giữa trình soạn thảo và giao diện chat.
Trong khi Cursor AI cung cấp một giải pháp độc lập toàn diện, được thiết kế cho tích hợp sâu trong môi trường VSCode, các công cụ như GitHub Copilot lại mang đến tính linh hoạt trên nhiều IDE phổ biến. Quyết định giữa hai công cụ rốt cuộc phụ thuộc vào nhu cầu cá nhân và mức độ ưu tiên cho tùy biến cũng như sự đơn giản khi thiết lập.
Tóm lại, Cursor AI là một trình soạn thảo mã mạnh mẽ, vận hành bởi AI, hứa hẹn thay đổi cách các nhà phát triển tiếp cận việc viết mã, refactor và gỡ lỗi.
Câu hỏi thường gặp
Cursor AI là gì?
Cursor AI là một trình soạn thảo mã được hỗ trợ bởi AI, được thiết kế để đơn giản hóa và nâng cao quy trình viết mã. Nó sử dụng trí tuệ nhân tạo để cung cấp các tính năng nâng cao như tự động hoàn thành thông minh, sinh mã và hiểu codebase.
Cách mở AI trong trình soạn thảo Cursor?
Các khả năng của Cursor AI được tích hợp liền mạch trong trình soạn thảo. Bạn có thể kích hoạt hành động AI bằng các phím tắt như Ctrl+K hoặc tương tác với các đoạn mã cụ thể. Ví dụ, chọn một đoạn mã rồi nhấn Ctrl+K cho phép bạn chỉnh sửa hoặc sinh mã mới dựa trên prompt của bạn.
Cursor AI có miễn phí không?
Có, Cursor cung cấp phiên bản miễn phí với các tính năng AI mạnh mẽ. Họ cũng có gói Pro với các khả năng bổ sung như truy cập các mô hình AI mạnh hơn và cửa sổ ngữ cảnh mở rộng để hiểu mã sâu hơn. Tại thời điểm viết bài này, GPT-4, GPT-4o và Claude 3.5 Sonnet đều được xem là các mô hình.
Cursor có dùng Claude không?
Có, Cursor sử dụng Claude 3 Opus và Claude 3.5 Sonnet (mô hình cao cấp).
Cursor có dựa trên VSCode không?
Mặc dù Cursor có vài điểm tương đồng về giao diện với VSCode, nó được xây dựng trên codebase độc lập của riêng mình. Điều này cho phép Cursor tối ưu kiến trúc đặc thù cho các tính năng lập trình có hỗ trợ AI.
