AI News HubLIVE
站內改寫1 分鐘閱讀

Show HN:保持所有微服務一致性並進行批次更改

一名開發者構建了一個MCP伺服器,用於索引所有倉庫、支援自然語言和結構化搜尋,並能自動進行批次PR建立和狀態跟蹤,解決了手動管理30多個倉庫的繁瑣問題。

來源Hacker News AI作者: danielbedrood

在管理多個微服務時,保持所有倉庫的一致性是一個常見挑戰。一位開發者分享了他為解決這一問題而構建的MCP(Model Context Protocol)伺服器。該伺服器透過雙重索引機制,自動捕獲程式碼庫和每個倉庫的詳細資訊。程式碼庫級別索引透過執行具有適當上下文的代理CLI,提取每個倉庫的功能、它們之間的依賴關係以及整個系統的架構。倉庫級別索引則基於程式碼庫上下文,提取每個倉庫的邏輯資訊、使用的庫和依賴關係,用於後續的詞彙搜尋。

在搜尋方面,該工具支援兩種模式:自然語言搜尋和結構化搜尋。自然語言搜尋根據程式碼庫和特定倉庫的上下文回答查詢,而結構化搜尋則基於實際的依賴關係返回結果,例如“查詢用Python編寫、具有requirements.txt並使用FastAPI的倉庫”。這使得開發者能夠快速定位受影響的倉庫。

批次更改功能是其核心亮點。使用者只需輸入類似“查詢我的Python倉庫並將庫X從vY更新到vZ”的指令,工具就會自動搜尋受影響的倉庫,克隆它們,使用已經持久化的上下文執行CLI代理,建立並準備拉取請求(PR),最後提供一個結果報告。這大大簡化了跨30多個倉庫的更新流程。

技術棧方面,該工具使用MongoDB儲存倉庫樹、依賴關係和工作流資訊,Redis儲存使用者會話以跟蹤正在進行的批處理作業,Claude CLI或Devin作為主要引擎,Docker Compose用於構建,Traefik用於路由。開發者已審查所有程式碼,並提供了演示影片連結:https://infraas.ai/。