Skip to content

Commit 2ab8d68

Browse files
authored
Merge pull request #200 from CJackHwang/dev
Merge pull request #197 from haswysa/main 优化window系统下杀掉子进程功能
2 parents 4a71cd4 + 529abcd commit 2ab8d68

2 files changed

Lines changed: 29 additions & 12 deletions

File tree

browser_utils/more_modles.js

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
// ==UserScript==
2-
// @name Google AI Studio 模型注入器(多模型版)
2+
// @name Google AI Studio 模型注入器
33
// @namespace http://tampermonkey.net/
4-
// @version 1.6.3
4+
// @version 1.6.5
55
// @description 向 Google AI Studio 注入自定义模型,支持主题表情图标。拦截 XHR/Fetch 请求,处理数组结构的 JSON 数据
66
// @author Generated by AI / HCPTangHY / Mozi / wisdgod / UserModified
77
// @match https://aistudio.google.com/*
@@ -15,19 +15,27 @@
1515
'use strict';
1616

1717
// ==================== 配置区域 ====================
18-
const SCRIPT_VERSION = "v1.6.3";
18+
// 脚本版本号已更新为 1.6.5
19+
const SCRIPT_VERSION = "v1.6.5";
1920
const LOG_PREFIX = `[AI Studio 注入器 ${SCRIPT_VERSION}]`;
2021
const ANTI_HIJACK_PREFIX = ")]}'\n";
2122

2223
// 模型配置列表
23-
// 已按要求将 toothless 放到第一位
24+
// 已按要求将 jfdksal98a 放到 blacktooth 的下面
2425
const MODELS_TO_INJECT = [
25-
// Toothless 模型 (现在是第一位)
26+
// Blacktooth 模型 (原 Toothless)
2627
{
27-
name: 'models/toothless-ab-test',
28-
displayName: `🐉 Toothless (脚本 ${SCRIPT_VERSION})`,
28+
name: 'models/blacktooth-ab-test', // 已改为 blacktooth-ab-test
29+
displayName: `🏴‍☠️ Blacktooth (脚本 ${SCRIPT_VERSION})`, // emoji 改为 🏴‍☠️,名称改为 Blacktooth
2930
description: `由脚本 ${SCRIPT_VERSION} 注入的模型`
3031
},
32+
// --- jfdksal98a 模型已移动到此处 ---
33+
{
34+
name: 'models/jfdksal98a',
35+
displayName: `🪐 jfdksal98a (脚本 ${SCRIPT_VERSION})`,
36+
description: `由脚本 ${SCRIPT_VERSION} 注入的模型`
37+
},
38+
// --- 其他模型 ---
3139
{
3240
name: 'models/gemini-2.5-pro-preview-03-25',
3341
displayName: `✨ Gemini 2.5 Pro 03-25 (脚本 ${SCRIPT_VERSION})`,
@@ -145,7 +153,8 @@
145153
// 更新正则表达式以匹配 vX.Y.Z 格式
146154
const cleanName = (name) => String(name)
147155
.replace(/ \( v\d+\.\d+(\.\d+)?(-beta\d*)?\)/, '')
148-
.replace(/^[🦁💧🌊🐉]\s*/, '') // 包含所有当前使用的表情
156+
// 包含所有当前使用的表情,包括新增的 🏴‍☠️, 🤖, 🪐
157+
.replace(/^[🦁💧🌊🐉🏴🤖🪐]\s*/, '')
149158
.trim();
150159

151160
const baseExistingName = cleanName(existingModel[MODEL_FIELDS.DISPLAY_NAME]);
@@ -406,4 +415,4 @@
406415
}
407416

408417
console.log(LOG_PREFIX, '脚本已激活,Fetch 和 XHR 拦截已启用');
409-
})();
418+
})();

launch_camoufox.py

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -149,8 +149,12 @@ def cleanup():
149149
logger.info(f" Camoufox 进程组 (PID: {pid}) 未找到,尝试直接终止进程...")
150150
camoufox_proc.terminate()
151151
else:
152-
logger.info(f" 向 Camoufox (PID: {pid}) 发送 SIGTERM 信号...")
153-
camoufox_proc.terminate()
152+
if sys.platform == "win32":
153+
logger.info(f"进程树 (PID: {pid}) 发送终止请求")
154+
subprocess.call(['taskkill', '/T', '/PID', str(pid)])
155+
else:
156+
logger.info(f" 向 Camoufox (PID: {pid}) 发送 SIGTERM 信号...")
157+
camoufox_proc.terminate()
154158
camoufox_proc.wait(timeout=5)
155159
logger.info(f" ✓ Camoufox (PID: {pid}) 已通过 SIGTERM 成功终止。")
156160
except subprocess.TimeoutExpired:
@@ -164,7 +168,11 @@ def cleanup():
164168
logger.info(f" Camoufox 进程组 (PID: {pid}) 在 SIGKILL 时未找到,尝试直接强制终止...")
165169
camoufox_proc.kill()
166170
else:
167-
camoufox_proc.kill()
171+
if sys.platform == "win32":
172+
logger.info(f" 强制杀死 Camoufox 进程树 (PID: {pid})")
173+
subprocess.call(['taskkill', '/F', '/T', '/PID', str(pid)])
174+
else:
175+
camoufox_proc.kill()
168176
try:
169177
camoufox_proc.wait(timeout=2)
170178
logger.info(f" ✓ Camoufox (PID: {pid}) 已通过 SIGKILL 成功终止。")

0 commit comments

Comments
 (0)