एजेंट रजिस्ट्री — खोज, पंजीकरण और दूरस्थ आह्वान

एजेंट रजिस्ट्री Gemini Enterprise Agent Platform का Govern स्तंभ है: एजेंटों, MCP सर्वरों और एंडपॉइंट्स की परियोजना-सीमित सूची। ADK-Rust तीन तरीकों से भाग लेता है।

क्षमतासुविधाCrate
पंजीकृत agents (AgentRegistryClient, AgentSearchTool) को खोजें और हल करेंvertex-agent-registryadk-tool
स्वयं-होस्ट किए गए agents, MCP servers और CLI से endpoints पंजीकृत करेंvertex-agent-registryadk-cli
पंजीकृत Agent Engine को सब-एजेंट के रूप में Invoke करें (RemoteReasoningEngineAgent)vertex-remote-engineadk-server

नोट: ये सुविधाएँ adk-server पर स्थानीय YAML agent-registry सुविधा से असंबंधित हैं, और Agent Registry (agents/MCP servers/endpoints) Skill Registry (SKILL.md packages — docs/official_docs/skills/skill-registry.md देखें) से अलग प्लेटफ़ॉर्म सेवा है।

स्वचालित बनाम मैन्युअल पंजीकरण

Agent Engine परिनियोजन स्वयं को पंजीकृत करते हैं: कोई इंजन बनाने पर (उदाहरण के लिए, adk-rust deploy agent-engine के साथ) वह रजिस्ट्री में जुड़ जाता है और उसकी प्रविष्टि का जीवनचक्र समकालिक बना रहता है। उसे दोबारा पंजीकृत न करें — मैन्युअल प्रविष्टि उसे अलग URN नेमस्पेस के अंतर्गत डुप्लिकेट कर देगी।

बाकी सभी चीज़ों के लिए मैन्युअल पंजीकरण उपलब्ध है, और CLI में इसी को शामिल किया गया है:

# A self-hosted adk-server agent, described by its A2A agent card
adk-rust registry register-agent --service-id my-agent --card agent-card.json

# An external MCP server (you supply the tools/list payload; no introspection)
adk-rust registry register-mcp --service-id my-mcp --tool-spec tools-list.json \
  --url https://mcp.example.com/rpc

# A bare governed endpoint
adk-rust registry register-endpoint --service-id my-api --url https://api.example.com/v1

# Discovery
adk-rust registry search "travel planner" --type agent

सभी कमांड --project/--location लेते हैं (और इनके उपलब्ध न होने पर GOOGLE_CLOUD_PROJECT/GOOGLE_CLOUD_LOCATION का उपयोग करते हैं) और इडेम्पोटेंट हैं: किसी मौजूदा सेवा ID को दोबारा पंजीकृत करने पर केवल बदले हुए फ़ील्ड पैच किए जाते हैं और कुछ भी न बदला हो तो कोई लेखन नहीं किया जाता। मैन्युअल प्रविष्टियाँ जीवनचक्र के साथ समकालिक नहीं होतीं — उन्हें अपडेट करना या हटाना आपकी ज़िम्मेदारी बनी रहती है। us/eu मल्टी-रीजन मैन्युअल पंजीकरण का समर्थन नहीं करते; किसी रीजन या global का उपयोग करें।

किसी एजेंट से एजेंट की खोज

AgentSearchTool एक LlmAgent रजिस्ट्री खोज को सामान्य, केवल-पठन टूल के रूप में उपलब्ध कराता है:

use adk_tool::{AgentRegistryClient, AgentRegistryConfig, AgentSearchTool};
use std::sync::Arc;

# fn build() -> adk_core::Result<()> {
let registry = AgentRegistryClient::new_with_adc(
    AgentRegistryConfig::new("my-project", "us-central1"),
)?;
let search_tool = Arc::new(AgentSearchTool::new(Arc::new(registry)));
# let _ = search_tool;
# Ok(())
# }

यह टूल एजेंटों, MCP सर्वरों या एंडपॉइंट पर {urn, displayName, description, skills, endpoint} सारांश लौटाता है।

परिनियोजित इंजन को कार्य सौंपना

RemoteReasoningEngineAgent किसी भी परिनियोजित Agent Engine को एक सामान्य सब-एजेंट बना देता है — यह टर्न को reasoningEngines:streamQuery के माध्यम से अग्रेषित करता है और रिमोट इवेंट को ADK इवेंट के रूप में प्रदान करता है:

use adk_server::agent_engine::remote::RemoteReasoningEngineAgent;

# async fn build() -> adk_core::Result<()> {
let remote = RemoteReasoningEngineAgent::builder("specialist")
    .resource_name("projects/my-project/locations/us-central1/reasoningEngines/4242")
    .build()
    .await?;
# let _ = remote;
# Ok(())
# }

इंजनों को रजिस्ट्री URN (.urn(...) और .registry(...)) द्वारा भी संबोधित किया जा सकता है; संसाधन नाम प्रविष्टि के रनटाइम संदर्भ से हल किया जाता है। डिफ़ॉल्ट क्लास विधि streaming_agent_run_with_events है, जिसमें गैर-ADK इंजनों के लिए stream_query का एक बार का फ़ॉलबैक है।

पूर्ण पैटर्न के लिए examples/agent_orchestrator देखें — एक ही ऑर्केस्ट्रेटर में रजिस्ट्री खोज और रिमोट प्रत्यायोजन।

सब कुछ सक्षम करना

[dependencies]
adk-rust = { version = "2.1.0", features = ["minimal", "gemini-agent-platform"] }

gemini-agent-platform मेटा-फ़ीचर में vertex-agent-registry और vertex-remote-engine के साथ-साथ हर अन्य प्लेटफ़ॉर्म एकीकरण भी शामिल है।

एजेंट रजिस्ट्री — खोज, पंजीकरण और दूरस्थ आह्वान - ADK-Rust दस्तावेज़ीकरण | ADK-Rust