The following is a brief outline about how to install OpenClaw with macOS client device + local LLM instance.
Environment
- LLM server : Nvidia DGX Spark
- LLM Model : GPT OSS 120b
- OpenClaw Client : macMini
Installing GPT OSS 120b on DGX Spark
llama.cpp is significantly faster than ollama for one client system. So, we use llama.cpp as local LLM server.
1. download llama.cpp
git clone https://github.com/ggml-org/llama.cpp.git
cd llama.cpp
2. compile llama.cpp
compilation needs CUDA option for DGX Spark
cmake -B build -DGGML_CUDA=ON
cmake --build build --config Release -j
3. download GPT OSS 120b
build/bin/llama-cli --hf unsloth/gpt-oss-120b-GGUF
Optionally, you can install Qwen3-Coder model also.
build/bin/llama-cli --hf unsloth/Qwen3-Coder-30B-A3B-Instruct-GGUF
4. enable llama.cpp as Ubuntu service.
create the following file with the below contents. : /etc/systemd/system/llama-server.service
[Unit]
Description=Llama.cpp API Server
After=network.target
[Service]
Type=simple
User=pinebud
WorkingDirectory=/your/home/directory/llama.cpp
ExecStart=/your/home/directory/llama.cpp/build/bin/llama-server --host your_local_ip_address --port your_desired_local_port --api-key your_desired_key
Restart=always
[Install]
WantedBy=multi-user.target
enable the service
sudo systemctl daemon-reload
sudo systemctl enable llama-server
You can connect to the service through the IP you setup and port number. for ex) http://192.168.1.1:8081
Installing OpenClaw on macMini
1. install homebrew
reference : https://brew.sh/
2. install npm
brew install npm
3. install openclaw
npm i -g openclaw
openclaw onboard
4. configure LLM settings
add the following settings after onboarding setup (~/.openclaw/openclaw.json)
"models": {
"providers": {
"llama.cpp": {
"baseUrl": "http://your_llm_ip:your_llm_port/v1",
"apiKey": "your_desired_api_key",
"api": "openai-completions",
"models": [
{
"id": "unsloth/gpt-oss-120b-GGUF",
"name": "GPT-OSS",
"reasoning": true,
"input": [
"text"
]
}
]
}
}
},
"agents": {
"defaults": {
"model": {
"primary": "llama.cpp/unsloth/gpt-oss-120b-GGUF"
},
"models": {
"llama.cpp/unsloth/gpt-oss-120b-GGUF": {
"alias": "GPT-OSS"
}
}
}
},
5. test run gateway
by running gateway with –verbose option, you can debug the issue on connection more easily.
openclaw gateway stop
openclaw gateway --verbose
Setting up Slack Bot with OpenClaw
References
https://github.com/ggml-org/llama.cpp
https://huggingface.co/unsloth/gpt-oss-120b-GGUF
https://huggingface.co/unsloth/Qwen3-Coder-30B-A3B-Instruct-GGUF