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/。