← All SmartAdapters Conversation

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.

csharp
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();

Read the SmartCopilotAdapter docs ↗