Hi, I'm Omar Shahine I build native macOS apps, command-line tools, MCP servers, and agent plugins for personal productivity. Most of my projects start as small tools for my own…
Hi, I'm Omar Shahine




I build native macOS apps, command-line tools, MCP servers, and agent plugins for personal productivity. Most of my projects start as small tools for my own workflows: managing a Mac, automating home devices, triaging information, tracking travel, or connecting AI assistants to the apps I already use.
I work at Microsoft during the day. The projects here are nights-and-weekends work, built mostly with Claude Code.
What I'm Building Around
- Personal AI assistants with real tools - OpenClaw plugins, Claude Code plugins, MCP servers, and local automations that can actually act on calendars, mail, notes, home devices, and services.
- Native macOS utility apps - Swift apps that turn power-user workflows into focused, local-first tools.
- Practical CLIs - Small command-line tools for home automation, reservations, finance, travel, and personal operations.
Featured Projects
🦞 HomeClaw - HomeKit control for lights, locks, thermostats, and scenes from Claude Desktop, Claude Code, or OpenClaw. Includes a native macOS menu bar app and split-process architecture for Apple's HomeKit constraints.
📍 findmy-cli - Query Find My friend locations on macOS through UI automation, screenshots, Vision OCR, and structured CLI output.
💬 Obsidian Chat - Agentic AI chat inside Obsidian with Anthropic and OpenAI support, note reading, note editing, and mobile-first UI.
🍎 Apple PIM CLI Tools - Native macOS access to Calendar, Reminders, Contacts, and Mail through Apple frameworks for Claude Code and OpenClaw.
📧 Fastmail Remote - Remote MCP server for Fastmail on Cloudflare Workers, secured with Cloudflare Access OAuth.
🛠️ ShellCraft - Native macOS app for managing shell configuration, including aliases, PATH, SSH keys, Git config, Homebrew, and Claude Code settings.
Agent and OpenClaw Plugins
I'm a maintainer of OpenClaw, an open source personal AI assistant. Many of these projects also ship as Claude Code plugins.
💡 lutron-cli - Lutron Caseta lighting, shades, fans, warm-dim bulbs, Pico remotes, scenes, Smart Away, battery checks, and whole-home state export.
🟢 aqara-cli - Aqara Open Cloud API client — homes, devices, rooms, scenes, rename and move, OAuth browser bootstrap, and a launchd refresher so tokens never expire. The CLI everyone reaches for after the official Aqara MCP server proves too limited.
🍽️ restaurant-cli - Pluggable restaurant reservation booking across Resy and OpenTable, with search, booking, cancellation, listing, and timed-release sniping.
📦 openclaw-parcel - Package delivery tracking through Parcel, including add, list, and status workflows from the terminal.
📚 openclaw-instapaper - Instapaper reading-list management, archiving, and highlight export to Obsidian.
🎬 trakt-plugin - Movie and TV tracking through Trakt.tv with search, watch history, watchlist, show progress, and mark-as-watched flows.
🌡️ daikin-cli - Daikin One+ thermostat control from the command line and natural-language assistant workflows.
🔌 Chief-of-Staff Plugin Template - Template for building Claude Code personal assistant plugins, including email triage, travel, credit-card benefits, and file-renaming examples.
📝 Rename Agent - AI-powered file renaming agent built with the Claude Agent SDK.
Other Useful Tools
🔥 Valor Fireplace CLI - Local-network control for Valor fireplaces from the command line.
🏠 homebridge-valor-fireplace - Homebridge integration for Valor fireplaces.
💰 FamZoo YNAB Sync - Sync FamZoo family finance transactions with YNAB budgets.
✅ Version Consistency Action - GitHub composite action for keeping version strings aligned across JSON manifest files.
🍺 Homebrew Tap - Homebrew formulas for my CLIs and tools.
Elsewhere
- Website: omarknows.com
- AI site: omarknows.ai
- GitHub: github.com/omarshahine
- X: @OmarShahine
-
chief-of-staff-template ★ PINNED
Template for building Claude Code personal assistant plugins
JavaScript ★ 8 1mo agoExplain → -
claude-rename-agent ★ PINNED
AI-powered file renaming agent built with Claude Agent SDK
Python ★ 8 1mo agoExplain → -
homebridge-valor-fireplace ★ PINNED
Connects real fire with Homebridge.
TypeScript ★ 0 26d agoExplain → -
Apple-PIM-Agent-Plugin ★ PINNED
Native macOS integration for Calendar, Reminders, and Contacts using EventKit and Contacts frameworks
Swift ★ 6 6d agoExplain → -
HomeClaw
HomeKit smart home control via MCP — lights, locks, thermostats, and scenes for Claude Desktop, Claude Code, and OpenClaw
Swift ★ 150 3d agoExplain → -
findmy-cli
No description.
Go ★ 20 1mo agoExplain → -
obsidian-chat
Agentic AI chat plugin for Obsidian. Two providers, best models, no bloat.
TypeScript ★ 11 25d agoExplain → -
fastmail-mcp-remote
Remote MCP server for Fastmail on Cloudflare Workers with Cloudflare Access OAuth
TypeScript ★ 7 3d agoExplain → -
restaurant-cli
Pluggable CLI for booking restaurant reservations — Resy today, OpenTable / Tock / SevenRooms next. Both an OpenClaw plugin and a Claude Code plugin from one codebase.
TypeScript ★ 6 23d agoExplain → -
aqara-cli
Command-line client for the Aqara Open Cloud API (homes, devices, rooms, scenes, renames, moves)
Python ★ 4 1mo agoExplain → -
obsidian-dump-llm-wiki
Obsidian plugin: dump URLs, podcasts, and text into a cross-linked AI-maintained wiki
TypeScript ★ 3 1mo agoExplain → -
ShellCraft
macOS app for managing shell configuration through a native GUI
Swift ★ 2 1mo agoExplain → -
trakt-plugin ⑂
A CLI for trakt.tv
Go ★ 2 1mo agoExplain → -
orca ⑂
Orca is the ADE for working with a fleet of parallel agents. Run any coding agent with your own subscription. Available on desktop and mobile.
★ 1 16d agoExplain → -
homebridge-lutron-pico ⑂
Homebridge support for Lutron Caseta Smart Bridge 2
TypeScript ★ 1 26d agoExplain → -
openclaw-parcel
OpenClaw plugin for Parcel package delivery tracking
TypeScript ★ 1 1mo agoExplain → -
omarshahine
GitHub Profile README
★ 1 1mo agoExplain → -
side-huddle ⑂
No description.
★ 1 2mo agoExplain → -
obsidian-claude-sidebar ⑂
Run Claude Code in Obsidian
★ 1 2mo agoExplain → -
SendToSmugMug ▣
Send to SmugMug will add a contextual menu to the Windows Explorer Shell and allow you to quickly create a new Album and upload the photos in the folder, or add the photos to an existing Album.
C# ★ 1 10y agoExplain → -
Snapzy ⑂
An open-source native macOS screenshot and screen recording app. A CleanShot X alternative.
Swift ★ 0 5d agoExplain → -
CodexBar ⑂
Show usage stats for OpenAI Codex and Claude Code, without having to login.
★ 0 5d agoExplain → -
homebrew-tap
Homebrew tap for omarshahine CLIs
Ruby ★ 0 6d agoExplain → -
printing-press-library ⑂
Official library of CLIs generated by the CLI Printing Press. Endorsed, tested, and community-contributed.
Go ★ 0 2d agoExplain → -
homebridge-powerview-2 ⑂
Homebridge plugin for Hunter Douglas PowerView shades
JavaScript ★ 0 13d agoExplain → -
imsg ⑂
CLI for Apple's Messages.app so your agent can send and receive text messages/iMessages.
Swift ★ 0 23h agoExplain → -
lutron-cli
Control Lutron Caseta lighting from the terminal. OpenClaw and Claude Code plugin.
Python ★ 0 1mo agoExplain → -
cli-printing-press ⑂
Every API has a secret identity. This finds it, absorbs every feature from every competing tool, then builds the GOAT CLI — designed for AI agents first, with SQLite sync, offline search, and compound insight commands.
Go ★ 0 5d agoExplain → -
valor-fireplace-cli
A Command Line interface to your Valor Fireplace
TypeScript ★ 0 1mo agoExplain → -
famzoo-ynab-sync
Sync your Famzoo account with YNAB
Python ★ 0 1mo agoExplain → -
daikin-cli ⑂
CLI for interacting with Daikin One+ thermostats
Go ★ 0 1mo agoExplain → -
openclaw-instapaper
OpenClaw plugin for Instapaper reading list management
TypeScript ★ 0 1mo agoExplain → -
ynab-cli ⑂
A python command line tool to help keep YNAB organized
Python ★ 0 1mo agoExplain → -
version-consistency-action
GitHub composite action: verify version strings across multiple JSON manifest files agree within each declared agreement set
★ 0 1mo agoExplain → -
Raycast-Scripts
No description.
Shell ★ 0 1mo agoExplain → -
eightctl ⑂
Eight Sleep cli to fetch data and control your pods.
Go ★ 0 1mo agoExplain → -
ReviewKit ⑂
Request reviews only from users with enough recent positive activity and only at appropriate times.
Swift ★ 0 2mo agoExplain → -
flighty-mcp-server ⑂
MCP server for the Flighty flight tracking app — 12 tools for flights, status, stats, and cross-device sync
★ 0 2mo agoExplain → -
openclaw ⑂
Your own personal AI assistant. Any OS. Any Platform. The lobster way. 🦞
TypeScript ★ 0 10h agoExplain → -
bluebubbles-server ⑂
Server for forwarding iMessages to clients within the BlueBubbles App ecosystem
★ 0 2mo agoExplain → -
fli ⑂
Google Flights MCP and Python Library
Python ★ 0 2mo agoExplain → -
applestoreinventory ▣
Python Script to lookup inventory for any Apple part number by zip code
★ 0 3y agoExplain → -
vibetunnel ⑂
Turn any browser into your terminal & command your agents on the go.
★ 0 4mo agoExplain → -
extensions ⑂
Everything you need to extend Raycast.
TypeScript ★ 0 5mo agoExplain →
No repos match these filters.