OpenClaw
OpenClaw is an open-source personal AI assistant that can be deployed on your own device. It lets you interact with your AI through 20+ messaging channels including WhatsApp, Telegram, Slack, and Discord. It acts as a unified AI entry point — no matter which platform you're on, you can chat with AI at any time.
Features
- Multi-channel access: Supports 20+ messaging channels including WhatsApp, Telegram, Slack, and Discord
- Custom models: Supports switching between multiple models including OpenAI / Claude / Gemini, with third-party API integration
- Voice interaction: macOS/iOS/Android support for voice wake-up and continuous conversation
- Browser control: Built-in Chrome control for browsing web pages, taking screenshots, and filling forms
- Tool extensions: Supports a Skills plugin system for extending various capabilities
- Data security: Data is stored locally to ensure privacy
Installation and Configuration
Before installing, make sure
- Node.js 22+ is installed
- You have obtained an openai-hk API Key: hk-your-key
Install OpenClaw
- Install OpenClaw globally via npm (pnpm and yarn are also supported):
npm install -g openclaw@latestnpm install -g openclaw@latest- Verify after installation:
openclaw --versionopenclaw --versionIf you see a version number output (e.g. 2026.2.25), the installation was successful
Run the Onboarding Wizard (not recommended)
OpenClaw provides an interactive wizard suitable for first-time installation:
openclaw onboard --install-daemonopenclaw onboard --install-daemonTIP
Since Open-HK is a third-party proxy, the built-in Provider list in the wizard will not directly include Open-HK. It is recommended to skip the model configuration step in the wizard and manually edit the config file in step three. The wizard is mainly used for installing the daemon and configuring messaging channels.
Configure HK as a Model Provider
- Configure Open-HK as a model Provider
- Edit the config file
~/.openclaw/openclaw.json; different key groups have different exchange rates and discount levels
{
"agents": {
"defaults": {
"model": {
"primary": "hk-claude/claude-sonnet-4-6"
}
}
},
"models": {
"mode": "merge",
"providers": {
"open-hk": {
"baseUrl": "https://api.open-hk.com/v1",
"apiKey": "hk-your-key",
"api": "openai-completions",
"models": [
{
"id": "deepseek-v3.2",
"name": "DeepSeek-V3.2"
},
{
"id": "gpt-5.4",
"name": "openai gpt 5.4"
},
{
"id": "gpt-5.4-mini",
"name": "openai gpt 5.4 mini"
},
{
"id": "gemini-3-pro-preview",
"name": "gemini 3.1 pro preview"
}
]
},
"hk-claude": {
"baseUrl": "https://api.open-hk.com",
"apiKey": "hk-your-key",
"api": "anthropic-messages",
"models": [
{ "id": "claude-opus-4-6", "name": "Claude Opus 4.6" },
{ "id": "claude-sonnet-4-6", "name": "Claude Sonnet 4.6" }
]
}
}
}
}{
"agents": {
"defaults": {
"model": {
"primary": "hk-claude/claude-sonnet-4-6"
}
}
},
"models": {
"mode": "merge",
"providers": {
"open-hk": {
"baseUrl": "https://api.open-hk.com/v1",
"apiKey": "hk-your-key",
"api": "openai-completions",
"models": [
{
"id": "deepseek-v3.2",
"name": "DeepSeek-V3.2"
},
{
"id": "gpt-5.4",
"name": "openai gpt 5.4"
},
{
"id": "gpt-5.4-mini",
"name": "openai gpt 5.4 mini"
},
{
"id": "gemini-3-pro-preview",
"name": "gemini 3.1 pro preview"
}
]
},
"hk-claude": {
"baseUrl": "https://api.open-hk.com",
"apiKey": "hk-your-key",
"api": "anthropic-messages",
"models": [
{ "id": "claude-opus-4-6", "name": "Claude Opus 4.6" },
{ "id": "claude-sonnet-4-6", "name": "Claude Sonnet 4.6" }
]
}
}
}
}Config field descriptions:
models.providers.open-hkis the driver provider namemodels.providers.open-hk.apiis the API format — mainlyopenai-completionsfor OpenAI chat format /anthropic-messagesfor Claude message formatmodels.providers.open-hk.baseUrlis the base request URL — mainlyhttps://api.openai.com/v1for OpenAI chat format /https://api.open-hk.comfor Claude message formatmodels.providers.open-hk.apiKeyis the apiKey obtained from openai-hk.commodels.providers.open-hk.modelsis the model list for this provider; you can check available models on openai-hk.com and fill in the model IDs- To add a model in OpenAI chat mode, add it directly to
models.providers.open-hk.models, then runopenclaw models set open-hk/{model-id} - To add a model in Claude message mode, add it directly to
models.providers.hk-claude.models, then runopenclaw models set hk-claude/{model-id}
After configuration, start the Gateway:
openclaw gateway --port 18789 --verboseopenclaw gateway --port 18789 --verboseOutput similar to the following indicates a successful start:
[Gateway] Listening on ws://127.0.0.1:18789
[Gateway] Provider "hk-claude" connected (model: claude-sonnet-4-6)
[Gateway] Ready.[Gateway] Listening on ws://127.0.0.1:18789
[Gateway] Provider "hk-claude" connected (model: claude-sonnet-4-6)
[Gateway] Ready.- Switch models — format is provider/model-id, e.g.
open-hk/deepseek-v3.2orhk-claude/claude-opus-4-6
openclaw models set hk-claude/claude-sonnet-4-6
openclaw models set hk-claude/claude-opus-4-6openclaw models set hk-claude/claude-sonnet-4-6
openclaw models set hk-claude/claude-opus-4-6Or
openclaw models set open-hk/deepseek-v3.2
openclaw models set open-hk/gemini-3-pro-preview
openclaw models set open-hk/gpt-5.4
openclaw models set open-hk/gpt-5.4-miniopenclaw models set open-hk/deepseek-v3.2
openclaw models set open-hk/gemini-3-pro-preview
openclaw models set open-hk/gpt-5.4
openclaw models set open-hk/gpt-5.4-mini- List models
openclaw models listopenclaw models listOutput:
Model Input Ctx Local Auth Tags
hk-claude/claude-sonnet-4-6 text 195k no yes default,configured
open-hk/deepseek-v3.2 text 195k no yes configured
hk-claude/claude-opus-4-6 text 195k no yes configuredModel Input Ctx Local Auth Tags
hk-claude/claude-sonnet-4-6 text 195k no yes default,configured
open-hk/deepseek-v3.2 text 195k no yes configured
hk-claude/claude-opus-4-6 text 195k no yes configured
OpenAi-HK