Chat Commands
Chat Commands Encrypted chat operations -- list, search, view, send messages, share, download, and send incognito messages. Private saved chat data is decryp...
Chat Commands
Encrypted chat operations – list, search, view, send messages, share, download, and send incognito messages. Private saved chat data is decrypted client-side using your session’s encryption keys.
Without a session, list, show, and open expose only public example chats from the web app. These entries are labeled EXAMPLE CHAT and do not include private user data. In the interactive TUI, use /examples to browse those examples; typing into an example starts a new continuation chat while keeping the bundled example read-only.
Interactive Chat TUI
openmates
Plain openmates opens the chat UI when stdin and stdout are both interactive TTYs. The start screen includes the OpenMates intro, /examples guidance, file-reference hints such as @./notes.md and @~/Downloads/report.pdf, and a bottom input field.
Useful TUI commands:
| Command | Description |
|---|---|
/examples |
Choose local interest tags and browse ranked public examples |
/help |
Show TUI commands |
/login |
Run pair-auth login and return to the TUI |
/signup |
Leave the TUI and run guided signup with hidden prompts |
/embed <id> |
Show the fallback command for full embed details |
/clear |
Clear the current terminal transcript view |
/exit |
Restore the shell and exit |
If plain openmates is run from a script, pipe, or redirected shell, it does not enter alternate-screen mode. It prints common programmatic commands such as openmates chats new, openmates chats send --chat <chat-id>, openmates chats list, and openmates embeds show <embed-id>.
Continuing Public Examples
Example transcripts are read-only, but their input footer behaves like normal chat input. When you continue an example, the CLI starts a new chat context and sends the full public transcript as history with your first continuation message. Logged-out continuations use anonymous free chat history; signed-in continuations use the authenticated chat pipeline. The public example itself is unchanged.
Listing Chats
openmates chats list
openmates chats list --limit 20 --page 2
openmates chats list --json
Logged-out output lists public examples. Logged-in output lists your private synced chats.
| Option | Default | Description |
|---|---|---|
--limit <n> |
10 | Number of chats per page |
--page <n> |
1 | Page number |
Searching Chats
openmates chats search "Madrid"
openmates chats search "flight connections" --json
Searches across chat titles and decrypted content. Returns all matching chats.
Viewing a Chat
openmates chats show <chat-id>
openmates chats show example-gigantic-airplanes
openmates chats show last
openmates chats show "Flight Connections Berlin to Bangkok"
openmates chats show d262cb68 --raw
openmates chats show d262cb68 --json
For private chats, the chat ID accepts: full UUID, 8-character short ID, exact or partial title match, or the keyword last for the most recent chat. When logged out, use an example chat ID, slug, title, or position from openmates chats list; the full output starts with an EXAMPLE CHAT banner.
| Option | Description |
|---|---|
--raw |
Show raw decrypted content without rendering embeds or cleaning embed references (useful for debugging) |
--json |
Includes follow-up suggestions in the JSON output |
Starting a New Chat
openmates chats new "Hello, what can you help me with?"
openmates chats new "@Sophia tell me about React hooks"
openmates chats new "@Web-Search latest AI news"
openmates chats new "@best review @./src/app.ts"
openmates chats new "Research flights" --auto-approve
Creates a new chat and streams the AI response to your terminal. Supports @mentions for models, mates, skills, and local file attachments. See embeds-and-sharing.md for mention types.
| Option | Description |
|---|---|
--auto-approve |
Automatically approve server-requested sub-chat batches for trusted non-interactive runs |
--auto-approve-memories |
Explicitly approve server-requested memory categories for trusted non-interactive runs. Memories are never approved by default. |
Sending a Message to an Existing Chat
openmates chats send --chat d262cb68 "follow-up question"
openmates chats send --chat d262cb68 --followup 1
openmates chats send --chat d262cb68 --incognito "private question"
openmates chats send --chat d262cb68 "continue" --auto-approve-memories
| Option | Description |
|---|---|
--chat <id> |
Chat to continue (full UUID or 8-char short ID) |
--followup <n> |
Send the nth AI-generated follow-up suggestion instead of typing a message (requires --chat) |
--incognito |
Send without saving to chat history |
--auto-approve |
Automatically approve server-requested sub-chat batches for trusted non-interactive runs |
--auto-approve-memories |
Explicitly approve server-requested memory categories for trusted non-interactive runs. Memories are never approved by default. |
Without --auto-approve-memories, memory requests are recorded in chat history and the CLI stops. Continue the chat in the web app to explicitly approve or reject the memory request.
Opening a Chat in the Browser
openmates chats open
openmates chats open 3
openmates chats open gigantic-airplanes-transporting-rocket-parts
Opens a chat in your default browser. Logged in, the optional number selects by private-chat position (1 = most recent, 2 = second most recent, etc.). Logged out, the number, example ID, or example slug opens the public /example/<slug> page. Defaults to 1.
Downloading a Chat
openmates chats download last
openmates chats download d262cb68 --output ~/exports
openmates chats download last --zip
Downloads the chat as a folder containing:
.yml– YAML export of the full conversation.md– Markdown-formatted conversationcode/– Extracted code embeds (with original filenames when available)transcripts/– Video transcript embeds
| Option | Default | Description |
|---|---|---|
--output <path> |
Current directory | Target directory for the download |
--zip |
Off | Create a .zip archive instead of a folder |
Deleting Chats
openmates chats delete d262cb68
openmates chats delete d262cb68 a1b2c3d4 --yes
Deletes one or more chats. Shows chat titles and asks for confirmation before deleting. Use --yes to skip the confirmation prompt.
Sharing a Chat
openmates chats share d262cb68
openmates chats share last --expires 604800
openmates chats share d262cb68 --password mypass
Creates an encrypted share link for the chat. See embeds-and-sharing.md for details on zero-knowledge share encryption.
| Option | Description |
|---|---|
--expires <seconds> |
Link expiration time (0 = no expiry) |
--password <pwd> |
Password-protect the link (max 10 characters) |
Incognito Mode
Incognito messages are not saved to the server and are not stored locally by the CLI. There is no incognito transcript to show or clear after the command exits.
openmates chats incognito "private question"
openmates chats incognito "private question" --auto-approve
openmates chats incognito-history
openmates chats incognito-history --json
openmates chats incognito-clear
incognito-history and incognito-clear are retained as compatibility no-ops. They explain that incognito chats are not stored.
Inspirations
Fetches today’s daily inspirations. Works both logged in (personalized, decrypted) and logged out (public).
openmates inspirations
openmates inspirations --lang de
openmates inspirations --json
| Option | Default | Description |
|---|---|---|
--lang <code> |
en | ISO 639-1 language code (en, de, zh, es, fr, pt, ru, ja, ko, it, tr, vi, id, pl, nl, ar, hi, th, cs, sv) |
New Chat Suggestions
Shows personalized new chat suggestions generated by the AI after conversations. Requires login.
openmates newchatsuggestions
openmates newchatsuggestions --limit 5
openmates newchatsuggestions --json
Key Files
- See cli.ts for
handleChats()and all chat subcommand handlers - See client.ts for chat API methods (
listChats,searchChats,getChatMessages,sendMessage) - See ws.ts for WebSocket streaming during
sendandnew - See shareEncryption.ts for share link encryption
Related Docs
- README – CLI overview
- Authentication – login, signup, and session security
- Embeds & Sharing – @mentions and share link encryption
- Apps & Skills – skill invocation via @mentions in chat