8900 commited on
Commit
f2b49bc
·
verified ·
1 Parent(s): 0d6c48f

Update setup-hf-config.mjs

Browse files
Files changed (1) hide show
  1. setup-hf-config.mjs +17 -59
setup-hf-config.mjs CHANGED
@@ -24,42 +24,28 @@ if (!gatewayToken && !gatewayPassword) {
24
  process.exit(0);
25
  }
26
 
27
- // -- 从免费账号提取的 Token/Cookie (用户级别认证) --
28
- console.log("[setup] Loading user authentication tokens from Secrets…");
29
-
30
- var claudeToken = envStr("CLAUDE_SESSION_KEY");
31
- var openaiToken = envStr("OPENAI_ACCESS_TOKEN");
32
- var geminiCookie = envStr("GOOGLE_GEMINI_COOKIE");
33
- var kimiToken = envStr("KIMI_REFRESH_TOKEN");
34
- var qwenCookie = envStr("QWEN_COOKIE");
35
-
36
- if (claudeToken) console.log("[setup] ✓ Claude session key loaded");
37
- if (openaiToken) console.log("[setup] ✓ OpenAI access token loaded");
38
- if (geminiCookie) console.log("[setup] ✓ Gemini cookie loaded");
39
- if (kimiToken) console.log("[setup] ✓ Kimi refresh token loaded");
40
- if (qwenCookie) console.log("[setup] ✓ Qwen cookie loaded");
41
-
42
- console.log("[setup] User auth tokens ready for OpenClaw");
43
-
44
  // -- default model --
45
  var defaultModel = envStr("OPENCLAW_HF_DEFAULT_MODEL") || "google/gemini-2.0-flash";
46
 
47
- // -- dynamic provider key detection (for API keys) --
48
  var EXCLUDE_PREFIXES = [
49
  "OPENCLAW_", "SPACE_", "SYSTEM_", "HF_",
50
  "NODE_", "PATH", "HOME", "USER", "PWD", "LANG", "LC_",
51
- "npm_", "HOSTNAME", "SHELL", "TERM", "SHLVL",
52
- "CLAUDE_", "OPENAI_", "GOOGLE_", "KIMI_", "QWEN_" // 排除我们已经处理过的
53
  ];
 
 
54
  var INCLUDE_SUFFIXES = [
55
  "_API_KEY", "_SECRET_KEY", "_ACCESS_TOKEN",
56
- "_BOT_TOKEN", "_AUTH_TOKEN", "_APP_KEY", "_KEY"
 
57
  ];
 
58
  function isProviderKey(k){
59
  for (let i=0;i<EXCLUDE_PREFIXES.length;i++){ if(k.indexOf(EXCLUDE_PREFIXES[i])===0) return false; }
60
- for (let i=0;i<INCLUDE_SUFFIXES.length;i++){
61
- let s=INCLUDE_SUFFIXES[i];
62
- if(k.length>s.length && k.indexOf(s)===k.length-s.length) return true;
63
  }
64
  return false;
65
  }
@@ -67,11 +53,8 @@ function isProviderKey(k){
67
  var allKeys = Object.keys(process.env);
68
  var providerKeys = allKeys.filter(k => isProviderKey(k) && envStr(k));
69
  providerKeys.sort();
70
-
71
- if (providerKeys.length > 0) {
72
- console.log("[setup] Detected additional provider keys ("+providerKeys.length+"):");
73
- providerKeys.forEach(k=>console.log(" + "+k));
74
- }
75
 
76
  // -- trusted proxies --
77
  var envProxies = parseList(envStr("OPENCLAW_GATEWAY_TRUSTED_PROXIES"));
@@ -95,23 +78,6 @@ var config = {
95
  agents: { defaults:{ model:defaultModel } },
96
  env: { vars:{} }
97
  };
98
-
99
- // 添加所有用户认证 Token 到环境变量
100
- var userAuthTokens = {
101
- "CLAUDE_SESSION_KEY": claudeToken,
102
- "OPENAI_ACCESS_TOKEN": openaiToken,
103
- "GOOGLE_GEMINI_COOKIE": geminiCookie,
104
- "KIMI_REFRESH_TOKEN": kimiToken,
105
- "QWEN_COOKIE": qwenCookie
106
- };
107
-
108
- Object.keys(userAuthTokens).forEach(k => {
109
- if (userAuthTokens[k]) {
110
- config.env.vars[k] = userAuthTokens[k];
111
- }
112
- });
113
-
114
- // 添加其他 API 密钥
115
  providerKeys.forEach(pk=>{ config.env.vars[pk] = envStr(pk); });
116
 
117
  // -- Telegram webhook setup --
@@ -161,17 +127,9 @@ async function setupTelegram(){
161
  }catch(e){ console.error("[setup] Write failed: "+e.message); process.exit(0); }
162
 
163
  console.log("[setup] Done.");
164
- console.log("[setup] auth = "+(gatewayToken?"token":"password"));
165
- console.log("[setup] default model = "+defaultModel);
166
- console.log("[setup] proxies = "+trustedProxies.length);
167
- console.log("[setup] user tokens = "+(Object.values(userAuthTokens).filter(Boolean).length));
168
- console.log("[setup] api keys = "+providerKeys.length);
169
- console.log("[setup] config = "+CONFIG_PATH);
170
- console.log("");
171
- console.log("[setup] 🎉 OpenClaw ready! Your free AI models are configured:");
172
- if (claudeToken) console.log("[setup] - Claude (from free account)");
173
- if (openaiToken) console.log("[setup] - OpenAI ChatGPT (from free account)");
174
- if (geminiCookie) console.log("[setup] - Google Gemini (from free account)");
175
- if (kimiToken) console.log("[setup] - Kimi (from free account)");
176
- if (qwenCookie) console.log("[setup] - Qwen (from free account)");
177
  })().catch(e=>{ console.error("[setup] Fatal: "+e.message); process.exit(0); });
 
24
  process.exit(0);
25
  }
26
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
27
  // -- default model --
28
  var defaultModel = envStr("OPENCLAW_HF_DEFAULT_MODEL") || "google/gemini-2.0-flash";
29
 
30
+ // -- dynamic provider key detection --
31
  var EXCLUDE_PREFIXES = [
32
  "OPENCLAW_", "SPACE_", "SYSTEM_", "HF_",
33
  "NODE_", "PATH", "HOME", "USER", "PWD", "LANG", "LC_",
34
+ "npm_", "HOSTNAME", "SHELL", "TERM", "SHLVL"
 
35
  ];
36
+
37
+ // 【🚀这里是我为你增强的自动识别词库,加了SESSION_KEY和COOKIE,实现一劳永逸】
38
  var INCLUDE_SUFFIXES = [
39
  "_API_KEY", "_SECRET_KEY", "_ACCESS_TOKEN",
40
+ "_BOT_TOKEN", "_AUTH_TOKEN", "_APP_KEY",
41
+ "_SESSION_KEY", "_COOKIE", "_TOKEN"
42
  ];
43
+
44
  function isProviderKey(k){
45
  for (let i=0;i<EXCLUDE_PREFIXES.length;i++){ if(k.indexOf(EXCLUDE_PREFIXES[i])===0) return false; }
46
+ for (let i=0;i<INCLUDE_SUFFIXES.length;i++){
47
+ let s=INCLUDE_SUFFIXES[i];
48
+ if(k.length>s.length && k.indexOf(s)===k.length-s.length) return true;
49
  }
50
  return false;
51
  }
 
53
  var allKeys = Object.keys(process.env);
54
  var providerKeys = allKeys.filter(k => isProviderKey(k) && envStr(k));
55
  providerKeys.sort();
56
+ console.log("[setup] Detected provider keys ("+providerKeys.length+"):");
57
+ providerKeys.forEach(k=>console.log(" + "+k));
 
 
 
58
 
59
  // -- trusted proxies --
60
  var envProxies = parseList(envStr("OPENCLAW_GATEWAY_TRUSTED_PROXIES"));
 
78
  agents: { defaults:{ model:defaultModel } },
79
  env: { vars:{} }
80
  };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
81
  providerKeys.forEach(pk=>{ config.env.vars[pk] = envStr(pk); });
82
 
83
  // -- Telegram webhook setup --
 
127
  }catch(e){ console.error("[setup] Write failed: "+e.message); process.exit(0); }
128
 
129
  console.log("[setup] Done.");
130
+ console.log("[setup] auth = "+(gatewayToken?"token":"password"));
131
+ console.log("[setup] model = "+defaultModel);
132
+ console.log("[setup] proxies = "+trustedProxies.length);
133
+ console.log("[setup] env.vars = "+providerKeys.length);
134
+ console.log("[setup] config = "+CONFIG_PATH);
 
 
 
 
 
 
 
 
135
  })().catch(e=>{ console.error("[setup] Fatal: "+e.message); process.exit(0); });