// editor
Devin Desktop
Tempat anda dan Devin Local betul-betul bekerja.
Untuk pengguna Devin Desktop
Devin Desktop (IDE Windsurf) itu editornya dan Devin Local ejennya. Dalam monorepo, ejen masih perlukan peta fail mana yang penting. Maguyva indeks pangkalan kod anda dan sampaikannya semula melalui MCP (semantik, AST, graf, dan teks), supaya “di mana auth berlaku” pulangkan aliran auth sebenar, bukan tujuh stub ujian.
Peringkat Free: 3 repositori, Sehingga 50K baris repo terindeks, tanpa kad.
Devin Desktop sunting apa yang anda tuding. Maguyva beritahu Devin Local fail mana nak dituding. Empat bahagian. Setiap satu ada kerja.
// editor
Tempat anda dan Devin Local betul-betul bekerja.
// konteks manual
Konteks manual menang, sehingga repo jadi besar.
// pangkalan kod
Fakta pangkalan kod automatik melalui MCP.
// siapa bayar
Tiada caj per pengguna untuk ejen. Lihat harga
IDE bukan masalahnya. Devin Local, ciri tab completion, suntingan pelbagai fail, dan .devin/rules/ memang hebat, dan anda dah pun guna untuk:
.devin/rules/ untuk konvensyen repo dan sekatan gaya.@ untuk tarik fail tertentu ke dalam konteks.Teruskan buat begitu. Semua itu tak hilang.
Tapi dalam monorepo sebenar (TypeScript dengan dependensi workspace, servis Python, pakej bercampur) konteks ejen pecah sebaik saja fail yang berkaitan belum ada dalam radar Devin Local.
Empat pembetulan manual dipadankan dengan mod kegagalannya. Kiri = apa yang anda buat sekarang. Kanan = di mana ia pecah.
// the fix
Anda sebut @ tiga fail yang anda rasa penting. Devin Local sunting dengan bersih di dalamnya.
// where it breaks
Ia berfungsi bila anda dah tahu fail mana yang terlibat. Tujuan sebenar alat konteks ialah untuk tonjolkan fail yang anda tak tahu nak sebut.
// the fix
Anda tampal 200 baris daripada pakej lain ke dalam Devin Local untuk bagi ia konteks yang cukup.
// where it breaks
Snippet yang anda tampal pukul 9 pagi tak cerminkan rebase yang rakan sepasukan anda landing pukul 11 pagi. Devin Local sedang sunting berdasarkan versi hantu pakej itu.
// the fix
Anda tulis fail .devin/rules/ atau markdown seni bina. Betul untuk hari ini.
// where it breaks
Apa jua yang anda tulis dengan tangan akan menyimpang. Kod itulah sumber kebenaran. Dokumen yang terangkan lapisan queue betul untuk seminggu, kemudian salah selamanya.
// the fix
Anda tambah .devin/rules/ untuk penamaan, lint, dan arahan binaan. Bagus untuk kelakuan.
// where it breaks
.devin/rules/ ialah tempat yang betul untuk “sentiasa jalankan pnpm tsc -b sebelum commit.” Ia bukan indeks yang boleh ditanya untuk setiap simbol, fail, dan tapak panggilan dalam monorepo anda.
Bukan pengganti Devin Desktop. Lapisan konteks repo yang bergantung pada sokongan MCP Devin Local.
.devin/rules/ terus buat kerjanya. Sebutan @ terus buat kerjanya. Maguyva isi jurang yang mereka tak isi. Devin Local sunting fail yang anda tuding.
Maguyva beritahu ejen fail mana nak dituding.
Merentas pakej, merentas bahasa. Terbukti berdasarkan graf panggilan sebenar, bukan grep Devin Local.
// workflow 01
devin> di mana pengesahan berlaku dalam monorepo ini? 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 titik masuk merentasi 4 pakej, disusun ikut kepadatan tapak panggilan. [exit 0]
Anda tak sebut apa-apa fail. Anda tak tampal snippet. Devin Local ada empat fail yang penting, dalam susunan yang betul, dan boleh buat suntingan berasaskan bukti.
// workflow 02
devin> macam mana normalizePhoneNumber uruskan E.164? semantic::query("normalize phone E.164") packages/shared/util/phone.ts:88 normalizePhoneNumber() ← impl sebenar packages/api/test/phone.spec.ts:14 jest.mock(...) ← stub [exit 0]
Nama boleh menipu. Mock membayangi kod sebenar. Maguyva susun implementasi sebenar di atas mock ujian, merentasi setiap pakej.
// workflow 03
devin> apa yang panggil QueueDispatcher.publish merentasi monorepo? graph::callers(QueueDispatcher.publish) 3 dalam packages/billing/* 1 dalam packages/audit/* 1 dalam packages/notifications/* 1 dalam services/python-worker/* ← merentas bahasa melalui stub gRPC [exit 0]
Merentas pakej, dan merentas bahasa bila repo anda poliglot, tapak panggilan tertonjol terus. Diff itu berasaskan pengimport sebenar, bukan grep Devin Local.
Tiga langkah. Peringkat Free: 3 repositori, Sehingga 50K baris repo terindeks, tanpa kad.
// step 01
Pilih monorepo yang paling menyusahkan anda kerana kekurangan konteks.
// step 02
~/.config/devin/mcp_config.json
{
"mcpServers": {
"maguyva": {
"url": "https://maguyva.tools/mcp",
"headers": {
"Authorization": "Bearer ${env:MAGUYVA_API_KEY}"
}
}
}
} // step 03
Jangan mula dengan seluruh syarikat anda. Mula dengan satu repo dan satu soalan yang boleh disahkan, seperti “apa yang panggil formatInvoice merentasi pakej?”