Skip to main content

Installation

Choose your preferred installation method:
Add the script before </body>:
The agent’s display name comes from your dashboard settings, not from the script tag.After the script loads, use window.argide() to pass functions and objects:

Find Your Product ID

  1. In the dashboard, open Deploy → Install
  2. Copy your Product ID

User Identity

There are two ways to tell the agent who the user is. Pick based on what you need. Attributes — pass the user on the script tag, or with the update command in a single-page app:
See User Identification for the full set of attributes, custom attributes, and single-page app setup. JWT — mint a token on your backend and pass it, so Argide can forward it to your API:
See Identity Verification for the backend JWT setup. On logout, clear the identity:

Client-Side Tools

Register tools the agent can call. The return value from your handler is sent back to the agent, so it can confirm success or handle errors intelligently. See Client-Side Tools for full setup.
Return meaningful results from your tools. The agent uses these to provide accurate feedback like “Done! I’ve navigated you to Settings” or handle errors gracefully.

Tool Result Callbacks

React to server-side tool completions — refresh data, show a diff UI, dispatch events, etc.

Tool Renderers

Render custom visuals inline in the chat when a tool completes — data cards, tables, charts, and more. Your renderer receives { result, status } and returns one of:

Data Card

Show key metrics with change indicators:

Table

Display structured data in rows and columns:

Chart (Chart.js, D3, ECharts)

For interactive charts, return an HTMLElement instead of a string. The widget mounts it directly:
Timing: window.argide() must be called after the Argide script has loaded. In plain HTML this happens naturally (scripts execute in order). In Next.js, use onLoad:
The widget uses Shadow DOM for CSS isolation. Use inline style attributes — Tailwind classes and external CSS won’t apply inside the widget.

Troubleshooting