Sable Agent Documentation

Back to App

Overview

Sable Agent is an AI-powered browser automation tool built specifically for GoHighLevel (GHL) CRM. It uses a real browser controlled by AI to perform tasks inside your GHL account — navigating pages, clicking buttons, filling forms, and completing multi-step workflows on your behalf.

Think of it as a virtual assistant that can see and interact with your GHL account exactly like you would, but driven by natural language instructions.

What Can Sable Do?

Logging In

When you first visit the app, you'll see a login screen with a single password field.

  1. Enter your password and click Sign In (or press Enter).
  2. Upon successful login, a session token is stored in your browser. You'll stay logged in until you clear your browser data or the token is rotated.
  3. If your token expires or becomes invalid, you'll be automatically redirected back to the login screen.
Tip To change your password, go to Settings > Danger Zone. You'll need your current password to set a new one.

Interface Tour

The interface has three main areas:

Sidebar (Left)

The left sidebar contains two sections:

Main Area (Center)

The central area displays whichever view you've selected from the sidebar menu. The default view is Chat.

Live View Panel (Right)

When a task is running, a collapsible panel appears on the right showing real-time browser screenshots. Toggle it with the eye icon button next to the input bar.

Header Bar

The top bar shows the app title and a connection status indicator:

Chat & Running Tasks

The Chat view is the primary interface for interacting with Sable. You type instructions in natural language and the agent carries them out in the browser.

Sending a Task

  1. Type your task in the input bar at the bottom. Be specific: "Go to Contacts and create a new contact with name Jane Doe, email jane@test.com, phone 555-1234"
  2. Optionally attach a client profile by dragging a profile chip from the sidebar onto the input area, or by clicking the profile badge.
  3. Optionally attach a file or video by clicking the paperclip icon.
  4. Click Send or press Enter.

During Execution

Once a task is submitted, you'll see:

Stopping a Task

While a task is running, the Send button changes to a Stop button. Click it to cancel the current task. The agent will halt and report what it accomplished so far.

Task Completion

When the agent finishes, you'll see:

Writing Good Task Instructions

Tips for Best Results
  • Be specific — "Create a contact named John Smith" is better than "add a contact"
  • Include all data — provide names, emails, phone numbers, etc. in the task description
  • Mention the GHL section — "Go to Contacts", "Navigate to Marketing > Email Templates"
  • One task at a time for single tasks. Use Chains for multi-step workflows.

Chat Management

You can manage multiple conversations:

Chats are automatically titled based on your first message. The app supports up to 50 concurrent chats.

Live View

The Live View panel gives you a real-time window into what the browser agent is doing.

The panel automatically closes when the task completes.

Task Evaluation

After every browser task, Sable automatically evaluates the result using AI. The evaluation scores the task on five dimensions:

DimensionWeightWhat It Measures
Navigation20%Did the agent go to the correct pages?
Completion35%Was the requested action fully completed?
Data Accuracy25%If data was entered, was it correct?
Efficiency10%Were unnecessary steps avoided?
Final State10%Does the end state match what was requested?

A weighted average produces the overall score (0-100). A score of 90 or above is considered a pass.

How It Works The evaluator captures screenshots of the final page state (scrolling top-to-bottom to see all content), then sends the task description, steps taken, and screenshots to an AI model for scoring.

Feedback & Learning

Your feedback directly improves the agent's performance over time.

Giving Feedback

After each task completes, you'll see thumbs up/down buttons:

How Learning Works

When you give a thumbs up (or a task scores 90+), the agent saves the successful approach to its learned tasks database. The next time a similar task comes up, the agent will reference these past successes to guide its actions — like building muscle memory.

Negative feedback helps too: the agent records what went wrong so it can avoid repeating the same mistakes.

Viewing Feedback History

Go to History > Feedback to see all feedback you've given. You can filter by positive or negative, and export the data as JSON for training purposes using the Export Training Data button.

Client Profiles

Client Profiles let you store information about your clients so the agent can use it as context when performing tasks.

Creating a Profile

  1. Navigate to Client Profiles from the sidebar.
  2. Click the + button in the top-right corner.
  3. Fill in the profile form. Only Business / Client Name is required — everything else is optional but helps the agent perform better.
  4. Click Save.

Profile Fields

SectionFields
Contact InfoBusiness Name, Email, Phone, Address, Website, Business Type, EIN, GHL Location ID, Time in Business
Business ProfileDescription, Offers & Services, Target Audience
BrandVoice & Tone, Brand Colors, Brand Guidelines
NotesFree-form text for any additional context
GHL Location ID The GHL Location ID links a profile to a specific GHL sub-account. You can find it in the URL when viewing a sub-account: app.gohighlevel.com/v2/location/THIS_PART/dashboard. Setting this enables automatic location switching (see below).

Using Profiles in Chat

There are two ways to attach a client profile to a task:

When a profile is attached, the agent receives the client's information as context — names, business details, brand guidelines, etc. — so it can personalize its actions.

Editing & Deleting Profiles

On each profile card, you'll find Edit and Delete buttons. Editing opens the same form used for creation, pre-filled with the current data.

Location Switching

If your client profiles have a GHL Location ID set, Sable can automatically switch to that client's GHL sub-account before running a task.

How It Works

  1. Attach a client profile that has a GHL Location ID set.
  2. Send a task. Before executing, the agent will navigate to the sub-account switcher in GHL and select the correct location.
  3. A "Location Switched" status message confirms the switch with a screenshot.
  4. The task then executes in the context of that sub-account.
Important The browser must be logged into GHL for location switching to work. If the agent lands on a login page, it will report a "not logged in" error. See Troubleshooting for help.

Chain Workflows

Chains are multi-step automated workflows — a sequence of tasks executed one after another. They're ideal for processes like client onboarding, compliance setup, or campaign building.

Running a Chain

  1. Go to Templates > Chain Templates.
  2. Browse or search for a chain. Use the category filters to narrow down: Compliance, Scheduling, Marketing, Sales, Automation, Communication, or Setup.
  3. Click a chain template to open its detail view. Review the steps and required inputs.
  4. Click Use in Chat. A form will appear with the chain's required inputs.
  5. Fill in the inputs. If you've attached a client profile, many fields will be auto-filled from the profile data.
  6. Click Start Chain. The agent begins executing steps sequentially.

Chain Progress

During chain execution, you'll see:

When a Step Fails

If a step doesn't pass evaluation (scores below 70), the chain pauses and presents three options:

Creating Custom Chains

  1. In Templates > Chain Templates, click New Template.
  2. Enter a name and description for your chain.
  3. Add steps — each step needs a name and a prompt (the task instruction for that step).
  4. Click Save.
Pro Tip — Variable Interpolation Chain step prompts can reference inputs and outputs from previous steps using {variable_name} placeholders. For example, if Step 1 outputs a contact_id, Step 2's prompt can include {contact_id} to use it.

Templates

Templates are reusable task and workflow definitions that help you standardize common operations.

Task Templates

Task templates store single-task instructions with metadata:

Using a Template

  1. Go to Templates and switch to the Task Templates tab.
  2. Browse, filter by category/difficulty, or search by keyword.
  3. Click a template card to preview its details.
  4. Click Use in Chat to insert the template into the chat as a task.

Chain Templates

Chain templates define multi-step workflows. See the Chain Workflows section above for details on using and creating them.

AI Template Generator

Don't want to write templates manually? The AI generator creates them for you.

  1. In Templates > Task Templates, click AI Generate.
  2. Fill in the form: task name, what it does, which GHL section it's in, step-by-step description, required inputs, common mistakes to avoid, and difficulty level.
  3. Click Generate. AI will create a full template with structured steps and metadata.
  4. Review the preview. If it looks good, click Save Template to add it to your template library.

Knowledge Base

The Knowledge Base stores documentation that the agent references when performing tasks. The more relevant knowledge it has, the better it performs — especially for GHL-specific workflows.

Adding YouTube Videos

  1. Go to Knowledge Base from the sidebar.
  2. In the YouTube URL tab, paste a YouTube video URL.
  3. Click Add. The system fetches the video's transcript and embeds it into the knowledge base.

Adding Other Videos

Switch to the Video URL tab to add videos from:

Manual Transcript Paste

If automatic transcript fetching doesn't work (e.g., the video has no captions), switch to the Manual Paste tab:

  1. Enter the Video ID and Title.
  2. Paste the full transcript text.
  3. Click Embed Transcript.

Scanning Articles

Click Scan Articles to automatically find YouTube videos embedded in your knowledge base articles and add their transcripts.

How Knowledge Is Used

When you send a task, the agent automatically searches the knowledge base for relevant documentation. It uses a multi-query retrieval approach:

  1. Your task is broken into multiple search queries
  2. Each query searches the knowledge base independently
  3. Results are deduplicated and ranked by relevance
  4. The top results are included as context for the agent
Note For very simple tasks (like "go to contacts" or "take a screenshot"), the knowledge base lookup is skipped automatically to save time and cost.

Video & File Uploads

You can upload files directly into the chat to provide visual instructions to the agent.

Supported File Types

TypeFormatsWhat Happens
VideoMP4, MOV, WEBMFrames extracted, audio transcribed, transcript used as task context
DocumentsPDF, DOCX, TXTText content extracted and included as context
ImagesPNG, JPGIncluded as visual reference for the agent

Uploading a File

  1. Click the paperclip icon next to the input bar.
  2. Select a file from your computer.
  3. Wait for processing (videos take a moment to extract frames and transcribe audio).
  4. A preview badge appears above the input bar showing the filename and status.
  5. Type your task instruction and click Send. The file's content is automatically included as context.
Video as Task Instructions If your message includes phrases like "follow the video" or "do what's shown in the video," the agent will use the video transcript as the primary task instruction — essentially watching and replicating what's demonstrated in the video.

Embeddable Widgets

Widgets let you deploy a client-facing chat interface on external websites. Visitors can interact with the agent through the widget to get support or perform actions.

Creating a Widget

  1. Go to Widgets from the sidebar.
  2. Click New Widget.
  3. Fill in the Account ID and Account Name (identifies which GHL account this widget serves).
  4. Configure the appearance: colors, font, border radius, width, position.
  5. Set messages: greeting text, input placeholder, teaser text (shown when minimized).
  6. Configure behavior: auto-open on page load, show rating buttons, powered-by text, avatar URL.
  7. Set rate limits: maximum requests per time window to prevent abuse.
  8. Click Save.

Embedding on a Website

After creating a widget, you'll see an embed code — a JavaScript snippet you can copy and paste into any website's HTML. The widget will appear as a floating chat button in the corner of the page.

Live Preview

The widget editor includes a live preview on the right side. As you change settings, the preview updates in real-time so you can see exactly how the widget will look.

Request Classification

Widget requests are automatically classified:

Security

Each widget has its own authentication token. You can regenerate this token at any time if you suspect it's been compromised. The old token immediately stops working.

Support Tickets

When widget users submit requests that need human attention, they are automatically escalated into support tickets.

Task History

The History view gives you full visibility into everything the agent has done.

Task History Tab

Shows all executed tasks with:

Feedback Tab

Shows all user feedback with stats (total, positive, negative). Use the filter to view only positive or negative feedback. The Export Training Data button downloads all feedback as JSON.

Chain Runs Tab

Shows execution history for chain workflows: chain name, status, step counts, and timestamps.

Audit Log

The Audit Log records all significant events across the system.

Categories

CategoryEvents Tracked
TaskTask started, completed, failed, stopped
ChainChain started, paused, resumed, completed
BrowserNavigation, clicks, form fills, screenshots
AuthLogin attempts, token usage
WidgetWidget requests, escalations, rate limits

Live Stream

Click the Live Stream button to open a real-time WebSocket connection that shows audit events as they happen. This is useful for monitoring the agent during active sessions.

Filtering

Use the category dropdown to filter events. You can view all events or narrow down to a specific category.

Settings

The Settings view lets you manage API keys, authentication, and security.

API Keys

Configure the external services Sable connects to:

KeyPurpose
Anthropic API KeyPowers the AI agent (required)
GHL API KeyGoHighLevel API access for direct API calls
GHL Location IDDefault GHL sub-account location
Google Email / PasswordUsed for YouTube transcript fetching via authenticated browser session

API keys are masked in the display for security — only the first and last 4 characters are shown.

Testing Connections

Each API key has a Test button that verifies the key is valid and the service is reachable.

Changing Password

In the Danger Zone section:

  1. Enter your current password.
  2. Enter your new password.
  3. Click Change Password.

You'll be logged out and need to sign in with the new password.

Webhooks

Sable provides a webhook endpoint for external systems to create client profiles automatically.

Client Profile Webhook

The webhook URL is displayed in the Client Profiles view. External systems (like GHL workflows, Zapier, or Make) can POST client data to this URL to automatically create profiles.

Authentication Methods

The webhook supports three authentication methods:

Keyboard Shortcuts

ShortcutAction
EnterSend message / Submit form
Shift + EnterNew line in message input
EscapeClose modal / Cancel action

Troubleshooting

Connection Issues

"Disconnected" status in header

WebSocket connection fails immediately

Task Execution Issues

Agent reports "not logged in"

Agent seems stuck (repeating the same action)

Low evaluation scores

Knowledge Base Issues

YouTube video fails to add

Chain Execution Issues

Chain pauses unexpectedly

Chain form fields are empty despite having a profile attached

Frequently Asked Questions

How many tasks can I run at once?

One browser task at a time (the browser is a shared resource). If you send a task while another is running, it will queue. There's also a rate limit of 10 tasks per 60 seconds.

Does the agent remember what it did before?

Yes. Successful tasks are saved to the learned tasks database. When a similar task comes up, the agent references past approaches. Each chat conversation also maintains its own message history.

Can I use this with multiple GHL accounts?

Yes. Create a Client Profile for each account with the corresponding GHL Location ID. When you attach a profile to a task, the agent automatically switches to that sub-account.

Is my data secure?

All data is stored locally on your server. API keys are masked in the UI. Webhook endpoints support HMAC-SHA256 signing for secure integrations. Widget tokens can be regenerated at any time.

What happens if the agent makes a mistake?

Give it a thumbs down with a note explaining what went wrong. The agent learns from this feedback. For critical operations, it's good practice to use the Live View to monitor what the agent is doing in real-time.

How do I add GHL-specific knowledge?

Go to the Knowledge Base and add YouTube tutorial videos, training recordings, or paste documentation manually. The agent automatically retrieves relevant knowledge when performing tasks.

Can clients interact with the agent directly?

Yes, through Widgets. Create a widget, customize its appearance, and embed it on a client-facing website. Requests are classified and either handled automatically or escalated to support tickets.

What's the difference between a Task and a Chain?

A Task is a single action (e.g., "Create a contact"). A Chain is a sequence of tasks executed in order (e.g., "Set up full client onboarding: create contact, configure pipeline, build landing page"). Chains can pass data between steps.