No description
Find a file
mrkesu 621311c4cd fix(tui): remove dead code and guard against zero-poll config
- Clamp message_poll_secs/chat_poll_secs to minimum 1
- Remove unused fetch_all_pages from graph client
- Remove presence_status placeholder field
- Wire cache.clear() into manual refresh
2026-07-21 14:11:25 +02:00
src fix(tui): remove dead code and guard against zero-poll config 2026-07-21 14:11:25 +02:00
.gitignore feat: initial commit of TUI client for Microsoft Teams 2026-07-10 22:37:15 +02:00
AGENTS.md chore: update dependencies in Cargo.lock and enhance project guidelines 2026-07-21 13:27:06 +02:00
Cargo.lock chore: update dependencies in Cargo.lock and enhance project guidelines 2026-07-21 13:27:06 +02:00
Cargo.toml refactor(tui): align with cross-app conventions 2026-07-21 13:19:43 +02:00
README.md feat: initial commit of TUI client for Microsoft Teams 2026-07-10 22:37:15 +02:00

tiims

A TUI client for Microsoft Teams chat. Read and send chat messages from the terminal.

Authenticates through the system's Microsoft Identity Broker via D-Bus and syncs with Microsoft Graph API.

Requirements

  • Linux with Microsoft Identity Broker (microsoft-identity-broker on the D-Bus session bus)
  • Rust 2024 edition

Install

cargo install --path .

Usage

tiims                                 # uses default Office client ID
tiims --client-id <ID>                # override client ID
TIIMS_CLIENT_ID=<ID> tiims           # via env var

Keyboard Shortcuts

Navigation

Key Action
j / Move down
k / Move up
Tab Switch focus (chats ↔ messages)
Enter Select chat
Esc Back / cancel input

Actions

Key Action
i Start composing a message
Enter Send message (in input mode)
r Force refresh
q Quit

Scrolling

Key Action
PgUp / PgDn Scroll message history
G Jump to latest messages

Polling

The active chat refreshes every 5 seconds and the chat list every 30 seconds. Press r to force an immediate refresh.