Maguyva 對 JavaScript 的支援:為混合執行環境儲存庫打造的 AI 搜尋
當儲存庫混雜了 CommonJS、ESM、工作腳本、測試與較舊的應用程式碼時,這特別有用。
副檔名
.cjs, .js, .mjs, .spec.js, 還有 2 個
TypeScript 正是許多團隊期待 AI 協助重構終於能讓人放心的語言。型別系統確實有幫助,但它並沒有解決真正的問題:共用套件、DTO、自動生成的 client、React 元件、測試與應用程式碼,全都在一個大型儲存庫中拉扯著同樣的名稱。
對 TypeScript 而言,標準要比「它理解語法」高得多。代理人需要在編輯一個共用型別、hook 或 client 之前,一路追蹤合約,從定義到實作,再到影響範圍。
Maguyva 會橫跨 .ts、.mts、.cts,以及測試與 story 檔案周邊常見的 TypeScript 檔案變體,擷取類別、方法、介面與型別別名。成員前綴會被正規化,但類別限定的識別碼會被保留下來 — 這在一個儲存庫同時存在裸露的輔助函式名稱,以及最終片段相同的類別範圍方法時,特別有幫助。
JSX 會被視為真正的結構訊號,而不是零散的標記,符號預期也會明確跳過大量的測試、story 與設定路徑。這在 Monorepo 中格外重要,否則代理人會把太多時間花在重新發現鷹架程式碼上,而不是真正的實作內容。
通常三種起始模式就已足夠:
find_symbol。dependency_search。structural_search。對於像「追蹤結帳送出流程」這類概念性問題,get_task_context 通常會是比原始搜尋更好的第一步。
這個頁面最適合 TypeScript 作為多個套件協調層的 Web 與平台 Monorepo。如果你的儲存庫仍包含大量較舊的 JS,可以參閱 JavaScript 指南。如果你真正想問的是「代理人能不能同時掌握應用程式碼與基礎架構情境?」,可以將這個頁面與 Terraform 搭配閱讀。
最適合的情境
代理工作流程
引擎細節
實用的 MCP 進入點
find_symbol
當你知道要檢查的共用介面、型別別名、hook 或服務時,從這裡開始。
dependency_search
在變更共用的 DTO 或用戶端之前使用,取得跨套件的真實影響範圍。
structural_search
當你需要的是模式,而不是字串比對時,使用 AST 層級的搜尋,例如重複出現的元件或方法結構。
相關指南