.NET API
AgentDescriptor
Tracon.Abstractions.dllA summary view of an agent listed in the catalog. It carries everything the user interface needs to draw the agent list, without having to build the agent. A source must not mutate a descriptor or its nested collections after returning it.
public sealed record AgentDescriptor : IEquatable<AgentDescriptor>- Inheritance
- object ← AgentDescriptor
- Implements
- IEquatable<AgentDescriptor>
- Inherited Members
- object.GetType(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
Constructors
Section titled “Constructors”AgentDescriptor()
Section titled “ AgentDescriptor()”public AgentDescriptor()Properties
Section titled “Properties”CallableAgentNames
Section titled “ CallableAgentNames”Gets the names of the other agents this agent may call.
public IReadOnlyList<string> CallableAgentNames { get; init; }Property Value
Section titled “Property Value”Remarks
Section titled “Remarks”Names only: the catalog lists who calls whom, and the call graph is built from the names. The version a call is pinned to is read from the definition (AgentDefinition.CallableAgents). An agent registered in code with a factory carries no declarative definition; the list is empty for such an agent. That means the graph can be incomplete, which is why the static cycle check is not enough on its own.
Description
Section titled “ Description”Gets the short description.
public string? Description { get; init; }Property Value
Section titled “Property Value”DisplayName
Section titled “ DisplayName”Gets the name shown in the user interface.
public string? DisplayName { get; init; }Property Value
Section titled “Property Value”ExtensionNames
Section titled “ ExtensionNames”Gets the names of the agent extensions this agent is compiled with, in call order.
public IReadOnlyList<string> ExtensionNames { get; init; }Property Value
Section titled “Property Value”Gets the bound model. It can be unknown for code agents.
public ModelBinding? Model { get; init; }Property Value
Section titled “Property Value”Gets the unique name of the agent.
public required string Name { get; init; }Property Value
Section titled “Property Value”Origin
Section titled “ Origin”Gets the origin of the definition.
public required AgentDefinitionOrigin Origin { get; init; }Property Value
Section titled “Property Value”SkillNames
Section titled “ SkillNames”Gets the names of the skills this agent may load at run time.
public IReadOnlyList<string> SkillNames { get; init; }Property Value
Section titled “Property Value”Skills
Section titled “ Skills”Gets how this agent uses its skills. The external-surface check reads it: an agent whose skill read approval is on cannot be exposed over A2A or MCP.
public SkillSettings? Skills { get; init; }Property Value
Section titled “Property Value”SourceName
Section titled “ SourceName”Gets the name of the source that supplies this agent, for example code
or database. Several sources can share the same AgentDescriptor.Origin value.
public required string SourceName { get; init; }Property Value
Section titled “Property Value”ToolNames
Section titled “ ToolNames”Gets the names of the tools this agent may use.
public IReadOnlyList<string> ToolNames { get; init; }Property Value
Section titled “Property Value”UpdatedAt
Section titled “ UpdatedAt”Gets the time of the last change (UTC).
public DateTimeOffset? UpdatedAt { get; init; }Property Value
Section titled “Property Value”UsesHarness
Section titled “ UsesHarness”Gets whether the harness capabilities are enabled.
public bool UsesHarness { get; init; }Property Value
Section titled “Property Value”Version
Section titled “ Version”Gets the definition version. It is always 1 for code agents.
public int Version { get; init; }Property Value
Section titled “Property Value”Workspace
Section titled “ Workspace”Gets the session workspace settings. The external-surface check reads them: an agent whose workspace can change a file, or asks for approval to read one, cannot be exposed over A2A or MCP.
public WorkspaceSettings? Workspace { get; init; }Property Value
Section titled “Property Value”Methods
Section titled “Methods”Equals(object?)
Section titled “ Equals(object?)”public override bool Equals(object? obj)Parameters
Section titled “Parameters”obj object?
Returns
Section titled “Returns”Equals(AgentDescriptor?)
Section titled “ Equals(AgentDescriptor?)”public bool Equals(AgentDescriptor? other)Parameters
Section titled “Parameters”other AgentDescriptor?
Returns
Section titled “Returns”GetHashCode()
Section titled “ GetHashCode()”public override int GetHashCode()Returns
Section titled “Returns”ToString()
Section titled “ ToString()”public override string ToString()Returns
Section titled “Returns”Operators
Section titled “Operators”operator ==(AgentDescriptor?, AgentDescriptor?)
Section titled “ operator ==(AgentDescriptor?, AgentDescriptor?)”public static bool operator ==(AgentDescriptor? left, AgentDescriptor? right)Parameters
Section titled “Parameters”left AgentDescriptor?
right AgentDescriptor?
Returns
Section titled “Returns”operator !=(AgentDescriptor?, AgentDescriptor?)
Section titled “ operator !=(AgentDescriptor?, AgentDescriptor?)”public static bool operator !=(AgentDescriptor? left, AgentDescriptor? right)Parameters
Section titled “Parameters”left AgentDescriptor?
right AgentDescriptor?