Skip to main content

Custom Skills Best Practices

Learn how to write, organize, test, and maintain Custom Skills so Bolt Agents respond predictably across channels.

K
Written by Kutibh (Koo-tay-ba) Chihabi

Overview

Custom Skills let you teach Bolt Agents how to handle institution-specific scenarios that do not fit neatly into a built-in system skill. A well-written Custom Skill gives the agent a clear trigger, a focused goal, and specific instructions for what to do next.

The best Custom Skills are narrow, testable, and easy to troubleshoot. Instead of trying to solve many scenarios in one large skill, build smaller skills that each handle one job and use priority ordering to control which skill runs first.

Below, we will cover:

  • How to structure a strong Custom Skill

  • How to write clear triggers and actions

  • How to use availability and priority controls

  • How to test and improve skills before publishing

  • Common patterns to follow when building your first skills


Start with one clear job per skill

Each Custom Skill should handle one specific student intent or operational scenario. If a skill tries to do too many things, it becomes harder to test, harder to prioritize, and harder to understand when something does not work as expected.

Good Custom Skill examples include:

  • Campus Visit Scheduler

  • Financial Aid Inquiry Handler

  • After-Hours Voice Routing

  • Mental Health Support Routing

Avoid using one broad skill for many unrelated scenarios, such as admissions questions, campus visits, scholarships, and counselor routing all in the same action.

✨ Pro Tip: If the skill name needs the word "and" to explain what it does, consider splitting it into two skills.


Write the trigger around student intent

The Trigger tells the agent when the skill should activate. Write the trigger in plain language based on what the student or family member is asking for, not based on internal team terminology.

Strong triggers describe the user's intent clearly:

  • "Prospective student or family member asks about visiting campus, taking a tour, attending an open house, joining an information session, or seeing the campus before applying or enrolling"

  • "Student asks about scholarships, FAFSA, tuition, financial aid, or how to pay for school"

  • "Caller asks to speak with a person, admissions counselor, financial aid counselor, or live team member"

Weak triggers are vague or too broad:

  • "Student has a question"

  • "Admissions help"

  • "Campus information"


Use availability for hard rules

Use Availability when a rule must be enforced before the agent evaluates the trigger. Availability controls are deterministic, meaning the skill is skipped when the conversation does not match the selected channel or schedule.

Use Channels when the skill should only run on specific communication channels, such as Messenger, SMS, Email, Voice, or WhatsApp.

Use Restrict by schedule when the behavior should change by time of day, such as routing calls to a live team during business hours and creating a callback task after hours.

🚨 Important: Do not rely on the trigger text to enforce strict channel or schedule rules. If a skill should only run on Voice, select Voice in Channels and deselect the other channels.


Write actions as step-by-step instructions

The Action tells the agent what to do after the skill fires. Use clear instructions that describe the goal, the decision path, and the exact action the agent should take.

A strong action includes:

  • A clear goal

  • A short sequence of steps

  • Rules for deciding which path to take

  • Instructions for what not to do

  • Deterministic tools where needed

For example, a campus visit skill can tell the agent to:

  • Ask whether the student wants a campus tour, open house, virtual information session, or another visit option

  • Use Register for Event when the student wants to attend a configured visit event

  • Use Schedule Appointment when the student wants a one-on-one visit or counselor meeting

  • Use Create Task when the student asks for a special request, accessibility accommodation, group visit, or unavailable date

  • Use Add Label after the student shows clear visit interest or completes a registration


Use tools for deterministic actions

When the agent needs to take a specific action, use the tool chips available in the Action editor. Tool chips give the agent an exact configured action instead of leaving it to infer what should happen.

Common tool patterns:

Tool Chip

Use When

Register for Event

The student wants to attend a configured event such as an open house, info session, or webinar

Schedule Appointment

The student wants a one-on-one meeting with a counselor, advisor, or staff member

Create Task

The request requires staff review, a special accommodation, or an unavailable option

Add Label

The conversation should trigger downstream segmentation, reporting, or workflow automation

Transfer Call

A Voice caller needs to reach a specific team or live person

🧠 Good to Know: Natural-language instructions tell the agent how to reason through the scenario. Tool chips tell the agent exactly what system action to take.


Put specific skills above general skills

When multiple skills could match a conversation, priority determines which active skill should run first. On the agent's Skills page, active Custom Skills can be reordered by dragging them into priority order.

A good priority strategy is:

  • Place high-risk or highly specific skills first

  • Place common intent-specific skills next

  • Place broad routing or general support skills lower

For example, place Financial Aid Inquiry Handler above a generic admissions support skill so financial aid questions are handled by the more specific instructions.


Test every skill before publishing changes

Use Test Agent before publishing changes to a live agent. The test console lets you simulate different channels and inspect the Debug Trace without creating real contact records or executing real actions.

A basic testing workflow is:

  1. Save the Custom Skill

  2. Enable the Custom Skill on the agent

  3. Click Test Agent

  4. Select a simulated channel, such as Messenger, SMS, or Email

  5. Send a message that should trigger the skill

  6. Open Debug Trace and confirm the correct skill matched

  7. Send a message that should not trigger the skill

  8. Confirm the skill is skipped for the right reason

  9. Repeat on each enabled channel

πŸ“Œ Note: The test console simulates behavior for the selected channel. Use it to validate skill logic before relying on the skill in live conversations.


Keep rules explicit

Rules help keep the agent from taking the wrong action. Add rules when there are known boundaries the agent should follow.

Useful rule patterns include:

  • Always identify the student's specific need before taking action

  • Always use a configured tool when the student asks for that action

  • Never invent dates, times, availability, requirements, deadlines, or staff commitments

  • Never register or schedule a student until they clearly confirm the option they want

  • Create a task when the request requires staff review

πŸ’‘ Use Case: A campus visit skill can tell the agent to never invent event availability. If a student asks for a date that is not available, the agent creates a staff task instead of promising a visit time that has not been configured.


Maintain skills as your processes change

Custom Skills should be reviewed whenever your team changes a process, event, phone number, appointment type, routing rule, or campaign strategy.

Review Custom Skills when:

  • A new event or appointment type is created

  • A phone number or team routing path changes

  • Staff notice repeated incorrect responses

  • A skill is skipped unexpectedly in Debug Trace

  • A workflow changes downstream of an Add Label action

  • A beta limitation changes or a new tool becomes available

Did this answer your question?