// بيئة تطوير الوكلاء
Antigravity
حيث يخطِّط وكلاؤك ويحرِّرون ويتحقَّقون.
لمستخدمي Antigravity
Antigravity بيئة تطوير تُعطي الأولوية للوكلاء: يخطِّط الوكلاء ويحرِّرون عبر المحرِّر والطرفية والمتصفح. في مستودع أحادي حقيقي، ما زالوا يحتاجون إلى خريطة توضّح أي ملف يهم. تفهرس Maguyva قاعدة الكود لديك وتعيدها عبر MCP (دلاليًا، وAST، ورسم بيانيًا، ونصيًا)، لذا يعيد سؤال «أين تحدث المصادقة» تدفق المصادقة الفعلي، لا سبع نسخ اختبارية وهمية.
خطة Free: 3 مستودعات, حتى 50 ألف سطر مُفهرَس من المستودع، بلا بطاقة.
Antigravity تشغِّل الوكيل. Maguyva تخبره بالملف الذي يجب أن يمسّه.أربع قطع. لكل واحدة مهمتها.
// بيئة تطوير الوكلاء
حيث يخطِّط وكلاؤك ويحرِّرون ويتحقَّقون.
// السياق اليدوي
السياق اليدوي يفوز، إلى أن يكبر المستودع.
// قاعدة الكود
حقائق تلقائية عن قاعدة الكود عبر MCP.
// من يدفع
الوكلاء لا يدفعون مقابل مقاعد. اطّلع على الأسعار
بيئة تطوير الوكلاء ليست هي المشكلة. مدير الوكلاء (Agent Manager)، والتنفيذ عبر أسطح متعدّدة، وملفات القواعد كلها ممتازة، وأنت بالفعل تستخدمها من أجل:
@ لسحب ملف محدَّد إلى السياق.واصل فعل ذلك. لا شيء منه يختفي.
لكن في مستودع أحادي حقيقي (TypeScript بتبعيات مساحة العمل، وخدمات Python، وحزم مختلطة) ينهار سياق الوكيل بمجرد أن يخرج الملف المعني عن رادار الوكيل بالفعل.
أربعة إصلاحات يدوية، مقترنة بنمط تعطّلها. اليسار = ما تفعله اليوم. اليمين = أين يتعطّل.
// the fix
تُشير بـ@ إلى الملفات الثلاثة التي تظن أنها مهمة. يحرِّر الوكيل بدقة داخلها.
// where it breaks
يعمل هذا حين تعرف مسبقًا أي الملفات معنيّة. الوكيل المستقل يحتاج إلى الملفات التي لم تكن تعرف أن تشير إليها.
// the fix
تلصق 200 سطر من حزمة أخرى في الوكيل لتمنحه سياقًا كافيًا.
// where it breaks
المقتطف الذي ألصقته الساعة 9 صباحًا لا يعكس عملية rebase التي أنجزها زميلك الساعة 11 صباحًا. الوكيل يحرِّر على نسخة وهمية من الحزمة.
// the fix
تكتب ملف قواعد للوكيل أو وثيقة معمارية بصيغة markdown. تكون صحيحة اليوم.
// where it breaks
أي شيء تكتبه يدويًا ينحرف عن الواقع. الكود هو مصدر الحقيقة. وثيقة تشرح طبقة قائمة الانتظار تكون صحيحة لأسبوع، ثم خاطئة إلى الأبد.
// the fix
تضيف قواعد للوكيل للتسمية والـlint وأوامر البناء. ممتاز للسلوك.
// where it breaks
القواعد هي المكان الصحيح لـ“شغِّل دائمًا pnpm tsc -b قبل الالتزامات”. إنها ليست فهرسًا قابلًا للاستعلام عن كل رمز وملف وموقع استدعاء في مستودعك الأحادي.
ليست بديلًا عن Antigravity. طبقة سياق المستودع التي تتصل بدعم MCP فيها.
Antigravity تقرِّر ما الذي سيُعدَّل.
Maguyva تخبر الوكيل بما يمسّه التعديل.
عابر للحزم، وعابر للغات. مؤسَّس على الرسم البياني الفعلي للاستدعاءات، لا على grep الوكيل.
// workflow 01
agent> أين تحدث المصادقة في هذا المستودع الأحادي؟ graph::query("authentication flow") packages/web/src/auth/session.ts:42 middleware packages/api/src/auth/jwt.ts:88 token verify packages/shared/src/auth/types.ts:12 AuthContext packages/admin/src/auth/admin-only.ts:31 rbac gate → 4 نقاط دخول عبر 4 حزم، مرتَّبة حسب كثافة مواقع الاستدعاء. [exit 0]
لم تُشِر إلى ملف. لم تلصق مقتطفًا. لدى الوكيل الملفات الأربعة المهمة، بالترتيب الصحيح، ويمكنه إجراء تعديل مؤسَّس.
// workflow 02
agent> كيف تتعامل normalizePhoneNumber مع E.164؟ semantic::query("normalize phone E.164") packages/shared/util/phone.ts:88 normalizePhoneNumber() ← التنفيذ الحقيقي packages/api/test/phone.spec.ts:14 jest.mock(...) ← بديل اختباري [exit 0]
الأسماء تكذب. المحاكيات تحجب الكود الحقيقي. تُرتِّب Maguyva التنفيذ الحقيقي فوق محاكي الاختبار، عبر كل حزمة.
// workflow 03
agent> ما الذي يستدعي QueueDispatcher.publish عبر المستودع الأحادي؟ graph::callers(QueueDispatcher.publish) 3 في packages/billing/* 1 في packages/audit/* 1 في packages/notifications/* 1 في services/python-worker/* ← عابر للغات عبر بديل gRPC [exit 0]
عابر للحزم، وعابر للغات عندما يكون لديك مستودع متعدد اللغات، تظهر مواقع الاستدعاء ضمن السياق. الوكيل المستقل يحصل على نطاق التأثير قبل أن يعدِّل، لا بعد أن يتحوّل CI إلى الأحمر.
ثلاث خطوات. خطة Free: 3 مستودعات, حتى 50 ألف سطر مُفهرَس من المستودع، بلا بطاقة.
// step 01
اختر المستودع الأحادي الذي شعرت فيه بأكبر ألم في السياق.
// step 02
// ~/.gemini/antigravity/mcp_config.json
{
"mcpServers": {
"maguyva": {
"serverUrl": "https://maguyva.tools/mcp",
"headers": {
"Authorization": "Bearer <your-key>"
}
}
}
}// step 03
لا توجِّه الوكيل نحو شركتك بأكملها. ابدأ بمستودع واحد وسؤال واحد يمكن التحقق منه، مثل «ما الذي يستدعي formatInvoice عبر الحزم؟»