| | .PHONY: up down logs seed seed-db ingest clean health test demo |
| |
|
| | |
| | up: |
| | docker-compose up -d |
| | @echo "Waiting for services to be healthy..." |
| | @sleep 10 |
| | @make health |
| |
|
| | |
| | down: |
| | docker-compose down |
| |
|
| | |
| | logs: |
| | docker-compose logs -f |
| |
|
| | |
| | seed: |
| | docker-compose exec mcp python /app/ops/scripts/seed.py |
| |
|
| | |
| | seed-db: |
| | python ops/scripts/generate_sample_databases.py |
| |
|
| | |
| | ingest: |
| | docker-compose run --rm mcp python /app/ops/scripts/ingest.py |
| |
|
| | |
| | clean: |
| | docker-compose down -v |
| | docker system prune -f |
| | @if [ -d "neo4j/data" ]; then rm -rf neo4j/data; fi |
| |
|
| | |
| | health: |
| | @echo "Checking service health..." |
| | @docker-compose exec neo4j cypher-shell -u neo4j -p password "MATCH (n) RETURN count(n) LIMIT 1" > /dev/null 2>&1 && echo "β
Neo4j: Healthy" || echo "β Neo4j: Unhealthy" |
| | @curl -s http://localhost:8000/health > /dev/null && echo "β
MCP Server: Healthy" || echo "β MCP Server: Unhealthy" |
| | @curl -s http://localhost:8501 > /dev/null && echo "β
Streamlit: Healthy" || echo "β Streamlit: Unhealthy" |
| | @docker-compose ps agent | grep -q "Up" && echo "β
Agent: Running" || echo "β Agent: Not running" |
| |
|
| | |
| | test: health |
| | @echo "Running integration test..." |
| | @make seed |
| | @sleep 5 |
| | @echo "Check http://localhost:8501 and Neo4j Browser at http://localhost:7474" |
| |
|
| | |
| | demo: |
| | @echo "Starting demo workflow..." |
| | @make clean |
| | @make up |
| | @make seed |
| | @echo "" |
| | @echo "π Demo Ready!" |
| | @echo "1. Open http://localhost:8501 in your browser (Main Chat Interface)" |
| | @echo "2. Ask a question like: 'Show me all customers who have placed orders'" |
| | @echo "3. Watch the agent process through the workflow" |
| | @echo "4. Check Neo4j Browser at http://localhost:7474 (neo4j/password)" |
| | @echo "" |
| | @echo "During 5-minute pauses, you can edit instructions in Neo4j Browser:" |
| | @echo "MATCH (i:Instruction {status: 'pending'}) SET i.parameters = '{\"question\": \"new question\"}'" |
| |
|
| | |
| | build: |
| | docker-compose build |
| |
|
| | |
| | restart-agent: |
| | docker-compose restart agent |
| |
|
| | restart-mcp: |
| | docker-compose restart mcp |
| |
|
| |
|
| | restart-streamlit: |
| | docker-compose restart streamlit |
| |
|
| | |
| | debug-agent: |
| | docker-compose logs agent |
| |
|
| | debug-mcp: |
| | docker-compose logs mcp |
| |
|
| |
|
| | debug-streamlit: |
| | docker-compose logs streamlit |
| |
|
| | |
| | status: |
| | docker-compose ps |