Skip to content

feat(notify): notify tool — native macOS notification (#17) - #152

Merged
iret77 merged 1 commit into
mainfrom
feat/issue-17-notify-tool
Aug 1, 2026
Merged

feat(notify): notify tool — native macOS notification (#17)#152
iret77 merged 1 commit into
mainfrom
feat/issue-17-notify-tool

Conversation

@iret77

@iret77 iret77 commented Jul 31, 2026

Copy link
Copy Markdown
Contributor

Neues notify-MCP-Tool: fire-and-forget native macOS-Notification (tauri-plugin-notification → UNUserNotificationCenter). Kein Dialog/Registry/Progress — Companion reicht an OS durch, gibt sofort {ok} zurück. title/body + optional subtitle/sound. Rust- + Python-Bridge.

Build: Rust 141✓, clippy✓, Python 41✓. Mac-E2E offen: Banner erscheint, einmaliger Permission-Prompt, denied→{ok:false}.

Closes #17


Batch-Kontext: Teil eines 6-PR-Sets (#141, #146, #23, #24, #25, #17) aus parallelen Sub-Sessions, das zusammen einen Release ergibt.

  • Kein Versions-Bump in diesem PR — die Version wird gesammelt beim Release gebumpt (keine Rapid Releases).
  • Empfohlene Merge-Reihenfolge: 6/6. Spätere PRs werden nach vorherigen Merges auf main rebased (Hotspots: mcp.rs, http.rs, skill.md, CHANGELOG.md, server.py).
  • Kein Push auf main; Merge via PR (AGENTS.md). CI baut/testet; interaktives Dialog-E2E nur am Mac verifizierbar.

View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need. Autofix is disabled.

Fire-and-forget async-completion signal for the agent ("tests green",
"deploy done", "merge conflicts, need you"). Unlike confirm/ask/form/
gallery this does not block on a user response: the companion hands the
notification straight to macOS's UNUserNotificationCenter via
tauri-plugin-notification and the tool call returns {ok: true}
immediately — no dialog window, no registry entry, no progress
keepalive.

- New POST /notify endpoint on the companion (http.rs), with pure/
  unit-tested helpers for title validation and body+subtitle
  composition.
- Registered as an MCP tool in both bridges: the native Rust server
  (mcp.rs) and the Python remote bridge (aiui_mcp/server.py), same
  {title, body, subtitle?, sound?} shape and error handling in both.
- docs/skill.md (canonical + the python-bundled copy) documents notify
  alongside confirm/ask/form/gallery, with anti-patterns and an updated
  tool-choice table.
- CHANGELOG + version bump (0.8.3 -> 0.9.0, all three manifests) per
  this repo's per-feature versioning convention.
@iret77
iret77 force-pushed the feat/issue-17-notify-tool branch from 754b08e to 70ce19d Compare August 1, 2026 10:24
@iret77
iret77 merged commit 9934816 into main Aug 1, 2026
4 checks passed
@iret77
iret77 deleted the feat/issue-17-notify-tool branch August 2, 2026 20:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add notify tool (native macOS notification)

1 participant