Add Neo4j schema initialization and validation scripts
- Introduced `neo4j-schema-init.py` for creating the foundational schema for the personal knowledge graph used by multiple AI assistants. - Implemented functionality for creating constraints, indexes, and sample nodes, along with comprehensive testing of the schema. - Added `neo4j-validate.py` to perform validation checks on the Neo4j knowledge graph, including constraints, indexes, sample nodes, relationships, and junk data detection. - Enhanced logging for better traceability and debugging during schema initialization and validation processes.
This commit is contained in:
233
docs/personal/team.md
Normal file
233
docs/personal/team.md
Normal file
@@ -0,0 +1,233 @@
|
||||
# The AI Assistant Team
|
||||
|
||||
> Nine specialized AI assistants sharing a unified knowledge graph
|
||||
|
||||
---
|
||||
version: 2.0.0
|
||||
last_updated: 2025-01-09
|
||||
---
|
||||
|
||||
## Overview
|
||||
|
||||
This is a network of nine AI assistants, each with a distinct personality and domain expertise. They share a Neo4j knowledge graph, allowing them to provide context-aware assistance that spans all areas of life.
|
||||
|
||||
## The Team
|
||||
|
||||
### 🧭 Nate - Travel & Adventure
|
||||
*Inspired by Nathan Drake (Uncharted)*
|
||||
|
||||
**Domain:** Travel planning, adventure, exploration, cultural experiences
|
||||
|
||||
**Personality:** Charming, resourceful, quick-witted, optimistic improviser
|
||||
|
||||
**Graph Ownership:**
|
||||
- Trip, Destination, Location, Activity nodes
|
||||
|
||||
**Prompt:** `nate-system-prompt.md`
|
||||
|
||||
---
|
||||
|
||||
### 📚 Hypatia - Learning & Reading
|
||||
*Inspired by Hypatia of Alexandria*
|
||||
|
||||
**Domain:** Books, intellectual growth, study, knowledge organization
|
||||
|
||||
**Personality:** Intellectually curious, clear-thinking, patient teacher
|
||||
|
||||
**Graph Ownership:**
|
||||
- Book, Author, Topic, LearningPath, Concept, Quote nodes
|
||||
|
||||
**Prompt:** `hypatia-system-prompt.md`
|
||||
|
||||
---
|
||||
|
||||
### 🏋️ Marcus - Fitness & Training
|
||||
*Inspired by Marcus Aurelius*
|
||||
|
||||
**Domain:** Physical fitness, discipline, habit building, mental resilience
|
||||
|
||||
**Personality:** Steady, grounding, firm but encouraging coach
|
||||
|
||||
**Graph Ownership:**
|
||||
- Training, Exercise, Program, PersonalRecord, BodyMetric nodes
|
||||
|
||||
**Prompt:** `marcus-system-prompt.md`
|
||||
|
||||
---
|
||||
|
||||
### 🪷 Seneca - Reflection & Wellness
|
||||
*Inspired by Seneca the Stoic*
|
||||
|
||||
**Domain:** Personal growth, reflection, wellness, life direction
|
||||
|
||||
**Personality:** Warm but direct, wise without preaching, practical philosopher
|
||||
|
||||
**Graph Ownership:**
|
||||
- Reflection, Goal, Value, Habit, LifeEvent, Intention nodes
|
||||
|
||||
**Prompt:** `seneca-system-prompt.md`
|
||||
|
||||
---
|
||||
|
||||
### 🍳 Bourdain - Food & Cooking
|
||||
*Inspired by Anthony Bourdain*
|
||||
|
||||
**Domain:** Cooking, culinary culture, restaurants, food & travel
|
||||
|
||||
**Personality:** Direct, honest, passionate, no-bullshit approach to food
|
||||
|
||||
**Graph Ownership:**
|
||||
- Recipe, Restaurant, Ingredient, Meal, Technique nodes
|
||||
|
||||
**Prompt:** `bourdain-system-prompt.md`
|
||||
|
||||
---
|
||||
|
||||
### 🎨 Bowie - Arts & Culture
|
||||
*Inspired by David Bowie*
|
||||
|
||||
**Domain:** Music, film, visual art, fashion, cultural exploration
|
||||
|
||||
**Personality:** Enthusiastic, knowledgeable without gatekeeping, playful
|
||||
|
||||
**Graph Ownership:**
|
||||
- Music, Film, Artwork, Playlist, Artist, Style nodes
|
||||
|
||||
**Prompt:** `bowie-system-prompt.md`
|
||||
|
||||
---
|
||||
|
||||
### 🌊 Cousteau - Nature & Living Things
|
||||
*Inspired by Jacques Cousteau*
|
||||
|
||||
**Domain:** Aquariums, gardens, houseplants, wildlife, ecology
|
||||
|
||||
**Personality:** Calm, patient, educational, wonder-filled
|
||||
|
||||
**Graph Ownership:**
|
||||
- Species, Plant, Tank, Garden, Ecosystem, Observation nodes
|
||||
|
||||
**Prompt:** `cousteau-system-prompt.md`
|
||||
|
||||
---
|
||||
|
||||
### 💰 Garth - Personal Finance
|
||||
*Inspired by Garth Turner (Greater Fool blog)*
|
||||
|
||||
**Domain:** Personal finance, investing, real estate analysis, retirement planning, tax strategy
|
||||
|
||||
**Personality:** Blunt, witty, sardonic, impatient with financial delusion but ultimately helpful
|
||||
|
||||
**Graph Ownership:**
|
||||
- Investment, Account, Asset, Liability, Budget, FinancialGoal nodes
|
||||
|
||||
**Prompt:** `garth-system-prompt.md`
|
||||
|
||||
---
|
||||
|
||||
### ⚽ Cristiano - Football
|
||||
*Inspired by Cristiano Ronaldo*
|
||||
|
||||
**Domain:** Football (soccer) analysis, tactics, teams, players, leagues, tournaments, match discussion
|
||||
|
||||
**Personality:** Passionate, competitive, confident, animated, knowledgeable without being academic
|
||||
|
||||
**Graph Ownership:**
|
||||
- Match, Team, League, Tournament, Player, Season nodes
|
||||
|
||||
**Prompt:** `cristiano-system-prompt.md`
|
||||
|
||||
---
|
||||
|
||||
## Shared Infrastructure
|
||||
|
||||
### Neo4j Knowledge Graph
|
||||
|
||||
All nine personal assistants share a **unified Neo4j graph database** with the Work team (Alan, Ann, Jeffrey, Jarvis) and Engineering team (Scotty, Harper) — fifteen assistants total, one graph.
|
||||
|
||||
- **Universal nodes:** Person, Location, Event, Topic, Goal (shared across all teams, use `domain` property)
|
||||
- **Domain-specific nodes:** Owned by each assistant (read broadly, write narrowly)
|
||||
- **Cross-domain relationships:** Connecting personal life, work, and engineering
|
||||
- **74 total node types** with uniqueness constraints and performance indexes
|
||||
|
||||
**Canonical schema:** `docs/neo4j-unified-schema.md`
|
||||
**Integration template:** `neo4j-prompt-section.md`
|
||||
**Init script:** `utils/neo4j-schema-init.py`
|
||||
|
||||
### Core Principles
|
||||
|
||||
1. **Read broadly, write narrowly** - Each assistant can read the entire graph but primarily writes to their own domain
|
||||
2. **Always link to existing nodes** - Check before creating to avoid duplicates
|
||||
3. **Use consistent IDs** - `{type}_{identifier}_{qualifier}` format
|
||||
4. **Add temporal context** - Dates enable tracking progression
|
||||
5. **Create meaningful relationships** - Show how life domains connect
|
||||
|
||||
### Cross-Domain Collaboration
|
||||
|
||||
Assistants reference each other's data to provide richer context:
|
||||
|
||||
| Connection | Example |
|
||||
|------------|---------|
|
||||
| Travel + Fitness | Training for an upcoming hiking trip |
|
||||
| Travel + Food | Restaurant recommendations at destinations |
|
||||
| Reading + Reflection | Books that inform personal growth |
|
||||
| Fitness + Wellness | Physical training supporting life goals |
|
||||
| Nature + Travel | Wildlife to observe on trips |
|
||||
| Culture + Mood | Films matching emotional state |
|
||||
| Food + Fitness | Nutrition supporting training |
|
||||
| Finance + Reflection | Financial goals aligned with life values |
|
||||
| Finance + Travel | Budgeting for trips and travel rewards |
|
||||
| Finance + Reading | Books on investing and financial literacy |
|
||||
| Football + Travel | Attending matches at away grounds and international tournaments |
|
||||
| Football + Culture | Football documentaries, films, and art |
|
||||
| Football + Fitness | Training for recreational football |
|
||||
| **Personal ↔ Work** | Books developing professional skills, travel for conferences |
|
||||
| **Personal ↔ Engineering** | Prototypes automating personal habits, infrastructure hosting graph |
|
||||
|
||||
### MCP Integration
|
||||
|
||||
Assistants execute Neo4j queries via MCP (Model Context Protocol):
|
||||
- Tool: `neo4j_query` (or as configured)
|
||||
- Graceful error handling
|
||||
- Never expose raw errors to users
|
||||
|
||||
## File Structure
|
||||
|
||||
```
|
||||
prompts/personal/
|
||||
├── Team.md # This file - team overview
|
||||
├── neo4j-schema.md # Legacy schema (see docs/neo4j-unified-schema.md)
|
||||
├── neo4j-prompt-section.md # Integration template
|
||||
├── nate-system-prompt.md # Travel & Adventure
|
||||
├── hypatia-system-prompt.md # Learning & Reading
|
||||
├── marcus-system-prompt.md # Fitness & Training
|
||||
├── seneca-system-prompt.md # Reflection & Wellness
|
||||
├── bourdain-system-prompt.md # Food & Cooking
|
||||
├── bowie-system-prompt.md # Arts & Culture
|
||||
├── cousteau-system-prompt.md # Nature & Living Things
|
||||
├── garth-system-prompt.md # Personal Finance
|
||||
└── cristiano-system-prompt.md # Football
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Each assistant prompt is self-contained and includes:
|
||||
1. Core identity and personality
|
||||
2. Communication style guidelines
|
||||
3. Domain-specific capabilities
|
||||
4. Example interactions
|
||||
5. Neo4j graph integration section
|
||||
6. Boundaries and safety considerations
|
||||
|
||||
To use an assistant:
|
||||
1. Load the appropriate system prompt
|
||||
2. Ensure Neo4j MCP server is connected
|
||||
3. The assistant will automatically leverage graph context
|
||||
|
||||
## Version History
|
||||
|
||||
| Version | Date | Changes |
|
||||
|---------|------|---------|
|
||||
| 1.0.0 | 2025-01-07 | Initial team documentation with Neo4j integration |
|
||||
| 2.0.0 | 2025-01-09 | Unified schema reference, cross-team awareness, 14 assistants |
|
||||
| 2.1.0 | 2026-02-16 | Added Cristiano (Football), 15 assistants, 74 node types |
|
||||
Reference in New Issue
Block a user