Griasa
概览
作者提供的说明(英文原文)
Local-first Mac meeting memory: promises, decisions, people, the next-call brief. Read-only.
PopNx MCP 的三大支柱
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
- 用户评价i暂无评价评价功能将在后续阶段与账户功能一起开放
- 我们的基础检查i1 项中通过 1 项依据公开信息检查;尚未扫描代码
- 使用情况i非常新★ –
它能帮你做什么
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
- 连接方式: 在你的电脑上运行
- 传输方式: stdio
- 分类: 文档、表格与办公
安装
选择你使用的 AI 应用,然后复制设置。
安装之前
- 基础检查:1 项中通过 1 项
- 在你的电脑上运行,拥有你的用户账户的权限(文件、网络、应用)。
- 注册中心没有列出需要填写的密钥。
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
链接指向作者自己的文件;我们不托管也不重新打包它。打开文件后,Claude Desktop 会进行安装。
在终端中运行这条命令
浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它能做什么
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
基础检查i
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月9日
- ✓ 通过
作者与仓库一致
注册名称已通过 GitHub 账户 Stari-am 验证,该账户拥有此仓库
- … 尚未检查
仍在维护
我们还没有从 GitHub 读取这个仓库
- … 尚未检查
有许可证
我们还没有从 GitHub 读取这个仓库
- – 不适用
端点有响应
它在你的电脑上运行,没有互联网端点
- – 不适用
使用 OAuth 登录
在你的电脑上运行,改用本地设置
- … 尚未检查
工具描述中没有隐藏指令
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与“文档、表格与办公”中的其他服务器比较i
- 星标数多于此分类中其他 3608 个服务器的 0%
- 发布到注册中心的时间比此分类中其他 3608 个服务器的 91% 更新
- 基础检查结果等于或优于此分类中其他 3608 个服务器的 100%
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
常见问题
Griasa 安全吗?
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
它需要哪些密钥或代码?
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在我的电脑上运行还是在云端?
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
它还在维护吗?
GitHub 仓库最后更新于–,最新版本(1.0.27)于前天进入注册中心。
哪些应用可以使用它?
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 MCPB。
有什么可以替代它?
同一分类中有:Agent-Native Calendar, Excel MCP Server, MCP Server for Excel
替代选择
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:↓ 每周下载量i★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
Excel MCP Server
Create and edit Excel files with AI: charts, PivotTables, formulas. No Excel needed.
MCP Server for Excel
Excel automation for AI - Sheets, Power Query, DAX, VBA, Tables, Ranges and more. Windows only.
作者的 README
打开 README
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
Griasa
A promise with a date turns up when the date passes. One without a date never turns up at all.
Griasa records your meetings on your own Mac, works out who promised what, and puts the second kind in front of you before your next call with the person you owe. A menu-bar app, not a service.
Download for macOS · The project page · What changed
Five minutes before a call, without taking keyboard focus. Everybody in these screenshots is invented — the app is pointed at a made-up team to photograph it, with Support/shoot-docs.sh .
What it does
Before the call. Minutes before a calendar event, a panel appears with who is on it and what you last discussed. Open promises are grouped by *why* you are being shown them — overdue, promised in an earlier call with exactly these people, from a one-to-one with somebody in the room, or with these people from somewhere else. A promise involving nobody in the room is not shown at all. One button opens the Zoom or Meet link and starts recording.
During. Your microphone and everything the Mac plays are captured as two tracks, which is what lets the transcript say who was speaking. Make a reminder from anything on screen (⌃⌥⌘R) and it remembers the app, window and browser tab it came from. Hold a key and talk, and the words land in whatever app has focus.
After. Promises are pulled out of the transcript — who took what on and by when — split into what you owe and what you are owed. A later conversation can *propose* closing one, and has to quote the sentence that says it was finished; nothing closes itself. Anything old and undated gets asked about, because that is the kind that never surfaces on its own. Every colleague gets a page built from the meeting roster, with no setup step.
And your own assistant can read it. Claude Code, Codex, Cursor — anything speaking MCP — over a local, token-protected, read-only endpoint, and Claude Desktop installs it in one click.
Your day on one screen. Today shows the meetings ahead and what you and each table owe each other, your overdue promises, what your team is late on and the decisions due for another look. A morning brief brings it up at 8:00, and a desktop widget keeps it in view. Each meeting also yields its decisions: what was settled, why, by whom, and when to look at it again.
From the iPhone, hands-free. No iPhone app is needed. Say "Hey Siri, Griasa note" in the car, or save a voice memo or a recorded call to iCloud Drive, and it is waiting on the Mac as a meeting with its promises. Your dated promises sit in a "Griasa" list in Apple Reminders, and ticking one on the phone closes it here.
Everything runs at once: you can dictate while a conversation is being recorded. Most of the pieces are small, and Apple could ship several of them tomorrow. What is hard to copy is that they are one thing — the reminder made during a call, the promises extracted from that same call, the page for the person who made them and the brief before the next meeting with them all point at the same people and the same history. Separate apps would need separate integrations and would still lose the joins, because a join is not a feature any one of them owns.
Every feature, by the name used for it in the app, is in [docs/FEATURES.md](docs/FEATURES.md). [The project page](https://stari-am.github.io/griasa/) has the rest: more screenshots, what leaves your Mac and what doesn't, the engineering that turned out harder than it looked, and the questions people actually ask.
Privacy Policy
The short version is below; the full policy is at stari-am.github.io/griasa/privacy.html.
- Audio never leaves your Mac. Transcription is local — Apple's recognizer or
whisper.cpp. There is no Griasa server and no account. - Text stays on the Mac by default. A new install uses a local model that Griasa sets up after one question; Anthropic, OpenAI or Gemini are used only if you choose one.
- The calendar is read, never written. Reminders are created, but only when you ask for one.
- API keys are kept in the macOS keychain, encrypted, not in a plain preferences file.
- Every permission is optional, and the app says what stops working if you decline it.
- An optional reminder to tell people they're recorded. The other side of a call gets no recording indicator from macOS. Turn on *Settings → Meetings → Remind me to tell everyone*, and starting a recording offers a sentence to paste into the call's chat.
- Notes from other tools come in too. *Import Meeting Notes…* turns a ChatGPT Record, Zoom or Meet summary into a Griasa meeting — promises, people pages, the brief — dated by when the meeting happened.
- Old audio can delete itself. Transcripts and notes are kept; the audio of transcribed recordings can be removed after a chosen period (*Settings → Meetings → Recordings on disk*). It is nearly all of the space recordings take.
- Chats you bring in stay on the Mac. Conversations (a Telegram export you choose, only the chats you tick) are stored in a local database that only your account can read, summarized by the same model as everything else, and deleted with *Delete chat*. Assistants can offer chats only if you switch on *Let assistants add to Griasa* (off by default), and what they offer waits for your review.
- Companies can lock it down with MDM — on-device AI only, a company model server, MCP off. See Support/mdm.
Download
[Download the latest release — signed, notarized, universal](https://github.com/Stari-am/griasa/releases/latest), or ./build.sh to compile it yourself.
With Homebrew, one command installs the app and both engines it uses (whisper.cpp for speech, llama.cpp for the on-device AI):
brew trust --cask stari-am/tap/griasa
brew install --cask stari-am/tap/griasa
Homebrew 7 loads casks from taps outside its own only after you trust them; the first line does that for this one cask.
Free, and nothing is held back: there is no license check, and under GPL-3.0 there could not be a meaningful one. If it saves you time, $29 on Ko-fi would make my day — any amount does, and none is fine too.
Think of it the way you think of WinRAR: the trial never ends and it keeps working whether or not you pay. WinRAR apparently makes real money like that, which leaves the mystery nobody has solved in thirty years — *somebody* pays. Feel free to be one of the somebodies.
The two things that make the list shrink: evidence that something was finished, and a question about what has carried no date for a month.
Documentation
Everything below is for running, building and changing it.
How dictation behaves
| Trigger | Hold Right Option / Right Command / Fn (configurable) — works in any app's text field |
| Insertion | Live typing as you speak, then a single corrected replacement on release |
| Auto edits | Filler words removed, punctuation restored, lists formatted, self-corrections resolved |
| Tone | The frontmost app's name is passed to the AI prompt, so Slack reads casual and Mail reads formal |
| Speech recognition | On-device (Apple recognizer, or whisper.cpp locally) — audio never leaves the Mac |
| Cloud usage | Only the short *cleanup* step may call an LLM, and only text, and only if you enable it |
| Languages | Any locale the system offers; two or three at a time run as parallel legs and the winner is locked in |
| Snippets | Typed abbreviations expand in place, including ;ai … ;; for an inline question |
Build & run
./build.sh # produces "Griasa Dev.app"
open "Griasa Dev.app" ./test.sh # the invariant checks; release.sh runs these first
A local build announces itself: amber DEV icon, its own file name, "Griasa Dev" in Privacy settings and Activity Monitor, and a squared-off menu-bar glyph. It also uses its own bundle identifier, am.stari.griasa.dev. That last part is not cosmetic — macOS stores a privacy grant against the identifier *and* the signature it saw, so two differently-signed builds sharing one identifier overwrite each other's grants and both end up asking every launch. Separate identifiers cost one round of permission prompts, once. release.sh does none of this; the signed build carries the real identifier, icon and name.
test.sh checks the rules live typing must never break — emitted text only ever grows, a hypothesis that re-words the start of an utterance may not extend its end, the language leg locks once. The first two were regressions that actually shipped; they now fail a command instead of a text field. There is no test framework involved: swiftc compiles PartialStabilizer.swift with the checks and the binary exits non-zero, so this works on a machine with only the Command Line Tools. Each failure message states the rule and why it matters, because "expected true, got false" tells whoever reads it nothing.
Benchmark. How well Griasa finds promises is measured on six invented meetings in benchmark/ — Russian, English, Ukrainian and mixed, from a 12,000-character sync to a 90,000-character roadmap session — each with the promises a person marked by hand. "Griasa Dev.app/Contents/MacOS/Griasa" --benchmark benchmark/meetings runs today's single pass, the long-meeting path and (with --cloud ) a cloud reference on them and prints recall, precision and mine/theirs accuracy. Nobody in them is real, so anyone can rerun it and compare.
Distribute it yourself
./release.sh # signed + notarized dist/Griasa-<version>.dmg — the one on Releases
./dist.sh # ad-hoc signed dmg, no Apple account needed
release.sh is the path used for the published build: Developer ID signature, Hardened Runtime, Apple's notarization ticket stapled to both the app and the disk image, then verified the way a stranger's Mac will — spctl, stapler, and lipo -archs on the finished file rather than on the build settings. It needs a Developer ID Application certificate and a stored notarytool credential; run it without them and its preflight explains exactly what to create, including the two traps that cost the most time (importing the certificate with security import because a double-click reports -25294, and installing the G2 intermediate separately or codesign dies with "unable to build chain to self-signed root").
dist.sh is for handing a build to a colleague with no Apple Developer account: a universal dmg with an app icon, an /Applications shortcut, and INSTALL.txt.
只显示了开头部分;其余内容请在仓库中阅读