# Scarf > Scarf is a native macOS and iOS GUI for the Hermes AI agent. It surfaces every part of a running Hermes installation — chat sessions, project workspaces, memory files, installed skills, MCP servers, cron jobs, messaging gateways, logs, and configuration — through a sidebar-driven Mac app and a tab-based iPhone companion called ScarfGo. Both apps are free, MIT licensed, and built from a single open repository. Scarf reads from `~/.hermes/state.db` directly (read-only) and streams agent replies in real time over the Agent Client Protocol. It connects to remote Hermes installations using the host's existing SSH config — no companion service, no telemetry, no account. ## Quick facts - **Platforms:** macOS 14.6+ Sonoma (Apple Silicon and Intel), iOS 18+ - **License:** MIT - **Repository:** https://github.com/awizemann/scarf - **Author:** Alan Wizemann - **Hermes prerequisite:** https://github.com/hermes-ai/hermes-agent installed at `~/.hermes/` - **Mac download:** https://github.com/awizemann/scarf/releases/latest - **iOS download:** https://testflight.apple.com/join/qCrRpcTz (public TestFlight) - **Auto-updates (Mac):** Sparkle, with EdDSA signature verification - **Telemetry:** none ## Documentation - [README](https://github.com/awizemann/scarf/blob/main/README.md): project overview, full feature list, build instructions - [Wiki](https://github.com/awizemann/scarf/wiki): user guide, architecture, design system reference - [Wiki — ScarfGo](https://github.com/awizemann/scarf/wiki/ScarfGo): iOS companion details - [Wiki — ScarfGo Onboarding](https://github.com/awizemann/scarf/wiki/ScarfGo-Onboarding): SSH key setup walkthrough - [Wiki — Platform Differences](https://github.com/awizemann/scarf/wiki/Platform-Differences): what is and isn't shared between Mac and iOS - [Releases](https://github.com/awizemann/scarf/releases): release notes for every version - [License](https://github.com/awizemann/scarf/blob/main/LICENSE): MIT ## Feature surfaces Mac (sidebar sections): - **Monitor:** Dashboard, Insights, Sessions Browser, Activity Feed - **Interact:** Live Chat (ACP streaming + Terminal mode), Memory Viewer/Editor, Skills Browser - **Configure:** Platforms, Personalities, Quick Commands, Credential Pools, Plugins, Webhooks, Profiles - **Manage:** Tools, MCP Servers, Gateway Control, Cron Manager, Health, Log Viewer, Settings - **Project Dashboards:** custom JSON-defined dashboards rendered by Scarf, populated by the agent - **System:** Hermes process control, menu bar status iOS (ScarfGo, tabs): - Servers (multi-host management with pure-Swift SSH) - Dashboard (stats + recent sessions per server) - Chat (full ACP, project-scoped) - Sessions (resume, attribute to projects) - Memory editor (read/write `MEMORY.md`, `USER.md`) - Cron (list view, human-readable schedules) - Skills browser (categories + prereq banners) - Settings (read-only `config.yaml`) ## Differentiators - Native SwiftUI, not Electron — single Mach-O binary, kilobytes of memory, full system integration - Read-only access to `state.db` — Scarf cannot corrupt Hermes data because it never writes - Multi-server: one window per Hermes host on Mac, multi-server on iOS, all over standard SSH - Project-scoped chat with Scarf-managed `AGENTS.md` block injected before session boot - Portable `.scarftemplate` bundles for sharing project setups (dashboards, skills, cron jobs, slash commands) - Live ACP streaming with rich tool-call rendering, permission dialogs, voice control - 13 messaging platforms managed in one native UI (Telegram, Discord, Slack, WhatsApp, Signal, iMessage, Email, Matrix, Mattermost, Feishu, Home Assistant, Webhook, CLI) - Open and inspectable — pure Swift, MIT, no external runtime dependencies ## Optional - [Templates Catalog](https://awizemann.github.io/scarf/templates/): community-contributed `.scarftemplate` bundles, one-click install - [Sparkle Appcast](https://awizemann.github.io/scarf/appcast.xml): the auto-update feed (RSS/XML)