English | 中文
Vimalinx Suite Core is a private server solution for Openclaw, enabling bots and mobile apps to communicate through self-hosted servers instead of centralized platforms.
Core Components:
- Server: Self-hosted chat server with user management, token auth, and messaging
- Plugin: Gateway plugin connecting Openclaw to your Vimalinx server via poll or webhook
- Android App (Vimagram): Mobile client for registration, token generation, and messaging
Use Cases:
- Deploy private chat infrastructure for Openclaw bots
- Self-host messaging without relying on centralized platforms
- Manage accounts and tokens via mobile app
- Full control over your communication data
Most users only need to install the Plugin.
- Node.js 22+ installed
openclawCLI installed and configured (Gateway tool)- An Android phone (for getting tokens)
npm install -g openclaw@latestopenclaw is the Gateway CLI tool for managing plugins, channels, and message routing.
First-time setup requires API configuration:
openclaw configFollow the prompts to enter API configuration. Important: When configuring channels, select skip since the ./install.sh script will automatically configure the Vimalinx channel.
git clone <repository-url>
cd vimalinx-suite-core- Install Vimagram App (see "Android App Installation" below)
- Launch Vimagram and enter server address (e.g.,
http://123.60.21.129:8788) - Click Register, fill in user information
- After successful registration, go to Account page and generate Host Token
- Copy the generated token
Note: Keep the token safe—it will be used for plugin authentication.
Execute from project root:
./install.shThe script will automatically:
- Check dependencies: Verify
openclaw,curl,python3are installed - Copy plugin: Copy
plugindirectory to~/.openclaw/extensions/vimalinx - Configure server:
- Prompt for Vimalinx Server URL (press Enter for default server
http://123.60.21.129:8788) - Prompt for Token (paste token copied from mobile app)
- Prompt for Vimalinx Server URL (press Enter for default server
- Login verification: Use token to login to server and get
userIdandtoken - Write config: Automatically update
~/.openclaw/openclaw.jsonwith Vimalinx channel config - Auto steps (default):
openclaw doctor --fix: Auto-fix dependency issuesopenclaw gateway stop/start: Restart Gatewayopenclaw channels status --probe: Check connection status
The install script will automatically run openclaw channels status --probe to verify the connection. If you see connected/polling, installation is successful.
For manual verification:
openclaw channels status --probeSkip auto steps: Use environment variables to skip certain auto steps:
# Skip dependency fix
VIMALINX_SKIP_DOCTOR_FIX=1 ./install.sh
# Skip Gateway restart
VIMALINX_SKIP_GATEWAY_START=1 ./install.sh
# Skip connection status check
VIMALINX_SKIP_STATUS=1 ./install.shForce overwrite existing plugin:
VIMALINX_FORCE_OVERWRITE=1 ./install.shSpecify parameters manually (skip interactive input):
# Specify server URL
export VIMALINX_SERVER_URL="http://your-server:8788"
# Specify token
export VIMALINX_TOKEN="your-token-here"
# Specify inbound mode (poll or webhook)
export VIMALINX_INBOUND_MODE="poll"
# Then run install script (won't prompt for input)
./install.shThe install script automatically configures ~/.openclaw/openclaw.json:
{
"channels": {
"vimalinx": {
"enabled": true,
"baseUrl": "http://123.60.21.129:8788",
"userId": "your-user-id",
"token": "your-token",
"inboundMode": "poll",
"dmPolicy": "open",
"allowFrom": ["*"]
}
},
"plugins": {
"entries": {
"vimalinx": {
"enabled": true
}
}
}
}Configuration Field Descriptions:
| Field | Description | Default |
|---|---|---|
baseUrl |
Vimalinx Server address | - |
userId |
User ID (obtained from server) | - |
token |
Authentication token (obtained from server) | - |
inboundMode |
Inbound mode: poll (pull) or webhook (push) |
poll |
webhookPath |
Webhook path (webhook mode only) | /vimalinx-webhook |
webhookToken |
Webhook auth token (optional) | equals token |
dmPolicy |
DM policy: open / whitelist |
open |
allowFrom |
Allowed sender list | ["*"] |
Method 1: Install from Source (Developers)
cd app
./gradlew :app:installDebugMethod 2: Download APK (Regular Users)
Contact the project maintainer for the latest APK installation package.
- Launch App: Open Vimagram
- Configure Server:
- Enter server address (e.g.,
http://123.60.21.129:8788) - If using HTTPS, ensure server certificate is valid
- Enter server address (e.g.,
- Register Account:
- Fill in username and password
- If server has invite code mode enabled, enter invite code
- Login: After registration, you'll be auto-logged in. Use username/password for future logins.
- Generate Token:
- Go to Account page
- Click Generate Host Token
- Copy generated token (for plugin configuration)
Note:
- Token is displayed only once—copy and save it immediately
- If you need to regenerate, delete old token and generate new one
- Direct connection to Vimalinx Server (not through Gateway)
- Account page displays connected host tokens for easy recovery
- Multi-language support (System/Chinese/English)
- DM message sending and receiving
If you need to self-host Vimalinx Server, see server/README.md.
export TEST_SERVER_PORT=8788
export TEST_USERS_FILE=/path/to/vimalinx-users.json
export TEST_ALLOW_REGISTRATION=true
node server/server.mjs- Use process managers like systemd/PM2 for daemon
- Ensure users file is writable when registration is enabled
- Recommend enabling
TEST_SERVER_TOKENor using user tokens to protect/sendendpoint - Use HTTPS for public deployment
- Server Full Documentation:
server/README.md - Plugin Detailed Configuration:
plugin/README.md - Android App Guide:
app/README.md
Solution: Install openclaw CLI first
npm install -g openclaw@latestPossible reasons:
- Token is invalid or expired
- Server address is incorrect
- Network connection issues
Solutions:
- Regenerate token in Vimagram App
- Check if server address is correct (include port number)
- Test server connection with curl:
curl -X POST <SERVER_URL>/api/login \
-H "Content-Type: application/json" \
-d '{"token":"your-token"}'Troubleshooting steps:
- Confirm Gateway is running:
openclaw gateway status - Check channel configuration:
openclaw channels status --probe - View Gateway logs:
openclaw gateway logs
Method 1: Re-run install script
export VIMALINX_SERVER_URL="http://new-server:8788"
export VIMALINX_TOKEN="new-token"
./install.shMethod 2: Manual config edit
Edit ~/.openclaw/openclaw.json, modify channels.vimalinx.baseUrl and channels.vimalinx.token, then restart Gateway.
Default is poll (pull) mode. To switch to webhook (push) mode:
export VIMALINX_INBOUND_MODE="webhook"
./install.shNote: Webhook mode requires server to access Gateway's webhook endpoint.
VIMALINX_FORCE_OVERWRITE=1 ./install.shThis project is licensed under MIT License.