scarf  by awizemann

Native macOS GUI for AI agent control and monitoring

Created 4 weeks ago

New!

314 stars

Top 86.0% on SourcePulse

GitHubView on GitHub
Project Summary

Scarf provides a native macOS GUI for the Hermes AI agent, offering users comprehensive visibility and control over local and remote Hermes instances. It targets developers and power users of the Hermes agent, enabling efficient management of conversations, configurations, and agent activities through an intuitive, multi-window interface.

How It Works

Scarf interacts with Hermes by directly reading its SQLite database (state.db), parsing command-line interface (CLI) output, and communicating via the Agent Client Protocol (ACP) over stdio for real-time chat. It supports managing multiple Hermes servers simultaneously, including remote instances accessed over SSH, routing file I/O via scp/sftp and chat through ssh -T. The application is built using SwiftUI and follows the MVVM-Feature architectural pattern, relying primarily on system frameworks with SwiftTerm as its only external dependency.

Quick Start & Requirements

  • Installation: Download the pre-built universal binary (Scarf-vX.X.X-Universal.zip) from the GitHub Releases page, unzip, and drag Scarf.app to the Applications folder.
  • Prerequisites: macOS 14.6+ (Sonoma) is required. For building from source, Xcode 16.0+ is necessary. The Hermes agent v0.6.0+ must be installed locally (~/.hermes/), with v0.9.0+ recommended for full feature support.
  • Remote Server Requirements: SSH access (key-based authentication via ssh-agent), sqlite3 installed on the remote system's PATH, and pgrep on the remote PATH are mandatory. The SSH user must have read access to Hermes state files (config.yaml, state.db).
  • Links: Releases page (implied by download instructions), CONTRIBUTING.md (for adding languages).

Highlighted Details

  • Multi-Server Management: Control local and multiple remote Hermes instances side-by-side, each in its own window.
  • Remote SSH Access: Seamlessly manage remote Hermes deployments, with file operations via scp/sftp and chat tunneling over SSH.
  • Project Dashboards: Create customizable, agent-generated dashboards using JSON configuration, featuring stat boxes, charts, tables, lists, and embedded webviews.
  • Multi-Language UI: Full UI translations available in English, Simplified Chinese, German, French, Spanish, Japanese, and Brazilian Portuguese.
  • Comprehensive Feature Mirroring: Provides GUI access to Hermes features including Chat (ACP/Terminal), Sessions, Memory, Cron, MCP Servers, Skills, Platforms, Plugins, Webhooks, Profiles, Tools, Gateway, Logs, and detailed Settings.

Maintenance & Community

Contributions are welcomed via pull requests, with guidelines available in CONTRIBUTING.md. Debug reports can be shared with "Nous support." Specific community links (Discord, Slack) or a public roadmap are not detailed in the README.

Licensing & Compatibility

Scarf is released under the MIT License, permitting commercial use and integration with closed-source projects. It maintains backward compatibility with Hermes versions v0.6.0 through v0.10.0+, with v0.10.0+ recommended for full ACP session capabilities. Updates to Hermes's database schema or CLI output may necessitate Scarf updates.

Limitations & Caveats

The application sandbox is disabled to allow direct access to the Hermes agent's files (~/.hermes/) and the execution of the hermes binary, precluding distribution via the Mac App Store. Building from source requires specific Xcode versions. Remote server setup involves ensuring necessary command-line tools are present.

Health Check
Last Commit

1 day ago

Responsiveness

Inactive

Pull Requests (30d)
21
Issues (30d)
31
Star History
315 stars in the last 28 days

Explore Similar Projects

Feedback? Help us improve.