SmartCopilotAdapter
A copilot that can drive the application itself — open screens, click menu items and run commands on the user's behalf.
Attaches to ChatBox
Where the chat adapter answers questions, the copilot navigates. It turns a ChatBox into an assistant that understands the structure of your application and can act inside it: open a screen, trigger a menu item, fill a command.
Because the copilot reaches into live UI, it pairs naturally with tool methods that expose the actions you want to allow. You decide the surface area; the copilot maps natural-language requests onto it.
A copilot is only as trustworthy as its reach. Because every action flows through a tool method you wrote, the copilot can never do more than your code allows — it cannot invent a delete button you didn't expose. The model proposes; your application disposes.
What it gives you
- Navigates the application: menus, screens and commands.
- Invokes registered tool methods to perform real actions.
- Shares the conversational model line-up of the chat adapter.
- Best paired with a tightly scoped set of [SmartTool.Tool] methods.
Use it for
- Hands-free navigation in deep back-office applications
- Onboarding — new users ask instead of hunting through menus
- Action shortcuts: “create a credit note for order 1042”
Like every adapter, it runs through a SmartHub and inherits its SmartEndpoint — switching the model or provider never changes this code.
var hub = new SmartHub(this) { Endpoint = endpoint };
var copilot = new SmartCopilotAdapter { ChatBox = chatBox1 };
// The copilot can call this to move the user where they asked to go
[SmartTool.Tool]
[Description("Opens the customer screen for the given id.")]
public void OpenCustomer(int customerId) =>
new CustomerForm(customerId).Show();