Skip to content

elev1e1nSure/klodik

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

48 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ‡ท๐Ÿ‡บ ะ ัƒััะบะฐั ะฒะตั€ัะธั

๐Ÿค– Klodik

Tauri React TypeScript Tailwind CSS Python Groq License

Your desktop companion. Klodik โ€” a pixel-art AI agent that lives on your screen, talks to you in Russian, and actually does things โ€” opens apps, types text, searches Google, moves your mouse, and remembers your habits.

Klodik sprite


โœจ Features

Feature Description
๐ŸŽฎ Desktop Overlay Transparent, frameless, always-on-top window. Drag it anywhere
๐Ÿ—ฃ๏ธ Russian-only Speaks like a human in a messenger โ€” short, casual, sarcastic
๐Ÿง  Groq LLM Powered by llama-3.3-70b-versatile โ€” fast, smart, 70B parameters
๐Ÿ”ง Tool Calling 15+ tools: terminal, files, mouse, keyboard, browser, search
๐Ÿง  Multi-model Groq, OpenAI, Gemini, Ollama โ€” pick your provider
๐Ÿ“ Memory SQLite database remembers recent conversations and preferences
๐ŸŽฌ Animations Lottie animated sprite when working, idle pixel-art when chill
๐ŸชŸ Taskbar Visible in taskbar โ€” easy to find and switch to
๐Ÿ’ฌ Initiative Gets bored and starts conversation himself after 60s of silence

๐Ÿ—๏ธ Architecture

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  Tauri Window (transparent overlay)   โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”    โ”‚
โ”‚  โ”‚  React 19 + Tailwind v4    โ”‚    โ”‚
โ”‚  โ”‚  โ”œโ”€โ”€ Agent.tsx (sprite)    โ”‚    โ”‚
โ”‚  โ”‚  โ”œโ”€โ”€ useWebSocket.ts       โ”‚    โ”‚
โ”‚  โ”‚  โ””โ”€โ”€ ErrorBoundary.tsx      โ”‚    โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜    โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
               โ”‚ WebSocket  ws://localhost:8765
               โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  Python Sidecar (FastAPI + uvicorn) โ”‚
โ”‚  โ”œโ”€โ”€ WebSocket /ws                  โ”‚
โ”‚  โ”‚   โ””โ”€โ”€ agent_loop()              โ”‚
โ”‚  โ”‚       โ”œโ”€โ”€ LLM (litellm)         โ”‚
โ”‚  โ”‚       โ”œโ”€โ”€ SQLite Memory         โ”‚
โ”‚  โ”‚       โ””โ”€โ”€ 15+ Tools             โ”‚
โ”‚  โ”œโ”€โ”€ connection.py (WS manager)     โ”‚
โ”‚  โ”œโ”€โ”€ log.py (colored logging)       โ”‚
โ”‚  โ””โ”€โ”€ /health                        โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
               โ”‚
               โ–ผ HTTPS
        โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
        โ”‚  Groq Cloud  โ”‚
        โ”‚  70B params  โ”‚
        โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Klodik idle


๐Ÿš€ Quick Start

Prerequisites

Install

# Clone
git clone https://github.com/elev1e1nSure/klodik.git
cd klodik

# JS dependencies
pnpm install

# Python virtual environment + dependencies
python -m venv sidecar\.venv
sidecar\.venv\Scripts\pip install -r sidecar\requirements.txt

# Create .env (required!)
copy .env.example sidecar\.env
# Edit sidecar\.env and paste your GROQ_API_KEY

Run

# Beautiful launcher with provider & model selection
pnpm launch

# Or classic unified launch
pnpm dev:all

Or separately:

# Terminal 1
sidecar\.venv\Scripts\python.exe sidecar\main.py

# Terminal 2
pnpm tauri dev

๐Ÿ› ๏ธ Tools

The agent can perform real actions on your computer:

Tool What it does
terminal Run shell commands
read_file / write_file File operations
mkdir / list_dir Directory management
search Find files by name or content
move_file Move/rename files
move_mouse / click Control cursor
type_text / press_key Keyboard input
open_app Launch applications
open_url Open links in browser
google Search Google and return results
read_url Fetch webpage content

๐Ÿง  Memory

Conversations are stored in sidecar/memory.db (SQLite). The agent loads the last 5 interactions before each task to maintain context and remember your preferences.


๐Ÿ“ Project Structure

klodik/
โ”œโ”€โ”€ src/               # React frontend
โ”œโ”€โ”€ src-tauri/         # Tauri (Rust) desktop shell
โ”œโ”€โ”€ sidecar/           # Python backend (FastAPI + agent)
โ”‚   โ”œโ”€โ”€ connection.py  # WebSocket connection manager
โ”‚   โ”œโ”€โ”€ log.py         # Structured colored logging
โ”‚   โ””โ”€โ”€ tools/         # Tool registry & implementations
โ”œโ”€โ”€ scripts/           # dev.cjs โ€” unified launch script
โ”œโ”€โ”€ public/            # Sprites and assets
โ””โ”€โ”€ AGENTS.md          # Project rules & conventions

๐Ÿง  Providers & Models

Provider Models API Key Required
โšก Groq llama-3.3-70b, mixtral, gemma2 Yes (console.groq.com)
๐ŸŒ OpenAI gpt-4o, gpt-4o-mini, gpt-4-turbo Yes (platform.openai.com)
๐Ÿ’Ž Gemini gemini-1.5-pro, gemini-1.5-flash Yes (aistudio.google.com)
๐Ÿฆ™ Ollama llama3, mistral, codellama, etc. No (local)

Set provider via pnpm launch or in .env (PROVIDER=...).

๐Ÿฉน Troubleshooting

Issue Fix
GROQ_API_KEY not set Copy .env.example to sidecar\.env, paste key from console.groq.com
Port 8765 in use Change WS_PORT in .env or kill the process on 8765
pyautogui not installed Install deps: pip install -r sidecar\requirements.txt
macOS: pyautogui fails System Preferences โ†’ Security โ†’ Accessibility โ†’ add Python/terminal
Window not draggable Ensure data-tauri-drag-region is on the root div

๐Ÿ“œ License

MIT

About

Your desktop companion Klodik that actually does things. Transparent overlay agent with tool calling and memory. Tauri + React + Python.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors