Spaces:
Running
Running
Update README and app.py for enhanced game description and tool usage instructions
Browse files
README.md
CHANGED
|
@@ -1,5 +1,5 @@
|
|
| 1 |
---
|
| 2 |
-
title: Murder.Ai
|
| 3 |
emoji: ๐ต๏ธ๐ฅ๐ค๐ช
|
| 4 |
colorFrom: red
|
| 5 |
colorTo: gray
|
|
@@ -11,4 +11,86 @@ tags:
|
|
| 11 |
- building-mcp-track-creative
|
| 12 |
- mcp-in-action-track-creative
|
| 13 |
---
|
| 14 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
---
|
| 2 |
+
title: Murder.Ai - LLMs that kill, lie, decieve
|
| 3 |
emoji: ๐ต๏ธ๐ฅ๐ค๐ช
|
| 4 |
colorFrom: red
|
| 5 |
colorTo: gray
|
|
|
|
| 11 |
- building-mcp-track-creative
|
| 12 |
- mcp-in-action-track-creative
|
| 13 |
---
|
| 14 |
+
|
| 15 |
+
# ๐ต๏ธ Murder.Ai - Interactive AI Mystery
|
| 16 |
+
|
| 17 |
+
[](https://deepmind.google/technologies/gemini/)
|
| 18 |
+
[](https://www.anthropic.com/)
|
| 19 |
+
[](https://elevenlabs.io)
|
| 20 |
+
[](https://gradio.app)
|
| 21 |
+
[](https://fastapi.tiangolo.com/)
|
| 22 |
+
|
| 23 |
+
**Murder.Ai** is an immersive, LLM-powered detective game where you interrogate suspects, gather evidence, and solve procedurally generated murder mysteries.
|
| 24 |
+
|
| 25 |
+
---
|
| 26 |
+
|
| 27 |
+
## ๐ฌ Demo Video
|
| 28 |
+
|
| 29 |
+
[](https://www.youtube.com/watch?v=dQw4w9WgXcQ)
|
| 30 |
+
|
| 31 |
+
---
|
| 32 |
+
|
| 33 |
+
## ๐ Socials
|
| 34 |
+
|
| 35 |
+
* [X Post](https://x.com/placeholder)
|
| 36 |
+
* [Reddit Post](https://reddit.com/r/placeholder)
|
| 37 |
+
|
| 38 |
+
---
|
| 39 |
+
## ๐ฎ How to Play
|
| 40 |
+
|
| 41 |
+
### **Two Game Modes**
|
| 42 |
+
1. **Interactive Mode:** YOU are the detective. Use tools, interrogate suspects, and solve the case.
|
| 43 |
+
2. **AI Spectator Mode (Beta):** Watch an autonomous **AI Detective** play the game, reason through evidence, and make accusations in real-time.
|
| 44 |
+
|
| 45 |
+
### **The Flow**
|
| 46 |
+
1. **Select a Case:** Choose from scenarios like "The Silicon Valley Incident" or "The Art Gallery Heist".
|
| 47 |
+
2. **Gather Evidence:** Use your toolkit to find clues.
|
| 48 |
+
3. **Interrogate:** Chat with suspects. They have unique personalities, secrets, and **VOICES** (powered by ElevenLabs).
|
| 49 |
+
4. **Accuse:** When you think you know the truth, make your move. But be carefulโwrong accusations cost you rounds!
|
| 50 |
+
|
| 51 |
+
---
|
| 52 |
+
|
| 53 |
+
## ๐ ๏ธ Tech Stack & Features
|
| 54 |
+
|
| 55 |
+
### **Core Architecture**
|
| 56 |
+
* **Frontend:** Custom HTML5/CSS/JS game interface embedded in **Gradio**. Uses a "Noir" theme with interactive corkboards and polaroids.
|
| 57 |
+
* **Backend:** **FastAPI** handles game state and serves the frontend. **Python** game engine manages logic.
|
| 58 |
+
* **Bridge:** A robust **API Bridge** connects the JS frontend to the Python backend for real-time interactions.
|
| 59 |
+
|
| 60 |
+
### **AI & MCP Tools**
|
| 61 |
+
The game is built on the **Model Context Protocol (MCP)**, allowing the AI (and you) to use tools:
|
| 62 |
+
* `get_location(phone)`: Triangulate suspect positions.
|
| 63 |
+
* `get_footage(camera)`: Watch security tapes (unlocks physical evidence).
|
| 64 |
+
* `get_dna_test(item)`: Analyze fingerprints and DNA on objects.
|
| 65 |
+
* `call_alibi(id)`: Call an alibi witness (simulated by a secondary LLM Agent).
|
| 66 |
+
|
| 67 |
+
### **Voice Integration**
|
| 68 |
+
* **Text-to-Speech:** Integrated **ElevenLabs API** gives every suspect a unique voice based on their archetype (CEO, Janitor, etc.).
|
| 69 |
+
* **Voice-to-Text:** Browser-native Speech Recognition allows you to *speak* your interrogation questions.
|
| 70 |
+
|
| 71 |
+
---
|
| 72 |
+
|
| 73 |
+
## ๐ฆ Installation
|
| 74 |
+
|
| 75 |
+
```bash
|
| 76 |
+
git clone https://github.com/yourusername/murder-ai.git
|
| 77 |
+
cd murder-ai
|
| 78 |
+
pip install -r requirements.txt
|
| 79 |
+
```
|
| 80 |
+
|
| 81 |
+
### **Environment Variables**
|
| 82 |
+
Create a `.env` file:
|
| 83 |
+
```env
|
| 84 |
+
GEMINI_API_KEY=your_gemini_key
|
| 85 |
+
ELEVENLABS_API_KEY=your_elevenlabs_key
|
| 86 |
+
```
|
| 87 |
+
|
| 88 |
+
### **Run**
|
| 89 |
+
```bash
|
| 90 |
+
python app.py
|
| 91 |
+
```
|
| 92 |
+
Open http://localhost:7860
|
| 93 |
+
|
| 94 |
+
---
|
| 95 |
+
|
| 96 |
+
**MCP-1st-Birthday Hackathon 2025**
|
app.py
CHANGED
|
@@ -518,7 +518,7 @@ with gr.Blocks(title="Murder.Ai", fill_height=True) as demo:
|
|
| 518 |
gr.Markdown("### ๐ฅ How to Play (Demo)")
|
| 519 |
gr.HTML('<iframe width="100%" height="400" src="https://www.youtube.com/embed/dQw4w9WgXcQ" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>')
|
| 520 |
|
| 521 |
-
gr.Markdown("# ๐ ๏ธ Try MCP Tools Directly")
|
| 522 |
gr.Markdown("*Note: Start a game first to populate these tools.*")
|
| 523 |
|
| 524 |
with gr.Tabs():
|
|
|
|
| 518 |
gr.Markdown("### ๐ฅ How to Play (Demo)")
|
| 519 |
gr.HTML('<iframe width="100%" height="400" src="https://www.youtube.com/embed/dQw4w9WgXcQ" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>')
|
| 520 |
|
| 521 |
+
gr.Markdown("# ๐ ๏ธ Try MCP Tools Directly (Click Open Case Files first)")
|
| 522 |
gr.Markdown("*Note: Start a game first to populate these tools.*")
|
| 523 |
|
| 524 |
with gr.Tabs():
|