Skip to main content
Rrelay»

Commands

Complete reference for all Relay Telegram commands

All commands start with / and can be sent in any chat with your bot. Organized by category below.

Chat

No command needed — just send a message.

Supported input types:

  • Text messages
  • Voice notes (requires STT configuration)
  • Photos (sent to vision-capable models)
  • File attachments (text files are embedded, binary files referenced)
  • Reply to a message (text, voice, or audio) to include it as context in your prompt
  • Edit a sent message to re-prompt with the corrected text

Input limit: 32,000 characters. Send longer content as a file.

When the model provides reasoning/thinking, it appears in a collapsible blockquote above the answer.


Session Management

/new [title]

Create a new session. The new session becomes active immediately.

Examples: /new or /new Refactoring auth module

/sessions

List all sessions sorted by last modified date. Shows inline buttons to switch or delete each session.

/switch [id]

Switch to an existing session. Without an ID, shows an interactive session picker keyboard.

Examples: /switch (picker) or /switch abc123 (direct)

/delete [id]

Delete a session. Without an ID, shows a session picker. With an ID, shows a confirmation keyboard (Yes/No).

Examples: /delete (picker) or /delete abc123 (confirmation)

/current

Show the active session's ID and title.

/rename [title]

Rename the current session. Without a title, prompts for input interactively.

Examples: /rename (prompts) or /rename Auth refactor

/fork [messageId]

Fork the current session. Optionally fork from a specific message.

Examples: /fork or /fork msg_abc123


Monitor

/todo

View the AI's task checklist with status tags: [done], [wip], [pending], [cancelled].

/diff

Show a summary of code changes in the current session.

/diff full

Download the full diff as a text file.


File Operations

Commands without arguments prompt for input interactively via force_reply.

/ls [path]

List files and directories. Defaults to the project root.

Example: /ls src/

/read [path]

Read a file's contents. Without a path, prompts for input. Files larger than 15KB are sent as attachments.

Examples: /read (prompts) or /read src/index.ts

/find [query]

Find files by name pattern. Without a query, prompts for input. Shows up to 50 matches.

Examples: /find (prompts) or /find *.json

/search [pattern]

Search file contents (regex supported). Without a pattern, prompts for input. Shows up to 20 matches with file paths and line numbers.

Examples: /search (prompts) or /search TODO

/symbols [query]

Find code symbols by name. Without a query, prompts for input. Shows up to 30 matches.

Examples: /symbols (prompts) or /symbols authenticate

/status

Show git file status.


History

/history

View the last 10 messages in the current session. Includes "Fork after" buttons for assistant messages.

/summarize

Generate a session summary.

/revert

Undo the last AI change.

/unrevert

Redo a reverted change.

/abort

Cancel the currently running operation.

/share

Get a shareable URL for the current session.

/unshare

Revoke a previously shared session URL.


Shell

/shell [command]

Run a shell command natively on the OpenCode server. Without a command, prompts for input interactively.

Examples: /shell (prompts) or /shell ls -la or /shell npm test

Blocked commands: relay restart, relay stop, relay start, and relay update are blocked to prevent killing the bot process. Use /restart or /update instead.

/cmd [command]

Run an OpenCode-specific command. Without arguments, shows an interactive picker.

Available commands: init, review, stats, version, upgrade, sessions

/commands

List available OpenCode commands.


Models & Agents

/models

Display an interactive inline keyboard of available models with capability badges: [reasoning], [vision], [free]. The active model is shown with a prefix. Tap a button to select a model directly. Pagination buttons appear when there are more than 8 models.

/model [provider/model]

View or change the current model. Supports partial match.

Examples: /model to view current, /model sonnet or /model anthropic/claude-sonnet-4-20250514

/agent [name|clear]

View or change the current agent mode. Without arguments, shows an interactive picker.

Examples: /agent (picker), /agent build, /agent clear (reset to default)

/agents

List all available agents with descriptions.

/stt

View and switch the active speech-to-text provider via an interactive keyboard.


MCP

MCP servers extend the AI with additional tools. Relay includes 7 built-in tools (Browser, Fetch, Memory, Filesystem, GitHub, Context7, Relay) that can be enabled during setup. You can also add custom servers.

/mcp

Show MCP server status for all configured servers with action buttons.

/mcp add <name> local <cmd>

Add a local MCP server.

Example: /mcp add db local npx -y @modelcontextprotocol/server-sqlite

/mcp add <name> remote <url>

Add a remote MCP server.

Example: /mcp add api remote https://mcp.example.com/sse

/mcp remove [name]

Remove and disconnect a server. Without a name, prompts for input. Shows confirmation before removing.

/mcp connect [name]

Reconnect a disconnected or failed server. Without a name, prompts for input.


Cron (Scheduled Tasks)

Schedule recurring AI tasks that run automatically. All times use your configured timezone (set via /timezone). Results are delivered to your chat.

/cron

Show all scheduled jobs with action buttons: enable/disable, run now, and delete. Each job shows its schedule, next run time, last run status, and total run count. Includes an Add Job button for interactive creation.

/cron add daily <HH:MM> <Title: prompt>

Schedule a daily job. Example: /cron add daily 09:00 Git summary: Summarize recent git commits

/cron add every <interval> <Title: prompt>

Schedule a recurring job. Supports minutes (m) and hours (h). Minimum interval is 1 minute.

Examples: /cron add every 30m Health: Check server health or /cron add every 2h Status: Report system status

/cron add weekly <days> <HH:MM> <Title: prompt>

Schedule a weekly job on specific days. Days are comma-separated: mon, tue, wed, thu, fri, sat, sun.

Example: /cron add weekly mon,wed,fri 14:30 Review: Summarize open PRs

/cron add once <HH:MM> <Title: prompt>

Schedule a one-time job. It fires once at the specified time, then auto-disables (preserving run history). Toggle to re-enable for another run.

Example: /cron add once 14:30 Reminder: Time to review the open PR

How it works

  • Jobs are persisted to cron.json and survive restarts
  • The scheduler checks for due jobs every 30 seconds
  • Each job runs in an isolated session (created fresh per run, deleted after) so cron output doesn't pollute your conversation
  • An animated dots indicator cycles in the header during execution
  • A pre-flight health check verifies the AI server is alive before executing
  • If the bot restarts, missed jobs are skipped (no avalanche of past runs)

Interactive picker

Use /cron and tap Add Job to build a schedule step by step. The picker walks through schedule type, time, and days, then prompts for a job title and prompt text and creates the job automatically.


Web Monitoring

Monitor URLs for changes with AI-powered analysis. Relay fetches the page, detects changes via SHA-256 hash comparison, and sends AI-analyzed notifications when something relevant changes.

/watch

Show all watches with inline action buttons (Enable/Disable, Check Now, Delete) and an + Add Watch button to start the interactive creation flow.

/watch <url>

Start the interactive watch creation flow with the URL pre-filled. Skips straight to the interval picker.

Example: /watch https://example.com/pricing

/watch add <url> <intervalM> <Name: task>

Create a watch directly with all parameters.

Example: /watch add https://example.com/pricing 30 Pricing: Watch for price changes

Interactive creation flow

Both /watch+ Add Watch and /watch <url> lead to the same flow:

  1. URL — type the URL to monitor (skipped if provided via /watch <url>)
  2. Interval — pick check frequency from a keyboard (5m to 24h)
  3. Task — describe what changes matter

The watch name is auto-derived from the URL hostname.

Upfront validation

When creating a watch, Relay immediately fetches the URL:

  • Fetch fails (timeout, HTTP error) → watch is not created, error shown
  • Thin content (< 50 words) → watch is created with a warning (possible SPA or bot protection)
  • Success → baseline snapshot captured, so the first scheduled check can detect changes immediately

How change detection works

  • Plain HTTP fetch → HTML converted to readable text → SHA-256 hash comparison
  • If content changed → AI analyzes old vs new in an isolated session, filtered by your task description
  • Relevant changes are sent to Telegram; irrelevant ones (timestamps, ads) are silently ignored
  • Error handling: notifies on errors #1 and #3, auto-disables after 5 consecutive errors

Deep Research

/research [topic]

Run deep multi-step research on a topic. Without arguments, prompts for the topic interactively.

Examples: /research (prompts) or /research quantum computing advances

The AI creates an isolated session, breaks the topic into sub-questions, gathers information from multiple sources, cross-references findings, and delivers a structured report with key findings, analysis, and sources. Results stream live to Telegram. The session is deleted after completion.


Settings & Info

/health

Server status dashboard: provider, model, voice, system prompt, project details.

/config

Show the full provider configuration (sensitive values masked).

/timezone [tz]

View the current timezone or set a new one. Without an argument, shows the current timezone and prompts for a new IANA timezone interactively.

Examples: /timezone (view/set) or /timezone America/New_York

/system

View the current system prompt (first 500 characters), its source, and character count.

/system reload

Force-reload the system prompt from file.

/project

Show current project information.

/git

Show git branch and changed files status.

/providers

Show configured AI providers with status and model count.

/tools

List all available tools (including MCP tools).

/restart

Restart the bot process via pm2.

/update

Update Relay to the latest npm version and restart.

/help

Compact command reference.

/start

Show the welcome message with quick-start instructions.