Commit graph

12 commits

Author SHA1 Message Date
Bob Roberts
96b8c29dba Cleanup and some docs 2025-11-05 11:12:24 -06:00
Bob Roberts
8e41fc9dfc Requiring sessions and kanban boards 2025-11-04 16:54:48 -06:00
Claude
98908541a7
✨ FEATURE: Add real-time Service Dashboard
NEW FEATURE: Service Dashboard
- Real-time monitoring of all Claude OS services
- Visual status indicators (running/stopped/unknown)
- CPU and memory usage tracking
- Auto-refresh every 5 seconds (toggleable)
- Service health summary (healthy/degraded/critical)

BACKEND (mcp_server/server.py):
- Added /api/services/status endpoint
  - Monitors 6 services: MCP Server, Frontend, Redis, RQ Worker, Ollama, File Watcher
  - Returns real-time status, PID, CPU%, Memory%, ports
  - Includes health summary (total/running/stopped)

- Added /api/services/{service_type}/control endpoint
  - Placeholder for future service control
  - Returns manual commands for start/stop/restart

- Implemented process monitoring utilities:
  - check_process_running() - uses pgrep and ps for stats
  - check_port_listening() - uses lsof/netstat/ss for port checks

FRONTEND (ServiceDashboard.tsx):
- Beautiful dashboard with animated cards
- Service grid with 6 service cards
- Summary cards: Total, Running, Stopped, Health
- Auto-refresh toggle with visual indicator
- Manual refresh button
- Status badges with color coding:
  - 🟢 Green = Running
  - ⚪ Gray = Stopped
  - 🟡 Yellow = Unknown
- CPU/Memory usage display
- Port and PID information
- Clickable service URLs
- Help section with management commands

INTEGRATION (MainApp.tsx):
- Added "Services" tab to main navigation
- Imported ServiceDashboard component
- Updated tab state type to include 'services'
- Activity icon for services tab

FEATURES:
✅ Real-time status monitoring
✅ Auto-refresh every 5s
✅ Manual refresh button
✅ Health summary dashboard
✅ Service details (port, PID, CPU, memory)
✅ Visual status indicators
✅ Responsive grid layout
✅ Beautiful animations

USER EXPERIENCE:
- Auto-refresh can be toggled on/off
- Last updated timestamp shown
- Help text for service management
- Clean, professional UI matching Claude OS design

Files:
- mcp_server/server.py (+300 lines)
- frontend/src/components/ServiceDashboard.tsx (new file, 350 lines)
- frontend/src/pages/MainApp.tsx (+20 lines)
2025-11-04 19:24:03 +00:00
Claude
fb28e0d0e9
🐛 FIX: Remove hardcoded paths and debug console.logs
FIXES:
- Removed hardcoded user path '/Users/iamanmp/Projects'
  - Now defaults to empty string
  - User selects path via DirectoryPicker
  - Works for all users, not just one specific username

- Removed debug console.log statements
  - MainApp.tsx: Removed Project MCPs response log
  - DirectoryPicker.tsx: Removed browsing and response logs
  - Production code should not contain debug logs

IMPROVED:
- Better cross-platform compatibility
- Cleaner console output
- Professional production code

Files: frontend/src/pages/MainApp.tsx, frontend/src/components/DirectoryPicker.tsx
2025-11-04 19:16:19 +00:00
Bob Roberts
b335b5102a Add v2.0 architecture diagram and update documentation
- Add professional SVG architecture diagram matching hero logo aesthetic
- Update README with Architecture Overview section
- Completely rewrite WHAT_IS_CLAUDE_OS.md with hybrid indexing features
- Add Code Structure MCP as 6th pillar
- Update all performance metrics (10,000 files in 3 seconds!)
- Add comparison tables highlighting 600-1000x speedup
- Include both visual and technical architecture diagrams

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-31 17:23:47 -05:00
Bob Roberts
8d38791b03 Project cleanup 2025-10-31 16:54:28 -05:00
Bob Roberts
1b835c3a3e Add simple email/password authentication to frontend
Implemented optional authentication to keep strangers out of the
Claude OS frontend when deployed to production servers.

Backend (FastAPI):
- mcp_server/auth.py: JWT-based authentication
  * Bcrypt password hashing
  * Environment-based user credentials (no database needed)
  * 7-day token expiration
  * Optional - disabled by default

- mcp_server/server.py: Auth endpoints
  * POST /api/auth/login - Returns JWT token
  * GET /api/auth/me - Get current user
  * GET /api/auth/status - Check if auth enabled

- requirements.txt: Added dependencies
  * passlib[bcrypt] for password hashing
  * python-jose[cryptography] for JWT
  * python-multipart for form data

Frontend (React):
- frontend/src/lib/auth.tsx: Auth context and hooks
  * Manages authentication state
  * Automatic token validation
  * localStorage for token persistence

- frontend/src/pages/Login.tsx: Beautiful login page
  * Gradient design matching Claude OS branding
  * Clear error messages
  * Loading states

- frontend/src/components/ProtectedRoute.tsx: Route protection
  * Automatically redirects to login if not authenticated
  * Shows loading state during auth check
  * Bypasses auth if disabled

- frontend/src/App.tsx: Integrated auth
  * Wrapped app in AuthProvider
  * Protected routes for Welcome and MainApp
  * Login route for authentication

Documentation:
- AUTH_SETUP.md: Complete authentication guide
  * Quick start instructions
  * Password hash generation
  * Production deployment steps
  * Troubleshooting guide

- .env.example: Added auth configuration
  * CLAUDE_OS_EMAIL (login email)
  * CLAUDE_OS_PASSWORD (dev - plain text)
  * CLAUDE_OS_PASSWORD_HASH (production - bcrypt hash)
  * CLAUDE_OS_SECRET_KEY (JWT secret)

- docs/PRODUCTION_DEPLOYMENT.md: Added Step 5
  * Authentication setup for production
  * Hash and secret generation commands
  * Testing instructions

Features:
✅ Optional authentication (disabled by default)
✅ Single user via environment variables
✅ Secure bcrypt hashing
✅ JWT tokens with 7-day expiration
✅ Beautiful login UI
✅ No database required for user management

Usage:
1. Set CLAUDE_OS_EMAIL and CLAUDE_OS_PASSWORD in .env
2. Restart Claude OS
3. Visit /login to authenticate
4. Token valid for 7 days

To disable auth: Remove CLAUDE_OS_EMAIL from .env

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-30 21:07:53 -05:00
Bob Roberts
d189972021 Almost got the mosnter finished 2025-10-27 17:41:44 -05:00
Bob Roberts
9788518c4c Add document delete functionality to Knowledge Base Management
✨ Features Added:
- Delete button on each document card (appears on hover)
- Confirmation modal with document preview before deletion
- Backend DELETE API endpoint for removing documents
- Frontend integration with React Query mutations
- Proper error handling and success feedback

📝 Implementation Details:
- New deleteDocument() API function in frontend/src/lib/api.ts
- Delete button styled in blaze-orange with hover effects
- Modal dialog with file name display and confirmation
- Automatic KB stats and document list refresh after deletion

🎯 User Experience:
- Delete button hidden until hover (prevents accidental clicks)
- Confirmation modal prevents irreversible mistakes
- Real-time list updates after deletion
- Success/error messages with 3s auto-dismiss

🤖 Generated with Claude Code

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-24 19:09:58 -05:00
Bob Roberts
53295444de Major refactor: Native Ollama setup + MCP integration
Features:
- Fixed Ollama configuration for native (localhost) instead of Docker
- Increased LLM timeout from 30s to 120s for quality answers
- Implemented KB slug system for clean MCP endpoint URLs
- Added multiple knowledge base support with type metadata
- Integrated MCP server with FastAPI (port 8051)
- React frontend with KB management UI
- PostgreSQL + pgvector for vector embeddings

Performance:
- 33-56% faster than Docker setup with native Ollama
- Direct Metal GPU acceleration on Apple Silicon
- Optimized RAG engine with caching
- ~40s response time for comprehensive answers

Documentation:
- Complete native setup guide (README_NATIVE_SETUP.md)
- Performance benchmarking and comparison
- MCP endpoint documentation
- Slug implementation details
- Decision rationale for native vs Docker

Cleanup:
- Removed old Streamlit setup files
- Consolidated setup scripts to single setup_native.sh
- Consolidated service management scripts
- Removed test artifacts and old analysis docs
- Ready for sharing with team

🚀 Production-ready for local team deployment

🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-24 18:37:19 -05:00
Bob Roberts
bf1277182c mostly working correctly 2025-10-24 16:17:47 -05:00
Bob Roberts
a6a9c77f51 Major updates to use react and agent os profiles 2025-10-23 19:23:05 -05:00