Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

416 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SoniqueBar (macOS)

Menu bar controller for CAAL: Docker networked stack or embedded sidecar runtime, Home Assistant hooks, and iOS onboarding QR.

Quick Start scan (first install)

The Settings/Onboarding view now includes a Quick Start scanner to reduce manual setup. It probes local prerequisites and pre-fills suggestions:

  • Docker availability
  • Ollama availability
  • CLI tools (claude, gemini, cursor, gh)
  • common CAAL repo paths
  • common Obsidian vault path

This is intentionally local-only and safe to run repeatedly. It does not read secrets.

Adaptive settings layout

Onboarding/Settings is now scrollable and resizable (min/ideal/max sizing) so controls remain reachable on constrained remote displays (for example Jump Desktop on iPad).

Onboarding wizard + doctor

Quick Start now runs as a step-based wizard:

  • Mode
  • Models
  • Capabilities
  • Knowledge
  • Doctor

The Capabilities step persists host/bridge access preferences (calendar, contacts, mail, files, iOS bridge fallback). The Doctor step now runs local probes for frontend/backend reachability, Docker daemon, CLI readiness/auth, and current permission states for Contacts/Calendar.

Profiles can also be exported/imported as JSON from the Quick Start panel to move setup between devices or restore known-good local configs quickly.

Doctor rows now include context-aware Fix actions for common local blockers (privacy panes, Docker app launch, CLI auth/install docs). Quick Start can also export a runtime contract JSON snapshot for Helmsman/team tooling alignment. Phase 6 adds deeper live probes for sidecar STT/TTS health, backend /health, and routing policy parity against the selected local provider.

Phase 7 adds an opt-in Preflight repair action that re-scans local prerequisites, re-starts the selected runtime path (embedded sidecar or networked CAAL), and reruns Doctor checks to confirm readiness before save/deploy.

Phase 8 adds direct permission-request remediation actions for not-determined Contacts/Calendar states and a Doctor check that verifies the published runtime contract path exists for consumer tooling.

Phase 9 adds startup self-heal guardrails in ServerMonitor: if runtime is still offline shortly after launch, SoniqueBar retries the selected runtime path once automatically.

Phase 10 automates contract consumer surfaces: runtime contract now republishes on Save/Preflight, and preflight telemetry is exported to preflight-telemetry.latest.json with check counts and failed-label summaries.

Phase 11 adds long-horizon consumer stability: runtime contract embeds contractPullPath, and telemetry history is retained in preflight-telemetry.history.jsonl (rolling last 50 runs).

Phase 12 completes consumer pull + observability: SoniqueBar runs a local loopback-only contract endpoint on 127.0.0.1:8894 with token-gated reads (x-sonique-contract-token or ?token=), exposes runtime/trend pull URLs in the contract payload, and shows an in-app preflight trend summary in Doctor.

Connected installs are now first-class: onboarding includes a Connection profile selector. Standard keeps setup minimal, while Connected Lab applies lab-oriented defaults (host-first capabilities on, NVIDIA base URL seed, local-then-provider fallback) and syncs CAAL routing/integration preferences on save for HA/NVIDIA/CLI-heavy environments.

Build

Open SoniqueBar.xcodeproj in Xcode (or generate via XcodeGen if you add a spec). Scheme: SoniqueBar, destination: My Mac.

CAAL directory

Point Settings at the cloned CAAL repo. SoniqueBar can start/stop the compose stack or run the bundled sidecar per deployment mode.

LLM routing UI (task #284, prefs only)

SoniqueBar stores routing preferences in UserDefaults (keys in LLMRoutingStorageKeys in SoniqueBar/Services/MacSettings.swift). CAAL consumes snake_case fields (LLMRoutingCAALKeys) via settings.json and optional .env — see vault note Projects/Sonique/NVIDIA Provider UI — Task 284 Handoff.md.

Placeholder server .env lines (no real secrets in repo or docs). Swift names for these keys live in LLMRoutingEnvVarNames next to LLMRoutingCAALKeys in SoniqueBar/Services/MacSettings.swift.

NVIDIA_FEATURE_ENABLED=false
NVIDIA_BASE_URL=<nvidia-base-url>
NVIDIA_MODEL=<nvidia-model-placeholder>
# NVIDIA_API_KEY=<nvidia-api-key>

Client UI never stores NVIDIA API keys; base URL is optional text when the experimental toggle is on.

Sidecar

See Sidecar/README.md for the embedded runtime layout and the same NVIDIA placeholder block.

About

macOS menu bar app for Sonique — shows assistant avatar, polls CAAL server, QR onboarding

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages