using System;


namespace AIRuntime.Runtime.Agents
{
    /// <summary>
    /// Runtime entry point for executing agents.
    ///
    /// Phase 5:
    /// Identity management only.
    ///
    /// Future:
    /// Provider selection,
    /// memory,
    /// planning,
    /// task execution.
    /// </summary>
    public sealed class AgentRuntime
    {
        private readonly AgentRegistry _registry;


        public AgentRuntime(
            AgentRegistry registry)
        {
            _registry =
                registry ??
                throw new ArgumentNullException(
                    nameof(registry));
        }


        public AgentDefinition GetAgent(
            string agentId)
        {
            return _registry.Get(
                agentId);
        }


        public bool HasAgent(
            string agentId)
        {
            return _registry.Contains(
                agentId);
        }
    }
}