diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..0285f94 --- /dev/null +++ b/.env.example @@ -0,0 +1,23 @@ +# Service URLs for local dev (pointing to your server) +TEST_HOST=192.168.86.149 +WIKIJS_URL=http://192.168.86.149:8088 +NEO4J_URI=bolt://192.168.86.149:7687 +QDRANT_HOST=192.168.86.149 +QDRANT_PORT=6333 +OLLAMA_URL=http://192.168.86.149:11434 +SEARXNG_URL=http://192.168.86.149:8080 +REDIS_HOST=192.168.86.149 + +OLLAMA_MODEL=mistral-nemo-large:latest +OLLAMA_EMBEDDING_MODEL=nomic-embed-text + +# Wiki.js auth +WIKIJS_USERNAME=librarian@schweitz.net +WIKIJS_PASSWORD=key_here +# Wiki.js GraphQL API token (generate from Admin → API Access) +WIKI_GRAPHQL_API=your_jwt_token_here + +LIBRARY_API_KEY=key_here +NEO4J_PASSWORD=key_here +WIKIJS_DB_PASSWORD=key_here +SCHEDULER_API_KEY=key_here \ No newline at end of file diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 0000000..d43830a --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1,17 @@ +# Claude Code Instructions + +**MANDATORY: Read AGENTS.md instead of this file.** + +This project uses a unified configuration file for all LLM coding agents. + +## Instructions + +1. **Read and follow AGENTS.md** - All project guidelines are located there +2. **Do not modify this file** - Only update AGENTS.md +3. **Do not create or modify other agent-specific files** - Use AGENTS.md as the single source of truth + +This approach ensures consistent behavior across all LLM coding agents without managing separate configuration files. + +--- + +If you need to update project guidelines, edit AGENTS.md, not this file. diff --git a/wakeup.sh b/wakeup.sh new file mode 100755 index 0000000..1436ead --- /dev/null +++ b/wakeup.sh @@ -0,0 +1,50 @@ + + +#!/bin/bash +# Library-Desk Server Startup Script + +set -e + +# Colors for output +GREEN='\033[0;32m' +YELLOW='\033[1;33m' +RED='\033[0;31m' +NC='\033[0m' # No Color + +echo -e "${GREEN}Starting Library-Desk server...${NC}" + +# Check if port 8778 is already in use +if lsof -Pi :8778 -sTCP:LISTEN -t >/dev/null 2>&1 ; then + echo -e "${RED}Error: Port 8778 is already in use${NC}" + echo "Run: lsof -i :8778 to see what's using it" + echo "Or run: kill \$(lsof -t -i:8778) to stop it" + exit 1 +fi + +# Activate virtual environment if not already activated +if [ -z "$VIRTUAL_ENV" ]; then + if [ -d ".venv" ]; then + echo -e "${YELLOW}Activating virtual environment...${NC}" + source .venv/bin/activate + else + echo -e "${RED}Error: Virtual environment not found${NC}" + echo "Run: python -m venv .venv && source .venv/bin/activate && pip install -r requirements.txt" + exit 1 + fi +fi + +# Create logs directory if it doesn't exist +LOGS_DIR="logs" +mkdir -p "$LOGS_DIR" + +# Clear/create log file +LOG_FILE="$LOGS_DIR/server.log" +> "$LOG_FILE" +echo -e "${YELLOW}Logs will be written to: ${LOG_FILE}${NC}" + +# Start the server +echo -e "${GREEN}Starting uvicorn server on http://tower-of-joy:8778${NC}" +echo -e "${YELLOW}Press Ctrl+C to stop the server${NC}" +echo "" + +uvicorn src.main:app --reload --host 0.0.0.0 --port 8778 2>&1 | tee "$LOG_FILE"