Sandbox
@Pinvou/pinvou-agent

Desktop AI agent workspace for tools, files, and MCP

Pinvou Agent gives you one desktop place to run agents on work, design, and coding tasks. It uses the app UI in `pinvou3-app/` and the CodeWhale engine to handle sessions, tools, knowledge, Skills, MCP servers, and workflow steps.

1,837 stars264 forksRustUpdated 6d ago
Who it's for

Builders who want their agents to work in a desktop app with files, tools, knowledge, and reusable workflows.

What it delivers

You can turn agent chats into edited files, working code, and other deliverables without bouncing between separate tools.

What it does

Multi-session workspace

Keeps messages, tool calls, and artifacts with each session so you can return to past work.

Artifacts panel

Collects files the agent creates or edits, with preview, locate, and open actions in one place.

Knowledge base and memory

Lets you attach collections, search them, and store long-term preferences with review and confirmation.

Skills, commands, and workflows

Packages repeated methods into reusable capabilities for the agent.

MCP and connector store

Supports local and remote MCP servers, CLI tools, API connectors, and OAuth/SSO where available.

Code mode through ACP

Lets you run Codex, Claude Code, or Kimi inside the workspace on a real project or temporary workspace.

Remote control and monitoring

Adds QR-code remote control plus system monitoring for GPU, memory, disk, model service, and context usage.

How to get it

  1. 1Run
    git clone --recursive https://github.com/Pinvou/pinvou-agent.git
    cd pinvou-agent/pinvou3-app
    npm ci
    cd ..
    ./pinvou3-app/run-dev.sh
  2. 2If you cloned without submodules
    git submodule update --init --recursive

README

Pinvou Agent logo

Pinvou Agent

An open-source desktop AI agent workspace for work, design, and coding.

English · 简体中文 · 日本語

CI License: MIT Version Platform GitHub Stars

Download Preview · Website · QQ Group · Issues · Discussions · Security

Pinvou Agent Work mode

▶ Watch the 90-second feature demo (Chinese)

Pinvou Agent is more than a chat window. It brings everyday work, visual design, and software development into one desktop workspace — designed for tasks that should end with a result, not just another chat response. Use tools, work with files, and build personal knowledge; bring a dedicated coding agent into a real project over ACP; or turn a prompt into a visual artifact you can continue editing.

Use a local model for a fully private loop, connect any OpenAI-compatible endpoint, and extend the agent with MCP servers, CLI connectors, Skills, and workflows.

🧭 One workspace, three ways to work

💼 Work: give the agent a real task

Combine attachments, personal knowledge, specialist personas, Skills, MCP tools, and workflows to research, analyze, write, and deliver reusable files — not just another block of chat text.

🎨 Design: from a prompt to an editable visual

Create posters and data visualizations in natural language. Open the result in design mode, select elements directly, and adjust copy, fonts, colors, dimensions, and layout — or keep describing changes and let the agent iterate on the current design.

💻 Code: bring a coding agent into a real project

Use Codex, Claude Code, or Kimi through ACP in the same desktop workspace. The coding agent can read and edit a real project or an isolated temporary workspace, run commands, and surface plans, tool steps, permission requests, and file changes. Sessions stay bound to their workspace and can be continued after restarting the app.

✨ Features

🎯 From conversation to deliverables

  • Multi-session workspace with title search — messages, tool calls, and artifacts persist with each session
  • Attachments for PDF, Office documents, images, and text — drag, drop, or paste them in
  • Artifact panel automatically collects every file the agent creates or edits; preview, locate, and open them in one place
  • Editable Markdown artifacts — edit directly, or select a passage and ask the agent to revise it
  • Plan / YOLO modes — review the plan first for complex work, or execute directly when the task is clear

🧠 Knowledge and memory

  • Local knowledge base with file management, full-text and vector retrieval; attach multiple collections to one chat, enable or disable each independently, and retain collection and file provenance in answers
  • Memory center captures long-term preferences and context, with explicit candidate review and confirmation
  • Persona card pool — create, save, and apply specialist roles for different domains
  • Skills, Commands, and workflows turn proven methods into stable, reusable capabilities

🔌 Real tools and connectors

  • Unified tool store for local MCP servers, remote MCP servers, CLI tools, and API connectors
  • OAuth / SSO authorization where supported — no manual key pasting
  • Ready-made connectors for Feishu (Lark), DingTalk, WeCom, Tencent Meeting, Tencent ima, Obsidian, enterprise knowledge bases, and legal / enterprise data services
  • Remote control — scan a QR code from your phone to view and steer the running workspace

🖥️ Built for daily operation

  • Local voice input with on-demand speech model downloads
  • Centralized monitoring of GPU, memory, disk, model service, and context usage
  • Updates via GitHub Releases — in-app update checks are not enabled yet
  • Sessions, settings, knowledge, and runtime extensions all live under ~/.pinvou3/

[!NOTE] Whether data leaves your machine depends on the model and tools you enable. A local model with local tools stays fully local. Cloud models, remote MCP servers, and third-party connectors send the relevant requests to their respective services.

📸 Screenshots

Pinvou Agent Design modePinvou Agent Code mode
Design mode for posters and data visualizationsCode mode with Codex, Claude Code, and Kimi
Pinvou Agent tool storePinvou Agent artifact preview
Extend the agent with tools and connectorsPreview and deliver generated artifacts

🤖 Model Access

Pinvou Agent works with local vLLM and any OpenAI-compatible API. Save multiple model configurations in the app, give cloud configurations optional display aliases, and switch between them per session without changing the model identifier sent to the provider. Built-in templates cover local vLLM, DeepSeek, Kimi, Qwen, Doubao, MiniMax, Zhipu (GLM), MiMo, OpenAI, Anthropic, Gemini, and xAI — or fill in any custom compatible endpoint.

Local vLLM example:

export DEEPSEEK_BASE_URL="http://127.0.0.1:8000/v1"
export DEEPSEEK_API_KEY="local-no-auth"
export DEEPSEEK_MODEL="your-model-name"

Endpoints, model names, and API keys can also be managed directly in the application settings. For a non-loopback plain HTTP endpoint in a trusted development network, explicitly set DEEPSEEK_ALLOW_INSECURE_HTTP=1.

🚀 Quick Start

Prerequisites

  • Git with submodule support
  • Node.js and npm
  • A current Rust toolchain
  • The Tauri 2 system dependencies for your platform
  • An accessible OpenAI-compatible model endpoint

The source tree supports Linux, Windows, and macOS. Linux release packages target Ubuntu 22.04 or newer (glibc 2.35+) on x86_64 and arm64; the deb also requires WebKitGTK 2.40+ (any 22.04 system with the standard updates pocket applied satisfies this). macOS release packages are universal (Apple Silicon and Intel) builds for macOS 11 or later. Speech-recognition engines can be packaged per build configuration; file parsing (PDF / Office / OCR / archives) relies on optional external tools installable via your platform's package manager (see pinvou3-app/INSTALL.md).

Run from source

git clone --recursive https://github.com/Pinvou/pinvou-agent.git
cd pinvou-agent/pinvou3-app
npm ci
cd ..
./pinvou3-app/run-dev.sh

If you cloned without submodules:

git submodule update --init --recursive

🏗️ Architecture

Tauri React Vite Rust

React + Vite UI
       ↕ Tauri commands / events
pinvou3-app (desktop orchestration)
       ↕ EngineHandle / AgentHarness
CodeWhale (agent engine submodule)
       ├─ OpenAI-compatible model services
       ├─ MCP servers and CLI connectors
       └─ Skills, Commands, Hooks, and Compaction

CodeWhale provides the agent engine: model calls, streaming, tool execution, sessions, MCP, Skills, hooks, and compaction. pinvou3-app/ owns the desktop UI, runtime configuration, orchestration, and operating-system integration — it never re-implements engine capabilities.

Extension goalWhere it belongs
Add a domain agent or tool bundleA SKILL.md package
Connect an external APIAn independent MCP server or connector
Guide model behaviorBundle instructions (instructions.md)
Change desktop UI or system integrationpinvou3-app/
Fix a reusable engine issueThe CodeWhale fork, following the fork policy

📁 Repository Layout

pinvou3-app/          Tauri 2 + React/Vite desktop application
CodeWhale/            Agent engine submodule
pinvou-knowledge/     Reusable knowledge core and self-contained server
remote-control-relay/ Optional self-hosted relay for QR-code remote control
pinvou3-app/resources/mcp-servers/
                      Independent local MCP servers
scripts/              Tests, guards, build, and release helpers
docs/                 Architecture and maintenance documentation

🧪 Development Checks

Run these commands from the repository root:

(cd pinvou3-app && npm run lint:ui)
(cd pinvou3-app && npm run build:ui)
(cd pinvou3-app && npm test)

(cd pinvou3-app/src-tauri && cargo test --lib -- --test-threads=1)

./scripts/fork-guard.sh --fast

🤝 Contributing

Contributions are welcome! Please read CONTRIBUTING.md for the contribution workflow and CI gates, and docs/fork-policy.md with the current fork modification inventory for CodeWhale maintenance rules. By participating, you agree to our Code of Conduct.

💬 Community & Security

  • 🐧 QQ user group (Chinese): 1108909346 — scan the QR code below or search for the group number in QQ
  • 🐛 GitHub Issues — reproducible bugs and focused feature requests
  • 💡 GitHub Discussions — questions and ideas (community support is best-effort, see SUPPORT.md)
  • 🔒 Do not report security vulnerabilities in public issues — use the private channel in SECURITY.md or email security@pinvou.com

QR code for the Pinvou Agent official QQ user group, group number 1108909346

Licensing, third-party attribution, SBOM, brand-use boundaries, and the extension marketplace overview are documented in THIRD_PARTY_NOTICES.md, docs/sbom.md, TRADEMARKS.md, and docs/工具市场.md.

🔗 Friendly Links

⭐ Star History

Star History ChartStar History Chart

Pinvou Agent is under active development — the main branch and the latest release notes are the source of truth for current behavior.

MIT License · Made with ❤️ by the Pinvou team and contributors

Files in the repo

Repository payload28 top-level entries
  • .githooks
  • .github
  • docs
  • pinvou-cli
  • pinvou-knowledge
  • pinvou3-app
  • private-runtimes
  • remote-control-relay
  • scripts
  • .gitattributes
  • .gitignore
  • .gitleaks.toml
  • .gitmodules
  • AGENTS.md
  • CODE_OF_CONDUCT.md
  • CodeWhale
  • CONTRIBUTING.md
  • CONTRIBUTING.zh-CN.md
  • DCO.md
  • LICENSE
  • README.ja.md
  • README.md
  • README.zh-CN.md
  • SECURITY.md
  • SUPPORT.md
  • THIRD_PARTY_NOTICES.md
  • TRADEMARKS.md
  • VERSION

Discussion (0)

Ask about usage, or say what you built with it

Sign in to join the discussion.

No comments yet. Be the first to say what this is good for.

More tools

JuliusBrussee/
caveman

🪨 why use many token when few token do trick — Claude Code skill that cuts 65% of tokens by talking like caveman

105k
1 add
MemPalace/
mempalace

The best-benchmarked open-source AI memory system. And it's free.

59k
stablyai/
orca

Orca is the ADE for working with a fleet of parallel agents. Run any coding agent with your own subscription. Available on desktop, mobile and remote runtime.

66k

A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io

132k

Never stop coding. Free MIT AI gateway: one endpoint, 352 providers (150+ free), 1200+ models Kimi, Claude, GPT, Gemini, GLM, DeepSeek, MiniMax. Works with Claude Code, Codex, Cursor, OpenCode, Cline & Copilot. Quota-aware auto-fallback, RTK+Caveman compression saves 15-95% tokens, MCP/A2A, Desktop/PWA. Built by 550+ contributors

64k
headroomlabs-ai/
headroom

Compress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.

71k