Skip to content
/ Miko Public

🐾 AI-powered desktop companion to boost your efficiency | 🥈 Second Prize @adventurex 2025 Kimi Track

Notifications You must be signed in to change notification settings

DEM1TASSE/Miko

Repository files navigation

🐾 Miko — AI-Native Desktop Pet for Productivity

🥈 Second Prize, Kimi Track @AdventureX 2025 (China's Largest Hackathon)

中文 | English

Miko Poster

🎬 Demo Video (Chinese Ver.) · 📊 Pitch Deck (Chinese Ver.)


English

Miko is an AI-native desktop pet that acts as your personal productivity assistant. Just tell it what you need in natural language — send emails, organize files, run Python code, check the weather, and more.

✨ Features

  • 💬 Natural Language Chat — AI-powered conversational interface
  • 📁 File Management — Organize, search, and clean up files
  • 📧 Gmail Integration — Read, draft, and send emails
  • 🐍 Code Execution — Run Python scripts in a sandboxed environment
  • 🖥️ System Control — Launch apps, take screenshots, adjust settings
  • 🌤️ Weather Queries — Real-time weather info
  • 🔄 Workflow Automation — Chain tasks with natural language

🚀 Quick Start

Prerequisites: Python 3.8+, Node.js 16+

git clone [repo-url]
cd miko
cp .env.example .env   # then fill in your API keys

Install dependencies:

pip install fastapi uvicorn openai requests pathlib python-multipart
npm install

Run:

python backend/run.py   # backend → http://localhost:8000
npm start               # frontend (Electron)

🔑 API Keys

Key Required Provider
KIMI_API_KEY ✅ Yes Moonshot AI — core AI engine
MINIMAX_API_KEY ✅ Yes MiniMax — email drafting
WEATHER_API_KEY Optional WeatherAPI
Gmail OAuth Optional Google Cloud Console

💡 Example Commands

Category Examples
Files "Organize my Downloads folder" · "Find all PDFs"
Email "Send an email to Alice about the 3pm meeting" · "Check my unread emails"
Code "Generate an 8-digit random password" · "Calculate fibonacci(10)"
System "Open Chrome" · "Take a screenshot" · "Set volume to 50%"
Info "What's the weather in Hangzhou?" · "What time is it?"

🏗️ Tech Stack

Frontend: Electron 37 + React 19 + TypeScript · Native CSS (glassmorphism, transparency)

Backend: FastAPI + Uvicorn (Python 3.8+)

AI Models:

  • Kimi K2 (Moonshot) — main agent for conversation, tool calling, file/app control
  • MiniMax Text-01 — specialized email drafting

Architecture: Multi-agent system (MainAgent → MemoryAgent + HistoryManager) with modular tool dispatcher, sandboxed code execution, and local-first data storage.

📁 Project Structure

miko/
├── backend/
│   ├── ai_backend.py          # FastAPI server
│   ├── agents/                # MainAgent, MemoryAgent, HistoryManager
│   ├── tools/                 # file, app, python, gmail, dispatcher
│   └── data/                  # local storage
├── components/                # React UI components
├── src/services/              # API & WebSocket clients
├── main.js                    # Electron main process
└── .env.example               # env template

🔒 Privacy & Security

All API keys and data stay local. Gmail tokens are used only for sending — no content is stored or uploaded. Python execution is sandboxed with minimal permissions.


中文说明

Miko 是一个 AI 原生的效率工具型桌宠。用自然语言告诉它你想做什么,它就能帮你收发邮件、整理桌面、执行代码、查询天气等。

✨ 核心功能

  • 💬 智能对话 — AI 驱动的自然语言交互
  • 📁 文件管理 — 整理、分类、搜索文件
  • 📧 邮件管理 — 通过 Gmail 收发邮件,AI 智能起草
  • 🐍 代码执行 — 沙盒化 Python 运行环境
  • 🖥️ 系统控制 — 打开应用、截屏、调节设置
  • 🌤️ 天气查询 — 实时天气信息

🚀 快速开始

环境要求: Python 3.8+、Node.js 16+

git clone [项目地址]
cd miko
cp .env.example .env   # 填入 API 密钥

安装依赖:

pip install fastapi uvicorn openai requests pathlib python-multipart
npm install

启动:

python backend/run.py   # 后端 → http://localhost:8000
npm start               # 前端 (Electron)

🔑 API 密钥配置

密钥 必需 获取方式
KIMI_API_KEY ✅ 是 Moonshot AI — 主 AI 引擎
MINIMAX_API_KEY ✅ 是 MiniMax — 邮件处理
WEATHER_API_KEY 可选 WeatherAPI
Gmail OAuth 可选 Google Cloud Console

💡 使用示例

场景 指令示例
文件 "整理我的 Downloads 文件夹" · "查找所有 PDF 文件"
邮件 "发邮件给张三,告诉他会议改到下午3点" · "查看未读邮件"
代码 "生成一个8位随机密码" · "计算斐波那契数列前10项"
系统 "打开 Chrome" · "截个屏" · "调节音量到 50%"
查询 "今天杭州天气怎么样?" · "现在几点了?"

❓ 常见问题

  • 看不到界面? — 确保后端和前端都已启动,端口 8000 未被占用
  • API 密钥无效? — 检查 .env 文件,确保没有多余空格或引号
  • 邮件功能异常? — 运行 python gmail_auth.py 完成 Gmail OAuth 认证

📄 License

ISC

🙏 Acknowledgments

Kiro IDE · Trae · Kimi-K2 · MiniMax

🤝 Contributing

Issues and PRs are welcome! 🐛 Bug reports · 💡 Feature ideas · 🔧 Code contributions · 📚 Docs improvements

About

🐾 AI-powered desktop companion to boost your efficiency | 🥈 Second Prize @adventurex 2025 Kimi Track

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published