youclaw

agent
SUMMARY

๐Ÿฆž Your AI Personal Assistant. An intelligent assistant with memory, skills, and scheduled tasks that truly understands you . Helping you tackle everything in work and life.

README.md

YouClaw Logo

YouClaw

English | ็ฎ€ไฝ“ไธญๆ–‡ | ๆ—ฅๆœฌ่ชž

Desktop AI Assistant powered by a multi-provider coding agent runtime

Release License Stars Platform

If YouClaw is useful to you, give it a GitHub Star.
More stars help more people discover the project.

Star YouClaw on GitHub

One click helps keep YouClaw improving.


Download & Install

macOS

Download the .dmg file from the Releases page, open it and drag YouClaw into Applications.

Apple Silicon (M1/M2/M3/M4) and Intel are both supported.

Windows

Download the .exe installer from Releases and run it.

Linux

๐Ÿšง Coming soon โ€” stay tuned!


Features

  • Multi-Agent Management โ€” Create and configure multiple AI agents via YAML, each with its own personality, memory, and skills
  • Multi-Channel โ€” Connect agents to Telegram, DingTalk, Feishu (Lark), QQ, and WeCom
  • Browser Automation โ€” Built-in agent-browser skill with Playwright for web interaction, scraping, and testing
  • Scheduled Tasks โ€” Cron / interval / one-shot tasks with automatic retry and stuck detection
  • Persistent Memory โ€” Per-agent memory system with conversation logs
  • Skills System โ€” Compatible with OpenClaw SKILL.md format, 3-tier priority loading, hot reload, skills marketplace
  • Authentication โ€” Built-in auth system for cloud deployment
  • Web UI โ€” React + shadcn/ui with SSE streaming, i18n (ไธญๆ–‡ / English)
  • Lightweight Desktop App โ€” Tauri 2 bundle ~27 MB (vs ~338 MB Electron), native system tray

Browser Profiles

YouClaw supports three browser profile drivers:

  • Managed Chromium โ€” recommended for most users
  • Remote CDP โ€” for existing advanced automation setups
  • Extension Relay โ€” advanced local attach mode for a browser that already exposes a loopback CDP endpoint

Detailed guide:

Tech Stack

Layer Choice
Runtime & Package Manager Bun
Desktop Shell Tauri 2 (Rust)
Backend Hono + bun:sqlite + Pino
Agent @mariozechner/pi-coding-agent + @mariozechner/pi-ai
Frontend Vite + React + shadcn/ui + Tailwind CSS
Channels grammY (Telegram) ยท dingtalk-stream (DingTalk) ยท @larksuiteoapi/node-sdk (Feishu) ยท QQ ยท WeCom
Scheduled Tasks croner
E2E Testing Playwright

Architecture

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                Tauri 2 (Rust Shell)                   โ”‚
โ”‚   โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”‚   โ”‚   WebView     โ”‚    โ”‚   Bun Sidecar              โ”‚ โ”‚
โ”‚   โ”‚  Vite+React   โ”‚โ—„โ”€โ”€โ–บ  Hono API Server           โ”‚ โ”‚
โ”‚   โ”‚  shadcn/ui    โ”‚ HTTPโ”‚  Multi-provider Agent RT  โ”‚ โ”‚
โ”‚   โ”‚               โ”‚ SSE โ”‚  bun:sqlite               โ”‚ โ”‚
โ”‚   โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
         โ”‚                        โ”‚
    Tauri Store              EventBus
   (settings)          โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
                        โ”‚                     โ”‚
                   Web / API         Multi-Channel
                              โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
                           Telegram DingTalk Feishu
                              QQ    WeCom
                                     โ”‚
                              Browser Automation
                               (Playwright)
  • Desktop mode: Tauri spawns a Bun sidecar process; WebView loads the frontend
  • Web mode: Vite frontend + Bun backend deployed independently
  • Three-layer design: Entry (Telegram/DingTalk/Feishu/QQ/WeCom/Web/API) โ†’ Core (Agent/Scheduler/Memory/Skills) โ†’ Storage (SQLite/filesystem)

Star YouClaw before you start

Before Quick Start: Star if you want to see YouClaw keep improving.
It is a small click that makes the project easier to sustain.

Quick Start (Development)

Prerequisites

  • Bun >= 1.1
  • Rust (for Tauri desktop build)
  • A model API key for your chosen provider

Setup

git clone https://github.com/CodePhiliaX/youClaw.git
cd youClaw

# Install dependencies
bun install
cd web && bun install && cd ..

# Configure environment
cp .env.example .env
# Edit .env and set MODEL_API_KEY

Web Mode

# Terminal 1 โ€” backend
bun dev

# Terminal 2 โ€” frontend
bun dev:web

Open http://localhost:5173 ยท API at http://localhost:62601

Desktop Mode (Tauri)

bun dev:tauri

Build Desktop App

bun build:tauri

Output: src-tauri/target/release/bundle/ (DMG / MSI / AppImage)

Commands

bun dev              # Backend dev server (hot reload)
bun dev:web          # Frontend dev server
bun dev:tauri        # Tauri dev mode (frontend + backend + WebView)
bun start            # Production backend
bun typecheck        # TypeScript type check
bun test             # Run tests
bun build:sidecar    # Compile Bun sidecar binary
bun build:tauri      # Build Tauri desktop app
bun build:tauri:fast # Build without bundling (faster dev builds)
bun test:e2e         # Run E2E tests (Playwright)
bun test:e2e:ui      # Run E2E tests with UI

Environment Variables

Variable Required Default Description
MODEL_PROVIDER No builtin Default model provider or runtime mode
MODEL_ID No minimax/MiniMax-M2.7-highspeed Default model reference
MODEL_API_KEY Yes โ€” Model API key
MODEL_BASE_URL No โ€” Custom model API base URL
PORT No 62601 Backend server port
DATA_DIR No ./data in dev, ~/.youclaw in desktop production Data storage directory. For dev, set DATA_DIR=~/.youclaw-dev if you want an isolated user-home data dir
LOG_LEVEL No info Log level
TELEGRAM_BOT_TOKEN No โ€” Enable Telegram channel
DINGTALK_CLIENT_ID No โ€” DingTalk app client ID
DINGTALK_SECRET No โ€” DingTalk app secret
FEISHU_APP_ID No โ€” Feishu (Lark) app ID
FEISHU_APP_SECRET No โ€” Feishu (Lark) app secret
QQ_BOT_APP_ID No โ€” QQ bot app ID
QQ_BOT_SECRET No โ€” QQ bot secret
WECOM_CORP_ID No โ€” WeCom corp ID
WECOM_CORP_SECRET No โ€” WeCom corp secret
WECOM_AGENT_ID No โ€” WeCom agent ID
WECOM_TOKEN No โ€” WeCom callback token
WECOM_ENCODING_AES_KEY No โ€” WeCom callback AES key
YOUCLAW_WEBSITE_URL No โ€” Cloud service website URL
YOUCLAW_API_URL No โ€” Cloud service API URL
MINIMAX_API_KEY No โ€” MiniMax web search API key
MINIMAX_API_HOST No โ€” MiniMax API host

Project Structure

src/
โ”œโ”€โ”€ agent/          # AgentManager, AgentRuntime, AgentQueue, PromptBuilder
โ”œโ”€โ”€ channel/        # Multi-channel support
โ”‚   โ”œโ”€โ”€ router.ts   # MessageRouter
โ”‚   โ”œโ”€โ”€ telegram.ts # Telegram (grammY)
โ”‚   โ”œโ”€โ”€ dingtalk.ts # DingTalk (dingtalk-stream)
โ”‚   โ”œโ”€โ”€ feishu.ts   # Feishu / Lark (@larksuiteoapi/node-sdk)
โ”‚   โ”œโ”€โ”€ qq.ts       # QQ
โ”‚   โ””โ”€โ”€ wecom.ts    # WeCom
โ”œโ”€โ”€ config/         # Environment validation, path constants
โ”œโ”€โ”€ db/             # bun:sqlite init, CRUD operations
โ”œโ”€โ”€ events/         # EventBus (stream/tool_use/complete/error)
โ”œโ”€โ”€ ipc/            # File-polling IPC between Agent and main process
โ”œโ”€โ”€ logger/         # Pino logger
โ”œโ”€โ”€ memory/         # Memory helpers for root MEMORY.md plus per-agent logs/archives
โ”œโ”€โ”€ routes/         # Hono API routes (/api/*)
โ”œโ”€โ”€ scheduler/      # Cron/interval/once task scheduler
โ”œโ”€โ”€ skills/         # Skills loader, watcher, frontmatter parser
src-tauri/
โ”œโ”€โ”€ src/            # Rust main process (sidecar, window, tray, updater)
agents/             # Agent workspaces (agent.yaml + bootstrap docs + MEMORY.md + skills/)
skills/             # Project-level skills (SKILL.md format)
e2e/                # E2E tests (Playwright)
web/src/
โ”œโ”€โ”€ pages/          # Chat, Agents, Skills, Memory, Tasks, Channels, BrowserProfiles, Logs, System, Login
โ”œโ”€โ”€ components/     # Layout + shadcn/ui
โ”œโ”€โ”€ api/            # HTTP client + transport
โ”œโ”€โ”€ i18n/           # i18n (Chinese / English)

Contributing

  1. Fork the repo and create your branch from main
  2. Make your changes and ensure bun typecheck and bun test pass
  3. Submit a pull request

Star History Chart

License

MIT ยฉ CHATDATA

Yorumlar (0)

Sonuc bulunamadi