MentorTeamAttribute class
The MentorTeamAttribute class of Novior.MentorAgent.Attributes: Level 3 — Decorates a class to define a collaborative Group Chat team. Team members are…
On this page
Level 3 — Decorates a class to define a collaborative Group Chat team. Team members are defined via properties decorated with TeamMemberAttribute. The termination condition is defined via a method decorated with TeamTerminationConditionAttribute. After approval, the team can hand off to L2 agents via HandoffTo.
[MentorTeam(
Name = "BusinessAnalysisTeam",
Description = "Business analysis with real data and handoff for execution",
HandoffTo = ["OrderAgent", "CustomerAgent"])]
public class BusinessAnalysisTeam
{
[TeamMember(
Role = "DataAnalyst",
Tools = [typeof(ReportTools), typeof(OrderTools)],
Instructions = "Analyze the data...")]
public object? Analyst { get; set; }
[TeamMember(Role = "Approver", Instructions = "Give the verdict...")]
public object? Approver { get; set; }
[TeamTerminationCondition]
public bool ShouldTerminate(string lastMessage, string lastSpeaker)
=> lastSpeaker == "Approver" && lastMessage.Contains("APPROVED");
}Definition
Section titled “Definition”Namespace: Novior.MentorAgent.Attributes. Package: Novior.MentorAgent.
public sealed class MentorTeamAttribute : Attribute
dotnet add package Novior.MentorAgentConstructors
Section titled “Constructors”public MentorTeamAttribute()
Properties
Section titled “Properties”Description
Section titled “Description”public required string Description { get; init; }
Collective description of the team. Used by the Main Coordinator to decide when to activate it.
HandoffTo
Section titled “HandoffTo”public string[] HandoffTo { get; init; }
L2 agents to hand off to after team approval. After APPROVED the coordinator delegates execution to the specified agents. Same syntax as [MentorAgent(HandoffTo = [...])]. Example: HandoffTo = ["OrderAgent", "CustomerAgent"]
MaxIterations
Section titled “MaxIterations”public int MaxIterations { get; init; }
Maximum number of turns in the Group Chat before forced termination. Default: 10
public required string Name { get; init; }
The team name.
TriggerOn
Section titled “TriggerOn”public string[] TriggerOn { get; init; }
Keywords that trigger team activation.
