# agents.md This monorepo contains two cooperating apps that together provide a “Google Now on Glass” experience. The system is deliberately split so that heavy computation and data access live on the phone, while Glass remains a lightweight, glance-first client. --- ## IrisCompanion (iOS) **Role:** Context engine and system brain. **Responsibilities:** - Collect user context (location, time, calendar, environment). - Generate a small, ranked set of “Now” cards. - Decide what matters *right now* and suppress noise. - Act as the source of truth for card content and ordering. - Deliver updates to Glass over a low-power Bluetooth channel. **Design principles:** - Phone does the thinking; Glass does the displaying. - Strong throttling and expiry to avoid notification fatigue. - Cards are ephemeral and contextual, not a permanent feed. - Battery-conscious: push updates only when context changes. **What it is not:** - Not a UI-heavy app. - Not a timeline renderer. - Not dependent on Glass-specific UI concepts. --- ## IrisGlass (Google Glass Explorer) **Role:** Glanceable display and interaction surface. **Responsibilities:** - Maintain a lightweight connection to IrisCompanion. - Receive and cache the current “Now” state. - Present the most relevant card as a persistent Glass surface. - Recover automatically from disconnects. - Optionally expose limited interaction (dismiss, snooze). **Design principles:** - One primary surface, always available. - Fast to glance, minimal user effort. - No local decision-making about importance. - Prefer replacement over accumulation of cards. **What it is not:** - Not a launcher replacement. - Not a full feed manager. - Not a context engine. --- ## System Philosophy - **Single source of truth:** IrisCompanion decides; IrisGlass renders. - **Low noise:** Fewer cards, higher confidence. - **Glass-native:** Respect the timeline and LiveCard patterns. - **Battery first:** Bluetooth over Wi-Fi; minimal background work. - **Ephemeral by default:** Cards expire and disappear naturally. --- ## Evolution Notes - Early development may use fixture data and diagnostic UIs. - Additional card types can be added incrementally. - More advanced ranking or summarisation may be introduced later. - Timeline publishing should remain limited and intentional. End of file.