About this project
Otaku is an open-source LLM frontend designed for roleplay, comparable to SillyTavern or Janitor AI. It is free, runs locally on macOS, Linux, and Windows, and requires no infrastructure like Docker or database servers. Users can interact through a web UI or a terminal interface.
The application supports both local LLM backends (llama.cpp, KoboldCpp, Ollama, oMLX, LM Studio) and cloud API providers (OpenRouter, NanoGPT, and any OpenAI-compatible server). Installation is handled via a single command using the `uv` package manager or Homebrew.
Key features include:
- **Context Control**: Maintains consistent prose by always sending the first 20 and last 150 messages as-is. Intermediate messages are automatically split into scenes and replaced by editable summaries to manage long contexts.
- **Character Recognition**: Automatically extracts characters introduced in the story. Each character maintains an individual journal of their experiences.
- **Flexible Personas**: Users can play as any character and use `/me` and `/you` commands to guide the LLM on character roles.
- **Transparent Context**: The `/context` command allows users to see exactly what is sent to the LLM.
- **Importing Content**: Supports importing SillyTavern chats, plain text files (split into turns), and character cards (PNG or JSON). Lorebooks can be imported into the system message.
- **Story Management**: Users can browse, continue from any message, or fork stories. Forking copies all scenes, characters, and journals to a new branch.
- **D&D Support**: Includes a `/roll` command for dice rolls (e.g., `2d6+3`, `2d20kh1`) which sends results with actions.
Data is stored locally in a SQLite database with daily snapshots. Encryption at rest (AES-256-GCM) is optional and can be enabled via configuration. Provider API keys are always stored sealed, with the key kept in the OS keychain. Configuration files are managed surgically to preserve user edits across versions, and separate environments can be run using the `OTAKU_CONFIG_DIR` variable.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.