🪨 why use many token when few token do trick — Claude Code skill that cuts 65% of tokens by talking like caveman
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.
Builders who want their agents to work in a desktop app with files, tools, knowledge, and reusable workflows.
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
- 1Run
git clone --recursive https://github.com/Pinvou/pinvou-agent.git cd pinvou-agent/pinvou3-app npm ci cd .. ./pinvou3-app/run-dev.sh
- 2If you cloned without submodules
git submodule update --init --recursive
README
Pinvou Agent
An open-source desktop AI agent workspace for work, design, and coding.
Download Preview · Website · QQ Group · Issues · Discussions · Security
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
![]() | ![]() |
| Design mode for posters and data visualizations | Code mode with Codex, Claude Code, and Kimi |
![]() | ![]() |
| Extend the agent with tools and connectors | Preview 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
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 goal | Where it belongs |
|---|---|
| Add a domain agent or tool bundle | A SKILL.md package |
| Connect an external API | An independent MCP server or connector |
| Guide model behavior | Bundle instructions (instructions.md) |
| Change desktop UI or system integration | pinvou3-app/ |
| Fix a reusable engine issue | The 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
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
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
- .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 itSign in to join the discussion.
No comments yet. Be the first to say what this is good for.
More tools
The best-benchmarked open-source AI memory system. And it's free.
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.

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



