8900 commited on
Commit
36aa07f
·
verified ·
1 Parent(s): 8e65ec4

Update setup-hf-config.mjs

Browse files
Files changed (1) hide show
  1. setup-hf-config.mjs +7 -26
setup-hf-config.mjs CHANGED
@@ -23,11 +23,9 @@ if (!gatewayToken && !gatewayPassword) {
23
  }
24
 
25
  // ---- default model ----
26
- // 已改为 DeepSeek-R1(你最想要的)
27
  var defaultModel = (process.env.OPENCLAW_HF_DEFAULT_MODEL || "").trim() || "deepseek/deepseek-reasoner";
28
 
29
  // ---- dynamic key detection ----
30
- // Exclude internal system/platform vars, include only provider credentials.
31
  var EXCLUDE_PREFIXES = [
32
  "OPENCLAW_", "SPACE_", "SYSTEM_", "HF_",
33
  "NODE_", "PATH", "HOME", "USER", "PWD", "LANG", "LC_"
@@ -44,7 +42,6 @@ function isProviderKey(k) {
44
  return false;
45
  }
46
 
47
- // Scan ALL env vars to detect keys based on suffixes.
48
  var detectedKeys = Object.keys(process.env)
49
  .filter(k => isProviderKey(k) && process.env[k])
50
  .sort();
@@ -52,7 +49,6 @@ var detectedKeys = Object.keys(process.env)
52
  console.log("[setup] Detected provider keys (" + detectedKeys.length + "):");
53
  detectedKeys.forEach(function(k) { console.log(" + " + k); });
54
 
55
- // Separately capture Telegram token
56
  var telegramBotToken = detectedKeys.includes("TELEGRAM_BOT_TOKEN") ? (process.env.TELEGRAM_BOT_TOKEN || "").trim() : null;
57
 
58
  var providerKeys = detectedKeys.filter(k => k !== "TELEGRAM_BOT_TOKEN");
@@ -61,6 +57,8 @@ var providerKeys = detectedKeys.filter(k => k !== "TELEGRAM_BOT_TOKEN");
61
  var trustedProxies = parseList(process.env.OPENCLAW_GATEWAY_TRUSTED_PROXIES);
62
  if (trustedProxies.length === 0) {
63
  trustedProxies = [
 
 
64
  "10.16.4.123", "10.16.7.92", "10.16.18.232",
65
  "10.16.34.155", "10.16.43.133", "10.16.1.206",
66
  "10.16.37.110", "10.16.43.246",
@@ -83,35 +81,18 @@ var config = {
83
  trustedProxies: trustedProxies
84
  },
85
  agents: {
86
- defaults: { model: defaultModel },
87
- providers: {}
88
  },
89
  env: { vars: {} }
90
  };
91
 
92
- // Fixed logic for fully dynamic key detection + 新增 DeepSeek 和 SiliconFlow 支持
93
  providerKeys.forEach(function(k) {
94
  config.env.vars[k] = process.env[k].trim();
95
- var suffixMatched = INCLUDE_SUFFIXES.find(function(s) { return k.endsWith(s); });
96
- if (suffixMatched) {
97
- var prefix = k.slice(0, -(suffixMatched.length + 1)).toUpperCase();
98
- if (prefix) {
99
- var providerId = prefix.toLowerCase();
100
- // 新增:支持 DeepSeek 和 SiliconFlow
101
- if (providerId === "deepseek") providerId = "deepseek";
102
- if (providerId === "siliconflow") providerId = "siliconflow";
103
- if (providerId === "gemini") providerId = "google";
104
- if (providerId === "claude") providerId = "anthropic";
105
-
106
- if (!config.agents.providers[providerId]) {
107
- config.agents.providers[providerId] = { enabled: true };
108
- console.log(`[setup] Auto-enabled provider agent: ${providerId}`);
109
- }
110
- }
111
- }
112
  });
113
 
114
- // ---- Telegram - auto detect best reachable node ----
115
  async function detectTelegramNode(nodes, token) {
116
  for (var i = 0; i < nodes.length; i++) {
117
  var node = nodes[i];
@@ -162,7 +143,7 @@ async function setupTelegram() {
162
  fs.copyFileSync(CONFIG_PATH, CONFIG_PATH + ".bak");
163
  }
164
  fs.writeFileSync(CONFIG_PATH, JSON.stringify(config, null, 2), "utf-8");
165
- console.log("[setup] Config generated at " + CONFIG_PATH + " with " + Object.keys(config.agents.providers).length + " dynamic provider agent(s)");
166
  } catch (e) {
167
  console.error("[setup] Write failed: " + e.message);
168
  process.exit(1);
 
23
  }
24
 
25
  // ---- default model ----
 
26
  var defaultModel = (process.env.OPENCLAW_HF_DEFAULT_MODEL || "").trim() || "deepseek/deepseek-reasoner";
27
 
28
  // ---- dynamic key detection ----
 
29
  var EXCLUDE_PREFIXES = [
30
  "OPENCLAW_", "SPACE_", "SYSTEM_", "HF_",
31
  "NODE_", "PATH", "HOME", "USER", "PWD", "LANG", "LC_"
 
42
  return false;
43
  }
44
 
 
45
  var detectedKeys = Object.keys(process.env)
46
  .filter(k => isProviderKey(k) && process.env[k])
47
  .sort();
 
49
  console.log("[setup] Detected provider keys (" + detectedKeys.length + "):");
50
  detectedKeys.forEach(function(k) { console.log(" + " + k); });
51
 
 
52
  var telegramBotToken = detectedKeys.includes("TELEGRAM_BOT_TOKEN") ? (process.env.TELEGRAM_BOT_TOKEN || "").trim() : null;
53
 
54
  var providerKeys = detectedKeys.filter(k => k !== "TELEGRAM_BOT_TOKEN");
 
57
  var trustedProxies = parseList(process.env.OPENCLAW_GATEWAY_TRUSTED_PROXIES);
58
  if (trustedProxies.length === 0) {
59
  trustedProxies = [
60
+ "10.16.0.0/12", // HF 主要内部网段(CIDR)
61
+ "10.20.0.0/12", // 补充网段
62
  "10.16.4.123", "10.16.7.92", "10.16.18.232",
63
  "10.16.34.155", "10.16.43.133", "10.16.1.206",
64
  "10.16.37.110", "10.16.43.246",
 
81
  trustedProxies: trustedProxies
82
  },
83
  agents: {
84
+ defaults: { model: defaultModel }
85
+ // 注意:移除了 providers 字段
86
  },
87
  env: { vars: {} }
88
  };
89
 
90
+ // 将检测到的 API 密钥写入 env.vars
91
  providerKeys.forEach(function(k) {
92
  config.env.vars[k] = process.env[k].trim();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
93
  });
94
 
95
+ // ---- Telegram ----
96
  async function detectTelegramNode(nodes, token) {
97
  for (var i = 0; i < nodes.length; i++) {
98
  var node = nodes[i];
 
143
  fs.copyFileSync(CONFIG_PATH, CONFIG_PATH + ".bak");
144
  }
145
  fs.writeFileSync(CONFIG_PATH, JSON.stringify(config, null, 2), "utf-8");
146
+ console.log("[setup] Config generated at " + CONFIG_PATH);
147
  } catch (e) {
148
  console.error("[setup] Write failed: " + e.message);
149
  process.exit(1);