Go Micro - Go के लिए एजेंट हार्नेस
(go-micro.dev)- एजेंट/सर्विस/वर्कफ़्लो को एक ही runtime पर बनाने के लिए Go framework
- tools, memory, guardrails, trigger workflows, dependent services, और दूसरे agents द्वारा access किए जाने वाले protocols तक को एक ही harness में बाँधता है
- सर्विस के सभी endpoints अपने-आप AI द्वारा callable tools में बदल जाते हैं, और MCP व A2A protocols के ज़रिए बाहर से access किए जा सकते हैं
- prompt-आधारित service creation
- जब इच्छित system को prompt के रूप में इनपुट किया जाता है, तो AI architecture design करने के बाद handler code generate/compile/run करता है
- बातचीत के दौरान ज़रूरत पड़ने पर services को तुरंत अतिरिक्त रूप से बनाया भी जा सकता है (उदाहरण: "shipping tracking चाहिए" → shipping service अपने-आप generate)
- generated code को सीधे modify करने पर भी दोबारा run करते समय बदलाव सुरक्षित रहते हैं
- सभी agents में
plan/delegateये दो tools डिफ़ॉल्ट रूप से built-in हैं- multi-step tasks को क्रमबद्ध plan के रूप में रिकॉर्ड किया जाता है
- subtask को दूसरे agents को delegate किया जाता है: अगर पहले से registered agent हो तो RPC के ज़रिए सौंपा जाता है, नहीं तो isolated sub-agent बनाया जाता है
- durable workflows: checkpoint किए गए flow steps crash के बाद भी रुके हुए बिंदु से resume होते हैं; ज्ञात paths के लिए flow, और dynamic paths के लिए agent dispatch
- store-आधारित persistent memory डिफ़ॉल्ट रूप से उपलब्ध है: restart के बाद भी काम जारी रहता है;
AgentCompactMemoryसे पुरानी बातचीत को summary में compress किया जाता है, हाल की बातचीत को मूल रूप में रखा जाता है, और ज़रूरत पड़ने पर archived बातचीत वापस लाई जाती है - guardrails execution points पर स्थित हैं:
MaxSteps(गिनती सीमा),LoopLimit(बिना प्रगति वाले दोहराव को रोकना),ApproveTool(मानव approval हस्तक्षेप) - सभी abstractions Go interfaces हैं: registry (mDNS→Consul→etcd), broker (NATS/RabbitMQ), store (File/Postgres/NATS KV) आदि को code बदले बिना बदला जा सकता है
- 7 LLM providers supported हैं (Anthropic, OpenAI, Gemini, Groq, Mistral, Together, Atlas Cloud), import की एक लाइन से बदला जा सकता है
- CLI की एक command से hot reload (
micro run), production build (micro build), और Docker के बिना SSH+systemd deployment (micro deploy user@server) - Apache 2.0 license
1 टिप्पणियां
मैंने इसे v4 के समय इस्तेमाल करके देखा था, और यह अब पहले ही v6 हो गया!