Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Roadmap

Completed

  • Send and receive plain text messages (1:1 and group)

  • Receive file attachments (displayed as [attachment: filename])

  • Typing indicators (receive and send)

  • SQLite-backed message persistence with WAL mode

  • Unread message counts with persistent read markers

  • Vim-style modal editing (Normal / Insert modes)

  • Responsive layout with auto-hiding sidebar

  • First-run setup wizard with QR device linking

  • TUI error screens instead of stderr crashes

  • Commands: /join, /part, /quit, /sidebar, /help

  • Load contacts and groups on startup (name resolution, groups in sidebar)

  • Echo outgoing messages from other devices via sync messages

  • Contact name resolution from address book

  • Sync request at startup to refresh data from primary device

  • Inline image preview for attachments (halfblock rendering)

  • New message notifications (terminal bell, per-type toggles, per-chat mute)

  • Command autocomplete with Tab completion

  • Settings overlay

  • Input history (Up/Down to recall previous messages)

  • Incognito mode (--incognito)

  • Demo mode (--demo)

  • Delivery/read receipt display (status symbols on outgoing messages)

  • Contact list overlay (/contacts)

  • Copy to clipboard (y/Y in Normal mode)

  • Full timestamp on scroll (status bar shows date+time of focused message)

  • Message reactions (emoji picker, badge display, full lifecycle with DB persistence)

  • @mention autocomplete (type @ in group or 1:1 chats)

  • Visible message selection (focus highlight, J/K message-level navigation)

  • Startup error handling (signal-cli stderr captured in TUI error screen)

  • Reply to specific messages (quote reply with q key)

  • Edit own messages (e key, “(edited)” label, cross-device sync)

  • Delete messages (d key, remote delete + local delete)

  • Message search (/search, n/N navigation)

  • Send file attachments (/attach command with file browser)

  • /join autocomplete (contacts and groups with Tab completion)

  • Send typing indicators (auto-start/stop on keypress)

  • Send read receipts (automatic on conversation view, configurable)

  • System messages (missed calls, safety number changes, group updates, expiration timer)

  • Message action menu (Enter in Normal mode, contextual actions on focused message)

  • Text styling (bold, italic, strikethrough, monospace, spoiler rendering)

  • Display stickers (shown as [Sticker: emoji] in chat)

  • View-once messages (shown as [View-once message] placeholder)

  • Cross-device read sync (sync read state across linked devices)

  • Disappearing messages (honor timers, countdown display, /disappearing command)

  • Group management (/group command: view/add/remove members, rename, create, leave)

  • Message requests (detect unknown senders, accept/delete with banner UI)

  • Block/unblock contacts (/block, /unblock commands)

  • Mouse support (click sidebar, scroll messages, click input bar, overlay scroll)

  • Color themes (selectable themes via /theme or /settings)

  • Desktop notifications (OS-native via notify-rust, configurable toggle)

  • Link previews (URL preview cards with title, description, thumbnail)

  • Polls (create with /poll, vote overlay, inline bar charts)

  • Pinned messages (pin/unpin with p, duration picker, banner display)

  • Identity key verification (/verify overlay with trust management)

  • Profile editor (/profile overlay for Signal profile fields)

  • About overlay (/about command showing app info)

  • Sidebar position setting (left or right placement)

  • Publish to crates.io (cargo install siggy)

  • Rename to siggy (auto-migration from signal-tui paths)

  • Forward messages (f key, filterable picker overlay)

  • Scroll position memory per conversation

  • Multi-line message input (Alt+Enter / Shift+Enter for newlines)

  • Message history pagination (scroll-up to load older messages)

  • Configurable keybindings (profiles, in-app rebinding, TOML overrides)

Future

No planned features at this time. Have an idea? Open an issue.