Skip to content

Releases: agmonetti/lazyteams

v0.1.4

Choose a tag to compare

@github-actions github-actions released this 06 Sep 14:07

Full Changelog: v0.1.3...v0.1.4

v0.1.3

Choose a tag to compare

@github-actions github-actions released this 05 Sep 22:56

Full Changelog: v0.1.2...v0.1.3

v0.1.2

Choose a tag to compare

@github-actions github-actions released this 02 Sep 14:18

What's Changed

Fixed

  • DMs – unread detection: Improved reliability of the unread badge using the chat's lastUpdateTime and a more flexible consumption-horizon identity match. Sending a message now immediately marks the conversation as read. (2996a74)
  • Auth – token renewal loop: Cleaned stale Playwright lock symlinks on startup and added a guard that prevents the auth helper from entering an infinite renewal cycle. (e355736)
  • UI – hidden teams/channels persistence: Hidden-teams and hidden-channels preferences are now correctly persisted across restarts. Navigation now gracefully falls back to the first visible item when the remembered index is hidden. (e56fcde)
  • UI – layout: Teams header stays anchored at the top. The channels list is now windowed with overflow indicators, preventing it from pushing Teams off-screen. Removed the redundant "Chats" sub-header in the DMs workspace for consistent vertical alignment. (ad10a2a)
  • Files – breadcrumb during auto-refresh: Auto-refresh no longer resets to the channel root while the user is browsing a subfolder, keeping the breadcrumb and file listing in sync. (d31be86)
  • Self-updater – file permissions: --update no longer strips execute bits from the installed binary on Unix systems. The replacement now preserves the destination's existing mode and always ensures the executable bit is set. (b2b2439)

Added

  • Files – metadata toggle: Press t in the Files view to show or hide file metadata (size, modified date, etc.). The preference is persisted across sessions. (32cf51c)

Internal / CI

  • Centralized cross-platform release builds in a new make dist target. The make release target now validates the version, checks the working tree, pushes the branch and tag, and rolls back the tag on failure.
  • Fixed duplicate checksum lines in SHA256SUMS caused by an overlapping glob pattern.

Full Changelog: v0.1.1...v0.1.2

v0.1.1

Choose a tag to compare

@github-actions github-actions released this 19 Aug 14:43

lazyteams v0.1.1

What's new

  • lazyteams --update — the TUI can now update itself and the auth helper
    from the latest GitHub release. It downloads the matching platform binaries,
    verifies each against the release's SHA256SUMS before touching anything,
    and restarts after confirmation.
  • Self-healing recovery — if the teams list or your profile fails to load
    once at startup (transient network error or a race with token renewal), the
    app now retries automatically instead of leaving a blank Teams list or
    mis-marking DMs as unread.
  • Update banner — when a new version is available, the footer shows the
    notice for 60 seconds after launch, then returns to the normal hints.

Assets

Prebuilt binaries for linux (amd64/arm64), macOS (amd64/arm64) and
Windows (amd64) are attached. A SHA256SUMS file with the checksum of every
binary is included and verified by lazyteams --update.

# Example for Linux amd64
chmod +x ./lazyteams-linux-amd64
./lazyteams-linux-amd64        # or lazyteams-auth-linux-amd64 on first run

Rename the downloaded file to match your platform and architecture from the
release assets above.

Notes

  • --update requires a versioned build (a dev build always sees any release
    as newer). See the Updating docs.
  • Not affiliated with Microsoft — independent, educational, unofficial.
  • Licensed under GPLv3.

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 18 Aug 20:18

lazyteams v0.1.0

lazyteams is a keyboard-driven Microsoft Teams client that runs entirely in your terminal — no Electron, no browser. It talks directly to the Microsoft Graph and Teams APIs with an authenticated session, and renders everything with Bubble Tea.

What you get

  • 4 workspaces — Teams & Channels, DMs & Group Chats, Activity, and Education Assignments.
  • Full chat — send, edit and delete messages; threaded replies; @mentions autocomplete; reactions; read receipts; clipboard image paste (Ctrl+P); native Markdown rendering; live search (/); infinite scroll.
  • Files — recursive Drive browser, chunked uploads, multi-file downloads, inline text preview, Office Online fallback, create/delete folders.
  • Team management — create/delete teams and channels, manage members, hide/unhide items.
  • Direct messages — search users (including external by exact email), personal notes auto-discovery, dynamic sorting by unread + activity, presence indicators.
  • Assignments — view instructions, download reference materials, upload/submit/undo-submit your work.
  • Presence — read your contacts' status and set your own.
  • Mobile mode — single-panel layout for narrow terminals (Ctrl+B, or automatic under 120 columns).

How it works

On first run, lazyteams-auth opens a browser for your Microsoft login, captures the session tokens, and stores them locally (~/.config/lazyteams/tokens.env). The TUI then renews expired tokens automatically in the background. Nothing is sent anywhere except to Microsoft's own endpoints using your own session.

Install

Static binaries for linux (amd64/arm64), macOS (amd64/arm64) and Windows (amd64) are attached to this release.

# Example for Linux amd64
chmod +x ./lazyteams-linux-amd64
./lazyteams-linux-amd64        # or lazyteams-auth-linux-amd64 on first run

Rename the downloaded file to match your platform and architecture from the assets above. Prefer building from source? See the README — you only need Go 1.26.6+.