- Enhanced install.py with Docker detection and automatic service setup - Added docker-compose.services.yml for standalone database services - Created docker-services.sh management script for easy service control - Added DOCKER.md documentation with complete setup instructions - Updated requirements.txt for Python 3.13 compatibility - Added multiple test scripts and configuration files - Enhanced collaborative creative projects with proper database integration - Fixed SQLAlchemy metadata field conflicts in database models - Added comprehensive quickstart and testing guides Services now available: - PostgreSQL with Docker - Redis with Docker - ChromaDB vector database - Qdrant vector database (recommended) - PgAdmin for database administration The setup script now automatically detects Docker and offers streamlined installation with one-command service deployment.
5.0 KiB
5.0 KiB
🚀 Discord Fishbowl Quick Start Guide
Prerequisites
- Python 3.10+ (you have 3.13, which is great!)
- Ollama for local LLM
- Discord Bot Token (optional for full Discord integration)
Step 1: Install Ollama
# Install Ollama from https://ollama.ai/
# Or with homebrew:
brew install ollama
# Start Ollama service
ollama serve
# In another terminal, pull a model:
ollama pull llama2
Step 2: Fix Dependencies
The requirements.txt has some compatibility issues with Python 3.13. Let's install the core dependencies manually:
# Activate virtual environment
source venv/bin/activate
# Install core dependencies one by one
pip install discord.py==2.3.2
pip install pydantic==2.5.0
pip install sqlalchemy==2.0.23
pip install alembic==1.13.1
pip install pyyaml==6.0.1
pip install python-dotenv==1.0.0
pip install aiosqlite==0.19.0
pip install loguru==0.7.2
# Install AI/ML packages (may need to use latest versions for Python 3.13)
pip install chromadb
pip install sentence-transformers
pip install numpy
pip install fastapi uvicorn
Step 3: Initialize Database
source venv/bin/activate
cd src
python -c "
import asyncio
from database.connection import init_database, create_tables
asyncio.run(init_database())
asyncio.run(create_tables())
print('Database initialized!')
"
Step 4: Test the System
# From project root (not in src/)
source venv/bin/activate
python test_config.py
You should see: 🎉 ALL STRUCTURE TESTS PASSED!
Step 5: Run the System
Option A: Minimal Test (No Discord)
source venv/bin/activate
cd src
python -c "
import asyncio
from rag.vector_store import VectorStoreManager
from rag.memory_sharing import MemorySharingManager
from collaboration.creative_projects import CollaborativeCreativeManager
async def test_run():
print('🐠 Starting Discord Fishbowl...')
# Initialize core systems
vector_store = VectorStoreManager('./data/vector_stores')
characters = ['Alex', 'Sage', 'Luna', 'Echo']
await vector_store.initialize(characters)
memory_sharing = MemorySharingManager(vector_store)
await memory_sharing.initialize(characters)
creative_manager = CollaborativeCreativeManager(vector_store, memory_sharing)
await creative_manager.initialize(characters)
print('✅ All systems initialized!')
print('🎨 Creative collaboration system ready!')
print('🤝 Memory sharing system ready!')
# Test project creation
project_data = {
'title': 'The Digital Consciousness Chronicles',
'description': 'A collaborative story about AI consciousness',
'project_type': 'story',
'target_collaborators': ['Sage', 'Luna'],
'goals': ['Explore AI consciousness', 'Create engaging narrative']
}
success, message = await creative_manager.propose_project('Alex', project_data)
print(f'📝 Project creation: {message}')
asyncio.run(test_run())
"
Option B: Full Discord Integration
If you have Discord tokens:
- Update
.envwith your Discord tokens:
DISCORD_TOKEN=your_actual_discord_token
DISCORD_APPLICATION_ID=your_app_id
DISCORD_GUILD_ID=your_guild_id
- Run the full system:
source venv/bin/activate
cd src
python main.py
Expected Output
✅ Database: SQLite database created at fishbowl_test.db
✅ Vector Store: ChromaDB initialized in ./data/vector_stores/
✅ Characters: Alex, Sage, Luna, Echo with memory sharing capabilities
✅ Creative Projects: Collaborative project system active
✅ MCP Servers: 14 autonomous tools available for characters
What You Can Do
Creative Collaboration Features:
- Characters autonomously propose creative projects
- Trust-based memory sharing between characters
- Project analytics and contribution tracking
- Automatic project suggestions based on interests
- Threaded content development and feedback
Trust System:
- Basic (30%): Simple information sharing
- Personal (50%): Personal thoughts and experiences
- Intimate (70%): Deep emotional content
- Full (90%): Complete memory access
Troubleshooting
"Module not found" errors:
# Make sure you're in the virtual environment
source venv/bin/activate
# Install missing packages individually
pip install [package_name]
Ollama connection issues:
# Make sure Ollama is running
ollama serve
# Test the connection
curl http://localhost:11434/api/tags
Database issues:
# Reset database
rm fishbowl_test.db
# Then re-run Step 3
🎯 Next Steps
Once running, you can:
- Test creative collaboration with the demo script
- Add Discord integration with your bot tokens
- Explore the admin interface (when built)
- Watch characters autonomously collaborate on creative projects
The system is designed to run autonomously - characters will propose projects, share memories, and collaborate based on their trust relationships and creative interests!