Run Locally

Features

Chat, Channels, Memory, Schedule, and Settings — everything you can do with Salmex I/O.

Chat

The Chat view is where you talk to your AI agent. Start a new conversation with Cmd+N or click the + button.

Sending messages

Type your message and press Cmd+Enter to send. The agent reads your message, works on it (searching the web, looking things up, etc.), and responds. Previous conversations are listed in the sidebar and can be picked up any time.

See what the agent is doing

When the agent takes actions — searching the web, reading files, running tasks — each step appears as an expandable block in the conversation. Click to expand and see exactly what happened. Nothing is hidden.

Approval requests

When the agent wants to do something potentially risky — like deleting files or accessing sensitive data — it pauses and asks for your permission before proceeding. You stay in control.

Nothing happens without you

The agent cannot continue until you approve or reject the action. You always have the final say.

Channels

Channels let you message your Salmex I/O agent from other platforms. Your agent shares the same memory and abilities everywhere.

Telegram

Telegram is the first supported channel. To connect it:

Create a bot

Message @BotFather on Telegram and create a new bot. Copy the API token.

Add the token

Go to Channels > Telegram in the app and paste the API token.

Choose a mode

Polling — the app checks for new messages automatically. Works on any internet connection. Best for personal use.

Webhook — messages arrive instantly. Requires remote access. Best for always-on setups.

Future channels

The following channels are planned:

  • Slack — coming soon
  • Discord — coming soon
  • WhatsApp — coming soon

Memory

The Memory view lets you browse, search, and manage everything the agent has learned about you across all conversations and channels.

Memory types

  • Facts — things the agent has learned about you. ("Home timezone is Europe/London", "Allergic to peanuts".)
  • Preferences — how you like things done. ("Always use British English", "Prefer concise answers".)
  • Decisions — choices you've made that the agent should remember. ("Book flights with BA when possible", "Use Signal instead of WhatsApp".)

How extraction works

Memory extraction is automatic. After each conversation, the agent reviews what you discussed and remembers anything worth keeping. When a new conversation starts, the agent automatically recalls relevant memories so it can pick up where you left off.

You can edit or delete any memory from the Memory view. The agent will respect the changes immediately.

Schedule

The Schedule view lets you create automated tasks that the agent runs on a recurring basis.

Creating tasks

Click New Task and describe what you want the agent to do. Set the schedule in plain English:

Example schedule
every weekday at 9am

The agent runs the task at 09:00 Monday through Friday. You can use any natural phrasing — "every morning", "twice a week on Tuesday and Thursday", "first of every month at noon".

Job history

Every execution is logged. The Schedule view shows the full history for each task: when it ran, what the agent did, whether it succeeded, and the complete output. Failed runs surface errors so you can adjust the task prompt or fix the underlying issue.

Tasks use the same tools

Scheduled tasks can do everything your agent normally does — search the web, send you messages, manage files, and more. A task like "check Hacker News every morning and send me a Telegram summary" works out of the box.

Settings

AI providers

Add, remove, and switch between AI providers. Each provider shows its connection status and available models. Set a default that your agent uses.

Search engines

Manage search engine API keys. Enable or disable engines individually. The agent uses the first available engine when performing web research.

Appearance

Adjust font sizes, configure notification preferences, and customise the interface density.

Data management

Export your data, clear conversation history, reset memories, or wipe the database entirely. All destructive actions require confirmation.