Document Connector substrate — reference
Version v0.4 · 2026
Status Living document
Sections §01 — §05
§00 · Connectors Reference

Your data mesh: what to bring in.

Every connector self-describes via a ConnectorManifest. Multi-account and per-source rules are first-class. Each row below is a node on your mesh; tier choice is how thick the strand.

§01 Work p. 01

§01Work — calendars, mail, code, meetings.

The connectors most knowledge workers touch every day. Carabase treats them as first-class; multi-account is a primitive, not a retrofit.

GitHub
Issues, PRs, repos · device-flow OAuth · multi-account
Tier 0
Google Workspace
multi-account
Calendar + Gmail · per-account rules
T0–T2 *
Granola
Meeting notes
Tier 0
Beeper
iMessage / WhatsApp / Signal / SMS / Telegram / Discord / Slack
T2 → T0 **
Linear / Notion / Todoist
Tickets, pages, tasks
Tier 0
§02 Mac edge p. 02

§02Mac edge — local apps, locally read.

Edge harvesters read directly from local apps on your Mac. They share retention + tier infrastructure with the cloud OAuth connectors; they just skip the network hop.

Apple Notes
Notes, attachments
Tier 0
Apple Mail
MIME mailboxes
Tier 0
Apple Calendar / Reminders
Events, reminders
Tier 0
Apple Files
Opt-in directories · respect macOS sandbox
Tier 0
Apple Photos
Asset metadata + OCR · visual hydration on demand
Tier 2
Safari history / Reading List / Bookmarks
Visits + saved · browser extension fallback
Tier 2 *
Voice Memos
Audio + transcript
Tier 0
§03 Cloud enrichment p. 03

§03Cloud enrichment — substrate sources.

Health, listening, transactions. Time-series-shaped data that lives in substrate tables rather than the artifact graph — the mesh resolver hydrates referenced points at query time.

Strava
Activities (substrate reference)
substrate
Spotify
Listening (substrate)
substrate
Readwise
Highlights
Tier 0
Whoop / Oura / Garmin
Health (substrate)
substrate
Plaid
Transactions
substrate
YouTube (Takeout)
Watch history
Tier 2
Generic email-forwarding inbox
Inbound webhook
Tier 2
§04 iOS p. 04

§04iOS — capture, signals, life data.

The iOS app exposes HealthKit samples, Photos asset metadata, Significant Locations, Screen Time, and a Shortcuts inbox. Every push is gated by the same retention + tier system as the desktop side.

HealthKit
Samples (substrate)
substrate
Photos
Asset metadata
Tier 2
Significant Locations
Location points
substrate
Screen Time
App usage (substrate)
substrate
Shortcuts inbox
Text + attachments
Tier 0
§05 Streaming p. 05

§05Streaming — per-event push.

Browser extensions (Safari / Chrome / Arc) push per-navigation events into a streaming connector. Default tier is metadata-only; promotion to Tier 0 fires when the destination matches your entity graph (repo allowlist, watched orgs, etc.).

Browser extensions (Safari / Chrome / Arc)
Per-navigation events
Tier 2 *

* Tier 2 default; Tier 0 promotion via materialization policy (matches user's entity graph, repo allowlist, etc.).
** Beeper defaults to metadata-only; promotion to full body fires when sender resolves to a known concept_role.

Note · §05
Edge connectors (read from local apps on your Mac) and streaming connectors (push per-event) share retention + tier infrastructure with cloud OAuth connectors. Writing a new connector is a small, pattern-bound PR — the contract is documented and tested.

The mesh is the data plane. The engine runs over it.

Read the architecture →
Tiers Full · Hollow · Metadata · Dark Retention Workspace · Account · Rule (tightest wins) v0.4