Guided install
- Checks this Mac.
- Installs
uvwhen missing. - Offers to install Ollama when Homebrew is available.
- Offers to install Local Whisper for speech and microphone support.
- Installs
mcp-prose-memoryfor compact local memory when npm is available. - Starts local services when it can.
- Runs first-run setup.
- Verifies the app commands.
- Runs
eyra doctorandeyra certifyas readiness checks.
After install
Open the menu bar controls:Eyra.app under ~/.local/share/eyra/ when the bundle is available. If the menu bar app is unavailable, eyra open remains the fallback control surface.
Source checkout
Advanced path: use this when you want to change Eyra itself.setup.sh creates local settings, installs dependencies, offers to install or start local AI and voice helpers when safe, checks the backend and model, checks Local Whisper when voice is enabled, and registers the eyra command. It preserves an existing .env, removes older shell lines ending in # eyra, then adds one current ~/.local/bin PATH line.
Run from source:
~/.local/bin, run:
Installer safety
- Requires macOS on Apple Silicon.
- Requires Python 3.11+; installs
python@3.11through Homebrew when possible. - Installs
uvwhen missing. - Allows install directories only under
~/.local/share/eyra/,~/Applications/, or/opt/. - Refuses
/,$HOME, and~/.localas install targets. - Preserves existing installs by moving them to a timestamped backup.
- Rolls back the install directory if app command setup fails.
- Keeps the install when optional runtime checks need attention, so
eyra doctorcan guide repair.
EYRA_ALLOW_UNVERIFIED_TAG_ARCHIVE=true. For testing from a checked-out tree, use EYRA_SOURCE_PATH=/path/to/eyra ./install.sh; the installed app still writes user config to ~/.config/eyra/.env, not into the app directory.
Disable installer prompts with:
eyra doctor --json reports installer-managed app copies as managed-install.
Homebrew tap
Current formula status: public tap formula.- Runs
uv sync --frozen --no-devat install time. - Command shims execute the installed virtual environment’s console scripts.
- Provides
eyra,eyra-web,eyra-doctor,eyra-certify,eyra-setup,eyra-connectors, andeyra-menu. - Runs
eyra version,eyra paths --json, andeyra doctor --jsonin the formula test. The formula test uses mock, typed-only mode so a clean Homebrew test does not require a running model backend.
Local provider
Default provider: Ollama./v1/models, falls back to Ollama /api/tags, verifies every configured model, and auto-pulls missing Ollama models when AUTO_PULL_MODELS=true.
Voice dependency
Eyra uses Local Whisper for both transcription and speech output.Memory dependency
Eyra usesmcp-prose-memory for compact local memory.
setup.sh try the npm package first, then fall back to the GitHub release tarball if npm authentication or registry access is unavailable. If Node.js is missing, install it from Homebrew or from nodejs.org, then rerun eyra doctor.
Preflight resolves the wh binary from PATH, LaunchAgent plists, and common Homebrew paths. If voice is disabled, the Local Whisper check is skipped.
Mock mode
Use mock mode when you want to smoke-test Eyra without a running model backend.Web UI
Standalone Web runtime:127.0.0.1. Set WEB_UI_HOST=0.0.0.0 only when you intentionally want another device on the network to connect.