Kết nối Obsidian với Antigravity

Kết nối Obsidian với Antigravity
Đưa sức mạnh của Gemini vào vault của bạn mà không cần một plugin nào.
nano banana đã tạo một hình minh họa hoạt hình về hai biểu tượng ứng dụng đang ôm nhau. Bên trái là một nhân vật hình vuông màu trắng có logo chữ “A” của Google (đại diện cho Antigravity), được đẩy bằng các tên lửa đẩy nhỏ. Nó đang vui vẻ ôm một nhân vật hình tinh thể màu tím (đại diện cho Obsidian).
Tôi đã tìm thấy rất nhiều bài viết nói về cách thêm các LLM vào Obsidian nhưng không có nhiều bài viết theo chiều ngược lại — và hoàn toàn không biết về cầu nối đa thư mục gốc (multi-root bridge) trong VSCode.
Nếu bạn đang xây dựng một ứng dụng vào cuối năm 2025, rất có thể bạn đang thử nghiệm Google Antigravity. Khả năng hoạt động như một agent của nó thực sự ấn tượng, nhưng họ đã giải quyết một vấn đề cũ chỉ để tạo ra một vấn đề mới: tốc độ và tài liệu.
AI giúp bạn xây dựng càng nhanh, tài liệu của bạn càng nhanh chóng lỗi thời.
Tôi hiện đang xây dựng một ứng dụng Mac trong Antigravity, và tôi nhận ra mình không muốn tài liệu của mình nằm trong một thư mục bị lãng quên nào đó mà tôi không bao giờ ngó tới.
Tôi muốn nó phải sống động, được liên kết và có thể tìm kiếm được ngay bên trong Obsidian** Vault** của dự án (mà tôi đồng bộ qua iCloud).
**Tại sao cách này hoạt động (và tại sao Notion thì không) **Trước khi bắt đầu, một lưu ý nhỏ là cách này chỉ hoạt động vì Obsidian là “Local First” (Ưu tiên cục bộ). Nó chỉ đơn giản là một thư mục chứa các tệp văn bản trên ổ cứng của bạn (hoặc bất kỳ ổ đĩa nào được kết nối).
Nếu bạn dùng Notion, bạn không gặp may rồi.
Notion là một cơ sở dữ liệu trên cloud; để tương tác với nó, bạn cần API, token xác thực và các plugin phức tạp. Nhưng vì Obsidian nằm trên máy Mac của bạn, Antigravity có thể đọc và ghi vào nó giống hệt như cách nó đọc code của bạn.
Không API. Không đăng ký. Không có lỗi “Request Timed Out”.
Thật lòng mà nói, tôi đã nghĩ mình sẽ cần phải xây dựng một extension tùy chỉnh để kết nối cả hai. Tôi đã lầm.
Hóa ra bạn có thể làm điều đó một cách tự nhiên trong khoảng năm phút.
(Bạn cũng có thể làm phần lớn việc này bằng cách sử dụng thiết lập cũ của tôi với VSCode và Claude Code, nhưng bài hướng dẫn này theo cách làm việc mới của tôi, và tôi luôn nghĩ rằng Obsidian MCP đã ngốn một lượng lớn dung lượng Claude vốn đã giảm nhanh của mình.)
Bước 1: Cầu nối đa thư mục gốc (Multi-Root Bridge)
Bí mật không nằm ở code. Đó là một tính năng tiêu chuẩn được gọi là Multi-Root Workspace.
Antigravity (giống như tiền thân của nó là VS Code) cho phép bạn coi hai thư mục hoàn toàn riêng biệt như một dự án logic duy nhất.
Điều này cung cấp cho AI Agent “Quyền truy cập toàn bộ ổ đĩa” vào vault của bạn mà không cần bạn phải di chuyển mã nguồn.
Mẹo hay:
Hãy đổi tên vault trước khi nó xuất hiện trong thanh bên của bạn thành một cái tên rõ ràng như [TênApp]_Documentation.
Điều này giúp AI không bị nhầm lẫn giữa các thư mục.
Bước quan trọng:
Rất có thể bạn sẽ được nhắc lưu tệp workspace của mình (ví dụ: MyProject.code-workspace).
Việc này sẽ lưu lại cầu nối để bạn không phải kết nối lại mỗi lần.
Bước 2: “Bộ quy tắc” (AGENTS.md)
Bây giờ agent đã có thể ghi vào vault của bạn, bạn cần dạy nó cách thực hiện.
Nếu bạn không hướng dẫn agent đúng cách, nó sẽ tạo ra các tệp markdown đơn thuần không có wikilink, làm hỏng biểu đồ tri thức của bạn.
Điều quan trọng là, agent không tự động đọc các quy tắc dự án của bạn. Bạn cần tạo một tệp “Bộ quy tắc” để có thể cung cấp rõ ràng cho nó vào đầu mỗi phiên làm việc.
1. Tạo tệp
Tạo một tệp có tên AGENTS.md trong thư mục gốc của dự án (không phải bên trong thư mục .agent).
2. Thêm giao thức Dán “Hiến pháp” này vào tệp.
Lưu ý: Cập nhật biến Target Folder để khớp với tên bạn đã đặt cho thư mục của mình ở Bước 1.
# Documentation Protocol
## 1. Obsidian Connectivity
- **Target Folder:** ALL documentation must be saved to the `[AppName]_Documentation` folder (not the root app folder).
## 2. Obsidian Syntax
- **Links:** ALWAYS use `[[WikiLinks]]`.
- Referencing a class? Write `[[AuthManager]]`.
- Referencing a view? Write `[[ContentView]]`.
- **Embeds:** Use `![[ImageName]]` for visuals.
## 3. Frontmatter (Metadata)
Start every new doc with this YAML block:
---
created: {{date}}
type: dev-docs
project: MyMacApp
status: active
---
3. Prompt “Kích hoạt” Đây chính là mẹo. Khi bắt đầu bất kỳ phiên làm việc nào với tài liệu, bạn không cần gõ lại các quy tắc này. Bạn chỉ cần gửi lệnh một dòng này để “nạp” bộ não cho nó:
Read @AGENTS.md. Apply those rules to all documentation tasks we do today.
Gemini sẽ đưa tệp đó vào cửa sổ ngữ cảnh của nó, và trong phần còn lại của phiên trò chuyện đó, nó sẽ hoạt động chính xác như một chuyên gia Obsidian.
Bước 3 — Vòng lặp “Định nghĩa hoàn thành”
Phần khó nhất của việc viết tài liệu chỉ đơn giản là nhớ để làm nó. Tôi đã khắc phục điều này bằng cách biến việc viết tài liệu thành một phần trong định nghĩa hoàn thành (definition of done) của mình.
Khi tôi hoàn thành một tính năng (ví dụ: “Đăng nhập người dùng”), tôi không chỉ commit code. Tôi chạy một prompt đã lưu trong Antigravity:
I have completed the [Feature Name] feature. Please perform the Close Out:
1. Scan the changes in [File Name].
2. Update the [[Feature Name]] note in `[AppName]_Documentation` to reflect the new logic.
3. Update [[ProjectRoadmap]] to mark this task complete.
Agent sẽ cập nhật tài liệu trong khi tôi đang chuẩn bị (staging) cho git commit.
Hoặc bạn có thể siêng năng hơn nữa và tạo một tệp gemini_protocols.md và lưu nó vào thư mục gốc của dự án.
Tôi có một vài thứ trong đó nhưng tôi đã thêm đoạn mã này vào cuối tệp:
## ✅ DEFINITION OF DONE LOOP
When completing any task, you MUST perform the **Close Out**:
1. **Scan**: Verify the changes in `[Target File]`.
2. **Doc Update**: Update the `[[Feature Name]]` note in `[AppName]_Documentation` to reflect the new logic.
3. **Roadmap Update**: Update `[[ProjectRoadmap]]` or `[Epic_Task_Status].md` to mark this task complete.
4. **Confirm**: Notify user: "Close Out Complete. Docs & Roadmap updated."
Tôi tham chiếu đến tệp này trong mỗi prompt đầu tiên của một phiên trò chuyện trong Antigravity và nó hoạt động giống như một chỉ dẫn được ghim lên đầu của claude.md.
Và thế là xong — bạn sẽ thấy Gemini giờ đây hoạt động tuyệt vời với Obsidian và tự động tạo tài liệu cho bạn.
Ảnh của Dan Dennis trên Unsplash
Một lời cảnh báo (Đọc trước khi bạn đồng bộ)
Trước khi bạn cấp cho một AI siêu thông minh quyền truy cập gốc vào bộ não thứ hai của mình, đây là những rủi ro.
1. Sự đánh đổi về quyền riêng tư Người dùng Obsidian thường yêu thích ứng dụng này vì nó “Local First”. Bằng cách thêm Vault của bạn vào Antigravity, về mặt kỹ thuật, bạn đang chuyển các ghi chú đó qua cửa sổ ngữ cảnh của Google để được phân tích.
Cách khắc phục: Nếu bạn có nhật ký nhạy cảm hoặc ghi chú tài chính, đừng thêm thư mục Vault gốc của bạn. Chỉ thêm một thư mục con cụ thể (ví dụ: Vault/Projects/Dev) vào workspace.
**2. Mớ hỗn độn “Bản sao xung đột”
** iCloud rất tuyệt, nhưng nó không tức thời. Nếu bạn đang mở một ghi chú trong Obsidian trên iPad của mình, và Antigravity chỉnh sửa cùng ghi chú đó trên máy Mac của bạn vào cùng một thời điểm, iCloud sẽ gặp vấn đề. Bạn sẽ nhận được các tệp có tên như ProjectRoadmap (Conflicted Copy 1).md.
Cách khắc phục: Hãy đối xử với Agent như một đồng nghiệp. Đừng chỉnh sửa cùng một tệp vào cùng một thời điểm.
**3. Chỉnh sửa mang tính phá hủy **Gemini thông minh, nhưng nó vẫn có thể bị ảo giác (hallucinate). Có khả năng thực sự là nó có thể quyết định rằng việc xóa các ghi chú brainstorm “lộn xộn” của bạn là một cách tốt để “dọn dẹp” tài liệu.
Cách khắc phục: Sử dụng plugin Obsidian Git. Nó sao lưu vault của bạn sau mỗi X phút. Nếu Agent xóa mất thứ gì đó quan trọng, bạn chỉ cần git revert và cứu vãn tình hình.
4. Phình to token Nếu vault của bạn có 5.000 tệp markdown và bạn thêm thư mục gốc vào workspace, Agent có thể cố gắng lập chỉ mục mọi thứ. Điều này làm chậm IDE và đốt hết hạn ngạch token của bạn.
Cách khắc phục: Một lần nữa, phạm vi rất quan trọng. Sử dụng .aiexclude để yêu cầu AI bỏ qua các thư mục Personal/ hoặc Journal/ của bạn.
Ok, sau khi đã giải quyết các vấn đề đó, đây là một số điều hữu ích bạn có thể làm khi đã thiết lập xong
**1. Kiểm tra “Tổng vệ sinh” **Bạn không muốn bắt đầu bằng cách viết tệp thủ công. Bạn muốn có một cơ sở ban đầu, và bạn muốn loại bỏ những thứ không còn hữu dụng.
Mở một Cuộc trò chuyện mới trong thanh bên (thường là Cmd+L) và chạy prompt này.
Hãy chắc chắn thay thế *[AppName]_Documentation* bằng tên thực của thư mục vault của bạn trong thanh bên.
Perform a Relevance Audit of the `[AppName]_Documentation` folder against the current `App` code.
1. Identify documentation for features that no longer exist in the code.
2. Scan for any "User Stories" or "Backlog" notes inside the documentation folder.
3. Identify stories that seem outdated or reference deleted modules.
4. Create a plan to move these obsolete files into a `Archive` subfolder (create the folder if needed).
Do not move files yet—just list them for my approval.
Agent sẽ quét code của bạn, kiểm tra vault của bạn để tìm các khái niệm phù hợp, và về cơ bản sẽ nói: “Này, bạn có 50 ghi chú về tính năng ‘Đăng nhập Beta’ mà bạn đã xóa năm ngoái. Tôi có nên lưu trữ chúng cho bạn không?”
**2. Lịch sử tự động **Vì Antigravity có thể đọc terminal của bạn, nó cũng có thể đọc git log của bạn. Bạn có thể sử dụng điều này để tạo báo cáo hàng tuần hoặc nhật ký thay đổi mà không cần phải động tay.
Hãy thử chạy prompt này vào cuối tuần:
Analyze the git commit history of this repository for the last 7 days.
1. Run a git log command to retrieve the history (filter out merge commits).
2. Group the work into clear categories (e.g., New Features, Bug Fixes, Refactoring).
3. Draft a "Weekly_Dev_Report.md" in `[AppName]_Documentation` using the commits as evidence.
4. Ensure every entry includes the **Date** (YYYY-MM-DD) and a **Description** of the change.
5. Add a "Stats" section listing total commits and files changed.
Bạn cũng có thể chỉnh sửa nó để yêu cầu nó chạy một báo cáo cho bất kỳ khoảng thời gian nào. Tôi đã yêu cầu nó xem toàn bộ lịch sử git của repo của mình và viết một báo cáo về quá trình phát triển đã diễn ra tốt như thế nào — một kiểu nhìn lại (retro) bằng agent.
Ok, thôi không lan man nữa — tôi nghĩ đây là một cách làm việc hữu ích mà không cần phải thêm API token vào một plugin của Obsidian.
Và nếu tôi nhận được một loạt bình luận nói rằng ‘Tôi biết hết về cái này rồi.. tốt cho bạn nhưng tại sao bạn không chia sẻ nó ở một nơi mà Goggle search có thể tìm thấy!!!’
Lưu ý quan trọng (13/12/2025)
Vui lòng đọc các bình luận – tôi đã được thông báo về một lỗ hổng bảo mật quan trọng trong Antigravity mà tôi (và tôi đoán nhiều người) không biết, vì vậy tôi có trách nhiệm phải đề cập đến nó trong bài viết chính để cảnh báo mọi người – vui lòng đọc các bình luận – và một số lời nhắc nhở cho những người có thể chưa hiểu hết rủi ro về cách tự bảo vệ mình.
Cách ngăn chặn rò rỉ dữ liệu
Để tự bảo vệ mình khi sử dụng các công cụ lập trình AI như Antigravity, hãy tuân theo các phương pháp tốt nhất sau:
Chạy các agent AI trong môi trường bị hạn chế: Sử dụng các hệ thống cô lập như máy ảo (VM) hoặc Docker container với quyền truy cập rất hạn chế vào các tệp và mạng của máy tính chính của bạn.
Duy trì sự giám sát của con người: Không sử dụng các chế độ “tự động chạy” (auto-run) hoặc “turbo” cho phép AI thực thi lệnh mà không có sự chấp thuận rõ ràng của bạn cho mỗi hành động. Xem xét thủ công tất cả các hoạt động trên hệ thống tệp và các lệnh terminal trước khi chúng chạy.
Thận trọng với các nguồn bên ngoài: Tránh chỉ định agent AI đến các trang web không đáng tin cậy hoặc tích hợp code từ các kho lưu trữ chưa được xác minh. Xem xét thủ công code từ các nguồn không quen thuộc để tìm các chỉ dẫn ẩn.
Quản lý thông tin xác thực một cách an toàn:
Lưu trữ thông tin nhạy cảm (API key, mật khẩu) trong các hệ thống quản lý bí mật chuyên dụng, không lưu trong các tệp .env dạng văn bản thuần túy trong thư mục dự án của bạn.
Không bao giờ commit các tệp chứa thông tin xác thực vào các hệ thống quản lý phiên bản như Git.
Áp dụng nguyên tắc đặc quyền tối thiểu: Chỉ cấp cho agent AI các quyền tối thiểu cần thiết để nó thực hiện nhiệm vụ trước mắt. Bắt đầu với quyền chỉ đọc và chỉ mở rộng quyền khi thực sự cần thiết.
Giám sát hoạt động: Theo dõi các hành động của AI, các mẫu truy cập tệp và các lệnh gọi mạng, đồng thời thiết lập cảnh báo cho các hoạt động đáng ngờ.
Luôn cập nhật phần mềm: Đảm bảo bạn đang sử dụng các phiên bản mới nhất của công cụ AI, vì các nhà cung cấp có thể phát hành các bản vá cho các lỗ hổng bảo mật mới.
Theo dõi trên X