
Think on a canvas, with any AI.
Sketch by hand. PenEcho's built-in Agent — or Codex, Claude Code and any MCP
client — turns it into diagrams, documents and working widgets right beside your
notes.
Quick start · Connect your AI (MCP) · Docs · Discord
English · 简体中文 · 日本語 · 한국어 · Русский · Español · Português · Français · Deutsch

From a hand sketch to an interactive result in one canvas.
What you can do

Sketch, then ask
Handwriting, equations, text and images on an endless canvas. Auto AI answers when you pause.
[](docs/assets/professional-diagrams/kubernetes.webp)
Professional diagrams
Architecture, sequence and workflow diagrams with automatic layout. Export SVG or PNG.

Working widgets
Calculators, quizzes and prototypes that run on the canvas and can be favourited or shared.
Quick start
| Get started | |
|---|---|
| Desktop app | macOS and Windows from GitHub Releases. Includes everything, updates itself. |
| npm | Node.js 22.19+. Run npm i -g penecho then penecho and open localhost:3888. |
| Browser | Sign in at penecho.ai for hosted models and Cloud canvases. Nothing to install. |
npm install -g penecho
penecho # opens http://localhost:3888
[!TIP] On first start, choose a six-digit access code (or open access on a trusted network). Add a model in Settings → AI & connections: your own API key, a signed-in Codex / Claude Code / Kimi CLI, or PenEcho models.
Run from source
git clone https://github.com/penecho/penecho.git
cd penecho
npm install
npm start
Connect your AI agent (MCP)
Keep talking in the agent you already use. PenEcho gives the work a place to live — your agent draws on the canvas, you mark it up, and it reads your feedback on the next turn.
-
In PenEcho, open Settings → MCP service and turn on the current canvas.
-
Use Auto configure for a supported client, or copy the generated setup prompt into your client (Codex, Claude Code, Kimi, Cursor...). For a global npm installation, clients that accept
mcpServersJSON can also use the compatibility entry below:{ "mcpServers": { "penecho": { "command": "penecho", "args": ["mcp"] } } } -
Ask: “Show the architecture we discussed on my PenEcho canvas.”
An architecture discussion from Claude Code, annotated by hand on the canvas.
[!NOTE] Agents only see canvases you turn on. Local MCP stays on your computer; Cloud MCP is a separate signed-in connection for Cloud canvases. MCP guide →
Diagram gallery
Click any diagram for the full-size version.
How it works

- On your computer — the desktop app or CLI serves the canvas and uses your own model API or agent CLI.
- In the cloud — penecho.ai adds hosted models, synced projects and favorites, and can reach your linked computer.
- Your agent — connects through Local or Cloud MCP. Both are optional.
Details: architecture notes.
Choose your AI
| Connection | Cost | Best for |
|---|---|---|
| PenEcho models — sign in, pick a model | Account credits | Getting started, no keys |
| Your model API — OpenAI- or Anthropic-compatible | Your provider | Full control of model and cost |
| Your CLI — Codex, Claude Code or Kimi, signed in | Your plan | Reusing a subscription you have |
Which model and effort to pick: recommended models (updated with each release).
Recommended models
These recommendations balance answer quality against the latency of PenEcho's real canvas workload, based on current hands-on testing; actual response time varies with the provider, canvas complexity, and reasoning behavior.
| Model | Effort | Notes | Recommended use |
|---|---|---|---|
Claude Opus 4.8 / 5.0 (claude-opus-4-8 / claude-opus-5-0) |
medium |
Strong quality with a better latency balance | Everyday canvas work |
Claude Opus 4.8 / 5.0 (claude-opus-4-8 / claude-opus-5-0) |
high |
Higher reasoning quality, longer and more variable waits | Complex handwriting, mathematics, diagrams, or layout |
Fable 5 (claude-fable-5 or fable) |
medium |
Often around half the response time of gpt-5.6-sol at xhigh |
Fast, high-quality general use |
Kimi K3 (kimi-k3) |
medium |
Very good quality; medium keeps the balance practical |
Recommended Kimi default |
gpt-5.6-terra |
low to high |
Surprisingly strong and responsive | Flexible quality and latency targets |
gpt-5.6-luna |
xhigh |
Very good canvas results with strong speed | Quality-first, still responsive |
gpt-5.6-sol |
high |
Good enough for most requests, more responsive than xhigh |
Default when responsiveness matters |
gpt-5.6-sol |
xhigh |
Very good but slower and more variable | Difficult canvas tasks |
deepseek-v4-flash-vision-exp |
medium |
Good | Vision-capable work through the DeepSeek API |
glm-5.3-flash |
medium |
Good | Fast work through the GLM Anthropic-compatible API |
What's new in 1.3.5
- UI: minor interface fixes.
- Concurrent canvas editing: support Canvas AI, Agent, and MCP modifying the same canvas simultaneously.
Community
| Discord | Discussions | Issues | Contributing |
|---|---|---|---|
| Chat with the team | Ideas and questions | Report a bug | Run npm run check first |
Licensed under AGPL-3.0-only; commercial licence available. Trademark policy · Contributor agreement.
Diagram renderers adapt SVG and geometry helpers from Archify by tt-a1i (MIT). See NOTICE.






