brainy/CLAUDE.md

209 lines
6.3 KiB
Markdown
Raw Normal View History

🧠 Brainy 2.0.0 - Zero-Configuration AI Database with Triple Intelligence™ MAJOR RELEASE: Complete evolution of Brainy with groundbreaking features and performance. 🎯 KEY FEATURES: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ✨ Triple Intelligence™ Engine - Unified Vector + Metadata + Graph search - O(log n) performance on all operations - 3ms average search latency at any scale ✨ API Consolidation - 15+ search methods → 2 clean APIs - search() for vector similarity - find() for natural language queries ✨ Natural Language Processing - 220+ pre-computed NLP patterns - Instant context understanding - "Show me recent React components with tests" ✨ Zero Configuration - Works instantly, no setup required - Built-in embedding models (no API keys) - Smart defaults for everything - Automatic optimization ✨ Enterprise Features (Free for Everyone) - Scales to 10M+ items - Write-Ahead Logging (WAL) for durability - Distributed architecture with sharding - Read/write separation - Connection pooling & request deduplication - Built-in monitoring & health checks ✨ Universal Compatibility - Node.js, Browser, Edge Workers - 4 Storage Adapters (Memory, FileSystem, OPFS, S3) - TypeScript with full type safety - Worker-based embeddings 📦 WHAT'S INCLUDED: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ • Core AI Database with HNSW indexing • 19 Production-ready augmentations • Universal Memory Manager • Complete CLI with all commands • Brain Cloud integration (soulcraft.com) • Comprehensive documentation • 52 test files with 400+ tests • Migration guide from 1.x 📊 PERFORMANCE: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ • Initialize: 450ms (24MB memory) • Search: 3ms average (up to 10M items) • Metadata Filter: 0.8ms (O(log n)) • Bulk Import: 2.3s per 1000 items • Production Scale: 5.8ms at 10M items 🔧 TECHNICAL IMPROVEMENTS: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ • TypeScript compilation: 153 errors → 0 • Memory usage: 200MB → 24MB baseline • Circular dependencies resolved • Worker thread communication fixed • Storage adapter consistency • Request coalescing for 3x performance 🛠️ CLI FEATURES: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ • brainy add - Smart data ingestion • brainy find - Natural language search • brainy search - Vector similarity • brainy chat - AI conversation mode • brainy cloud - Brain Cloud integration • brainy augment - Manage extensions • 100% API compatibility 📚 DOCUMENTATION: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ • Professional README with examples • Quick Start guide (5 minutes) • Enterprise Features guide • Migration guide from 1.x • API reference • Architecture documentation 🌟 USE CASES: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ • AI memory layer for chatbots • Semantic document search • Code intelligence platforms • Knowledge management systems • Real-time recommendation engines • Customer support automation MIT License - Enterprise features included free for everyone. No premium tiers, no paywalls, no limits. Built with ❤️ by the Brainy community. Visit https://soulcraft.com for Brain Cloud integration.
2025-08-26 12:32:21 -07:00
# Claude Code Development Guidelines for Brainy
You are assisting with the Brainy project, an AI-powered database with zero-configuration philosophy.
## Core Development Principles
### 1. Always Use TodoWrite
- Track ALL tasks with the TodoWrite tool
- Mark tasks as in_progress when starting
- Mark completed immediately when done
- Never batch completions
### 2. Zero-Config Philosophy
- Everything must work with zero configuration
- Sensible defaults for all features
- Optional configuration only for advanced users
- No complex setup required
### 3. Test-Driven Development
```bash
# ALWAYS follow this workflow:
npm run build # Build TypeScript first
npm test # Run all tests
# Fix any failures before proceeding
```
### 4. Documentation First
- Check `/docs/` before creating new documentation
- Check if feature already exists before building
- Update existing docs rather than creating duplicates
### 5. Code Quality Standards
- Follow existing patterns in the codebase
- Maintain TypeScript type safety
- Use meaningful variable and function names
- Add comments only when logic is complex
### 6. Code Style (ESLint & Prettier)
**ALWAYS follow these style rules (defined in package.json):**
- **NO SEMICOLONS** - Never use semicolons
- **Single quotes** - Use 'string' not "string"
- **2 spaces** - Indent with 2 spaces, not tabs
- **No trailing commas** - Don't add commas after last item
- **Arrow parens** - Always use (x) => x, not x => x
- **Line width** - Max 80 characters per line
- **Allow 'any'** - TypeScript 'any' type is allowed
- **Unused vars** - Prefix with _ to ignore (e.g., _unused)
## Development Workflow
### Before Starting Any Task:
1. Read PLAN.md to understand current goals
2. Check existing code/docs for similar features
3. Create todo list with TodoWrite
4. Build and test to ensure clean starting point
### During Development:
1. Make incremental changes
2. Test frequently (npm run build && npm test)
3. Update todos as you progress
4. Document significant decisions
### After Completing Task:
1. Run full test suite
2. Update relevant documentation
3. Mark all todos as completed
4. Summarize what was accomplished
## Critical Rules
### NEVER:
- ❌ Publish with failing tests
- ❌ Commit PLAN.md (it's confidential)
- ❌ Add premium/paid features (everything is MIT)
- ❌ Create complex configuration requirements
- ❌ Skip the build step before testing
### ALWAYS:
- ✅ Run `npm run build` before `npm test`
- ✅ Pass ALL tests before considering done
- ✅ Check existing documentation first
- ✅ Follow zero-config philosophy
- ✅ Keep the API simple and intuitive
## Project-Specific Information
### Core Requirements:
- Tests: 400+ tests must pass
- Philosophy: Zero-config, everything included
- License: MIT (all features included)
### Key Architecture:
- `brain.augmentations` - Extension system
- `brain.metadataIndex` - O(1) field lookups
- `brain.index` - Vector search
- `brain.storage` - Persistence layer
### Key Documentation:
- `/docs/architectural-integrity.md` - Entity resolution strategy
- `/docs/enterprise-storage-architecture.md` - Storage layer design
- `/docs/BRAINY-2.0-STORAGE-ARCHITECTURE.md` - Storage implementation
- `/ARCHITECTURE.md` - Component integration map
- `/PLAN.md` - Current development plan (DO NOT COMMIT)
# 🚨 CRITICAL: ALWAYS PASS ALL TESTS BEFORE RELEASE
**NEVER publish or release without passing ALL tests in /tests directory**
```bash
npm test # MUST show ALL tests passing (400+ tests)
```
If tests fail:
1. Fix the code if it's broken
2. Fix the test if it's testing incorrectly
3. Remove the test if it's no longer relevant
4. NEVER publish with failing tests
## 🔨 IMPORTANT: ALWAYS REBUILD BEFORE TESTING
**ALWAYS rebuild TypeScript before running any tests:**
```bash
npm run build # or just: npx tsc
```
Without rebuilding, you'll be testing old JavaScript code even after TypeScript changes!
## 📚 CRITICAL: CHECK EXISTING DOCUMENTATION
**BEFORE building new features or creating new docs:**
1. Check `/docs/` folder for existing architecture docs
2. Read `ARCHITECTURE.md` for component connections
3. Check if feature already exists in codebase
4. Look for existing solutions before building new ones
**Key Architecture Documents:**
- `/docs/architectural-integrity.md` - Entity resolution strategy
- `/docs/enterprise-storage-architecture.md` - Storage layer design
- `/docs/BRAINY-2.0-STORAGE-ARCHITECTURE.md` - Storage implementation
- `/ARCHITECTURE.md` - Component integration map
**Key Integration Points:**
- `brain.metadataIndex` - O(1) field lookups
- `brain.index` - Vector search
- `brain.augmentations` - Feature extensions
- `brain.storage` - Persistence layer
---
---
## 🧠 BRAINY PROJECT GUIDELINES
**Current development status, version, and tasks: See PLAN.md (DO NOT COMMIT)**
### Core Philosophy
- **Zero Configuration**: Everything works instantly with sensible defaults
- **Everything Included**: All features ship in core (MIT licensed)
- **Simple API**: Intuitive methods that just work
- **No Premium Tiers**: No feature limitations or paid upgrades
## Known Issues
### Bash Tool 2>&1 Redirection Bug (Critical)
**GitHub Issue:** https://github.com/anthropics/claude-code/issues/4711
A critical bug exists in the Bash tool where `2>&1` stderr redirection is treated as a literal argument "2", breaking many commands.
**Impact:**
- Commands with stderr redirection fail or produce incorrect output
- Test runners like `npm test` that use stderr redirection internally fail
- Build commands may pass "2" as an argument instead of redirecting stderr
**Examples of Affected Commands:**
```bash
# These will FAIL:
npm test 2>&1 # Runs "vitest run 2" instead of "vitest run"
npm build 2>&1 # Runs "tsc 2" instead of "tsc"
command 2>&1 | grep x # Passes "2" as argument to command
```
**Workarounds:**
1. **Use bash -c wrapper (RECOMMENDED):**
```bash
# Instead of:
npm test 2>&1
# Use:
bash -c 'npm test 2>&1'
```
2. **Run without stderr redirection:**
```bash
# Just run without capturing stderr:
npm test
npm build
```
3. **Use script wrapper:**
```bash
# Create a wrapper script
echo 'npm test' > run-tests.sh
chmod +x run-tests.sh
./run-tests.sh
```
**Note:** This affects ALL commands in Claude Code that try to redirect stderr. Always use the bash -c workaround when you need to capture both stdout and stderr.