A Command Line Interface (or TUI) to interact with Microsoft Teams that uses the teams-api Go package.
Upstream fossteams/teams-cli has been archived and is read-only. This fork is the active maintenance branch for the codebase, and new work should target this repository.
This project is still WIP and will be updated with more features. The goal is to have a CLI / TUI replacement for the Microsoft Teams desktop client. Today the client is primarily read-only (browsing conversations and reading recent messages).
We have moved our comprehensive documentation to the Wiki.
Please browse the GitHub Wiki for detailed guides:
- Golang 1.26.1 or newer
- Valid Teams JWT files generated with teams-token
- A terminal with cursor-addressing support (e.g. Terminal.app, iTerm2)
Run the app locally once you have obtained your tokens:
go run ./To limit each conversation view to the most recent N messages:
go run ./ msg=20For more runtime flags and usage examples, see the Usage Wiki.
- Browse your Teams, Channels, and direct/group Chats from a TUI.
- Automatically load and read recent messages in selected conversations.
- Background refresh for both message lists and conversation trees.
- Navigate the UI entirely with keyboard shortcuts.
- Clean shutdown on
qorCtrl+C.
- Arrow Keys: Move up/down lists, expand (
Right) or collapse (Left) trees. - Enter: Open the selected channel or chat.
- Tab: Switch focus between the conversations tree and messages pane.
- Esc: Go back one level or return to the conversations tree.
- ?: Show/hide the full keyboard help inside the app.
- q: Quit the app.
If you have issues logging in or starting the app, run the built-in doctor to test token validity and network reachability:
go run ./ doctor- Found an issue or have a feature request? Please use our built-in issue templates.
- Found a security vulnerability? Please review our SECURITY.md guidelines privately before opening a public issue.
- View our CHANGELOG.md for detailed release notes and updates.
- This fork maintains the
github.com/fossteams/teams-climodule path for compatibility, but the releases published here are the officially supported install path.