Self-host TypingMind on your own server
How the self-hosted version works
Features & Limitations
The self-host version includes all main features as seen in the cloud-host version except for the extended modules as listed below.
What's included:
- AI chat frontend: Fully featured user-facing chat interface.
- Admin Panel: with all the pages and options similar to the cloud-host version.
- All core modules: AI agents, plugins system, user management, custom LLM model, access control, usage limits, API integrations, SSO authentication, etc.
What's not included:
- Knowledge base management module. Knowledge base management module allows you to upload, connect, and manage training data. The training data will later be assigned to the AI agents to help improve the AI output. In our cloud host version, we support data connection with multiple online data sources. In the self-host version, you can only upload the training data to your own system and then connect it to TypingMind via Dynamic Context and Plugins.
- Analytics module: The analytics module provides insights about the usage of your chat instance. In the self-host version, the system can be configured to output the metrics as raw data, you will need to extract the raw data to your own BI system for analytics purposes.
- User guides and documentation module: All in-app documents will be linked to our online documentation at docs.typingmind.com by default. You can customize the document links to your own document pages via the Admin panel.
We're working on bringing more modules to the self-host version soon.
To see all the available features in the cloud-host version, you can register a free account at TypingMind Custom and explore the admin panel.
System Overview
In the self-host version of TypingMind Custom, there are two main components:
- The app server (NodeJS app): this is where the data is received and processed. The app server provides two web portals: The Admin Panel for the admins to configure the instance and the Chat Interface for your end users.
- The app database (MySQL database): this is where the data is securely stored.
Other optional parts of the system may include proxy servers, custom DNS servers, firewalls, backup app servers, backup databases, load balancers, etc.
Note that the system does not include an LLM model or an AI provider. TypingMind Custom only provides the chat interface and the management system around it.
After setting up the system, you will need to connect it to an AI provider. This can be OpenAI’s ChatGPT, Claude, Gemini, or a private LLM model that you run in your infrastructure.
Requirements
- NodeJS 18.x for running the software.
- MySQL 8.x for storing data.
- An SMTP credential for sending emails.
Installation
The steps for setting up the self-host version are simple and can be done within 30 minutes:
- Sign up for the Self-host package to get access to our private GitHub repository.
- Set up a server that can run NodeJS. This can be on any cloud service or hosting provider. Our customers' favorites are render.com, AWS, and GCP.
- Set up a MySQL database.
- Connect a custom domain to your server.
- Get access to the admin panel and start to customize your instance.
Once you have signed up for the Self-host plan, there will be detailed technical instructions for you to follow and install the self-host version.
You can install multiple instances at an additional purchase if needed.
How to receive updates
- The Business plan comes with 1 year of free updates.
- Software updates will be released via the GitHub repo.
- Auto-update: you can set up an automation to pull and redeploy anytime there's a new change in the GitHub repository. .
- After 1 year, you can renew your license to continue receiving updates.
Buy more seats & renew
- You can buy more seats/users anytime.
- There is a payment link in the admin panel for you to buy and renew your self-host version.
Security & Privacy
All data are stored in your MySQL database and never sent anywhere else.
There is strictly no user data sent out to any other external services. This can be verified using various black-box testing methods like monitoring network requests from the app.
There are only three types of external network requests that will be made from the self-host app:
- Requests to OpenAI/Anthropic: this is the core functionality of the app, allowing you to chat with AI. If you use an internal private LLM, no requests to OpenAI/Anthropic will be made.
- Requests to check for software updates: this is to notify you when there is a new update to upgrade. This request will be sent to TypingMind's server and only contain minimal information needed to check for updates.
- Requests to check for license: this is to verify the valid license of your self-host instance and ensure that you're using the correct amount of users as per your contract/subscribed plan. This request will be sent to TypingMind's server and only contain minimal information needed to check for updates, with no user data included.
For more details, please check our Data Security & Privacy Report
FAQs
Does the self-hosting option receive any product updates?
What exactly do I get?
Can I modify the source code?
Do I get the full source code or compiled/minified source code?
Where is my data stored?
Can I have a refund?
How do I deploy the self-host version?
Tiny price, massive gain
Bringing AI to your team is only a step away.
Self-host source code & license
The best solution for creating a custom, private, and secure AI chat portal on your own server.
What’s included
- 5 seats included
- Self-host on your server
- All data stay in your infrastructure
- All features in the cloud-host version **
Add-on: Extra seats
- Add new seats easily from the Admin Panel after setup.
Add-on: Enterprise support
Contact us
- SLA/SLO
- Dedicated support queue
- Email or real-time chat support
Deploy on your own infrastructure
Get accessNeed a custom plan?Contact us.
API cost not included, you need to pay OpenAI/Anthropic for your API usage separately.
Some limitations apply for the self-host version, please see the Self-host page for more information.
Questions?
We have answers