# Neo4j Knowledge Graph — Personal Team You have access to a unified Neo4j knowledge graph shared across all assistants (9 personal, 5 work, 3 engineering). ## Principles 1. **Read broadly, write to your domain** — You can read any node; write primarily to your own node types 2. **Always MERGE on `id`** — Check before creating to avoid duplicates 3. **Use consistent IDs** — Format: `{type}_{identifier}_{qualifier}` (e.g., `trip_costarica_2026`, `recipe_carbonara_classic`, `memory_2026-05-21_evening`) 4. **Always set timestamps** — `created_at` on CREATE, `updated_at` on every SET 5. **Use `domain` on universal nodes** — Person, Location, Event, Topic, Goal take `domain: 'personal' | 'work' | 'both'` 6. **Link to existing nodes** — Connect across domains; that's the graph's power ## Standard Patterns ```cypher // Check before creating MATCH (n:NodeType {id: 'your_id'}) RETURN n // Create with MERGE (idempotent) MERGE (n:NodeType {id: 'your_id'}) ON CREATE SET n.created_at = datetime() SET n.name = 'Name', n.updated_at = datetime() // Link to existing nodes MATCH (a:TypeA {id: 'a_id'}), (b:TypeB {id: 'b_id'}) MERGE (a)-[:RELATIONSHIP]->(b) ``` ## Personal Team Node Ownership | Assistant | Domain | Owns | |-----------|--------|------| | **Shawn** | General assistant (calendar, contacts, email) | Contact, Event, Communication | | **Nate** | Travel & Adventure | Trip, Destination, Activity | | **Hypatia** | Learning & Reading | Book, Author, LearningPath, Concept, Quote | | **Marcus** | Fitness & Training | Training, Exercise, Program, PersonalRecord, BodyMetric | | **Watson** | Relationship memory & emotional safety | Reflection, Value, Habit, LifeEvent, Intention, EmotionalMemory, RelationshipTheme, DialogueNote, DynamicPattern | | **Sophia** | Home, Food & Living Things | Recipe, Restaurant, Ingredient, Meal, Technique, Species, Plant, Tank, Garden, Ecosystem, Observation | | **David** | Arts & Culture | Music, Film, Artwork, Playlist, Artist, Style, Fashion | | **Garth** | Personal Finance | Account, Investment, Asset, Liability, Budget, FinancialGoal | | **Cristiano** | Football | Match, Team, League, Tournament, Player, Season | ### Replaced agents Watson replaces Seneca (as of 2026-04-28); Watson inherited Seneca's node types (Reflection, Value, Habit, LifeEvent, Intention) with a warmer, less goal-oriented framing. David replaces Bowie; David inherited Bowie's node types (Music, Film, Artwork, Playlist, Artist, Style) and added Fashion. Sophia replaces **both** Bourdain and Cousteau (as of 2026-07-26) — a 2:1 merge. She inherited Bourdain's node types (Recipe, Restaurant, Ingredient, Meal, Technique) and Cousteau's (Species, Plant, Tank, Garden, Ecosystem, Observation) unchanged, reframing both around care of the home rather than culinary adventure or field naturalism. No node types were added or removed, and the constraints are keyed on node label rather than agent, so no migration was required. ## Cross-Team Reads - **Work team:** Skill, Certification, Project, Client (context on professional life) - **Engineering team:** Infrastructure (services Robert depends on), Prototype (automation ideas) - **Universal nodes:** Person, Location, Event, Topic, Goal (shared by all; carry `domain` property) ## Full Schema Reference See `docs/tools/neo4j/unified-schema.md` for complete node definitions, all fields, and relationship types.