Back
Launch week
August 7, 2024

In-App Copilots & Workflows

Nick GomezNick Gomez
In-App Copilots & Workflows

Today, we're happy to share 3 powerful features of Inkeep's UI Kit that let teams easily create hyperpersonalized in-app experiences for their users.

Let's dive in by using Inkeep's Copilot as an example.

1. Context: Ground the model with user information

First, let's use Context to pass in key information about the user or the current state of our application.

typescript
const aiChatSettings: InkeepAIChatSettings = {
//... other aiChatSettings
context: `[
"The user is currently viewing the app page ${currentUrl}.",
"The user has access to the following features: ${featureFlags.join(', ')}",
"The user is on a ${user.planType} plan.",
"The user is using the ${productVersion} version of the application."
]`
};

This information helps the AI assistant better understand user questions and provide tailored answers specific to their situation.

2. Guidance: Steer the conversation

Guidance can be used to customize tone, style, and provide instructions for how to interact with the user.

These can be set globally on the project settings in the Inkeep dashboard, but we can also pass in additional or runtime guidance as part of our UI Kit component.

typescript
// if user.createdAt < 7 days
const aiChatSettings: InkeepAIChatSettings = {
//... other aiChatSettings
guidance:`
<rule>
<name>Clarify documentation type</name>
<conditions>
<condition>When the user mentions adding Inkeep to their documentation</condition>
<condition>And it is unclear what documentation platform they are using</condition>
</conditions>
<action>
Briefly list common documentation platforms
and ask which one they're using.
</action>
</rule>
<rule>
<name>Suggest exploring features</name>
<conditions>
<condition>After answering a user's initial question</condition>
</conditions>
<action>Briefly mention the Slack or Discord bots as integration options.</action>
</rule>
<rule>
<name>Offer additional support</name>
<conditions>
<condition>When there's ambiguity in the user's understanding</condition>
<condition>Or when the user seems to need extra assistance</condition>
</conditions>
<action>Remind the user that the Inkeep team is always ready to help.</action>
</rule>
`
};

We can experiment with how different combinations impact our user funnels for different segments of users.

3. Workflows: Guide users through common tasks

Workflows allow you to define goal-oriented scenarios like onboarding tasks or troubleshooting sequences.

When a user clicks on a workflow button at the start of a chat, the AI assistant will focus on helping the user with that particular scenario.

For an example, try the Help me integrate with my app workflow on our landing page.

Inkeep Workflow

Here's what the underlying configuration looks like:

typescript
const integrateWithMyAppWorkflow: Workflow = {
id: "ikp_integrate_with_my_app",
displayName: "Help me integrate with my app",
goals: [
"Identify the platform that the user is looking to add Inkeep on.",
"Give instructions for how to add the bot to that platform."
],
botPersona: "You are an expert solutions engineer",
informationToCollect: [
{
description: "Platform they are integrating Inkeep to",
required: true,
},
],
guidance: [
"Ask clarifying questions to understand the underlying platform.",
"Provide platform-specific integration instructions.",
],
initialReplyMessage:
"Happy to help you integrate Inkeep. Where are you looking to add it?",
};
const aiChatSettings: InkeepAIChatSettings = {
// ... other aiChatSettings
workflows: [integrateWithMyAppWorkflow]
};

Bringing it all together

Here's a high level strategy we might combine context, guidance, and workflows for two different user types at Inkeep:


New User: Reaching the "Aha" Moment

  1. Context: Provide information from the acquisition funnel about what the user might be interested in.
  2. Guidance: Emphasize quick wins and maintain a friendly, encouraging tone.
  3. Workflows: Offer a "Quick Start" guide for key setup steps.

Experienced User: Getting closer to enterprise features

  1. Context: Provide a list of core activation tasks the user has already performed.
  2. Guidance: Focus on advanced customizations and technical depth/support.
  3. Workflows: Provide a "Learn about X" workflow related to an enterprise feature

These configurations can be easily managed and changed as part of our application state and passed to Inkeep's UI Kit React components. Get started building your own In-App Copilot today.

Support our Launch Week