准备

  1. 在 macOS 安装 Forgejo
brew install forgejo
brew services start forgejo

# 访问 http://localhost:3000 初始化

vim /usr/local/var/forgejo/custom/conf/app.ini
## 在 [server] 段设置:
## START_SSH_SERVER = true
## SSH_DOMAIN = forgejo.local
## DOMAIN = forgejo.local
## HTTP_PORT = 4444
## ROOT_URL = http://forgejo.local:4444/
## SSH_PORT = 2222
## DISABLE_SSH = false

# 在 /etc/hosts 添加 127.0.0.1 forgejo.local 的映射

brew services restart forgejo

# 访问 http://forgejo.local:4444
  1. 在 macOS 安装 Ergo IRCd:
##
  1. 在 macOS 安装 LiteLLM proxy,代理的 api_base 为 http://localhost:9999 ,管理界面为 http://localhost:9999/ui :
uv init
uv add 'litellm[proxy]' prisma
uv run prisma generate --schema \
  .venv/lib/*/site-packages/litellm/proxy/schema.prisma

cat > config.yaml <<EOF
general_settings:
  master_key: sk-secret
  database_url: postgresql://xxx@localhost/litellm
  store_model_in_db: true
  store_prompts_in_spend_logs: true

litellm_settings:
  request_timeout: 300
  force_ipv4: true
  #json_logs: true

model_list:
  - model_name: gpt-5.3-codex
    litellm_params:
      model: openai/gpt-5.3-codex
      api_base: https://xxx:8443/v1
      api_key: "os.environ/OPENAI_API_KEY"

  - model_name: gpt-5.4
    litellm_params:
      model: openai/gpt-5.4
      api_base: https://xxx:8443/v1
      api_key: "os.environ/OPENAI_API_KEY"

  - model_name: "*"
    litellm_params:
      model: nvidia_nim/*
      api_key: "os.environ/NVIDIA_API_KEY"

EOF

export OPENAI_API_KEY=xxx
export NVIDIA_API_KEY=xxx

uv run litellm --config config.yaml --port 9999 --num_workers 4 --telemetry false

OpenClaw

  1. 在 Linux 安装 Incus,Debian 12 可以使用 https://github.com/zabbly/incus
apt install incus
sudo incus admin init
sudo adduser $USER incus
  1. 创建容器:incus launch images:debian/13 claw
  2. 允许快照:sudo incus project set user-1000 restricted.snapshots=allow
  3. 进入 claw 容器:
incus exec claw bash

dpkg-reconfigure tzdata  # 选择 Asia/Shanghai

# 换 APT 源: https://mirrors.tuna.tsinghua.edu.cn/help/debian/
apt update
apt install etckeeper curl less telnet byobu man-db python3 nodejs npm golang

# 在 /etc/hosts 添加 MACOS-IP forgejo.local 的映射

adduser claw
adduser claw sudo

su - claw   # 切换到 claw 用户

byobu-enable
byobu-ctrl-a
byobu-config  # change escape sequence: Ctrl-j

echo 'registry=https://registry.npmmirror.com' > ~claw/.npmrc

go env -w GOPROXY=https://goproxy.cn,direct

ssh-keygen -t ed25519
# 将 ~claw/.ssh/id_ed25519.pub 添加到 Forgejo 的用户 SSH key 设置中
  1. 创建容器快照: incus snapshot create claw after-basic-setup
  2. 安装 OpenClaw:
incus exec claw bash
su - claw

# OpenClaw 会安装 linuxbrew,访问 Github
export http_proxy=http://....
export https_proxy=$http_proxy
export HTTP_PROXY=$http_proxy
export HTTPS_PROXY=$http_proxy

curl -fsSL https://openclaw.ai/install.sh | bash

# 加上代理环境变量,以及 PATH=/home/linuxbrew/.linuxbrew/bin:$PATH
systemctl edit --user openclaw-gateway
systemctl restart --user openclaw-gateway