The Swiftor AI Agent provides an advanced chat interface powered by the Vercel AI SDK. It allows interaction with a diverse range of AI models, including those capable of using tools via the Model Context Protocol (MCP) by connecting to your Swiftor Deployments (VMs). Key features include persistent chat history, text-to-speech output, custom prompts, and fine-grained model selection based on your subscription tier.
Experimental Feature
This is an experimental feature and not yet released to the public. Due to its heavy construction status, major crashes are expected. As a result there is minimal to no support available.
User Messages: Displayed typically on the right, showing the text you entered.
Assistant Messages: Displayed typically on the left, often preceded by an icon.
Content is rendered as Markdown, supporting formatting like headings, lists, bold/italics, links, etc.
Code Blocks: Rendered with syntax highlighting (vscDarkPlus theme). A copy button appears on hover within the code block itself.
Tool Calls/Results: (Visual representation may vary) The interface handles the underlying tool calls and results, presenting the final assistant response.
Hover Actions: When hovering over an assistant message, action icons appear:
Copy (pi-clone): Copies the message content to the clipboard.
Speak (pi-volume-up / pi-volume-off): Initiates or stops text-to-speech playback of the message content using the selected voice and speed (see Settings).
Regenerate (pi-sync): Resubmits the conversation history up to the message before this one to get a new response, effectively replacing the current message and any subsequent ones in that turn.
Welcome Screen: When no chat is selected, a welcome message with default prompt suggestions is shown.
Scrolling: The area automatically scrolls down as new content streams in. If you scroll up manually, auto-scroll pauses, and a "Scroll to Bottom" button appears.
Tool Use (MCP): When connected to a Deployment and using a model supporting tools (function_call: true), the Agent can interact with the VM's environment. The AI determines when to use available tools based on your prompt and the conversation context.
Model Capabilities: Choose models based on your needs (e.g., vision models for image understanding, tool-using models for interacting with deployments).
Chat Persistence: Conversations, including messages, the selected model, and the connected deployment (if any), are automatically saved to your browser's localStorage. This allows you to close and reopen the browser without losing your chat history.
Streaming Responses: AI responses are streamed word by word or token by token for a more interactive experience.
Aborting Generation: You can stop the AI mid-response by clicking the abort button.
Regenerating Responses: Use the Regenerate (pi-sync) hover action on an assistant message to get a different response based on the preceding conversation.
Text-to-Speech (TTS): Use the Speak (pi-volume-up) hover action to have assistant messages read aloud.
Accessible via the cog icon (pi-cog) in the side menu.
Voice Settings:
Choose from various TTS voices (e.g., Tara, Leo).
Adjust the speech speed (0.5x to 1.5x).
Custom Prompt:
Add persistent custom instructions (up to 50 words) to guide the AI's behavior, role, or response style across all your chats. This prompt is appended to the base system prompt.
Saved to localStorage.
Chat Management (Placeholder): Buttons for Exporting/Importing chats (functionality might be limited based on code).
Danger Zone:
Delete all chats: Permanently removes all chat history from localStorage.
Reset all settings: Resets voice, speed, and custom prompt to their default values. (Both actions require confirmation).