Claude 模型清單改為 Fable 5 / Opus 5 / Sonnet 5

This commit is contained in:
2026-08-24 11:49:11 +08:00
parent 573d83fd25
commit 61ce550871
8 changed files with 10 additions and 12 deletions
+2 -2
View File
@@ -40,7 +40,7 @@ telegram-bot start # 重新 start 一次,bot 程序會自動切到新版
1. 填名稱、**選 AI 引擎(Codex 或 Claude)**、Telegram token(儲存時自動驗證) 1. 填名稱、**選 AI 引擎(Codex 或 Claude)**、Telegram token(儲存時自動驗證)
2. 工作目錄按「📂 瀏覽」用原生視窗選資料夾(AI 可讀寫的專案路徑;Codex 讀裡面的 `AGENTS.md`、Claude 讀 `CLAUDE.md` 當專案規範) 2. 工作目錄按「📂 瀏覽」用原生視窗選資料夾(AI 可讀寫的專案路徑;Codex 讀裡面的 `AGENTS.md`、Claude 讀 `CLAUDE.md` 當專案規範)
3. 模型/推理強度用下拉選(Codex 清單來自本機 codex 的模型快取;Claude 用 opus/sonnet/haiku 別名永遠指向最新版) 3. 模型/推理強度用下拉選,清單依引擎不同(Codex 來自本機 codex 的模型快取,如 GPT-5.6 Sol/Terra/Luna;Claude 為 Fable 5 / Opus 5 / Sonnet 5)
4. 沙盒模式預設 `workspace-write` → 勾「建立後立即啟動」→ 儲存,完成 4. 沙盒模式預設 `workspace-write` → 勾「建立後立即啟動」→ 儲存,完成
之後對 bot 私訊即可;群組中要 `@bot` 或回覆 bot 的訊息。 之後對 bot 私訊即可;群組中要 `@bot` 或回覆 bot 的訊息。
@@ -55,7 +55,7 @@ telegram-bot start # 重新 start 一次,bot 程序會自動切到新版
|---|---|---| |---|---|---|
| 底層指令 | `codex exec --json` | `claude -p --output-format stream-json` | | 底層指令 | `codex exec --json` | `claude -p --output-format stream-json` |
| 專案規範檔 | `AGENTS.md` | `CLAUDE.md` | | 專案規範檔 | `AGENTS.md` | `CLAUDE.md` |
| 模型 | 本機 codex 模型快取(GPT-5.6 Sol/Terra/Luna…) | `opus` / `sonnet` / `haiku` 別名或任何模型 id | | 模型 | 本機 codex 模型快取(GPT-5.6 Sol/Terra/Luna…) | Fable 5 / Opus 5 / Sonnet 5(設定檔可手填其他模型 id) |
| 推理強度 | low ~ ultra(依模型) | low / medium / high / max | | 推理強度 | low ~ ultra(依模型) | low / medium / high / max |
| 速度 | 固定 Fast(priority 1.5x) | — | | 速度 | 固定 Fast(priority 1.5x) | — |
| `read-only` | codex 唯讀沙盒 | 禁用 Write/Edit/Bash 等工具 | | `read-only` | codex 唯讀沙盒 | 禁用 Write/Edit/Bash 等工具 |
BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 58 KiB

After

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 91 KiB

After

Width:  |  Height:  |  Size: 91 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 94 KiB

After

Width:  |  Height:  |  Size: 93 KiB

BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 64 KiB

After

Width:  |  Height:  |  Size: 64 KiB

BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 93 KiB

After

Width:  |  Height:  |  Size: 88 KiB

+1 -1
View File
@@ -335,7 +335,7 @@ const ENGINE_UI = {
claude: { claude: {
hint: '本機 Claude Code CLIclaude -p)。專案規範讀工作目錄的 CLAUDE.md', hint: '本機 Claude Code CLIclaude -p)。專案規範讀工作目錄的 CLAUDE.md',
workdir: '規範檔:CLAUDE.md', workdir: '規範檔:CLAUDE.md',
modelHint: '別名 opus / sonnet / haiku 永遠指向最新版;也可在編輯時手動改成任何模型 id', modelHint: 'Claude 5 家族:Fable 5 / Opus 5 / Sonnet 5(設定檔可手填其他模型 id',
effortHint: 'Claude 的 effort 對應 --effort 參數', effortHint: 'Claude 的 effort 對應 --effort 參數',
sandbox: { sandbox: {
'workspace-write': 'workspace-write(自動接受檔案編輯;不執行指令,預設)', 'workspace-write': 'workspace-write(自動接受檔案編輯;不執行指令,預設)',
+7 -9
View File
@@ -97,7 +97,7 @@ async function apiPm2Log(pmId, type, lines) {
// ---------- 模型清單 ---------- // ---------- 模型清單 ----------
// codex:直接讀它自己的 models cache~/.codex/models_cache.json),新模型上線後下拉選單自動跟上; // codex:直接讀它自己的 models cache~/.codex/models_cache.json),新模型上線後下拉選單自動跟上;
// 讀不到就退回內建清單。 // 讀不到就退回內建清單。
// claude:CLI 沒有模型清單可查,用內建清單(別名 opus/sonnet/haiku 永遠指向最新版)。 // claude:CLI 沒有模型清單可查,用內建清單(Claude 5 家族:Fable / Opus / Sonnet;編輯時也可手填任何模型 id)。
const CODEX_FALLBACK_MODELS = [ const CODEX_FALLBACK_MODELS = [
{ slug: 'gpt-5.6-sol', label: 'GPT-5.6-Sol', efforts: ['low', 'medium', 'high', 'xhigh', 'max', 'ultra'], defaultEffort: 'medium' }, { slug: 'gpt-5.6-sol', label: 'GPT-5.6-Sol', efforts: ['low', 'medium', 'high', 'xhigh', 'max', 'ultra'], defaultEffort: 'medium' },
{ slug: 'gpt-5.6-terra', label: 'GPT-5.6-Terra', efforts: ['low', 'medium', 'high', 'xhigh', 'max', 'ultra'], defaultEffort: 'medium' }, { slug: 'gpt-5.6-terra', label: 'GPT-5.6-Terra', efforts: ['low', 'medium', 'high', 'xhigh', 'max', 'ultra'], defaultEffort: 'medium' },
@@ -106,11 +106,9 @@ const CODEX_FALLBACK_MODELS = [
const CLAUDE_EFFORTS = ['low', 'medium', 'high', 'max']; const CLAUDE_EFFORTS = ['low', 'medium', 'high', 'max'];
const CLAUDE_MODELS = [ const CLAUDE_MODELS = [
{ slug: 'opus', label: 'Opus(最新版,目前 Opus 5', efforts: CLAUDE_EFFORTS, defaultEffort: 'high' }, { slug: 'claude-fable-5', label: 'Fable 5(最強,Mythos ', efforts: CLAUDE_EFFORTS, defaultEffort: 'high' },
{ slug: 'sonnet', label: 'Sonnet(最新版,較快)', efforts: CLAUDE_EFFORTS, defaultEffort: 'high' }, { slug: 'claude-opus-5', label: 'Opus 5', efforts: CLAUDE_EFFORTS, defaultEffort: 'high' },
{ slug: 'haiku', label: 'Haiku(最快、最省', efforts: ['low', 'medium', 'high'], defaultEffort: 'medium' }, { slug: 'claude-sonnet-5', label: 'Sonnet 5(較快', efforts: CLAUDE_EFFORTS, defaultEffort: 'high' },
{ slug: 'claude-opus-5', label: 'claude-opus-5(鎖定版本)', efforts: CLAUDE_EFFORTS, defaultEffort: 'high' },
{ slug: 'claude-sonnet-5', label: 'claude-sonnet-5(鎖定版本)', efforts: CLAUDE_EFFORTS, defaultEffort: 'high' },
]; ];
// codex 全域預設(~/.codex/config.toml),前端用來當下拉選單的預選值 // codex 全域預設(~/.codex/config.toml),前端用來當下拉選單的預選值
@@ -143,14 +141,14 @@ function codexModels() {
return { models: CODEX_FALLBACK_MODELS, defaults, source: 'fallback' }; return { models: CODEX_FALLBACK_MODELS, defaults, source: 'fallback' };
} }
// claude 全域預設(~/.claude/settings.json 的 model;沒有就 opus // claude 全域預設(~/.claude/settings.json 的 model 若在清單內就用它;沒有就 Opus 5
function claudeModels() { function claudeModels() {
let model = ''; let model = '';
try { try {
const s = JSON.parse(fs.readFileSync(path.join(os.homedir(), '.claude', 'settings.json'), 'utf-8')); const s = JSON.parse(fs.readFileSync(path.join(os.homedir(), '.claude', 'settings.json'), 'utf-8'));
if (typeof s.model === 'string') model = s.model; if (typeof s.model === 'string' && CLAUDE_MODELS.some((m) => m.slug === s.model)) model = s.model;
} catch { /* ignore */ } } catch { /* ignore */ }
return { models: CLAUDE_MODELS, defaults: { model: model || 'opus', effort: '' }, source: 'builtin' }; return { models: CLAUDE_MODELS, defaults: { model: model || 'claude-opus-5', effort: '' }, source: 'builtin' };
} }
// 引擎是否裝了(開控制台時查一次就好,之後不變) // 引擎是否裝了(開控制台時查一次就好,之後不變)