Skip to content

Repository files navigation

Weeve Companion

iOS and macOS apps: record voice notes with live on-device transcription, sync them between devices via CloudKit, and summarize them with AI. Both apps share the same composition root (Apps/Shared) and feature packages.

Agent-first codebase: conventions live in AGENTS.md, design docs in docs/. Almost all code is in local Swift packages that test in seconds on the Mac host.

Getting started

brew install xcodegen        # once
xcodegen generate            # generates the gitignored Weeve.xcodeproj
open Weeve.xcodeproj         # schemes: Weeve (iOS), WeeveMac (macOS)

Signing uses DEVELOPMENT_TEAM from project.yml. The shared CloudKit container iCloud.app.weeve.companion is registered to that team; first build on a new machine may need -allowProvisioningUpdates.

To see sync in action: run WeeveMac on the Mac and Weeve on an iPhone signed into the same iCloud account, record on one, watch the Library on the other (remote pushes don't reach simulators — use a device, or relaunch the sim app to fetch).

Works out of the box without any setup:

  • Simulator uses MockLiveTranscriber (scripted transcription — no mic).
  • No ANTHROPIC_API_KEY in the scheme → MockSummarizer.
  • No iCloud account → local-only storage, sync silently disabled.

Tests

./Scripts/test-all.sh                    # all packages
cd Packages/WeeveSync && swift test      # one package (seconds)

Layout

Apps/Shared             composition root, compiled into both apps (3 files)
Apps/iOS, Apps/macOS    generated Info.plist + entitlements per app
Packages/
  WeeveCore             domain models + store protocol      (shared w/ macOS)
  WeeveSync             file store + CKSyncEngine sync      (shared w/ macOS)
  WeeveAI               transcription + summarization       (shared w/ macOS)
  WeeveDesignSystem     tokens + components
  WeeveFeatures         CaptureFeature, TranscriptsFeature
project.yml             XcodeGen manifest (xcodeproj is generated)

About

Sample repo for experiment

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages