Start with what the user needs

The labels overlap. A chatbot generally offers a conversational interface; an assistant supports a person with information or tasks; an agent may carry out a sequence of actions using tools. The important question is what the system is permitted and expected to do.

Separate answers from actions

Answering a question from approved documents is different from changing an order or sending a message. Specify the data the system can access, the tools it can use and the decisions that require human approval.

Design for uncertainty

Provide a clear way to say that information is missing, ask for clarification or hand the task to a person. Test ambiguous requests and failed integrations as well as successful examples.

Choose the smallest useful scope

A well-designed search assistant may solve the problem without autonomous actions. Start from the workflow and introduce additional capability only when it improves the experience and can be supervised appropriately.