# Antigravity vận hành các agent. Maguyva cho chúng bản đồ.

Canonical source: https://maguyva.ai/vi/for-antigravity

License: text under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/); code samples under [MIT-0](https://opensource.org/license/mit-0); the Maguyva name, logos, brand assets and other code are not covered. Details: [maguyva.ai/license](https://maguyva.ai/license).

Antigravity là một IDE ưu tiên agent: các agent lập kế hoạch và chỉnh sửa trên trình soạn thảo, terminal, và trình duyệt. Trên một monorepo thực thụ, chúng vẫn cần một bản đồ để biết tệp nào quan trọng. Maguyva lập chỉ mục codebase của bạn và trả về qua MCP (ngữ nghĩa, AST, đồ thị, và văn bản), để câu hỏi “auth xảy ra ở đâu” trả về đúng luồng auth thực tế, chứ không phải bảy test stub.

> Antigravity vận hành agent. Maguyva cho nó biết nên chạm vào tệp nào.

## Mỗi lớp làm gì

Bốn mảnh ghép. Mỗi mảnh có một nhiệm vụ.

### Antigravity

Nơi các agent của bạn lập kế hoạch, chỉnh sửa, và xác minh.

### @ mentions + rules

Ngữ cảnh thủ công vẫn ổn, cho đến khi repo trở nên lớn.

### Maguyva

Tự động cung cấp dữ kiện về codebase qua MCP.

### Theo workspace, không theo người dùng

Không tính phí riêng cho từng agent. [Xem bảng giá](https://maguyva.ai/vi/pricing)

## Antigravity vận hành các agent. Cứ để nó làm vậy.

Vấn đề không nằm ở agent IDE. Agent Manager, thực thi trên nhiều giao diện, và các tệp rules đều xuất sắc, và bạn đã dùng chúng cho:

- Lập kế hoạch và chạy các agent trên trình soạn thảo, terminal, và trình duyệt.
- Chỉnh sửa đa tệp khi thay đổi mang tính cục bộ.
- Rules của agent cho quy ước repo và các rào chắn phong cách viết mã.
- `@`-mentions để đưa một tệp cụ thể vào ngữ cảnh.

Cứ tiếp tục làm vậy. Không có gì trong số đó biến mất cả.

Nhưng trong một monorepo thực thụ (TypeScript với các phụ thuộc workspace, dịch vụ Python, các package hỗn hợp) ngữ cảnh của agent sẽ vỡ ngay khi tệp liên quan chưa nằm trong tầm nhìn của agent.

## Những cách khắc phục thủ công bạn đã thử, và chúng vỡ ở đâu

Bốn cách khắc phục thủ công đi kèm với kiểu thất bại của chúng. Trái = điều bạn làm hôm nay. Phải = nơi nó vỡ.

### // nhắc đến các tệp

Bạn `@`-mention ba tệp mà bạn nghĩ là quan trọng. Agent chỉnh sửa gọn gàng bên trong chúng.

### // nhắc đến chỉ là phỏng đoán

Nó chỉ hiệu quả khi bạn đã biết những tệp nào liên quan. Một agent tự động cần những tệp mà bạn không biết để nhắc tới.

### // dán đoạn mã

Bạn dán 200 dòng từ một package khác vào agent để cho nó đủ ngữ cảnh.

### // mã dán vào sẽ trở nên lỗi thời

Đoạn mã bạn dán lúc 9 giờ sáng không phản ánh lần rebase mà đồng đội của bạn đã đẩy lên lúc 11 giờ. Agent đang chỉnh sửa dựa trên một phiên bản ma của package đó.

### // viết tài liệu ngữ cảnh

Bạn viết một tệp rules của agent hoặc một tài liệu markdown về kiến trúc. Nó đúng ở thời điểm hôm nay.

### // tài liệu trôi nhanh hơn mã

Bất cứ thứ gì bạn viết tay đều sẽ trôi dần. Mã nguồn mới là nguồn sự thật. Một tài liệu giải thích lớp hàng đợi đúng trong một tuần, rồi sai mãi mãi.

### // giữ các tệp rules

Bạn thêm rules của agent cho quy ước đặt tên, lint, và các lệnh build. Rất tốt cho hành vi.

### // rules ≠ chỉ mục

Rules là nơi đúng để ghi “luôn chạy pnpm tsc -b trước khi commit.” Chúng không phải là một chỉ mục có thể truy vấn của mọi ký hiệu, tệp, và call-site trong monorepo của bạn.

## Maguyva là lớp nằm bên dưới

Không phải để thay thế Antigravity. Đây là lớp ngữ cảnh repo gắn vào khả năng hỗ trợ MCP của nó.

- **Ngữ nghĩa + AST + đồ thị + văn bản**: tìm kiếm theo ý nghĩa, cấu trúc, phụ thuộc, hoặc văn bản chính xác. Mỗi kết quả trả về đường dẫn tệp và số dòng.
- **Xuyên package theo mặc định**: call-site và importer trên mọi package trong monorepo, không chỉ package mà agent đang mở.
- **Nhận biết nhánh**: Maguyva thấy đúng phiên bản mã mà agent đang chỉnh sửa.
- **Được xây dựng cho tính tự động**: một agent lập kế hoạch nhiều chỉnh sửa cần biết trước phạm vi ảnh hưởng, không phải sau khi CI báo đỏ.

> Antigravity quyết định chỉnh sửa gì.
> Maguyva cho agent biết *chỉnh sửa đó chạm vào những gì.*

## Ba quy trình làm việc trong monorepo

Xuyên package, xuyên ngôn ngữ. Có căn cứ vào đồ thị lệnh gọi thực tế, không phải grep của agent.

### 01. Tìm luồng auth xuyên package, mà không cần nhắc đến gì cả

```text
agent> xác thực xảy ra ở đâu trong monorepo này?

graph::query("authentication flow")
  packages/web/src/auth/session.ts:42       middleware
  packages/api/src/auth/jwt.ts:88           xác thực token
  packages/shared/src/auth/types.ts:12      AuthContext
  packages/admin/src/auth/admin-only.ts:31  kiểm tra quyền rbac

→ 4 điểm vào trên 4 package, xếp hạng theo mật độ call-site.
[exit 0]
```

Bạn không nhắc đến tệp nào. Bạn không dán đoạn mã nào. Agent có sẵn bốn tệp quan trọng, đúng thứ tự xếp hạng, và có thể thực hiện một chỉnh sửa có căn cứ.

### 02. Tìm cài đặt thực sự, chứ không phải test stub

```text
agent> normalizePhoneNumber xử lý E.164 như thế nào?

semantic::query("normalize phone E.164")
  packages/shared/util/phone.ts:88     normalizePhoneNumber()  ← cài đặt thực
  packages/api/test/phone.spec.ts:14   jest.mock(...)          ← stub
[exit 0]
```

Tên gọi có thể lừa dối. Mock che khuất mã thực. Maguyva xếp hạng cài đặt thực cao hơn test mock, trên mọi package.

### 03. Kiểm tra phạm vi ảnh hưởng trước khi agent tái cấu trúc

```text
agent> điều gì gọi QueueDispatcher.publish trên toàn monorepo?

graph::callers(QueueDispatcher.publish)
  3 in packages/billing/*
  1 in packages/audit/*
  1 in packages/notifications/*
  1 in services/python-worker/*  ← xuyên ngôn ngữ qua gRPC stub
[exit 0]
```

Xuyên package, và xuyên ngôn ngữ khi bạn có một repo đa ngôn ngữ, call-site hiện ra ngay trong dòng kết quả. Một agent tự động biết phạm vi ảnh hưởng trước khi chỉnh sửa, không phải sau khi CI báo đỏ.

## Cài đặt với Antigravity

Ba bước. Gói Free: 3 repository, Tối đa 50K dòng repo đã index, không cần thẻ tín dụng.

### 01. Lập chỉ mục một repo tại maguyva.ai

Chọn monorepo mà bạn cảm thấy đau đầu nhất về ngữ cảnh.

### 02. Thêm Maguyva làm MCP server trong Antigravity

`~/.gemini/config/mcp_config.json`

```json
{
  "mcpServers": {
    "maguyva": {
      "serverUrl": "https://maguyva.tools/mcp",
      "headers": {
        "Authorization": "Bearer mgv_xxxx"
      }
    }
  }
}
```

### 03. Đặt một câu hỏi mà bạn đã biết câu trả lời

Đừng trỏ agent vào toàn bộ công ty của bạn. Hãy bắt đầu với một repo và một câu hỏi có thể kiểm chứng, như “điều gì gọi `formatInvoice` xuyên package?”

## Lập chỉ mục một repo mà bạn đã biết rõ.

Kiểm tra một câu hỏi mà bạn có thể xác minh câu trả lời.
