MentorAgent Docs
Menu

Questa pagina non è ancora tradotta in italiano: qui la trovi in inglese.

ReferencePackage: Novior.MentorAgent

Glossary

Short definitions of the terms these pages use, such as action, coordinator, specialist, confirmation, channel, MCP and A2A.

On this page

This page defines the words that the MentorAgent documentation uses. Each word has one meaning on every page.

Agent
A model with instructions and tools, run by Agent Framework. "The agent" is the one your application runs: the coordinator, with its specialists and teams.
Coordinator
The main agent. It receives every message from the user, calls your actions, specialists and teams, and writes the reply.
Specialist
An agent with its own instructions and tools. It is defined by a class with [MentorAgent] or by a YAML file. The coordinator hands requests to it.
Handoff
Passing a request from the coordinator to a specialist, through the route_to_specialist tool and a small router agent. The verb is "hand off".
Router
The small agent, with none of your tools, that chooses which specialist gets a handed-off request.
Team
A group of agents, defined by a class with [MentorTeam], that discuss a request in an Agent Framework group chat before the coordinator answers.
Team member
One agent of a team, defined by a [TeamMember] property with a role and instructions.
Remote agent
An agent on another host, listed in RemoteAgents. The coordinator reaches it over the Agent-to-Agent (A2A) protocol in the same way as a specialist.
Level 1, 2, 3
The three ways to give the coordinator work: actions (1), specialists (2) and teams (3).
[MentorAgent]
The attribute that marks a specialist. Without brackets, MentorAgent is the library.
Action
A public method of one of your services that MentorAgent offers to the model as a tool, because it has [Description] or [MentorAction].
Dependency injection (DI)
The ASP.NET Core container that creates your classes. MentorAgent gets the instance of an action's class from it.
Read-only action
An action that you declare as one that only reads, with ReadOnly on [MentorAction] or with IsReadOnlyAction. MentorAgent trusts your declaration. An action that needs confirmation is never read-only.
Tool
Anything the model can call during a turn: your actions, Model Context Protocol (MCP) tools, the methods of skills, team tools, and built-in tools such as route_to_specialist and navigate_to.
Tool name
The name the model sees: the method name in snake case, without a trailing Async. So CloseCaseAsync becomes close_case.
Required call
A tool call that the first model call of a turn must make. RequireLookupForRecordQuestions and RequireActionForChangeRequests ask for one when a classifier says that the message calls for it.
Core tools
The tools that tool filtering always sends: navigation, memory, handing off to specialists and teams, skills and UI actions.
Skill
Instructions the agent loads only when a request needs them: a class with [MentorSkill] or a SKILL.md file, turned on with EnableSkills.
Page context
The data that an interactive page gives the agent through IMentorPageContext, such as the record the user has selected.
UI action
An action that runs on the current page, registered by the page through IMentorPageContext.
Turn
One user message and everything the agent does to answer it, model calls and tool calls included.
Member turn
One time a team member speaks in the group chat. MaxIterations limits how many there are.
Role
A role claim of the signed-in user (ClaimTypes.Role), checked against the RequiredRoles of an action.
Confirmation
The question the user answers before an action runs. A [MentorAction] asks for it when it declares RequiresConfirmation = true. With the default RequireConfirmationForWrites, it also asks when it declares nothing. A tool matched by RequiresApproval asks too. Every declaration is in Every declaration, on every channel.
Confirmation box
The box the widget shows with the action, its arguments, and the Confirm and Cancel buttons. To write its text yourself, set ConfirmationMessage.
Approval
Agent Framework's name for a confirmation. These pages use it only in API names (RequiresApproval, AutoApprovalRules, /mentor/approve) and for the approvals that hosted MCP servers ask for.
HITL
Human in the loop: a person confirms an action before it runs. In MentorAgent this is the confirmation. The letters appear mostly in API names, such as HitlMode.
Gated
Said of an action or tool that has a rule: a required role, a confirmation, or both. "Role-gated" means it has RequiredRoles.
Withheld
Not offered to the caller: the action is missing from the tool list, and a call by its name runs nothing. The model of a turn is not offered an action that the user may not run, either: a call to it is refused.
Refused
The call reaches MentorAgent, the method does not run, and the model receives an error.
Action policy
A class of yours that implements IMentorActionPolicy. It decides whether a user may use an action, and whether one call may run: proceed, ask for a confirmation, or stop. See Action policies and observers.
Gate
The part of MentorAgent that decides on every call to one of your actions: the roles, the action policies, then the confirmation. An observer, IMentorActionObserver, receives each of its decisions, with a reason code.
AI disclosure
The notice that tells people they are talking to an AI assistant, and the machine-readable mark on every reply of the model, for article 50 of the EU AI Act. See ShowAiDisclosure.
Grounding rule
The rule MentorAgent adds to the prompts it writes: state only facts that a tool returned.
User
The person who writes to the agent: a signed-in user, or an anonymous user who has not signed in.
Caller
Whatever sends a request to an endpoint: a user's client, an MCP client or another agent.
Stop
The request that ends the current turn: the widget's Stop button, or POST /mentor/cancel. An action that the user confirmed but that has not started yet does not run. A task delegated to a remote agent is cancelled on that agent too.
Channel
The way a client reaches the agent: the widget, the SignalR hub, Server-Sent Events, the MCP server or the A2A server.
Host
The .NET application that calls AddMentorAgent() and runs the agent: an ASP.NET Core app, or a .NET MAUI app. These pages say "host" when they compare the app with the front end or with another host.
App
Your .NET application, in the steps of tutorials and how-to pages.
Backend
An ASP.NET Core host with Novior.MentorAgent.Server that serves clients running elsewhere: a WebAssembly client, a JavaScript front end or a mobile app.
Client
Whatever sends messages to the agent: the widget, your own UI, an MCP client or another agent.
Front end
The user interface: the widget, or your own UI in React, Angular, Vue or a mobile app.
Widget
The ready-made chat UI of MentorAgent, <ChatWidget />, for Blazor and .NET MAUI apps.
Onboarding tour
A short guided tour that the widget shows the first time a user opens it, when EnableOnboardingTour is on. MentorAgent writes its steps from your [MentorPage] pages and your actions, and serves them at GET /mentor/tour.
Circuit
The connection that Blazor Server keeps with each browser tab. Each circuit has its own coordinator and conversation.
Hub
The SignalR hub of Novior.MentorAgent.Server at /mentor-hub. A conversation lasts as long as the connection.
Server-Sent Events (SSE)
The /mentor/chat endpoint, which streams one answer as a series of events. Each request is a new conversation.
MCP (Model Context Protocol)
An open protocol that lets AI applications list and call tools. Your app is an MCP server at /mcp, and an MCP client of the servers in McpServers.
A2A (Agent-to-Agent protocol)
An open protocol that lets agents send tasks to each other. Your app is an A2A server at /a2a, and calls the remote agents in RemoteAgents.
Agent card
The JSON document at /.well-known/agent-card.json that describes your agent to other agents: name, description, A2A skills and endpoint.
A2A skill
An entry of the agent card that tells callers one thing your agent can do. MentorAgent lists one for each tool name that a turn can call, when no action with that name has rules.
Task
A request that another agent sends to your A2A server. MentorAgent runs it as one full turn, in a new session, and returns the whole reply. A caller that cancels the task stops its turn, as Stop does, and the task ends Canceled.
Orchestrator
A program or agent that splits a job among other agents and sends them tasks, for example over A2A. It is not the coordinator.
Blazor Server
A Blazor Web App with Server interactivity: the widget and the agent run in the same server process.
Blazor WebAssembly, Auto
WebAssembly runs the client in the browser. Auto starts on the server and moves to WebAssembly.
Render mode
How a Blazor component runs: on the server (InteractiveServer), in the browser (InteractiveWebAssembly), or first on the server and then in the browser (InteractiveAuto).
.NET MAUI Blazor Hybrid
A .NET MAUI app whose UI is Blazor inside a BlazorWebView. MentorAgent builds for Android and Windows inside it. iOS and Mac Catalyst have not been checked.
Model key
The API key of your model provider.
Model provider
The service that runs the model, such as OpenAI, Azure OpenAI or Ollama.
History provider
The ChatHistoryProvider that stores the messages of a conversation. Without one, MentorAgent keeps them in memory.
Path A, Path B
The two ways to give MentorAgent a model. Path A is ChatClient, and MentorAgent builds the agent. Path B is your own AIAgent in Agent.
Embedding model
A model that turns a text into a list of numbers that represents its meaning, so that MentorAgent can compare texts.
RAG (retrieval-augmented generation)
For each message, before the coordinator answers, MentorAgent adds to the prompt the most relevant documents from your own knowledge base.
RAG source
The class that searches your documents for RAG. It implements IMentorRagSource.
Tool filtering
With EnableToolFiltering, the model receives only the tools closest in meaning to the message, plus the core tools. When none is close enough, it receives the three best-ranked actions that need no confirmation and no role.
Model routing
Choosing, for each turn, between ChatClient and a stronger, more expensive StrongChatClient.
Hosted tool
A tool that runs at the model provider, not in your app, such as web search or the code interpreter. Roles and confirmation do not apply to it.
Classifier
The model that makes MentorAgent's own short decisions: the safety checks, the off-topic check, the facts to remember, and the question behind RequireLookupForRecordQuestions and RequireActionForChangeRequests. You set it in ClassifierChatClient; without it, ChatClient makes these decisions.
Safety check
An extra model call, before the answer, that checks each message for prompt injection, jailbreaks and attempts to extract the system prompt or credentials (EnableSafetyCheck). The output safety check (EnableOutputSafetyCheck) checks the reply before the user sees it.
Off-topic check
A check on whether a message is about your application. RefuseOutOfScope refuses a message that plainly has nothing to do with it, and answers when unsure. HostedToolDomainCheck is stricter: it keeps hosted tools away from a message that is not about your application.
Guardrail
A check on a message or a reply: the built-in safety checks, or a check that you write with InputGuardrail or OutputGuardrail.
Context window
The amount of text that the model reads at once.
Conversation
The messages between a user and the agent, from the first message until a reset.
Session
The object on the server that holds the state of one conversation (Agent Framework's AgentSession).
Snapshot
The saved state of a conversation. SerializeSessionAsync returns it in clear, so keep it on the server or in ProtectedLocalStorage. GET /mentor/session returns a protected form that only the user who saved it can restore.
History
The messages of the current conversation, which the model receives again at each turn.
Reducer
The component that keeps the in-memory history short. The default, MentorChatReducer, removes whole turns, oldest first, and keeps every tool call with its result.
Memory
Facts about a user that MentorAgent keeps across conversations, with UseMemoryContext.
Prerelease
A version whose number has a suffix, such as -rc1 or -preview3. dotnet add package installs it only when you pass the version or the --prerelease option.
Pin
Give a package reference one exact version, such as [1.17.0-preview.260804.1]. This word is used for packages only.
  • The three agent levels — Actions, specialists and teams: how the three levels of MentorAgent map to Agent Framework, and when to use each one.
  • Ruoli, conferma e governance — Ruoli e approvazione human-in-the-loop per i tool di un agente AI in .NET: controlli nel codice, non nel prompt, su ogni canale, e cosa resta a te.
  • Canali: come i client arrivano all'agente — Scegli come i client raggiungono il tuo agente: il widget della chat, SignalR o HTTP dal tuo front end, o un protocollo per altri agenti e strumenti AI.