codebee 0.1.4 → 0.1.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/app/ui/i18n.js CHANGED
@@ -145,6 +145,7 @@
145
145
  "Atom 出品的均衡深色,蓝灰底不刺眼": "Balanced dark theme from Atom on a soft blue-gray base",
146
146
  "查看内容": "View content",
147
147
  "预览": "Preview",
148
+ "点击查看": "Click to view",
148
149
  "蜂巢": "Hive",
149
150
  "对话": "Chat",
150
151
  "发送": "Send",
@@ -168,6 +169,10 @@
168
169
  "尚未创建。点「编辑」写下人物卡/世界观/伏笔台账,下一轮起草即刻生效。": "Not created yet. Click Edit to write character cards / world / foreshadowing — it takes effect from the next chapter.",
169
170
  "故事圣经已保存": "Story bible saved",
170
171
  "保存失败:": "Save failed: ",
172
+ "图": "IMG",
173
+ "支持图片输入": "Image input supported",
174
+ "支持图片输入,点击关闭": "Image input on — click to turn off",
175
+ "纯文本模型,点击开启图片输入(内置智能体传图以此为准)": "Text-only model — click to enable image input (used by the built-in agent when sending images)",
171
176
  "代码版本隔离": "Version isolation",
172
177
  "任务分支:产物提交在此,原分支未受影响": "Task branch: artifacts are committed here; the original branch is untouched",
173
178
  "待裁决": "Pending verdict",
@@ -204,7 +209,7 @@
204
209
  "浏览本机目录选择": "Browse local folders",
205
210
  "检出失败": "Checkout failed",
206
211
  "未创建": "not created",
207
- "处理后点「重试任务」,运行会重新检出任务分支。": "After fixing, click Retry — the run will check out the task branch again.",
212
+ "处理后点「继续任务」,运行会重新检出任务分支。": "After fixing, click Resume — the run will check out the task branch again.",
208
213
  "合并成功,但你之前的未提交改动没能自动还原,": "Merged, but your uncommitted changes could not be restored automatically — ",
209
214
  "下载": "Download",
210
215
  "二进制文件不预览,可下载查看。": "No preview for binary files — download to view.",
@@ -461,8 +466,8 @@
461
466
  "取消归档": "Unarchive",
462
467
  "归档": "Archive",
463
468
  "重命名任务": "Rename task",
464
- "重试任务": "Retry task",
465
- "↻ 重试任务": " Retry task",
469
+ "↻ 继续任务": " Resume task",
470
+ "再跑一次这个任务;连载任务会断点续跑,已完成章节不重写": "Run this task again; serial novels resume from the breakpoint — finished chapters are kept.",
466
471
  "✎ 编辑重试": "✎ Edit & retry",
467
472
  "✨ 向导创建": "✨ Guided setup",
468
473
  "三问一确认:目标 → 类型 → 目录,预填进表单": "Three quick questions — goal, type, directory — then it prefills the form",
@@ -477,6 +482,7 @@
477
482
  "例:npm test、pytest -q;留空=只靠 AI 评审": "e.g. npm test, pytest -q — leave empty to rely on AI review only",
478
483
  "一条能在工作目录里跑的命令,退出码 0 即视为通过;之后可在表单改": "A command that runs in the workdir — exit code 0 means pass; editable in the form later",
479
484
  "留空靠 AI 评审": "empty — AI review only",
485
+ "协议不匹配": "Protocol mismatch",
480
486
  "协议不匹配,解析时跳过": "protocol mismatch — skipped when resolving",
481
487
  "无可用 wire,解析时跳过": "no usable wire — skipped when resolving",
482
488
  "该 CLI 只接受特定 wire 协议的供应商,当前没有匹配项——先到「模型接入」页导入对应协议的网关。": "This CLI only accepts providers on a specific wire protocol and none match — import a compatible gateway on the Models page first.",
@@ -526,6 +532,7 @@
526
532
  "新建任务到该目录": "New task in this folder",
527
533
  "查看文件": "Browse files",
528
534
  "返回任务列表": "Back to tasks",
535
+ "返回对话": "Back to chat",
529
536
  "未知错误": "Unknown error",
530
537
  "该目录下暂无文件": "No files in this directory",
531
538
  "移除该文件夹": "Remove this folder",
@@ -570,8 +577,8 @@
570
577
  "(用 CLI 默认模型)": " (use CLI default model)",
571
578
  "(用 CLI 默认模型——不会注入任何供应商凭据)": " (use CLI default model — no provider credentials injected)",
572
579
  "(按供应商/难度自动解析)": " (auto by provider/difficulty)",
573
- "(按供应商/难度自动解析——供应商协议不匹配或被停用时解析为空,回落 CLI 本机默认)": " (auto by provider/difficulty — resolves to empty and falls back to CLI defaults if the provider's protocol mismatches or is disabled)",
574
- "模型链里有已停用/已删除的供应商:这些条目解析时会被跳过,链可能因此整体失效。": "The model chain contains disabled/deleted providers: those entries are skipped at resolve time, which can invalidate the whole chain.",
580
+ "(按供应商/难度自动解析——供应商协议不匹配或被停用时解析为空,相关步骤将判失败)": " (auto by provider/difficulty — resolves to empty and the step fails hard if the provider's protocol mismatches or is disabled)",
581
+ "模型链里有已停用/已删除的供应商:这些条目解析时会被跳过,链可能因此整体失效,相关步骤将判失败。": "The model chain contains disabled/deleted providers: those entries are skipped at resolve time, which can invalidate the whole chain and make affected steps fail hard.",
575
582
  "名称": "Name",
576
583
  "默认模型": "Default model",
577
584
  "API 地址": "API endpoint",
@@ -714,6 +721,7 @@
714
721
  "缓存": "Cache",
715
722
  "其他": "Other",
716
723
  "协议 · ": "protocol · ",
724
+ "墨金": "Ink & Gold",
717
725
  "经典": "Classic",
718
726
  "深海": "Deep sea",
719
727
  "森野": "Forest",
@@ -722,8 +730,7 @@
722
730
  "高对比": "High contrast",
723
731
  "夜间": "Dark",
724
732
  "日间": "Light",
725
- "黑白灰 + 蓝色强调,ChatGPT 式清爽配色(默认)": "Black/white/gray with blue accentclean ChatGPT style (default)",
726
- "藏青底色 + 天蓝强调,夜间长时间盯任务更沉静": "Navy background with sky-blue accent — calm for long sessions in dark mode",
733
+ "暖墨底色 + 金色发丝线,Hermes 式古典优雅": "Warm-ink base with gold hairlinesHermes-style classical elegance",
727
734
  "墨绿底色 + 青翠强调,偏自然的护眼配色": "Ink-green with emerald accent — natural and easy on the eyes",
728
735
  "暖棕底色 + 琥珀强调,纸感暖调": "Warm brown with amber accent — paper-like warmth",
729
736
  "暗紫底色 + 品红强调,霓虹感强": "Deep purple with magenta — bold neon feel",
@@ -796,6 +803,8 @@
796
803
  "已复制,手机浏览器粘贴打开即可": "Copied — paste in your phone browser to open",
797
804
  "已复制:": "Copied: ",
798
805
  "已入箱:随下一步送达": "Queued — delivered with the next step",
806
+ "已排队:随下一步一起送达": "Queued — will be delivered with the next step",
807
+ "运行中:新消息会排队,本轮回答完后依次送达": "Running: new messages queue up and are delivered after this turn",
799
808
  "已开新一轮,接着做…": "New round started — continuing…",
800
809
  "已结束:发送后将自动开新一轮接着做": "Run finished — sending will start a new round and continue",
801
810
  "待送达": "pending delivery",
@@ -830,7 +839,7 @@
830
839
  "重试": "Retry",
831
840
  ",点「升级到新版」即可": " — click \"Upgrade to new version\" to proceed",
832
841
  "后点重新加载。": " and click Reload.",
833
- "启用「参与编排」后,该智能体会出现在任务表单与评审组中。进入本页会自动检查各 CLI 是否有新版本;「默认模型」写入 CLI 自己的配置文件(CodeBee 之外也生效),CodeBee 编排运行时用哪个供应商 / 模型请到「CLI 绑定」页配置。安装命令不明的条目可直接编辑": "With \"Takes part in orchestration\" enabled, this agent shows up in the task form and review groups. Opening this page auto-checks each CLI for updates; \"default model\" is written into the CLI's own config file (takes effect outside CodeBee too) — to pick which provider/model CodeBee uses at runtime, go to the \"CLI Bindings\" page. Entries with an unknown install command can be edited directly in",
842
+ "启用「参与编排」后,该智能体会出现在任务表单与评审组中。进入本页会自动检查各 CLI 是否有新版本;「默认模型」写入 CLI 自己的配置文件(CodeBee 之外也生效),CodeBee 编排运行时用哪个供应商 / 模型请到「CLI 绑定」页配置。点「一键绑定推荐模型」可为默认模型还空着的智能体自动填入推荐;厂商 / 模型停用或启用后也会自动补绑一次。安装命令不明的条目可直接编辑": "With \"Takes part in orchestration\" enabled, this agent shows up in the task form and review groups. Opening this page auto-checks each CLI for updates; \"default model\" is written into the CLI's own config file (takes effect outside CodeBee too) — to pick which provider/model CodeBee uses at runtime, go to the \"CLI Bindings\" page. \"Auto-bind recommended models\" fills in a recommendation for agents whose default model is empty; rebinding also runs automatically when providers/models are disabled or enabled. Entries with an unknown install command can be edited directly in",
834
843
  "是默认皮肤,即原本的界面。": " is the default skin — the original interface.",
835
844
  "每套皮肤都是一份完整配色,并且各带「日间 / 夜间」两版,明暗切换不会丢皮肤。选中的皮肤立即生效并记在这台设备上(手机与电脑各自独立)。": "Each skin is a complete palette, with day / night variants — switching brightness never loses your skin. The selected skin applies instantly and is remembered on this device (phone and computer are independent).",
836
845
  "系统自己的经验沉淀:": "The system's own distilled experience:",
@@ -860,6 +869,13 @@
860
869
  "模型已停用": "Model disabled",
861
870
  "没有可推荐的:先到「模型接入」页导入与 CLI 协议匹配的供应商。": "Nothing to recommend — import providers matching the CLI protocols on the \"Models\" page first.",
862
871
  "所有 CLI 都已配置模型链,无需推荐。": "All CLIs already have model chains — no recommendation needed.",
872
+ "一键绑定推荐模型": "Auto-bind recommended models",
873
+ "没有支持写入默认模型的已安装智能体。": "No installed agents support writing a default model.",
874
+ "所有已安装智能体都已配置默认模型,无需绑定。": "All installed agents already have a default model — nothing to bind.",
875
+ "已为 %1 个智能体写入推荐模型,%2 个失败。": "Wrote recommended models to %1 agent(s), %2 failed.",
876
+ "已为 %1 个智能体写入推荐模型(原配置已自动备份 .bak)。": "Wrote recommended models to %1 agent(s) (original configs backed up as .bak).",
877
+ "推荐模型写入失败:": "Failed to write recommended models: ",
878
+ "厂商/模型变动,已自动重绑 %1 处。": "Providers/models changed — %1 binding(s) auto-rebound.",
863
879
  "已保存 %1 个 CLI 的绑定。": "Saved bindings for %1 CLI(s).",
864
880
  "未安装": "Not installed",
865
881
  "有新版本 ": "New version ",
@@ -1155,6 +1171,7 @@
1155
1171
  "接管": "Take over",
1156
1172
  "打开网页": "Open web",
1157
1173
  "连接异常": "connection issue",
1174
+ "绑定链失效": "binding chain dead",
1158
1175
  "连续失败": "consecutive failures",
1159
1176
  "一致性": "Consistency",
1160
1177
  "人物塑造": "Characters",
@@ -1184,10 +1201,10 @@
1184
1201
  "),无需升级。": ") — no update needed.",
1185
1202
  "+ 新建自定义流程": "+ New custom flow",
1186
1203
  ",可在「关于与更新」一键升级": " — one-click upgrade in About & Updates",
1187
- ",当前没有可注入的 CLI,编排时会回落为 CLI 默认配置。": ", but no injectable CLI matches it — orchestration falls back to CLI defaults.",
1204
+ ",当前没有可注入的 CLI,编排时相关步骤会直接判失败。": ", but no injectable CLI matches it — affected orchestration steps fail hard.",
1188
1205
  ":连续失败 ": ": consecutive failures ",
1189
1206
  "该供应商协议为 ": "This provider's protocol is ",
1190
- "该供应商已停用:编排时不会注入它,将回落为 CLI 默认配置(模型链也不会生效)。": "This provider is disabled: orchestration won't inject it and will fall back to CLI defaults (the model chain won't apply either).",
1207
+ "该供应商已停用:编排时不会注入它,模型链因此失效时相关步骤会直接判失败。": "This provider is disabled: orchestration won't inject it, and affected steps fail hard when the model chain is invalidated.",
1191
1208
  "绑定后编排调用会注入该供应商的 API key 与地址;不绑定则只按下方模型链传 -m 参数。": "When bound, orchestrated calls inject this provider's API key and URL; otherwise only the model chain below is passed via -m.",
1192
1209
  "还没有可选模型:先到「模型接入」页导入供应商并获取模型列表。": "No models available yet — import a provider and fetch its model list on the \"Models\" page first.",
1193
1210
  "还没有已安装且可编排的 CLI——先到「智能体管理」页安装并启用。": "No installed, orchestration-capable CLI yet — install and enable one on the \"Agents\" page.",
@@ -1248,6 +1265,10 @@
1248
1265
  "已按「%1」预填新任务表单,确认或修改后提交": "New task form prefilled from \"%1\" — review, adjust, then submit",
1249
1266
  "已写到第 %1 章,将从第 %2 章接着写(同一工作目录,成书合并全本)。续写章数:": "Written through chapter %1; continuation starts at chapter %2 (same workdir; merged book includes all). Chapters to continue:",
1250
1267
  "已是最新版。": "Already up to date.",
1268
+ "本次更新内容": "What's new in this update",
1269
+ "已更新到": "Updated to",
1270
+ "知道了": "Got it",
1271
+ "新版本更新内容": "What's new in the new version",
1251
1272
  "已注入 ": "injected ",
1252
1273
  "已清除 ": "Cleared ",
1253
1274
  "已禁用厂商 {0}:链降级自动跳过,绑定页可重新启用": "Provider {0} disabled: chain fallback skips it — re-enable on the Bindings page",
@@ -1322,6 +1343,7 @@
1322
1343
  "要解决什么问题、约束条件(工期/技术栈/预算)、给谁评审": "Problem to solve, constraints (timeline / stack / budget), who reviews it",
1323
1344
  "目标岗位 + 个人经历(可贴旧简历附件),几年经验投什么职级": "Target role + experience (attach the old resume), years of experience and the level you're applying for",
1324
1345
  "实现 → 验证命令 → 跨厂商评审 → 自动修复/换将": "Implement → verify command → cross-provider review → auto-fix / swap agent",
1346
+ "CodeBee 直连模型 API 干活(无 CLI 进程),无可用供应商时回退本机 CLI;无拆解/评审(快)": "CodeBee runs directly to the model API (no CLI process); when no usable provider exists, falls back to the local CLI; no decomposition/review (fast)",
1325
1347
  "起草 → 多维评审 → 修订循环 → 发布门禁": "Draft → multi-dim review → revision loop → publish gate",
1326
1348
  "大纲 → 逐章起草 → 每章多维评审修订 → 全局一致性评审 → 合并(可断点续跑)": "Outline → chapter-by-chapter drafting → per-chapter multi-dim review & revision → global consistency review → merge (resumable)",
1327
1349
  "公众号/头条风格文章:起草 → 多维评审 → 修订循环 → 发布门禁": "WeChat/Toutiao-style article: draft → multi-dim review → revision loop → publish gate",
@@ -0,0 +1,79 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64">
2
+ <!-- CodeBee 写实小蜂:琥珀黑条纹腹 + 绒毛胸背 + 半透明翅脉 + 扇翅动画。
3
+ 经 <img> 引用(独立文档,渐变 id 互不串扰);翅动媒体查询随系统 reduce-motion 关停。 -->
4
+ <defs>
5
+ <linearGradient id="cbAbd" x1="0" y1="0" x2="0" y2="1">
6
+ <stop offset="0" stop-color="#ffcd66"/>
7
+ <stop offset=".55" stop-color="#f0a92c"/>
8
+ <stop offset="1" stop-color="#c67c12"/>
9
+ </linearGradient>
10
+ <radialGradient id="cbThx" cx=".38" cy=".3" r="1.05">
11
+ <stop offset="0" stop-color="#7a5a26"/>
12
+ <stop offset=".6" stop-color="#3d2c10"/>
13
+ <stop offset="1" stop-color="#1f1505"/>
14
+ </radialGradient>
15
+ <linearGradient id="cbWing" x1="0" y1="0" x2="1" y2="1">
16
+ <stop offset="0" stop-color="#ffffff" stop-opacity=".85"/>
17
+ <stop offset="1" stop-color="#cfe0f5" stop-opacity=".16"/>
18
+ </linearGradient>
19
+ <clipPath id="cbAbdClip"><ellipse cx="32" cy="44" rx="11.5" ry="13.5"/></clipPath>
20
+ </defs>
21
+ <style>
22
+ .wingL, .wingR { transform-box: view-box; }
23
+ .wingL { transform-origin: 27px 21px; animation: cbFlapL .16s ease-in-out infinite alternate; }
24
+ .wingR { transform-origin: 37px 21px; animation: cbFlapR .16s ease-in-out infinite alternate; }
25
+ @keyframes cbFlapL { from { transform: rotate(-16deg); } to { transform: rotate(9deg); } }
26
+ @keyframes cbFlapR { from { transform: rotate(16deg); } to { transform: rotate(-9deg); } }
27
+ @media (prefers-reduced-motion: reduce) { .wingL, .wingR { animation: none; } }
28
+ </style>
29
+
30
+ <!-- 触角 -->
31
+ <path d="M29.5 8C27.5 4.6 24.6 3 21.8 3.6" fill="none" stroke="#241a05" stroke-width="1.4" stroke-linecap="round"/>
32
+ <path d="M34.5 8c2-3.4 4.9-5 7.7-4.4" fill="none" stroke="#241a05" stroke-width="1.4" stroke-linecap="round"/>
33
+ <circle cx="21.6" cy="3.7" r="1.5" fill="#241a05"/>
34
+ <circle cx="42.4" cy="3.7" r="1.5" fill="#241a05"/>
35
+
36
+ <!-- 左翅(前后两片,扇翅绕胸侧基点) -->
37
+ <g class="wingL">
38
+ <ellipse cx="16.5" cy="19.5" rx="11.5" ry="4.8" transform="rotate(-34 26 20.5)"
39
+ fill="url(#cbWing)" stroke="#e8f1fb" stroke-opacity=".65" stroke-width=".7"/>
40
+ <ellipse cx="20" cy="24.5" rx="8.2" ry="3.5" transform="rotate(-22 26.5 24.5)"
41
+ fill="url(#cbWing)" stroke="#e8f1fb" stroke-opacity=".55" stroke-width=".6"/>
42
+ <g transform="rotate(-34 26 20.5)" fill="none" stroke="#a9c1dd" stroke-opacity=".4" stroke-width=".5">
43
+ <path d="M26 20.5 8 15.5"/><path d="M26 21.5 7.5 20.5"/>
44
+ </g>
45
+ </g>
46
+ <!-- 右翅 -->
47
+ <g class="wingR">
48
+ <ellipse cx="47.5" cy="19.5" rx="11.5" ry="4.8" transform="rotate(34 38 20.5)"
49
+ fill="url(#cbWing)" stroke="#e8f1fb" stroke-opacity=".65" stroke-width=".7"/>
50
+ <ellipse cx="44" cy="24.5" rx="8.2" ry="3.5" transform="rotate(22 37.5 24.5)"
51
+ fill="url(#cbWing)" stroke="#e8f1fb" stroke-opacity=".55" stroke-width=".6"/>
52
+ <g transform="rotate(34 38 20.5)" fill="none" stroke="#a9c1dd" stroke-opacity=".4" stroke-width=".5">
53
+ <path d="M38 20.5 56 15.5"/><path d="M38 21.5 56.5 20.5"/>
54
+ </g>
55
+ </g>
56
+
57
+ <!-- 腹部:琥珀底 + 黑条纹 + 高光 + 螫针 -->
58
+ <ellipse cx="32" cy="44" rx="11.5" ry="13.5" fill="url(#cbAbd)"/>
59
+ <g clip-path="url(#cbAbdClip)" fill="#241a05">
60
+ <path d="M20 40.5 Q32 36.5 44 40.5 L44 46.5 Q32 42.5 20 46.5 Z"/>
61
+ <path d="M20.5 49 Q32 45.5 43.5 49 L43.2 54.5 Q32 51.5 20.8 54.5 Z" opacity=".92"/>
62
+ </g>
63
+ <path d="M25.2 36q-2.6 4-2 9.5" stroke="#ffe9ad" stroke-opacity=".7" stroke-width="1.6" stroke-linecap="round" fill="none"/>
64
+ <ellipse cx="32" cy="44" rx="11.5" ry="13.5" fill="none" stroke="#8a5a10" stroke-opacity=".35" stroke-width=".8"/>
65
+ <path d="M32 58.5 29.8 54h4.4Z" fill="#241a05"/>
66
+
67
+ <!-- 胸背:绒毛渐变 + 虚线描边模拟绒毛缘 -->
68
+ <ellipse cx="32" cy="25.5" rx="9.2" ry="9.8" fill="url(#cbThx)"/>
69
+ <ellipse cx="32" cy="25.5" rx="9.2" ry="9.8" fill="none" stroke="#8a6a2e" stroke-opacity=".45"
70
+ stroke-width="1" stroke-dasharray="1.2 1.6"/>
71
+
72
+ <!-- 头:复眼 + 高光 -->
73
+ <circle cx="32" cy="12.8" r="6.3" fill="#241a05"/>
74
+ <ellipse cx="28" cy="12.6" rx="2.4" ry="3" fill="#0e0a03"/>
75
+ <ellipse cx="36" cy="12.6" rx="2.4" ry="3" fill="#0e0a03"/>
76
+ <circle cx="28.9" cy="11.3" r=".7" fill="#7d6538" opacity=".8"/>
77
+ <circle cx="36.9" cy="11.3" r=".7" fill="#7d6538" opacity=".8"/>
78
+ <path d="M28.5 8.6q3.5-1.6 7 0" stroke="#8a6a2e" stroke-opacity=".55" stroke-width=".8" fill="none"/>
79
+ </svg>
package/app/ui/index.html CHANGED
@@ -14,7 +14,8 @@
14
14
  <meta name="apple-mobile-web-app-title" content="CodeBee">
15
15
  <link rel="stylesheet" href="style.css">
16
16
  <!-- 首屏预涂:在样式表之后、绘制之前定好皮肤与明暗 + 语言,避免刷新时闪一下默认配色。
17
- 皮肤值不在这里校验——非法值匹配不到任何 html[data-skin=...] 规则,自然回落深海。 -->
17
+ 皮肤值不在这里校验——非法值匹配不到任何 html[data-skin=...] 规则,首涂落经典底色,
18
+ app.js 加载后会按 currentSkin() 校正为默认皮肤。 -->
18
19
  <script>
19
20
  (function () {
20
21
  try {
@@ -356,7 +357,7 @@
356
357
  <div class="rd-actions">
357
358
  <button id="btn-pause" class="ghost hidden" data-i18n="暂停">暂停</button>
358
359
  <button data-i18n="取消运行" id="btn-cancel" class="danger hidden">取消运行</button>
359
- <button data-i18n="↻ 重试任务" id="btn-retry" class="primary hidden">↻ 重试任务</button>
360
+ <button data-i18n="↻ 继续任务" id="btn-retry" class="primary hidden" data-i18n-title="再跑一次这个任务;连载任务会断点续跑,已完成章节不重写" title="再跑一次这个任务;连载任务会断点续跑,已完成章节不重写">↻ 继续任务</button>
360
361
  <button data-i18n="✎ 编辑重试" id="btn-editretry" class="ghost hidden" data-i18n-title="取回原任务的目标/目录/评审设置,修改后提交即重新开跑" title="取回原任务的目标/目录/评审设置,修改后提交即重新开跑">✎ 编辑重试</button>
361
362
  <button data-i18n="继续连载" id="btn-continue" class="ghost hidden">继续连载</button>
362
363
  <button data-i18n="基于此任务新建" id="btn-newfrom" class="ghost hidden">基于此任务新建</button>
@@ -373,6 +374,9 @@
373
374
  <button class="rd-tab" data-tab="bible" data-i18n="圣经">圣经<span class="rd-badge hidden"></span></button>
374
375
  <button class="rd-tab" data-tab="bookmeta" data-i18n="作品信息">作品信息<span class="rd-badge hidden"></span></button>
375
376
  </div>
377
+ <!-- 直连任务「对话为主」导航:常规页签条收起(chat-mode),这里给按需打开
378
+ 其它分区的小按钮 + 非对话分区时的「返回对话」入口 -->
379
+ <div id="rd-chat-nav" class="hidden"></div>
376
380
  <div class="rd-main">
377
381
  <!-- 对话分区(直连任务默认):用户消息与 CLI 输出混排的时间线 + 贴底追话框。
378
382
  运行中发出去走信箱(下一步送达);已结束发出去走 /chat 自动续跑新一轮。 -->
@@ -515,11 +519,12 @@
515
519
  <div class="panel-head">
516
520
  <h2 data-i18n="智能体目录">智能体目录</h2>
517
521
  <div class="actions">
522
+ <button data-i18n="一键绑定推荐模型" id="btn-catalog-autobind" class="ghost">一键绑定推荐模型</button>
518
523
  <button data-i18n="重新加载 catalog" id="btn-reload-catalog" class="ghost">重新加载 catalog</button>
519
524
  <button data-i18n="恢复默认 catalog" id="btn-reset-catalog" class="ghost">恢复默认 catalog</button>
520
525
  </div>
521
526
  </div>
522
- <p class="hint"><span data-i18n="启用「参与编排」后,该智能体会出现在任务表单与评审组中。进入本页会自动检查各 CLI 是否有新版本;「默认模型」写入 CLI 自己的配置文件(CodeBee 之外也生效),CodeBee 编排运行时用哪个供应商 / 模型请到「CLI 绑定」页配置。安装命令不明的条目可直接编辑">启用「参与编排」后,该智能体会出现在任务表单与评审组中。进入本页会自动检查各 CLI 是否有新版本;「默认模型」写入 CLI 自己的配置文件(CodeBee 之外也生效),CodeBee 编排运行时用哪个供应商 / 模型请到「CLI 绑定」页配置。安装命令不明的条目可直接编辑</span> <code>data/catalog.json</code> <span data-i18n="后点重新加载。">后点重新加载。</span></p>
527
+ <p class="hint"><span data-i18n="启用「参与编排」后,该智能体会出现在任务表单与评审组中。进入本页会自动检查各 CLI 是否有新版本;「默认模型」写入 CLI 自己的配置文件(CodeBee 之外也生效),CodeBee 编排运行时用哪个供应商 / 模型请到「CLI 绑定」页配置。点「一键绑定推荐模型」可为默认模型还空着的智能体自动填入推荐;厂商 / 模型停用或启用后也会自动补绑一次。安装命令不明的条目可直接编辑">启用「参与编排」后,该智能体会出现在任务表单与评审组中。进入本页会自动检查各 CLI 是否有新版本;「默认模型」写入 CLI 自己的配置文件(CodeBee 之外也生效),CodeBee 编排运行时用哪个供应商 / 模型请到「CLI 绑定」页配置。点「一键绑定推荐模型」可为默认模型还空着的智能体自动填入推荐;厂商 / 模型停用或启用后也会自动补绑一次。安装命令不明的条目可直接编辑</span> <code>data/catalog.json</code> <span data-i18n="后点重新加载。">后点重新加载。</span></p>
523
528
  <h3 data-i18n="已安装" class="sec-title">已安装</h3>
524
529
  <div id="ag-installed" class="cards"></div>
525
530
  <h3 data-i18n="可安装" class="sec-title">可安装</h3>