Simford.Dong commited on
Commit
1a69f56
·
1 Parent(s): 2b73a79

fix: set feishu dmPolicy to open and fix model mapping

Browse files
Files changed (1) hide show
  1. Dockerfile +44 -42
Dockerfile CHANGED
@@ -90,48 +90,50 @@ python3 /usr/local/bin/sync.py restore\n\
90
  # 清理 API Base 地址\n\
91
  CLEAN_BASE=\$(echo \"\$OPENAI_API_BASE\" | sed \"s|/chat/completions||g\" | sed \"s|/v1/|/v1|g\" | sed \"s|/v1\$|/v1|g\")\n\
92
  \n\
93
- # 处理 MODEL 变量:如果未包含 / 则默认为 siliconflow/\n\
94
- if [[ \"\$MODEL\" != */* ]]; then\n\
95
- export FULL_MODEL_ID=\"siliconflow/\$MODEL\"\n\
96
- export PROVIDER_MODEL_ID=\"\$MODEL\"\n\
97
- else\n\
98
- export FULL_MODEL_ID=\"\$MODEL\"\n\
99
- export PROVIDER_MODEL_ID=\"\${MODEL##*/}\"\n\
100
- fi\n\
101
- \n\
102
- # 生成 openclaw.json 配置文件\n\
103
- cat > /root/.openclaw/openclaw.json <<EOF\n\
104
- {\n\
105
- \"models\": {\n\
106
- \"providers\": {\n\
107
- \"siliconflow\": {\n\
108
- \"baseUrl\": \"\$CLEAN_BASE\",\n\
109
- \"apiKey\": \"\$OPENAI_API_KEY\",\n\
110
- \"api\": \"openai-completions\",\n\
111
- \"models\": [{ \"id\": \"\$PROVIDER_MODEL_ID\", \"name\": \"Model\", \"contextWindow\": 128000 }]\n\
112
- }\n\
113
- }\n\
114
- },\n\
115
- \"agents\": { \"defaults\": { \"model\": { \"primary\": \"\$FULL_MODEL_ID\" } } },\n\
116
- \"gateway\": {\n\
117
- \"mode\": \"local\", \"bind\": \"lan\", \"port\": \$PORT,\n\
118
- \"trustedProxies\": [\"0.0.0.0/0\", \"10.0.0.0/8\", \"172.16.0.0/12\", \"192.168.0.0/16\"],\n\
119
- \"auth\": { \"mode\": \"token\", \"token\": \"\$OPENCLAW_GATEWAY_PASSWORD\" },\n\
120
- \"controlUi\": { \"allowInsecureAuth\": true }\n\
121
- },\n\
122
- \"channels\": {\n\
123
- \"feishu\": {\n\
124
- \"enabled\": \${FEISHU_ENABLED:-false},\n\
125
- \"appId\": \"\$FEISHU_APP_ID\",\n\
126
- \"appSecret\": \"\$FEISHU_APP_SECRET\",\n\
127
- \"domain\": \"\${FEISHU_DOMAIN:-feishu}\",\n\
128
- \"connectionMode\": \"\${FEISHU_CONNECTION_MODE:-websocket}\",\n\
129
- \"requirePairing\": false,\n\
130
- \"ignoreEvents\": [\"im.message.message_read_v1\"]\n\
131
- }\n\
132
- }\n\
133
- }\n\
134
- EOF\n\
 
 
135
  \n\
136
  # 启动定时备份进程 (每 3 小时执行一次,增强安全性)\n\
137
  (while true; do sleep 10800; python3 /usr/local/bin/sync.py backup; done) &\n\
 
90
  # 清理 API Base 地址\n\
91
  CLEAN_BASE=\$(echo \"\$OPENAI_API_BASE\" | sed \"s|/chat/completions||g\" | sed \"s|/v1/|/v1|g\" | sed \"s|/v1\$|/v1|g\")\n\
92
  \n\
93
+ # 处理 MODEL 变量:优先使用 FULL_MODEL_ID,保持灵活性
94
+ if [[ \"\$MODEL\" == */* ]]; then
95
+ export FULL_MODEL_ID=\"\$MODEL\"
96
+ export PROVIDER_NAME=\"\${MODEL%%/*}\"
97
+ export PROVIDER_MODEL_ID=\"\${MODEL#*/}\"
98
+ else
99
+ export FULL_MODEL_ID=\"\$MODEL\"
100
+ export PROVIDER_NAME=\"siliconflow\"
101
+ export PROVIDER_MODEL_ID=\"\$MODEL\"
102
+ fi
103
+
104
+ # 生成 openclaw.json 配置文件
105
+ cat > /root/.openclaw/openclaw.json <<EOF
106
+ {
107
+ "models": {
108
+ "providers": {
109
+ "\$PROVIDER_NAME": {
110
+ "baseUrl": "\$CLEAN_BASE",
111
+ "apiKey": "\$OPENAI_API_KEY",
112
+ "api": "openai-completions",
113
+ "models": [{ "id": "\$PROVIDER_MODEL_ID", "name": "Model", "contextWindow": 128000 }]
114
+ }
115
+ }
116
+ },
117
+ "agents": { "defaults": { "model": { "primary": "\$FULL_MODEL_ID" } } },
118
+ "gateway": {
119
+ "mode": "local", "bind": "lan", "port": \$PORT,
120
+ "trustedProxies": ["0.0.0.0/0", "10.0.0.0/8", "172.16.0.0/12", "192.168.0.0/16"],
121
+ "auth": { "mode": "token", "token": "\$OPENCLAW_GATEWAY_PASSWORD" },
122
+ "controlUi": { "allowInsecureAuth": true }
123
+ },
124
+ "channels": {
125
+ "feishu": {
126
+ "enabled": \${FEISHU_ENABLED:-false},
127
+ "appId": "\$FEISHU_APP_ID",
128
+ "appSecret": "\$FEISHU_APP_SECRET",
129
+ "domain": "\${FEISHU_DOMAIN:-feishu}",
130
+ "connectionMode": "\${FEISHU_CONNECTION_MODE:-websocket}",
131
+ "dmPolicy": "open",
132
+ "ignoreEvents": ["im.message.message_read_v1"]
133
+ }
134
+ }
135
+ }
136
+ EOF
137
  \n\
138
  # 启动定时备份进程 (每 3 小时执行一次,增强安全性)\n\
139
  (while true; do sleep 10800; python3 /usr/local/bin/sync.py backup; done) &\n\