# Grinding

Under construction.

Grinding is a macOS work assistant that lives in the menu bar, made for people who spend the day on calls and in Teams. It records a call on its own when it starts, transcribes it live on the Mac itself, translates what the others say and, at the end, pulls out the summary, the decisions and the requests. The requests from every call and chat go to a board of pending items, with a calendar. It also does dictation and a daily report. I use Grinding at work every day. I started it in October 2026, in Swift, and the code is not published yet.

## Fact sheet

- Platforms: macOS
- Started on: 2026-10-20
- Built with: Swift, SwiftUI, Core Audio, SpeechAnalyzer, Claude, MCP
- Author: Antonio Leandro (https://linkedin.com/in/tonho)

## What does Grinding do?

### Records the call without a bot

When Teams, Zoom, Slack or a call in the browser, such as Meet, opens the microphone, Grinding starts recording on two tracks: your voice from the microphone and the others' from the app's audio. The transcript comes out live, on the Mac itself, with the translation underneath.

### Requests with the line that proves them

When the call ends, Claude pulls out the summary, the decisions and the requests. Each request carries the line from the conversation and can only be used if that line exists in the transcript. One click sends it to your inbox or to Reminders.

### Live captions with translation

A floating window shows what the others say, with the translation right below, like the captions on a video. It disappears from screen sharing.

### Requests on one board

Requests from calls and Teams chats land on a single board, from Arrived to Done. Each card shows where it came from, who asked and the deadline. A request I don't accept within 7 days leaves the board.

### Done only with proof

Claude reads what came after each request and says whether it was already done. The app only moves the card to Done if the line that proves it is in a message or a commit made after the request. The reason stays saved on the card.

### Spoken deadlines become dates

When someone says “até sexta” (by Friday) or “amanhã cedo” (tomorrow morning), the app works out the date from the day it heard it and suggests it on the calendar, with a ~ in front. The model only copies the phrase; the code does the math. I drag the request to a day to set the date.

Let's talk: tonhowtf@gmail.com
