首次启动要下载全部组件,需 5–15 分钟;默认登录 [email protected] / admin123 仅限本机试用,服务器上应改用安装脚本生成密码;首次对话走 Demo 模式,每天 40 条、限 14 天,之后需自备 API key 或接 Ollama。
synaplan
metadistApache-2.0活跃维护开源 AI 平台,把知识库、模型和多渠道消息(网页、WhatsApp、邮件、Outlook、Nextcloud)统一编排,本地与云端模型可并用,每条回答都标出成本。
Own the flow: one open-source AI platform for your knowledge, models and channels – web, WhatsApp, email, Outlook, Nextcloud & ownCloud. Local and cloud models side by side, with the cost on every answer.
git clone https://github.com/metadist/synaplan.git
cd synaplan
make up需要 Docker Compose v2 和 8 GB 内存;本地模型通过 Ollama 运行,README 未说明具体显存要求。
开源 AI 助手平台,把自有文档变成知识库并投放到网站、WhatsApp、邮件等渠道
开源 AI 平台,把知识库、模型和多渠道消息(网页、WhatsApp、邮件、Outlook、Nextcloud)统一编排,本地与云端模型可并用,每条回答都标出成本。
核心能力
- 同一助手接入网站、WhatsApp、邮件、Outlook、Nextcloud 等渠道
- 按任务混用本地 Ollama 与云端模型,敏感任务留在本地
- 每条回答显示所用模型与费用,规划器拆分大请求省成本
- 发邮件、建工单等动作需人工审批并记录每一步
- 提供 OpenAPI、MCP 与 Anthropic 兼容接口,插件扩展无需分叉
容易踩的坑
- v5.7.2Synaplan v5.7.2最新正式版2026-11-09 · 2026-11-09 19:02 UTC
What's Changed
- fix(nav): give the account menu room and grouping by @EKu26 in https://github.com/metadist/synaplan/pull/2998
- fix: keep image follow-up edits on image generation by @EKu26 in https://github.com/metadist/synaplan/pull/2999
- chore(release): install 5.7.1 in new deployments by @synaplan-release-tagger[bot] in https://github.com/metadist/synaplan/pull/3000
- chore(deps): update phpmyadmin:latest docker digest to b584de2 by @renovate[bot] in https://github.com/metadist/synaplan/pull/2997
- fix(c2pa): build c2patool 0.28.4 against Debian bookworm glibc by @cristiangrxs in https://github.com/metadist/synaplan/pull/3001
- docs: add troubleshooting, credential warning and sovereign-cloud pointer to README by @EKu26 in https://github.com/metadist/synaplan/pull/3002
- fix: keep photo look-changes out of file work by @EKu26 in https://github.com/metadist/synaplan/pull/3003
- feat(models): add Kimi K3.1 Pro chat and vision by @cristiangrxs in https://github.com/metadist/synaplan/pull/3004
- fix: merge release pins from the catalog list by @cristiangrxs in https://github.com/metadist/synaplan/pull/3006
- chore(deps): update frontend dependencies by @renovate[bot] in https://github.com/metadist/synaplan/pull/2989
- chore(deps): update rust docker tag to v1.98 by @renovate[bot] in https://github.com/metadist/synaplan/pull/2991
- chore(deps): update quay.io/keycloak/keycloak:26.8 docker digest to 3879c62 by @renovate[bot] in https://github.com/metadist/synaplan/pull/3007
- chore(deps): update dependency wrangler to v4.156.2 by @renovate[bot] in https://github.com/metadist/synaplan/pull/3008
- chore(deps): update qa & dev tools to v5.1.0 by @renovate[bot] in https://github.com/metadist/synaplan/pull/3009
- chore(deps): update dependency marked to v18.1.3 by @renovate[bot] in https://github.com/metadist/synaplan/pull/3010
- docs: close the AI Act transparency plan by @cristiangrxs in https://github.com/metadist/synaplan/pull/3015
- docs: add the trust-center sources by @cristiangrxs in https://github.com/metadist/synaplan/pull/3017
- feat(frontend): guest and admin tours with End tour by @EKu26 in https://github.com/metadist/synaplan/pull/3016
- docs: plan assistant onboarding UX sprint (row 44) by @EKu26 in https://github.com/metadist/synaplan/pull/3018
- test(frontend): pin settings URLs for desktop, phone, and native app by @EKu26 in https://github.com/metadist/synaplan/pull/3019
- docs: record the trust-center decision and the LWL kit by @cristiangrxs in https://github.com/metadist/synaplan/pull/3020
- fix: search the web when a scheduled assistant runs by @EKu26 in https://github.com/metadist/synaplan/pull/3021
- feat(plugins): Synamail profiles, with a link to install Outlook by @orgaralf in https://github.com/metadist/synaplan/pull/3011
- docs: rewrite the README around Own the flow by @EKu26 in https://github.com/metadist/synaplan/pull/3022
- feat: list WhatsApp numbers on phone verification by @EKu26 in https://github.com/metadist/synaplan/pull/3023
- fix(auth): one client address for sign-up limits, guest sessions and tokens by @cristiangrxs in https://github.com/metadist/synaplan/pull/3027
- fix: name the Admin menu in self-aware hints by @EKu26 in https://github.com/metadist/synaplan/pull/3024
- docs: stop repeating Own the flow under the hero by @EKu26 in https://github.com/metadist/synaplan/pull/3025
- feat(plugins): host Synaform and synafastbill in this repository by @orgaralf in https://github.com/metadist/synaplan/pull/3026
- chore(deps): update docker digests by @renovate[bot] in https://github.com/metadist/synaplan/pull/3012
- chore(deps): update frontend dependencies by @renovate[bot] in https://github.com/metadist/synaplan/pull/3014
- fix(deps): update backend dependencies by @renovate[bot] in https://github.com/metadist/synaplan/pull/3031
- chore(deps): update caddy docker tag to v2.11.9 by @renovate[bot] in https://github.com/metadist/synaplan/pull/3032
- chore(deps): update qa & dev tools by @renov
- v5.7.1Synaplan v5.7.12026-11-05 · 2026-11-05 12:57 UTC
查看更新说明
What's Changed
- docs(planning): host the first-party plugins in this repository by @orgaralf in https://github.com/metadist/synaplan/pull/2987
- feat: add the phone settings hub and keep chat with the keyboard by @cristiangrxs in https://github.com/metadist/synaplan/pull/2976
- feat: mark AI conversations and generated media for the AI Act by @cristiangrxs in https://github.com/metadist/synaplan/pull/2990
- chore(release): install 5.7.0 in new deployments by @synaplan-release-tagger[bot] in https://github.com/metadist/synaplan/pull/2986
- refactor: run the content-credentials signer inside the app container by @cristiangrxs in https://github.com/metadist/synaplan/pull/2992
- fix(chat): stop inventing a review command for file-only sends by @EKu26 in https://github.com/metadist/synaplan/pull/2993
- fix: ask for a calendar clock time instead of inventing 09:00 by @EKu26 in https://github.com/metadist/synaplan/pull/2996
- fix(deps): bump Symfony to 8.1.11 by @orgaralf in https://github.com/metadist/synaplan/pull/2988
- fix: run the app human check on the real site hostname by @cristiangrxs in https://github.com/metadist/synaplan/pull/2994
- fix: give generated media a source type c2patool accepts by @cristiangrxs in https://github.com/metadist/synaplan/pull/2995
Full Changelog: https://github.com/metadist/synaplan/compare/v5.7.0...v5.7.1
- v5.7.0Synaplan v5.7.02026-11-04 · 2026-11-04 17:10 UTC
查看更新说明
Including the security fixes from v5.6.7 and some important updates, we go up to 5.7 now. Here is the list - the 5.6.7 is also very relevant! If you are on 5.6.6 or earlier: update for security reasons. The data is maintained and your settings stay.
What's Changed
- chore(release): install 5.6.7 in new deployments by @synaplan-release-tagger[bot] in https://github.com/metadist/synaplan/pull/2969
- chore(deps): update dependency @iconify/vue to v5.0.5 by @renovate[bot] in https://github.com/metadist/synaplan/pull/2964
- fix(deps): bump handlebars to 4.7.10 by @orgaralf in https://github.com/metadist/synaplan/pull/2971
- fix(frontend): show Library file status as a word by @EKu26 in https://github.com/metadist/synaplan/pull/2970
- fix: stop treating a running image job as a failed reply by @EKu26 in https://github.com/metadist/synaplan/pull/2968
- fix(deps): bump follow-redirects to 1.16.2 by @orgaralf in https://github.com/metadist/synaplan/pull/2972
- fix(deps): bump axios to 1.21.0 by @orgaralf in https://github.com/metadist/synaplan/pull/2973
- chore(deps): lock file maintenance by @renovate[bot] in https://github.com/metadist/synaplan/pull/2934
- fix(deps): drop the vulnerable Docker engine module by @orgaralf in https://github.com/metadist/synaplan/pull/2974
- fix(deps): bump brace-expansion to 5.0.12 by @orgaralf in https://github.com/metadist/synaplan/pull/2975
- chore(deps): update frontend dependencies by @renovate[bot] in https://github.com/metadist/synaplan/pull/2977
- fix(deps): close the moderate frontend advisories by @orgaralf in https://github.com/metadist/synaplan/pull/2978
- chore(deps): update dependency vue-i18n to v11.4.17 by @renovate[bot] in https://github.com/metadist/synaplan/pull/2979
- fix(tools): every tool call passes the approval gate and is audited by @orgaralf in https://github.com/metadist/synaplan/pull/2980
- docs: point operators at the runtime and outbound guide by @orgaralf in https://github.com/metadist/synaplan/pull/2982
- chore(deps): update dependency minimatch to v11.0.3 by @renovate[bot] in https://github.com/metadist/synaplan/pull/2981
- docs: add documentation index, learning paths, and navigation headers by @orgaralf in https://github.com/metadist/synaplan/pull/2984
- fix: write the research report when a depth limit ends the search by @EKu26 in https://github.com/metadist/synaplan/pull/2985
- feat(frontend): link both Synaplan websites from the account menu by @EKu26 in https://github.com/metadist/synaplan/pull/2983
Full Changelog: https://github.com/metadist/synaplan/compare/v5.6.7...v5.7.0
- v5.6.7Synaplan v5.6.72026-11-04 · 2026-11-04 09:25 UTC
查看更新说明
What's Changed
- chore(deps): update redis docker tag to v8 by @renovate[bot] in https://github.com/metadist/synaplan/pull/2951
- fix(files): keep og/ and widget-icons/ reads inside their directories by @orgaralf in https://github.com/metadist/synaplan/pull/2958
- chore(release): install 5.6.6 in new deployments by @synaplan-release-tagger[bot] in https://github.com/metadist/synaplan/pull/2956
- docs: consolidate the coding-agent rules into one guide by @orgaralf in https://github.com/metadist/synaplan/pull/2959
- fix(files): sandbox stored SVG, XML and HTML files served from the app origin by @orgaralf in https://github.com/metadist/synaplan/pull/2961
- chore(deps): update dependency @cloudflare/workers-types to v5.20261101.1 by @renovate[bot] in https://github.com/metadist/synaplan/pull/2960
- fix(frontend): recover when hot reload loses the Pinia context by @cristiangrxs in https://github.com/metadist/synaplan/pull/2962
- fix: close the open CodeQL findings without opening the sandbox by @orgaralf in https://github.com/metadist/synaplan/pull/2963
- fix(frontend): keep the last chat when returning from Library by @EKu26 in https://github.com/metadist/synaplan/pull/2965
- docs: have the agent land each topic as a pull request by @orgaralf in https://github.com/metadist/synaplan/pull/2967
- fix: require a signed-in account on the legacy API and WordPress wizard by @orgaralf in https://github.com/metadist/synaplan/pull/2966
Full Changelog: https://github.com/metadist/synaplan/compare/v5.6.6...v5.6.7
- v5.6.6Synaplan v5.6.62026-11-03 · 2026-11-03 17:30 UTC
查看更新说明
What's Changed
- chore(release): install 5.6.5 in new deployments by @synaplan-release-tagger[bot] in https://github.com/metadist/synaplan/pull/2941
- chore(deps): update backend dependencies by @renovate[bot] in https://github.com/metadist/synaplan/pull/2943
- fix(deps): update frontend dependencies by @renovate[bot] in https://github.com/metadist/synaplan/pull/2945
- chore(deps): update dependency vite to v8 by @renovate[bot] in https://github.com/metadist/synaplan/pull/2950
- chore(deps): update dependency doctrine/orm to v3.7.6 by @renovate[bot] in https://github.com/metadist/synaplan/pull/2947
- chore(deps): update dependency phpstan/phpstan-doctrine to v2.1.0 by @renovate[bot] in https://github.com/metadist/synaplan/pull/2948
- feat(office): add a WOPI host so Collabora can open Synaplan files by @orgaralf in https://github.com/metadist/synaplan/pull/2944
- chore(deps): update docker digests by @renovate[bot] in https://github.com/metadist/synaplan/pull/2942
- docs: link one-click deploy options under More ways to install by @cosark in https://github.com/metadist/synaplan/pull/2952
- chore(deps): update dependency ws to v8.22.1 by @renovate[bot] in https://github.com/metadist/synaplan/pull/2953
- fix: retire Gemini 2.5 and stop writing the research markdown file by @cristiangrxs in https://github.com/metadist/synaplan/pull/2954
New Contributors
- @cosark made their first contribution in https://github.com/metadist/synaplan/pull/2952
Full Changelog: https://github.com/metadist/synaplan/compare/v5.6.5...v5.6.6
用户点评
登录用户的真实使用记录,可按版本和硬件筛选还没有人点评。第一个说出真实体验的人最有价值。
Build AI assistants on your own documents and put them wherever work happens: web, WhatsApp, email, Outlook, Nextcloud and ownCloud. Mix local models with the best cloud AI, see what every answer costs, and decide what the AI is allowed to do – open source, on your server or ours.
Run it in up to five minutes · Try it hosted · Docs · Discord
Self-hosting is free. The hosted version opens with a paid plan or an invitation code – ask us at [email protected].
Why Synaplan
- Own your channels. One assistant answers on your website, in WhatsApp, by email, in Outlook and inside Nextcloud and ownCloud – with the same knowledge and the same rules everywhere.
- Own your models. Hundreds of models from OpenAI, Anthropic, Google, Mistral, sovereign EU providers or locally via Ollama. Mix them per task: sensitive work stays local, everything else gets the best model for the job.
- Own your costs. Every answer shows its model and price. A planner splits bigger requests into steps and spends the expensive model only where it matters.
- Own the decisions. Actions like sending mail or creating tickets wait for your approval, and every step is logged.
- Own the stack. On-prem, EU cloud or fully air-gapped. No training on your data, no forced telemetry, no feature paywall: self-hosted Synaplan is the same software as our cloud, under Apache-2.0.
Running in production at Megaherz Yoga · SANI Pflegedienst · National Secure Cloud · PlateArt
Quickstart
You need: Docker with Compose v2 and 8 GB of RAM.
git clone https://github.com/metadist/synaplan.git
cd synaplan
make up
Open http://localhost:5173, log in as [email protected] / admin123 and say hello. Your first message starts the Synaplan Demo – no API key needed (40 messages a day for 14 days, how it works). When you're ready, add your own key (free: Groq) or run local models with Ollama.
The first start downloads everything and takes 5–15 minutes. After that, Synaplan starts in seconds.
[!IMPORTANT] These logins are for trying Synaplan on your own machine. On a server, use the installer – it creates its own admin password.
Install it your way
| Where | How | Guide |
|---|---|---|
| Your machine | make up – the quickstart above | Quickstart |
| Published image, no git | One compose.yaml, then docker compose up -d | Published image |
| Docker GUI | Portainer, Dockge, Synology: paste the compose file as a stack | Docker GUI |
| Closed network | No route to the internet, HTTPS on your LAN address | Closed network |
| Linux server | The installer pins a release, generates secrets and runs a smoke test | On a server |
| Kubernetes | Helm charts for clusters | synaplan-charts |
| One click | RepoCloud · Elestio | – |
A Linux server in one line:
curl -fsSL https://raw.githubusercontent.com/metadist/synaplan/main/install.sh | \
bash -s -- --mode server --domain https://ai.example.com
Public sector & sovereign cloud (EU/CH): synaplan.eu covers openDesk, Nextcloud and OpenCloud deployments, on-premises or in an EU cloud.
How it compares
People usually arrive comparing Synaplan with a chat window or an app builder. This is what each project is for. It is not a scoreboard.
| Synaplan | Open WebUI | LibreChat | Dify | |
|---|---|---|---|---|
| What it is | A team platform: chat, your files as knowledge, a site widget, and the same assistant on WhatsApp and email | A chat interface for local and cloud models | A chat app for many providers | A builder for AI apps and workflows |
| First run | Several containers, about 4 GB | One container | A Compose stack | A Compose stack, and a hosted cloud |
| Cost of an answer | Shown on the answer | Not on the answer | Not on the answer | In the builder's usage logs, not on the chat answer |
| Same assistant on your site, WhatsApp and email | Yes | No | No | Site widget yes. WhatsApp and email are not built in |
If you only want a chat window, Open WebUI or LibreChat gets you there faster.
Take the tour

One AI, everywhere you work
The same assistant, the same knowledge, the same model policy – on every channel your team and your customers already use.
| Surface | What it does | Get it |
|---|---|---|
| Web app | Full chat and admin UI, light and dark, five languages | This repo |
| Mobile apps | Chat, documents and voice on iPhone and Android – on web.synaplan.com or your own server | App Store · Google Play |
| Outlook add-in | Find and process mail inside Outlook (Web, new & classic, Mac) without sending it anywhere | Synamail |
| Chat widget | Your assistant on any website with one snippet, human takeover included | Widget guide |
| WhatsApp & email | The AI answers on the channel the question came in on | WhatsApp · Email |
| Nextcloud, ownCloud & OpenCloud | Use your assistants inside your file cloud, with its files as knowledge – your file store stays in charge | Nextcloud · ownCloud · OpenCloud |
| Synaplan Desktop | Pair a computer and run skills on it (no installer yet – build from source) | synaplan-desktop |
| MCP & Claude Code | Your knowledge and memories as MCP tools, plus an Anthropic-compatible endpoint | MCP guide |
Connects to Microsoft 365 · Dropbox · Nextcloud / ownCloud / WebDAV · CalDAV · IMAP · Jira & Confluence · your own MCP servers – how to connect
Under the hood
- Stack: Symfony (PHP) backend, Vue frontend, MariaDB VECTOR or Qdrant for document search, Redis, Docker.
- Lean core: app, database and Redis. Local AI, office files, web search, voice and more are building blocks you switch on when you need them.
- Open by design: OpenAPI REST API, MCP server and client, an Anthropic-compatible
/v1/messagesendpoint and a plugin system – extend Synaplan without forking it.
Full feature list, every AI provider, all building blocks and developer commands: Platform reference.
Troubleshooting
| Problem | What to do |
|---|---|
| "Port already in use" on start | A port Synaplan needs is taken – see Port conflicts |
| Containers stop right after start | Give Docker at least 8 GB of RAM, then check docker compose logs -f backend |
| Chat gives no answers | Use the Synaplan Demo, paste one provider key, or add the local-ai profile – see the quickstart |
| First start seems stuck | The first start downloads all images and takes 5–15 minutes. docker compose logs -f startup-notes shows where it is |
| Anything else | Ask in Discord or open a GitHub issue |
Learn more
- docs.synaplan.com – guides for users and admins
- docs/README.md – the technical manual, in five learning tracks
- Platform reference – install variants, features, providers and building blocks
- Changing the code? Start with adding an AI provider or following a tool call.
Help shape what's next
We build Synaplan in the open. Tell us what you'd use it for, vote on ideas or show what you built in Discussions – we read everything.
- 💬 Discord – the fastest place for self-hosting and configuration questions
- 🐛 Issues – bugs and feature requests
- 🙌 Contributing – how to get your first pull request merged (AGENTS.md is the guide for coding agents)
- 🔒 Security policy – report a vulnerability privately
License
Apache-2.0 · Built in Düsseldorf by metadist · Member of the Open Source Business Alliance