Preview · Capabilities · Quick Start · Development · Issues · Community
Via Vera is a native AI agent for iPhone, iPad, and Mac. Its agent runtime, tools, workspace, memory, and credentials remain under the control of the Apple device while it connects to the model provider chosen by the user.
Built with SwiftUI, Via Vera goes beyond chat by completing the full loop of understand → decide → execute → reflect. It combines a tool-calling agent with an embedded Alpine Linux environment, persistent memory, browser and workspace access, and native Apple integrations.
Join Via Vera TestFlight to help us improve the agent: https://testflight.apple.com/join/YMwpPFRP

A native macOS workspace with conversations, tool activity, and agent results in one window.

Agent conversations, health insights, the local terminal, and conversation history.

Native settings, Alpine environment management, and the workspace browser.
- Native Apple experience: A shared SwiftUI app designed for iOS, iPadOS, and macOS.
- Extensible agent tools: Terminal, files, memory, skills, browser, calendar, contacts, alarms, and HealthKit.
- Local Alpine environment: An embedded ARM64 Alpine runtime powered by
ish-arm64, with a controlled/workspacemount. - Flexible model providers: OpenAI-compatible Chat Completions and Responses APIs, DeepSeek, and Anthropic Messages.
- Persistent context: SwiftData conversations, daily memory, long-term Markdown memory, local search, and configurable Soul instructions.
- Security by design: API keys are stored in Keychain, provider endpoints are validated, tool output is bounded, and sensitive response data is redacted.
- Apple personal tools: Permission-gated access to Calendar, Contacts, reminders, and HealthKit data.
Quick Start
git clone --recursive https://github.com/omnimind-ai/ViaVera.git
cd ViaVera
git submodule update --init --recursive
open OmniBot.xcodeprojSelect the OmniBot scheme in Xcode, choose an iOS Simulator or your Mac, and run the project. The installed app is named Via Vera.
- Open Settings → Model Service and add a compatible provider, endpoint, and API key.
- Select the models used by the agent.
- Review the Soul, memory, skills, workspace, and permission settings.
- Start a conversation and approve personal-data permissions only when the corresponding tools are needed.
On first launch, Via Vera imports its bundled Alpine minirootfs into Application Support. The model-accessible Alpine environment only mounts the shared workspace; provider configuration, Keychain credentials, Soul, and memory remain host-controlled.
Ask Via Vera to break down a task, use multiple tools, inspect the result, and continue until the requested outcome is reached.
Import Apple-compatible SKILL.md packages, enable or disable them in Settings, and let the agent load focused instructions when a request matches. A community skill collection is available at OpenMinis/MinisSkills.
Run commands in the local Alpine environment, maintain logical terminal sessions, and read, write, search, or organize files inside the controlled workspace.
Use the browser tool for web tasks and, after explicit system permission, work with Calendar, Contacts, reminders, and supported HealthKit records.
- Apple Silicon Mac
- Xcode with the iOS and macOS 26.4 SDKs
- Git with submodule support
The iSH core build script creates an isolated Python environment and installs its pinned Meson and Ninja tooling when required.
git submodule update --init --recursive
xcodebuild -project OmniBot.xcodeproj -scheme OmniBot \
-configuration Debug -destination 'platform=macOS' \
CODE_SIGNING_ALLOWED=NO build
xcodebuild -project OmniBot.xcodeproj -scheme OmniBot \
-configuration Debug -destination 'generic/platform=iOS Simulator' \
CODE_SIGNING_ALLOWED=NO buildOmniBot/
├── AgentCore/ # Models, providers, agent runtime, persistence, memory, skills, and security
├── Alpine/ # Swift and Objective-C bridge for the embedded iSH runtime
├── App/ # Application bootstrap, navigation, settings, and state coordination
├── Features/ # SwiftUI chat, terminal, settings, and sidebar presentation
├── Tools/ # Browser, filesystem, memory, personal, skills, and terminal tools
└── Resources/ # Alpine, terminal frontend, and legal resources
Vendor/ish-arm64/ # Pinned iSH ARM64 submodule
RuntimeSupport/ # Reproducible ARM64 guest runtime support
See Docs/ProjectStructure.md for module boundaries and contribution guidance.
- API keys are stored in Apple Keychain rather than provider JSON files.
- Provider credentials are bound to the normalized endpoint and protocol configuration.
- Non-loopback model endpoints must use HTTPS.
- Tool calls, provider responses, memory files, and imported skills have explicit size limits.
- Personal tools require Apple platform permissions and are only available on supported devices.
- Local Xcode user data, signing certificates, provisioning profiles, App Store Connect keys, and Codex workspace state are excluded from Git.
Please report security issues privately to the maintainers instead of opening a public issue containing credentials or personal data.
Thanks to every community contributor, including developers from linux.do, who support the OmniBot ecosystem.
![]() WeChat Group |
Join Discord: https://discord.gg/WnBvBXgykD
Special thanks to these open-source projects and communities:
Via Vera's original source code is licensed under GPL-3.0-only. Third-party components and bundled resources remain under their respective licenses; see THIRD_PARTY_NOTICES.md for attribution and distribution obligations.
