anamra

mcp
Guvenlik Denetimi
Basarisiz
Health Uyari
  • License — License: Apache-2.0
  • Description — Repository has a description
  • Active repo — Last push 0 days ago
  • Low visibility — Only 9 GitHub stars
Code Basarisiz
  • rm -rf — Recursive force deletion command in scripts/release.sh
Permissions Gecti
  • Permissions — No dangerous permissions requested

Bu listing icin henuz AI raporu yok.

SUMMARY

A native macOS capture-to-outcome workspace: screenshot, OCR, voice, AI-assisted drafts, local semantic memory, and confirmable Apple exits.

README.md

Anamra main window

Anamra · 安记

把稍纵即逝的信息,变成可确认的下一步。
A native macOS capture-to-outcome workspace with local memory and human-confirmed actions.

latest release macOS 14+ native Swift BYOK stored in Keychain Apache-2.0 license

下载 · 功能 · 隐私边界 · 贡献 · 领域模型 · 架构决策

Anamra 是一款原生 macOS 菜单栏应用。它接住截图、文字、剪贴板、拖放、网页片段和语音,把内容交给 AI 整理成任务、日程、笔记或可复制文本;所有外部写入先形成草稿,由你确认后才执行。

“安记”不是另一个要求你维护的收件箱。它更像 Mac 上的一层工作记忆:今天要做什么、哪些内容还需复核、过去完成了什么,以及眼前这条信息与历史里的什么有关,都落在同一个本地工作面里。

功能

捕获:少一点仪式感

  • 快速文字记录、剪贴板图片识别、拖放与网页剪藏;
  • 截图取字、滚动取字、翻译、复制、保存和原生标注;
  • 语音记录进入同一条澄清流程,而不是形成孤立录音;
  • 全局快捷键由用户自行设置,默认不抢占系统按键。

整理:AI 提议,人来决定

  • AI 将输入整理成任务、日程、笔记或文本结果;
  • 接管式对话可以继续补充时间、地点、优先级和上下文;
  • 收件箱与复核视图保留确认门,不把模型输出直接当事实;
  • Planner 可以拆解、排序和安排工作,高风险操作仍需确认。

记忆:数据在本机形成连续上下文

  • Today、Inbox、Review、Upcoming、Notes 与 Accomplishments 共用本地 SwiftData 数据;
  • BM25 与向量召回组合,既能按关键词搜索,也能按含义找回相关任务和笔记;
  • 完成记录与贡献热力图让已完成的工作重新可见;
  • 可选 MCP 助手默认关闭,只通过本机回环地址连接运行中的 Anamra。

写出:Apple 应用是出口,不是第二套真相

  • 可选地把确认后的内容单向写入 Apple Reminders、Calendar 或 Notes;
  • Anamra 只从 Reminders 读回“已完成”,不做可变字段的双向合并;
  • 浮动 Apple Notes 是一个明确例外:它只是所选笔记的桌面视口,正文仍以 Apple Notes 为准。

Anamra compact result island

工作方式

flowchart LR
  Capture["捕获\n截图 · 文字 · 语音 · 剪贴板"] --> Draft["OCR / AI 草稿"]
  Draft --> Review["对话澄清与人工确认"]
  Review --> Local["本地 SwiftData\n任务 · 笔记 · 回执"]
  Local --> Recall["搜索、语义召回与 Planner"]
  Local --> Plan["WritePlan"]
  Plan --> Apple["可选 Apple 出口\nReminders · Calendar · Notes"]
  Apple --> Done["仅完成状态读回"]
  Done --> Local

两个不变式贯穿代码库:AI 输出先成为可检查的草稿;外部写入必须留下 WritePlan / WriteReceipt 证据。

安装

  1. Anamra Releases 下载最新的已签名、公证 DMG。
  2. Anamra 拖入 Applications,然后从菜单栏启动。
  3. 在设置中选择模型服务并填写自己的 API Key;密钥保存在 macOS Keychain。
  4. 按需要绑定全局快捷键,并授予截图、麦克风、日历、提醒事项或自动化权限。

不授予屏幕录制权限时,文字记录等非截图流程仍可使用。没有配置云端 Key 时,本地 Apple Vision OCR 仍可工作。

隐私边界

  • 本地数据源:任务、笔记、复核状态和写入回执保存在本地 SwiftData;
  • 自带密钥:在线服务使用用户自己的 Key,并存放在 Keychain,不写入仓库;
  • 本地路径:Apple Vision OCR 在设备上执行;Apple 系统 embedding 可作为无 Key 的本地回退;
  • 云端路径:选择云端 OCR、向量、语音、翻译或语言模型时,相应输入会直接发送给所选服务商;
  • 无静默写出:模型结果先成为草稿,确认后才写入外部系统;
  • 无行为分析 SDK:当前代码库没有集成遥测或用户行为分析服务。

这不是“所有功能都离线”的承诺。Anamra 的原则是让每一条联网路径可辨认、可选择,并让本地数据模型保持 canonical。

构建与验证

需要 macOS 14+、Xcode 和 XcodeGen

brew install xcodegen

scripts/verify.sh              # Core tests → macOS build
(cd Core && swift test)        # Core unit tests only
scripts/build.sh               # XcodeGen + xcodebuild
scripts/release.sh check       # release preflight

project.yml 是 Xcode 工程的唯一来源;不要手改被忽略的 .xcodeproj

代码边界

project.yml          XcodeGen 工程定义
Core/                领域模型、规则、服务与 SwiftData 持久化实体/仓库
macOS/Sources/       SwiftUI 界面、AppKit 集成、捕获与平台副作用
macOS/MCPHelper/     独立的 stdio MCP helper
docs/adr/            架构决策记录
scripts/             构建、验证与发布脚本

Core 不依赖 AppKit 或 SwiftUI。SwiftData 是有意保留的例外:持久化实体与仓库位于 Core,ModelContainer 接线和界面状态位于 macOS target。项目使用 Swift tools 6.0,但语言模式暂时保持 Swift 5。

开源与致谢

Anamra 以 Apache License 2.0 开源。随应用分发的第三方组件及其许可见 THIRD_PARTY_NOTICES.md 和设置中的“开源许可”。

截图编辑器的分层渲染设计受到 BetterShot 启发。Anamra 没有内嵌 BetterShot 的代码或图片资产;这是一项设计致谢,不是捆绑依赖。相关边界记录在 ADR 0006

欢迎在公开 issue 中报告可复现的问题;涉及隐私、密钥或安全漏洞时,请使用 GitHub Private Vulnerability Reporting,不要粘贴真实用户数据。

参与贡献

欢迎提交聚焦的 bug 修复、测试、文档和功能改进。开始前请阅读 CONTRIBUTING.md,并确保 scripts/verify.sh 通过。请只使用合成示例,不要在公开 Issue 或 PR 中上传真实用户数据。

Yorumlar (0)

Sonuc bulunamadi