// Copyright (c) Microsoft Corporation. All rights reserved. // IAgent.cs namespace Microsoft.AutoGen.Contracts.Python; public interface IAgent : ISaveState { public AgentId Id { get; } public AgentMetadata Metadata { get; } public ValueTask OnMessageAsync(object message, MessageContext messageContext); // TODO: How do we express this properly in .NET? } public interface IHostableAgent : IAgent { public ValueTask CloseAsync(); }