You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Revert mail scheduledTasks removal (broke snooze/scheduled-send)
- Revert videos action changes (broke parseArgs, added process.exit)
- Make prepare:false conditional on Supabase URLs only
- Add 15s timeout fallback to VoiceDictation for closed-sidebar case
"text": "Set apiKeyEnv in your config to the name of an environment variable containing the expected bearer token: The agent card endpoint is always public (no auth) so other agents can discover capabilities. The /a2a JSON-RPC endpoint requires a valid bearer token when apiKeyEnv is set. In dev mode (no env..."
102
102
},
103
-
{
104
-
"page": "A2A Protocol",
105
-
"path": "/docs/a2a-protocol",
106
-
"section": "Agent mentions",
107
-
"sectionId": "agent-mentions",
108
-
"text": "You can @ -mention agents directly in the chat composer. When you mention an agent, the server makes an A2A call to that agent and weaves the response into your conversation context. This is the easiest way to use A2A — no code required, just type @ and select an agent. See Agent Mentions for..."
109
-
},
110
-
{
111
-
"page": "A2A Protocol",
112
-
"path": "/docs/a2a-protocol",
113
-
"section": "Messaging integrations",
114
-
"sectionId": "messaging-integrations",
115
-
"text": "Agents can also be reached from external messaging platforms like Slack, Telegram, and WhatsApp. Users send messages on those platforms and the agent responds in the same thread, using the same tools and actions as the web chat. See Integrations for setup details on each platform."
"text": "The @ -mention system connects the chat composer to the broader agent ecosystem. When you type @ , a popover appears listing available agents, codebase files, and resources. Selecting an agent sends a cross-agent request via the A2A protocol , and the response is embedded directly in the..."
179
-
},
180
-
{
181
-
"page": "Agent Mentions",
182
-
"path": "/docs/agent-mentions",
183
-
"section": "Mentioning agents",
184
-
"sectionId": "mentioning-agents",
185
-
"text": "To mention an agent in the chat composer: Type @ to open the mention popover Browse or search the list of available agents Select an agent — it appears as a tag in your message Send the message — the server calls the mentioned agent via A2A and includes its response in the conversation context The..."
186
-
},
187
-
{
188
-
"page": "Agent Mentions",
189
-
"path": "/docs/agent-mentions",
190
-
"section": "How it works",
191
-
"sectionId": "how-it-works",
192
-
"text": "When a message containing an @ -mention is sent, the following happens on the server: The server extracts mention references from the message For each mentioned agent, an A2A call is made to that agent's endpoint The agent's response is wrapped in an <agent-response> XML block and injected..."
193
-
},
194
-
{
195
-
"page": "Agent Mentions",
196
-
"path": "/docs/agent-mentions",
197
-
"section": "Adding agents",
198
-
"sectionId": "adding-agents",
199
-
"text": "Agents become available for mentioning through several mechanisms: Auto-discovery — the framework automatically discovers agents running on known ports or configured URLs Resources panel — add agent manifests as agents/*.json files in the resources panel Environment variables — configure agent URLs..."
200
-
},
201
-
{
202
-
"page": "Agent Mentions",
203
-
"path": "/docs/agent-mentions",
204
-
"section": "Custom mention providers",
205
-
"sectionId": "custom-mention-providers",
206
-
"text": "Templates can register custom mention providers to add domain-specific mentionable items beyond agents and files. A mention provider implements the MentionProvider interface: ()); }, // Resolve a mention into context for the agent async resolve(id: string) ); return (\\$)\\`, }; }, };`} /> Register..."
207
-
},
208
-
{
209
-
"page": "Agent Mentions",
210
-
"path": "/docs/agent-mentions",
211
-
"section": "Referencing files",
212
-
"sectionId": "referencing-files",
213
-
"text": "The @ popover is not limited to agents. You can also reference: Codebase files — type @ and search for a filename. The file contents are included in the agent's context so it can read, analyze, or modify the file. Resources — reference resources defined in the resources panel. These can be data..."
"text": "The framework provides type-safe APIs so you never deal with raw messaging: Agent chat — use sendToAgentChat() to send messages to the agent Generation state — use useAgentChatGenerating() to track when the agent is running File watching — SSE endpoint keeps UI in sync when the agent modifies files..."
655
599
},
656
-
{
657
-
"page": "Integrations",
658
-
"path": "/docs/integrations",
659
-
"section": "Overview",
660
-
"sectionId": "overview",
661
-
"text": "Messaging integrations let users talk to their agent from the platforms they already use. Instead of opening the web UI, you send a message in Slack or Telegram and the agent responds right there. It has access to the same actions, the same database, and the same conversation history as the web..."
662
-
},
663
-
{
664
-
"page": "Integrations",
665
-
"path": "/docs/integrations",
666
-
"section": "How it works",
667
-
"sectionId": "how-it-works",
668
-
"text": "The flow for every platform follows the same pattern: A user sends a message on the external platform (Slack, Telegram, etc.) The platform delivers the message to your app via a webhook at /_agent-native/integrations/<platform>/webhook The integrations plugin validates the request, extracts..."
669
-
},
670
-
{
671
-
"page": "Integrations",
672
-
"path": "/docs/integrations",
673
-
"section": "Setup",
674
-
"sectionId": "setup",
675
-
"text": "The integrations plugin auto-mounts when no custom version exists in your template. To customize it, create a plugin file: The plugin registers webhook routes for each enabled platform under /_agent-native/integrations/ . Which platforms are active depends on which environment variables are..."
676
-
},
677
-
{
678
-
"page": "Integrations",
679
-
"path": "/docs/integrations",
680
-
"section": "Slack",
681
-
"sectionId": "slack",
682
-
"text": "1. Create a Slack app Go to api.slack.com/apps and create a new app. Under OAuth & Permissions , add the following bot token scopes: chat:write — send messages app_mentions:read — receive @-mentions (optional) 2. Enable Event Subscriptions Under Event Subscriptions , set the Request URL to:..."
683
-
},
684
-
{
685
-
"page": "Integrations",
686
-
"path": "/docs/integrations",
687
-
"section": "Telegram",
688
-
"sectionId": "telegram",
689
-
"text": "1. Create a bot Message @BotFather on Telegram and use the /newbot command. You will receive a bot token. 2. Set environment variables 3. Register the webhook After deploying your app, call the setup endpoint to register the webhook with Telegram: You can also register the webhook manually using..."
690
-
},
691
-
{
692
-
"page": "Integrations",
693
-
"path": "/docs/integrations",
694
-
"section": "WhatsApp",
695
-
"sectionId": "whatsapp",
696
-
"text": "1. Set up the WhatsApp Cloud API Go to the Meta Developer Portal , create an app, and enable the WhatsApp product. Configure a phone number for your business. 2. Set environment variables The verify token is a string you choose — Meta uses it during webhook verification. The access token and phone..."
697
-
},
698
-
{
699
-
"page": "Integrations",
700
-
"path": "/docs/integrations",
701
-
"section": "Configuration",
702
-
"sectionId": "configuration",
703
-
"text": "Integrations can be managed from the settings UI in the sidebar. Each platform shows its connection status and webhook URL. You can enable/disable individual integrations without removing environment variables. The webhook URLs follow a consistent pattern:"
704
-
},
705
-
{
706
-
"page": "Integrations",
707
-
"path": "/docs/integrations",
708
-
"section": "Thread continuity",
709
-
"sectionId": "thread-continuity",
710
-
"text": "Conversations from external platforms are mapped to internal threads. Each Slack DM, Telegram chat, or WhatsApp conversation becomes a persistent thread in the agent-native database. This means: The agent retains context across messages in the same external conversation External conversations..."
711
-
},
712
-
{
713
-
"page": "Integrations",
714
-
"path": "/docs/integrations",
715
-
"section": "Custom adapters",
716
-
"sectionId": "custom-adapters",
717
-
"text": "To add support for a new messaging platform, implement the PlatformAdapter interface: Register your adapter in the integrations plugin config:"
718
-
},
719
-
{
720
-
"page": "Integrations",
721
-
"path": "/docs/integrations",
722
-
"section": "Security",
723
-
"sectionId": "security",
724
-
"text": "Every incoming webhook is verified before processing: Slack — HMAC-SHA256 signature verification using SLACK_SIGNING_SECRET . The X-Slack-Signature header is checked against the request body. Telegram — requests are validated by checking the secret token set during webhook registration via the..."
0 commit comments