Files
mudlet-ai-client/README.md
T

3.1 KiB

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

# 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:

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

  • Fase 1: Client MUD Base
  • Fase 2: Integrazione Ollama
  • Fase 3: Autoplayer miglioramenti (mapper 2D, trigger system)
  • Fase 4: Sistema Plugin
  • Fase 5: Funzionalità avanzate (persistence SQLite)

Documentazione

License

MIT