Initial commit: MUDlet AI Client with Telnet + Ollama integration
This commit is contained in:
commit
a1b7191098
22 files changed
+2197
No files matched your search
@@ -0,0 +1,108 @@
|
||||
# MUDlet AI Client
|
||||
|
||||
Un client MUD moderno con integrazione LLM per automazione del gameplay, sviluppato con Electron + React + TypeScript.
|
||||
|
||||
## Features
|
||||
|
||||
### Core
|
||||
- **Connessione Telnet** - Supporto completo per protocollo Telnet con parsing ANSI colors
|
||||
- **Game Window** - Display in tempo reale con input commands
|
||||
- **Connection Panel** - Gestione connessioni con host/porta configurabili
|
||||
|
||||
### Autoplayer LLM
|
||||
- **Ollama Integration** - Connessione a server Ollama remoto (ollama.solarpi.net)
|
||||
- **Decision Engine** - Sistema AI che analizza l'output del gioco e genera comandi
|
||||
- **System Prompt** - Personalizzazione del comportamento del bot
|
||||
- **Model Selection** - Supporto per modelli multipli (llama3.2, mistral, etc.)
|
||||
- **Action Queue** - Coda azioni per revisione manuale o auto-send
|
||||
|
||||
### UI/UX
|
||||
- **React + TypeScript** - Codice type-safe con React 18
|
||||
- **Tailwind CSS** - Styling moderno e responsive
|
||||
- **Navigation** - Pannelli Connection/Game/Autoplayer
|
||||
|
||||
## Quick Start
|
||||
|
||||
```bash
|
||||
# Clona e installa dipendenze
|
||||
cd mudlet-ai-client
|
||||
npm install
|
||||
|
||||
# Avvia dev server (necessario per Electron)
|
||||
npm run dev
|
||||
|
||||
# Avvia Electron (in terminale separato)
|
||||
npm start
|
||||
```
|
||||
|
||||
## Connessione
|
||||
|
||||
Server LPMUD preconfigurato:
|
||||
- **Host**: 172.24.19.225
|
||||
- **Porta**: 6666
|
||||
|
||||
Server Ollama:
|
||||
- **URL**: http://ollama.solarpi.net
|
||||
|
||||
## Stack Tecnologico
|
||||
|
||||
| Layer | Tecnologie |
|
||||
|-------|------------|
|
||||
| Framework | Electron 28, React 18, TypeScript 5 |
|
||||
| UI | Tailwind CSS, shadcn/ui |
|
||||
| Telnet | telnet-client, ansicolor |
|
||||
| LLM | Ollama (HTTP API) |
|
||||
| Build | Vite 5, electron-vite |
|
||||
|
||||
## Struttura Progetto
|
||||
|
||||
```
|
||||
mudlet-ai-client/
|
||||
├── src/
|
||||
│ ├── main/ # Electron main process
|
||||
│ │ ├── index.ts # App entry point, IPC handlers
|
||||
│ │ └── services/
|
||||
│ │ ├── TelnetService.ts # Connessione Telnet
|
||||
│ │ ├── OllamaService.ts # Client HTTP Ollama
|
||||
│ │ └── AutoplayerService.ts # Decision engine
|
||||
│ ├── renderer/ # React UI
|
||||
│ │ ├── App.tsx # Root component
|
||||
│ │ ├── main.tsx # Entry point
|
||||
│ │ └── components/
|
||||
│ │ ├── GameWindow.tsx # Game display + input
|
||||
│ │ ├── ConnectionPanel.tsx
|
||||
│ │ └── AutoplayerPanel.tsx
|
||||
│ └── preload/
|
||||
│ └── index.js # Context bridge
|
||||
├── package.json
|
||||
├── vite.config.ts
|
||||
└── tsconfig.json
|
||||
```
|
||||
|
||||
## Workflow Autoplayer
|
||||
|
||||
```
|
||||
1. OBSERVE → TelnetService riceve output
|
||||
2. PARSE → AutoplayerService analizza stato
|
||||
3. THINK → Ollama genera decisione
|
||||
4. ACT → Azione eseguita o messa in coda
|
||||
```
|
||||
|
||||
## Roadmap
|
||||
|
||||
- [x] Fase 1: Client MUD Base
|
||||
- [x] Fase 2: Integrazione Ollama
|
||||
- [ ] Fase 3: Autoplayer miglioramenti (mapper 2D, trigger system)
|
||||
- [ ] Fase 4: Sistema Plugin
|
||||
- [ ] Fase 5: Funzionalità avanzate (persistence SQLite)
|
||||
|
||||
## Documentazione
|
||||
|
||||
- [Architettura](docs/ARCHITECTURE.md)
|
||||
- [Workflow di Sviluppo](docs/WORKFLOW.md)
|
||||
- [API IPC](docs/API.md)
|
||||
- [Piano Progetto](MUD_AUTOPLAYER_PLAN.md)
|
||||
|
||||
## License
|
||||
|
||||
MIT
|
||||
Reference in new issue
Block a user