brainy/CLAUDE.md
David Snelling 1aa1f22d22 🧠 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

208 lines
6.3 KiB
Markdown

# 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.