codebee 0.1.16 → 0.1.18

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
@@ -429,6 +429,36 @@
429
429
  "CLI 绑定": "CLI bindings",
430
430
  "编排设置": "Orchestrator",
431
431
  "经验库": "Skill library",
432
+ "知识库": "Knowledge base",
433
+ "新建条目": "New entry",
434
+ "运行产出自动整理成的可复用知识:": "Reusable knowledge distilled from run outputs:",
435
+ "自动提炼(草稿)": "auto-distilled (draft)",
436
+ "——每次任务结束由编排者从产出材料里提炼知识条目,你确认「转正」后才参与注入;": "— after each run the orchestrator distills knowledge entries from output material; they join prompt injection only after you approve them;",
437
+ "手动新建(直接转正)": "manually created (approved)",
438
+ "——也是你自己的知识管理库。转正条目按任务类型与相关性自动注入同类任务的规划与评审提示词。": "— doubles as your personal knowledge base. Approved entries are injected by task type and relevance into planning/review prompts of similar tasks.",
439
+ "搜索标题 / 正文 / 标签": "Search title / body / tags",
440
+ "知识条目": "Knowledge entries",
441
+ "全部标签": "All tags",
442
+ "草稿": "Draft",
443
+ "已转正": "Approved",
444
+ "转正": "Approve",
445
+ "可能过期": "Possibly stale",
446
+ "事实较旧,注入时会标注可能过期": "Fact is old; injection marks it as possibly stale",
447
+ "只看该标签": "Filter by tag",
448
+ "来源运行": "Source run",
449
+ "事实截至 ": "As of ",
450
+ "事实截至": "Fact as of",
451
+ "删除这条知识?转正条目不再注入,删除后不可恢复。": "Delete this entry? Approved entries stop being injected; deletion is permanent.",
452
+ "新建知识条目": "New knowledge entry",
453
+ "编辑知识条目": "Edit knowledge entry",
454
+ "标题": "Title",
455
+ "正文": "Body",
456
+ "标签(逗号分隔)": "Tags (comma-separated)",
457
+ "例:番茄, 签约": "e.g. fanqie, signing",
458
+ "适用范围(任务类型,* 为通用)": "Scope (task type; * = general)",
459
+ "标题与正文不能为空": "Title and body are required",
460
+ "还没有知识条目——完成一次产出型任务后自动提炼(草稿态待转正),也可以点右上角手动新建。": "No entries yet — finish an output-producing task and entries are auto-distilled (drafts awaiting approval), or create one manually.",
461
+ "(暂无)": "(none)",
432
462
  "皮肤": "Skins",
433
463
  "手机连接": "Phone link",
434
464
  "设置": "Settings",
@@ -478,6 +508,7 @@
478
508
  "绑定 CLI 智能体": "Bind CLI agents",
479
509
  "先跳过,直接体验": "Skip and explore",
480
510
  "可随时在「设置 → 关于与更新」重新打开本引导。": "You can reopen this guide anytime in Settings → About & updates.",
511
+ "可随时按 F1,或在「设置 → 关于与更新」重新打开本帮助中心。": "Press F1 anytime, or reopen this help center in Settings → About & updates.",
481
512
  "把任务交给蜂群": "Hand the job to the hive",
482
513
  "多智能体分工协作,成果自动落盘。": "Agents divide the work; finished results land in your folder automatically.",
483
514
  "多智能体编排": "Multi-agent orchestration",
@@ -497,8 +528,10 @@
497
528
  "连载创作流程": "Serial writing flow",
498
529
  "发布上架": "Publishing",
499
530
  "一键发布到番茄、七猫,含封面与作品资料": "One-click publishing to Fanqie & Qimao, covers and book metadata included",
531
+ "内置规范包 + 自动沉淀教训,越用越顺手": "Built-in rule packs plus lessons distilled from runs — it gets better the more you use it",
500
532
  "自动化与技能市场": "Automation & skills market",
501
533
  "常见问题": "FAQ",
534
+ "代码任务与版本": "Coding tasks & versions",
502
535
  "整理中": "Coming soon",
503
536
  "正文暂只提供中文,英文版整理中。": "Body text is Chinese-only for now — English is on the way.",
504
537
  "本章节正在整理,可先看「快速上手」与「模型接入与绑定」,或到 GitHub 提 Issue 提问。": "This chapter is still being written. Meanwhile, see Quick start and Models & bindings, or open a GitHub issue.",
@@ -1448,6 +1481,17 @@
1448
1481
  "商务邮件": "Business Email",
1449
1482
  "技术方案": "Tech Proposal",
1450
1483
  "简历": "Resume",
1484
+ "扫榜选材": "Rank Scan for Topics",
1485
+ "抓取七猫排行榜公开数据 → AI 提炼热门题材/人设/差异化切入点(快档直出报告)": "Grabs public Qimao ranking data → AI distills hot genres / character archetypes / differentiation angles (fast lane, report straight out)",
1486
+ "想写哪个方向(一句话,可留空默认分析总榜热门题材)": "Which direction to write (one sentence; leave empty to analyze the overall hot genres)",
1487
+
1488
+ // —— 插件市场远程来源名(market_remote.py)——
1489
+ "ZCode 官方": "ZCode Official",
1490
+ "Anthropic 生态": "Anthropic Ecosystem",
1491
+ "Anthropic 官方技能": "Anthropic Official Skills",
1492
+ "社区技能库(Codex/Gemini 兼容)": "Community skills (Codex/Gemini compatible)",
1493
+ "ClawHub(OpenClaw 生态)": "ClawHub (OpenClaw ecosystem)",
1494
+ "CocoLoop 技能商店": "CocoLoop Skills Store",
1451
1495
  "要实现/修复什么(一句话)": "What to build/fix (one sentence)",
1452
1496
  "写什么(题材 / 篇幅 / 风格)": "What to write (genre / length / style)",
1453
1497
  "题材/受众/卖点 + 总字数(例:2 万字都市女频,可签约平台)": "Genre/audience/selling points + total length (e.g. 20k-word urban romance for women, submission-ready)",
@@ -1551,6 +1595,7 @@
1551
1595
  "无头模式:opencode run(stdin 传入提示词)": "Headless mode: opencode run (prompt via stdin)",
1552
1596
  "通义千问编码 CLI(gemini-cli 系);无头走 stdin;绑定凭据经打开注入写 settings.json 的 env 段(OPENAI_*,qwen 存在即优先 openai 兼容通道)": "Qwen coding CLI (gemini-cli family); headless via stdin; bound credentials are injected at launch into the env section of settings.json (OPENAI_* — prefers the openai-compatible channel when present)",
1553
1597
  "Python 系结对编程 CLI;用 py -3.13 安装,模型经其配置/环境变量设置": "Python pairing CLI; install with py -3.13, model set via its config/env",
1598
+ "Python 系结对编程 CLI;用 uv tool 安装(自动备好 3.12 托管解释器),模型经其配置/环境变量设置": "Python pairing CLI; install via uv tool (managed Python 3.12 set up automatically), model set via its config/env",
1554
1599
  "xAI 终端编码智能体;可执行名是 grok(不是 grok-build);默认模型在 ~/.grok/config.toml 的 [models] default(JSON 版配置不存在)": "xAI terminal coding agent; the executable is grok (not grok-build); the default model goes to [models] default in ~/.grok/config.toml (no JSON config variant)",
1555
1600
  "网关型个人 AI 智能体(原 Clawdbot);编排模板装好后需验证;默认模型在 openclaw.json 的 agents.defaults.model.primary(顶层 model 键会被 schema 校验拒绝启动,绝不写顶层)": "Gateway-style personal AI agent (formerly Clawdbot); verify after setup; the default model goes to agents.defaults.model.primary in openclaw.json (a top-level model key fails the schema check and blocks startup — never write it)",
1556
1601
  "月之暗面 Kimi 编码 CLI(TypeScript 版,需 Node ≥22.19);旧 Python 版 kimi-cli 正在下线;默认模型在 ~/.kimi-code/config.toml 的顶层 default_model(值须是 [models] 表里定义的别名),首启自动建文件": "Moonshot AI Kimi coding CLI (TypeScript edition, requires Node ≥22.19); the legacy Python kimi-cli is being retired; the default model goes to top-level default_model in ~/.kimi-code/config.toml (an alias defined in the [models] table), auto-created on first launch",
@@ -1601,8 +1646,6 @@
1601
1646
  "生成自包含分享页(单文件 HTML),可直接发给他人查看任务成果": "Generate a self-contained share page (single-file HTML) to send to others",
1602
1647
  "封面图": "Cover image",
1603
1648
  "生成封面": "Generate cover",
1604
- "重试": "Retry",
1605
- "生成中…": "Generating…",
1606
1649
  "封面生成中…": "Cover generation started…",
1607
1650
  "点击查看大图": "Click to view full size",
1608
1651
  "cover.png 已不在运行目录": "cover.png is no longer in the run directory",
@@ -1896,6 +1939,157 @@
1896
1939
  "拉取失败": "Fetch failed",
1897
1940
  "模块清单已拉到 ": "Fetched ",
1898
1941
  " 条,输入框可下拉选择": " modules — pick from the dropdown",
1942
+
1943
+ // —— 发布上架链路(建书/发章/自动发布)——
1944
+ "连接平台": "Connect platform",
1945
+ "重连": "Reconnect",
1946
+ "断开": "Disconnect",
1947
+ "连接失败:": "Connect failed: ",
1948
+ "断开失败:": "Disconnect failed: ",
1949
+ "关掉该平台的浏览器窗口(登录态保留)": "Close the platform's browser window (login state is kept)",
1950
+ "已打开浏览器——请在窗口里登录平台,登录后这里自动变为「已连接」": "Browser opened — log in to the platform in that window; this panel switches to \"Connected\" automatically once you're in",
1951
+ "探测": "Probe",
1952
+ "探测失败:": "Probe failed: ",
1953
+ "已开始探测,结果记录在发布台账(data/publish)里": "Probe started — results are recorded in the publish ledger (data/publish)",
1954
+ "dump 平台表单结构(校准自动填表用)": "Dump the platform form structure (for calibrating auto-fill)",
1955
+ "创建作品": "Create book",
1956
+ "已在此平台创建的作品": "Books already created on this platform",
1957
+ "已建书:": "Book created: ",
1958
+ "建书失败:": "Book creation failed: ",
1959
+ "将用生成的作品信息在平台自动填建书表单。填好后会停在最后一步,由你在浏览器里人工点提交。继续?": "The generated book info will be auto-filled into the platform's book-creation form, stopping at the last step for you to click Submit in the browser yourself. Continue?",
1960
+ "正在自动填写建书表单…(完成后请在浏览器里确认提交)": "Auto-filling the book-creation form… (when done, review and submit in the browser)",
1961
+ "发一章": "Send one chapter",
1962
+ "选一章发送(表单填好后停,人工确认提交);已成功发过的章会被台账拦下:": "Pick a chapter to send (stops after filling the form — you confirm the submit). Chapters already published are blocked by the ledger: ",
1963
+ "将把《{0}》填进平台章节编辑器,填好后由你人工提交。继续?": "Chapter \"{0}\" will be filled into the platform's chapter editor — you submit it manually when done. Continue?",
1964
+ "正在填写章节…(完成后请在浏览器里确认提交)": "Filling in the chapter… (when done, review and submit in the browser)",
1965
+ "发章失败:": "Chapter send failed: ",
1966
+ "正在列出章节文件…": "Listing chapter files…",
1967
+ "找不到任务工作目录": "Task working directory not found",
1968
+ "列文件失败:": "Failed to list files: ",
1969
+ "工作目录里没有 .md 章稿": "No .md chapter drafts in the working directory",
1970
+ "发布全部待发": "Publish all pending",
1971
+ "按章号顺序逐章填稿(人工模式每点一次填一章,浏览器里提交后再点发下一章)": "Fills chapters one by one in order (manual mode: each click fills one; submit in the browser, then click again for the next)",
1972
+ "将从最靠前的待发章节开始填稿(共 {0} 章待发)。本轮只填一章并停在表单页,由你在浏览器里确认提交;提交后再点一次即发下一章。护栏(每日上限/连续失败暂停)生效。继续?": "Fills from the earliest pending chapter ({0} pending). Each round fills one chapter and stops at the form page for you to confirm submission in the browser; click again to send the next one. Guardrails (daily cap / consecutive-failure pause) apply. Continue?",
1973
+ "正在填第一章稿——填好后请在浏览器窗口里确认提交": "Filling the first chapter — review and submit in the browser window when it's done",
1974
+ "自动发布中 ": "Auto-publishing ",
1975
+ "自动发布完成:": "Auto-publish finished: ",
1976
+ "自动发布中断:": "Auto-publish paused: ",
1977
+ "自动发布失败:": "Auto-publish failed: ",
1978
+ "已填好一章,请在浏览器确认提交": "One chapter is filled — please review and submit in the browser",
1979
+ "护栏拦截": "Blocked by guardrail",
1980
+
1981
+ // —— 报告区 / 状态 / 杂项 ——
1982
+ "将于 {0} 自动续跑": "Auto-resumes at {0}",
1983
+ "报告读取失败({0}),稍后自动重试": "Report load failed ({0}) — will retry automatically",
1984
+ "网络异常": "Network error",
1985
+ "本次运行进行中:报告结束后在这里生成,实时进度看「步骤」页签": "This run is still in progress: the report appears here once it finishes — watch live progress in the Steps tab",
1986
+ "本次运行没有生成报告": "No report was generated for this run",
1987
+ "(状态:": " (status: ",
1988
+ ";各步骤日志在「步骤」页签": " — step logs are in the Steps tab",
1989
+ "请先填写目标": "Please write the goal first",
1990
+ "保存失败": "Save failed",
1991
+ "失败 ": "Failed ",
1992
+
1993
+ // —— 引擎调参(设置 v2,label 来自后端 schema description)——
1994
+ "编排引擎": "Orchestration engine",
1995
+ "预算": "Budget",
1996
+ "级联路由": "Cascade routing",
1997
+ "引擎调参(schema 化设置,立即生效)": "Engine tuning (schema-driven settings, effective immediately)",
1998
+ "上下文压缩总开关(灰度:与 TUTTI_COMPACTION 任一开启即生效)": "Master switch for context compaction (gray-scale: active when either this or TUTTI_COMPACTION is on)",
1999
+ "触发压缩的压力比阈值": "Pressure ratio threshold that triggers compaction",
2000
+ "压缩时保留尾部预算(token 估算)": "Tail budget kept when compacting (estimated in tokens)",
2001
+ "Goal 续行上限": "Max goal continuation rounds",
2002
+ "大纲/规划 CLI 兜底调用的超时秒数(env TUTTI_OUTLINE_TIMEOUT 优先)": "Timeout in seconds for outline/planning CLI fallback calls (env TUTTI_OUTLINE_TIMEOUT takes priority)",
2003
+ "单次运行 token 预算上限(0=不限;超额停止后续步骤,等自动续跑)": "Token budget cap per run (0 = unlimited; when exceeded, later steps stop and wait for auto-resume)",
2004
+ "FrugalGPT 式级联:easy 任务按 tier 升序重排模型链(需供应商声明 tier)": "FrugalGPT-style cascade: easy tasks reorder the model chain by tier ascending (providers must declare tiers)",
2005
+ "已保存 rev ": "Saved rev ",
2006
+ "配置已被别处修改,已刷新,请重试": "Config changed elsewhere — refreshed, please retry",
2007
+
2008
+ // —— 关于与更新(selfupdate note)——
2009
+ "查询新版本失败:": "Update check failed: ",
2010
+
2011
+ // —— 帮助中心 · 模型接入与绑定 ——
2012
+ "第一步:添加供应商": "Step 1: Add a provider",
2013
+ "「设置 → 模型接入 → 添加供应商」:填名称、API Key、接口地址(一般用默认)。保存后点「获取模型列表」自动拉取该厂商的模型;网关不提供列表接口时直接手工填模型名即可。同一厂商可配多把 Key,按顺序轮换,某把欠费自动切下一把。": "Settings → Models → Add provider: fill in the name, API key, and endpoint (the default usually works). After saving, click \"Fetch model list\" to pull that provider's models; if the gateway has no list endpoint, just type model names manually. One provider can hold multiple keys that rotate in order — when one runs out of credit, the next takes over.",
2014
+ "第二步:认识协议徽章": "Step 2: Read the protocol badges",
2015
+ "新供应商默认自动识别协议,保存后在后台实测支持哪些调用形态,结果以徽章标在卡片上。带「· chat」表示该模型只适合站内直连对话;codex 这类只讲 responses 协议的 CLI 用不了它,绑定页会自动剔除,不用自己排查。": "New providers auto-detect their protocol; after saving, supported wire forms are probed in the background and shown as badges on the card. \"· chat\" means the model only suits in-app direct chat; CLIs that only speak the responses protocol (codex, for one) can't use it — the bindings page filters those out for you.",
2016
+ "第三步:绑定 CLI 智能体": "Step 3: Bind CLI agents",
2017
+ "「设置 → CLI 绑定」给每个智能体配一条模型链,运行时按顺序故障转移。「一键推荐绑定」只填空缺,不覆盖手工配置;删除或停用厂商后链会自动补绑。": "Settings → CLI Bindings gives each agent a model chain that fails over in order at runtime. \"One-click recommended bindings\" only fills the gaps — it never overwrites manual config; the chain re-binds automatically after you delete or disable a provider.",
2018
+ "报错速查": "Error quick reference",
2019
+ "Key 无效或过期——检查或更换 Key。": "The key is invalid or expired — check or replace it.",
2020
+ "模型名不对;若发生在「获取模型列表」,是网关不提供列表接口,能正常对话就不用管。": "Wrong model name; if it happens in \"Fetch model list\", the gateway simply has no list endpoint — ignore it as long as chatting works.",
2021
+ "该模型当前无可用渠道——查余额或换一个模型。": "No channel available for this model right now — check your balance or switch models.",
2022
+ "这把 Key 连续失败被暂停 30 分钟,到期自动恢复,也可在密钥旁手动重置。": "This key failed repeatedly and is paused for 30 minutes; it recovers automatically, or you can reset it manually next to the key.",
2023
+ "想零成本先跑通:挑有免费档位的厂商配一个模型,跑通第一个任务后再按需加码。": "To try it at zero cost: pick a provider with a free tier and wire up one model; scale up after your first task runs through.",
2024
+
2025
+ // —— 帮助中心 · 连载创作流程 ——
2026
+ "开一本新书": "Start a new book",
2027
+ "新建任务选「连载写作」类型,目标里写清书名、题材和计划篇幅(如「都市异能,先写 20 章」)。目标写得太笼统时,蜂群会先反问几个澄清问题再开工。开书前会先准备作品资料:书简介与分类标签可一键生成,按平台官方选项实抓,不用自己去查规则。": "Create a \"Serial writing\" task and state the book title, genre, and planned length in the goal (e.g. \"urban superpowers, 20 chapters to start\"). If the goal is too vague, the swarm asks a few clarifying questions before starting. Before writing begins it prepares the book profile: blurb and category tags generate in one click from the platform's official option lists — no rule-digging on your end.",
2028
+ "每章怎么跑": "How each chapter runs",
2029
+ "大纲确认后分章推进:起草 → 跨厂商评审 → 打磨 → 定稿。评审不过会自动换将重写,不带着问题过关;需要你拍板的地方会亮起「待裁决」。写作时详情页可实时预览章节,蜂巢页每个智能体一格,点开能看谁在干什么。": "After the outline is confirmed, chapters move through: draft → cross-vendor review → polish → finalize. A failed review triggers an automatic rewrite by another model — problems never slip through; spots that need your call light up as \"Pending decision\". While writing, the detail page previews chapters live, and the Hive grid gives every agent a cell you can click to see who's doing what.",
2030
+ "中断了怎么办": "What if it gets interrupted",
2031
+ "任务随时可续跑:已写章节都落了盘,续跑接着往下写,不会从头再来。单章失败会自动退避重试,任务状态里会显示「将于 HH:MM 自动续跑」,不用盯着等。": "Tasks resume anytime: finished chapters are on disk, and a resume continues from there — never from scratch. A failed chapter retries automatically with backoff; the task status shows \"Auto-resumes at HH:MM\", so there's no need to watch it.",
2032
+ "递话与经验": "Steering & experience",
2033
+ "跑的过程中可以在详情页给蜂群递话(文字/截图/附件),下一轮生效。每轮结束复盘官会把踩过的坑沉淀进经验库,后续任务自动复用,越用越顺手。": "While it runs you can pass notes to the swarm from the detail page (text / screenshots / files), effective from the next round. After each round the debriefer distills pitfalls into the experience library, reused automatically by later tasks — the more you use it, the smoother it gets.",
2034
+
2035
+ // —— 帮助中心 · 发布上架 ——
2036
+ "第一次发布前:登录平台": "Before the first publish: log in",
2037
+ "目前支持番茄小说与七猫。第一次发布会引导你在浏览器里登录平台账号(扫码或账密),登录态保存在本机,之后发布免登录;过期了重新登一次即可。": "Fanqie and Qimao are supported. The first publish walks you through logging in to the platform in your browser (QR scan or password); the login state stays on this machine so later publishes skip login — just log in again if it expires.",
2038
+ "建书:资料与封面": "Book creation: info & cover",
2039
+ "连载任务的建书面板里,作品简介、分类标签可以按平台官方选项一键生成;封面点「生成封面」自动出竖版图(cover.png 落在任务运行目录)。": "In a serial task's book panel, the blurb and category tags generate in one click from the platform's official options; click \"Generate cover\" for an automatic portrait image (cover.png lands in the task's run directory).",
2040
+ "发章与确认": "Publishing chapters & confirmation",
2041
+ "章稿定稿后一键发布:自动填标题正文、处理平台的各类弹层,但提交前会停下来让你确认——绝不静默替你上架。发布完成后任务详情里能看到结果与章节链接。": "One-click publish once a chapter is finalized: title and body auto-fill, the platform's dialogs get handled, but it pauses before submitting for your confirmation — it never silently publishes on your behalf. Results and chapter links appear in the task detail afterwards.",
2042
+ "发布失败": "When publishing fails",
2043
+ "平台改版或登录态过期会导致失败,失败信息会写明原因。重新登录后再点重试即可;反复失败可以到 GitHub 提 Issue 附上失败截图。": "Platform redesigns or expired logins cause failures, and the error message says why. Log in again and hit retry; if it keeps failing, open a GitHub issue with a screenshot.",
2044
+
2045
+ // —— 帮助中心 · 代码任务与版本 ——
2046
+ "代码任务怎么跑": "How coding tasks run",
2047
+ "新建任务选开发类类型,目标写清楚要做什么(可以附需求文档、截图,附件会进入上下文)。蜂群先出计划再实现:实现 → 客观验证 → 跨厂商评审 → 修复,单路实现失败还有多候选赛马——各候选在隔离的 worktree 里各写各的,择优采纳。跑的过程中可以在详情页递话(文字/截图),下一轮生效。": "Create a dev-type task and spell out what to build in the goal (attach requirement docs or screenshots — attachments go into the context). The swarm plans first, then implements: implement → objective verification → cross-vendor review → fix; if a single implementation lane fails, multiple candidates race in parallel — each writes its own code in an isolated worktree, and the best one wins. While it runs you can pass notes from the detail page (text / screenshots), effective from the next round.",
2048
+ "任务分支隔离:你的工作区不受影响": "Task branch isolation: your workspace stays untouched",
2049
+ "启用代码版本隔离的任务会检出独立的任务分支(codebee/任务ID),所有改动只落在那条分支上,你当前的分支和未提交的改动完全不动——开跑前工作区有脏改动会先帮你收起(stash),跑完自动还原。": "Tasks with code version isolation check out a dedicated task branch (codebee/<task-id>); all changes land only on that branch — your current branch and uncommitted work are never touched. Dirty workspace changes are stashed before the run starts and restored automatically afterwards.",
2050
+ "版本裁决:合并还是丢弃": "Version verdict: merge or discard",
2051
+ "任务跑完后,「版本」页签会亮起「待裁决」等你拍板:先看变更清单,双击文件能看 diff;满意点「合并」,任务分支合回基线分支;不满意点「丢弃」,分支和工作现场自动清场。中途停下的任务也会留好提交,可以继续跑完再裁决。合并与丢弃绝不静默替你决定。": "When a task finishes, the Versions tab lights up \"Pending decision\" for your call: review the change list first — double-click a file to see its diff. Happy? Click \"Merge\" to merge the task branch back into the baseline. Not happy? Click \"Discard\" and the branch and work site are cleaned up automatically. Interrupted tasks keep their commits — resume and finish before deciding. Merge and discard are never decided silently on your behalf.",
2052
+ "哪里看细节": "Where to see the details",
2053
+ "「蜂巢」页签看每个智能体实时在干什么(点格子看实时日志);「步骤」页签看任务拆解、每步实际用的模型、耗时与失败原因,评审分数与打磨记录也在这里。": "The Hive tab shows what each agent is doing in real time (click a cell for its live log); the Steps tab shows the task breakdown, the actual model used per step, durations and failure causes — review scores and polish records live there too.",
2054
+
2055
+ // —— 帮助中心 · 自动化与技能市场 ——
2056
+ "定时任务": "Scheduled tasks",
2057
+ "设置 → 自动化:把任意任务类型挂上时间表(每天/每周固定时刻),到点自动按真实运行链开跑,结果照常落盘。配合群机器人(钉钉/飞书/企微自动适配)可以把完成状态推到群里。": "Settings → Automation: put any task type on a schedule (fixed daily/weekly times); at the appointed time it runs through the real execution chain and results land as usual. Pair it with a group robot (DingTalk/Feishu/WeCom auto-detected) to push completion status into your group chat.",
2058
+ "设置 → 禅道:配好地址与产品档案后,定时扫描激活 Bug,按模块路由 / AI 排查定责(前端/后端/双端/非我方);我方端的 Bug 自动创建代码修复任务,修完自动合并、resolve 并回写报告到群里;测试指错人的也会按排查结论改派。合并失败不 resolve 不转派,留人工兜底。": "Settings → ZenTao: once the address and product profiles are set, active bugs are scanned on a schedule and triaged by module route / AI (frontend / backend / both / not ours); bugs on our side spawn code-fix tasks automatically — when fixed, they merge, resolve, and post the report back to the group chat; bugs misassigned by testers get reassigned per the triage verdict. If the merge fails, it won't resolve or reassign — a human takes over as the fallback.",
2059
+ "技能市场": "Skills marketplace",
2060
+ "设置 → 插件市场:600+ 技能一键安装,来源包括内置库和 ZCode、Anthropic 等多个外部目录。装上的技能会注入智能体能力,按任务类型生效。": "Settings → Marketplace: 600+ skills install in one click, from the built-in library and external catalogs such as ZCode and Anthropic. Installed skills inject agent capabilities and take effect by task type.",
2061
+ "用量台账": "Usage ledger",
2062
+ "设置 → 用量:每次调用的模型、token 与费用按多个维度聚合展示,历史运行会在启动时自动回填——每个任务花了多少,一目了然。": "Settings → Usage: model, tokens, and cost of every call aggregated across dimensions; historical runs backfill automatically at startup — what each task cost, at a glance.",
2063
+
2064
+ // —— 帮助中心 · 常见问题 ——
2065
+ "点「获取模型列表」报 404?": "\"Fetch model list\" returns 404?",
2066
+ "部分网关不提供模型列表接口,属正常现象;只要能正常对话就不用管,模型名手工填即可。": "Some gateways have no model-list endpoint — that's normal. As long as chatting works, ignore it and type model names manually.",
2067
+ "报 503 / 无可用渠道?": "Getting 503 / no available channel?",
2068
+ "该模型当前没有可用渠道,最常见是余额耗尽。查一下余额或换个模型;同一厂商配了多把 Key 会自动轮换。": "No channel is available for this model — most often the balance is drained. Check your balance or switch models; multiple keys on one provider rotate automatically.",
2069
+ "「冷却中」是什么意思?": "What does \"Cooling down\" mean?",
2070
+ "一把 Key 连续失败会被暂停 30 分钟,防止反复撞墙烧钱,到期自动恢复;也可以在密钥旁手动重置。": "A key that keeps failing is paused for 30 minutes so it stops burning money against a wall; it recovers automatically when time is up, or reset it manually next to the key.",
2071
+ "任务一直显示「排队」?": "Task stuck on \"Queued\"?",
2072
+ "本地默认最多 6 个任务同时跑,排满就排队。排队时可以打开详情看前面还有几个;个别卡死的任务,看门狗会自动清理补队。": "Up to 6 tasks run concurrently by default; extras queue up. Open a queued task's detail to see how many are ahead; a watchdog automatically cleans up stuck tasks and re-queues them.",
2073
+ "状态里写着「将于 HH:MM 自动续跑」?": "Status says \"Auto-resumes at HH:MM\"?",
2074
+ "这一步失败了,正在退避等待自动重试,到点会接着跑,不需要手动干预;等不及也可以在详情页手动重试。": "That step failed and is backing off before an automatic retry — it continues on its own at the shown time, no manual action needed; if you can't wait, retry manually from the detail page.",
2075
+ "生成的文件在哪?": "Where are the generated files?",
2076
+ "写作类任务的章节、封面、报告都落在任务的运行目录,详情页「成果」页签可浏览和预览。代码类任务则在仓库的任务分支上改代码,详情页「版本」里审阅后再合并。": "Writing tasks put chapters, covers, and reports in the task's run directory — browse and preview them in the Artifacts tab. Coding tasks change code on the repo's task branch; review it in the Versions tab, then merge.",
2077
+ "忘了令牌 / 手机打不开页面?": "Forgot the token / page won't open on your phone?",
2078
+ "服务启动日志里有带令牌的完整访问地址;远程设备必须用带令牌的 URL 打开(或在令牌门里输入一次),否则会一直要求授权。": "The startup log contains the full token-embedded URL; remote devices must open that tokenized URL (or enter the token once at the gate), otherwise it keeps asking for authorization.",
2079
+ "升级后数据会丢吗?": "Will upgrading lose my data?",
2080
+ "不会。任务、配置、用量台账都在独立的数据目录里,升级只替换程序本体;老版本装新版会自动沿用原数据目录。": "No. Tasks, config, and the usage ledger all live in a separate data directory; upgrading only replaces the program itself, and installing the new version over an old one automatically keeps the original data directory.",
2081
+ "页面打不开 / 服务起不来?": "Page won't open / service won't start?",
2082
+ "多半是默认端口 8765 被旧进程占着:结束旧的 python 进程,或启动时用 --port 换个端口。还不行就到 GitHub 提 Issue。": "Most likely the default port 8765 is held by an old process: end the stale python process, or start with --port to use another port. If it still won't come up, open a GitHub issue.",
2083
+
2084
+ // —— index.html 占位符 / 提示 ——
2085
+ "添加附件:截图 / 文本 / Word·Excel·PPT / PDF 等(普通 8MB,Office 24MB),创建任务时落盘到工作目录 _attachments/;也可直接粘贴截图": "Attach: screenshots / text / Word·Excel·PPT / PDF etc. (8MB regular, 24MB Office) — saved into the task's _attachments/ folder on creation; you can also paste screenshots directly",
2086
+ "添加附件:截图 / 文本 / Word·Excel·PPT / PDF 等(普通 8MB,Office 24MB);也可直接粘贴截图": "Attach: screenshots / text / Word·Excel·PPT / PDF etc. (8MB regular, 24MB Office); you can also paste screenshots directly",
2087
+ "https://zentao.example.com(子目录部署带子目录)": "https://zentao.example.com (include the subdirectory if deployed under one)",
2088
+ "建议建专用账号(如 codebee)收 Bug": "Use a dedicated account (e.g. codebee) to receive bugs",
2089
+ "修复任务评审通过后,自动到禅道 resolve(fixed)并回评论": "After the fix task passes review, auto-resolve the bug in ZenTao (fixed) and post a comment",
2090
+ "把任务分支自动合并回基线分支(需配置基线分支;合并失败不 resolve 不转派,留人工)": "Auto-merge the task branch back into the baseline branch (baseline branch must be configured; if the merge fails it won't resolve or reassign — stays with a human)",
2091
+ "按下面的间隔定时扫描;关掉后仍可手动「立即扫描」": "Scan on the interval below; when off, \"Scan now\" still works manually",
2092
+ "帮助目录": "Help contents",
1899
2093
  };
1900
2094
 
1901
2095
  // ---------- 工具 ----------
package/app/ui/index.html CHANGED
@@ -185,12 +185,13 @@
185
185
  <button class="set-item" data-sub="models" data-i18n="模型接入"><svg class="ico" aria-hidden="true"><use href="#i-layers"></use></svg>模型接入</button>
186
186
  <button class="set-item" data-sub="bindings" data-i18n="CLI 绑定"><svg class="ico" aria-hidden="true"><use href="#i-link"></use></svg>CLI 绑定</button>
187
187
  <button class="set-item" data-sub="skills" data-i18n="经验库"><svg class="ico" aria-hidden="true"><use href="#i-book"></use></svg>经验库</button>
188
+ <button class="set-item" data-sub="knowledge" data-i18n="知识库"><svg class="ico" aria-hidden="true"><use href="#i-sigma"></use></svg>知识库</button>
188
189
  <button class="set-item" data-sub="market" data-i18n="插件市场"><svg class="ico" aria-hidden="true"><use href="#i-blocks"></use></svg>插件市场</button>
189
190
  <button class="set-item" data-sub="orch" data-i18n="编排设置"><svg class="ico" aria-hidden="true"><use href="#i-workflow"></use></svg>编排设置</button>
190
191
  <div data-i18n="外观" class="set-group">外观</div>
191
192
  <button class="set-item" data-sub="appearance" data-i18n="皮肤"><svg class="ico" aria-hidden="true"><use href="#i-palette"></use></svg>皮肤</button>
192
193
  <div data-i18n="软件" class="set-group">软件</div>
193
- <button id="btn-guide" class="set-item" data-sub="__guide" data-i18n="使用引导"><svg class="ico" aria-hidden="true"><use href="#i-rocket"></use></svg>使用引导</button>
194
+ <button id="btn-guide" class="set-item" data-sub="__guide" data-i18n="帮助中心"><svg class="ico" aria-hidden="true"><use href="#i-rocket"></use></svg>帮助中心</button>
194
195
  <button id="btn-about" class="set-item" data-sub="about" data-i18n="关于与更新"><svg class="ico" aria-hidden="true"><use href="#i-gauge"></use></svg>关于与更新</button>
195
196
  <div data-i18n="远程" class="set-group">远程</div>
196
197
  <button id="btn-phone" class="set-item" data-sub="__phone" data-i18n="手机连接"><svg class="ico" aria-hidden="true"><use href="#i-phone"></use></svg>手机连接</button>
@@ -457,7 +458,7 @@
457
458
  </div>
458
459
  <div id="rd-pane-hive" class="rd-pane" role="tabpanel" aria-labelledby="rd-tab-hive" data-pane="hive">
459
460
  <div id="rd-hive" class="rd-hive hidden">
460
- <div class="sec-title"><svg class="ico" aria-hidden="true"><use href="#i-bee"></use></svg><span data-i18n="蜂巢工作台">蜂巢工作台</span><span id="rd-hive-sub" class="tag"></span></div>
461
+ <div class="sec-title"><svg class="ico" aria-hidden="true"><use href="#i-bee"></use></svg><span data-i18n="蜂巢工作台">蜂巢工作台</span><span id="rd-hive-sub" class="tag"></span><button class="hhelp" data-help-topic="serial" title="这是什么?点开看帮助" data-i18n-title="这是什么?点开看帮助" aria-label="帮助" data-i18n-aria="帮助"><svg class="ico" aria-hidden="true"><use href="#i-help"></use></svg></button></div>
461
462
  <div id="rd-hive-cells" class="hive-cells"></div>
462
463
  </div>
463
464
  <!-- 运行中指挥信箱:renderDirector 只认活跃 run,渲染时摘掉 hidden;
@@ -528,6 +529,7 @@
528
529
  <div class="panel wide">
529
530
  <div class="panel-head">
530
531
  <h2 data-i18n="禅道 Bug 自动修复">禅道 Bug 自动修复</h2>
532
+ <button class="hhelp" data-help-topic="auto" title="这是什么?点开看帮助" data-i18n-title="这是什么?点开看帮助" aria-label="帮助" data-i18n-aria="帮助"><svg class="ico" aria-hidden="true"><use href="#i-help"></use></svg></button>
531
533
  <div class="actions">
532
534
  <button id="btn-zentao-test" class="ghost small" title="用当前表单里的连接信息试连禅道" data-i18n-title="用当前表单里的连接信息试连禅道"><span data-i18n="测试连接">测试连接</span></button>
533
535
  <button id="btn-zentao-scan" class="primary small" title="立刻扫一遍激活 Bug 并对账回写" data-i18n-title="立刻扫一遍激活 Bug 并对账回写"><span data-i18n="立即扫描">立即扫描</span></button>
@@ -545,8 +547,8 @@
545
547
  <div class="zt-grid zt-grid-toggles">
546
548
  <label class="toggle" title="模块路由没命中时,用 AI 读 Bug 描述判端(前端/后端/双端/非我方);关掉则未命中模块的 Bug 留人工" data-i18n-title="模块路由没命中时,用 AI 读 Bug 描述判端(前端/后端/双端/非我方);关掉则未命中模块的 Bug 留人工"><input id="zt-triageai" type="checkbox"><span data-i18n="AI 排查兜底">AI 排查兜底</span></label>
547
549
  <label class="toggle" title="修复任务评审通过后,自动到禅道 resolve(fixed)并回评论" data-i18n-title="修复任务评审通过后,自动到禅道 resolve(fixed)并回评论"><input id="zt-autoresolve" type="checkbox"><span data-i18n="自动 resolve Bug">自动 resolve Bug</span></label>
548
- <label class="toggle" title="把任务分支自动合并回基线分支(需配置基线分支;合并失败不 resolve 不转派,留人工)"><input id="zt-automerge" type="checkbox"><span data-i18n="自动合并代码">自动合并代码</span></label>
549
- <label class="toggle" title="按下面的间隔定时扫描;关掉后仍可手动「立即扫描」"><input id="zt-poll" type="checkbox"><span data-i18n="定时扫描">定时扫描</span></label>
550
+ <label class="toggle" title="把任务分支自动合并回基线分支(需配置基线分支;合并失败不 resolve 不转派,留人工)" data-i18n-title="把任务分支自动合并回基线分支(需配置基线分支;合并失败不 resolve 不转派,留人工)"><input id="zt-automerge" type="checkbox"><span data-i18n="自动合并代码">自动合并代码</span></label>
551
+ <label class="toggle" title="按下面的间隔定时扫描;关掉后仍可手动「立即扫描」" data-i18n-title="按下面的间隔定时扫描;关掉后仍可手动「立即扫描」"><input id="zt-poll" type="checkbox"><span data-i18n="定时扫描">定时扫描</span></label>
550
552
  <label data-i18n="扫描间隔(小时)">扫描间隔(小时)</label><input id="zt-interval" type="number" min="1" max="168" step="1">
551
553
  </div>
552
554
  <div class="ops"><button id="btn-zentao-save" class="primary small"><span data-i18n="保存配置">保存配置</span></button></div>
@@ -564,6 +566,7 @@
564
566
  <div class="panel wide">
565
567
  <div class="panel-head">
566
568
  <h2 data-i18n="使用统计">使用统计<span class="badge2" data-i18n="应用用量">应用用量</span></h2>
569
+ <button class="hhelp" data-help-topic="auto" title="这是什么?点开看帮助" data-i18n-title="这是什么?点开看帮助" aria-label="帮助" data-i18n-aria="帮助"><svg class="ico" aria-hidden="true"><use href="#i-help"></use></svg></button>
567
570
  <div class="actions" id="usage-ranges">
568
571
  <div class="seg" role="group" aria-label="时间范围" data-i18n-aria="时间范围">
569
572
  <button data-i18n="今天" class="seg-btn active" data-days="1">今天</button>
@@ -604,6 +607,7 @@
604
607
  <div class="panel wide">
605
608
  <div class="panel-head">
606
609
  <h2 data-i18n="智能体目录">智能体目录</h2>
610
+ <button class="hhelp" data-help-topic="models" title="这是什么?点开看帮助" data-i18n-title="这是什么?点开看帮助" aria-label="帮助" data-i18n-aria="帮助"><svg class="ico" aria-hidden="true"><use href="#i-help"></use></svg></button>
607
611
  <div class="actions">
608
612
  <button data-i18n="一键绑定推荐模型" id="btn-catalog-autobind" class="ghost">一键绑定推荐模型</button>
609
613
  <button data-i18n="重新加载 catalog" id="btn-reload-catalog" class="ghost">重新加载 catalog</button>
@@ -656,7 +660,8 @@
656
660
  <!-- 经验库 -->
657
661
  <div id="sub-skills" class="subpage hidden">
658
662
  <div class="panel wide">
659
- <div class="panel-head"><h2 data-i18n="经验库">经验库</h2></div>
663
+ <div class="panel-head"><h2 data-i18n="经验库">经验库</h2>
664
+ <button class="hhelp" data-help-topic="features" title="这是什么?点开看帮助" data-i18n-title="这是什么?点开看帮助" aria-label="帮助" data-i18n-aria="帮助"><svg class="ico" aria-hidden="true"><use href="#i-help"></use></svg></button></div>
660
665
  <p class="hint"><span data-i18n="系统自己的经验沉淀:">系统自己的经验沉淀:</span><b data-i18n="内置规范包">内置规范包</b><span data-i18n="(如七猫签约标准,自动注入小说类任务的规划与评审提示词) 与">(如七猫签约标准,自动注入小说类任务的规划与评审提示词)
661
666
  与</span><b data-i18n="运行中自动学到的教训">运行中自动学到的教训</b><span data-i18n="(每次任务结束由编排者复盘本次评审暴露的问题,去重沉淀,下次同类任务自动带上)——越跑越好,无需人工维护。">(每次任务结束由编排者复盘本次评审暴露的问题,去重沉淀,下次同类任务自动带上)——越跑越好,无需人工维护。</span></p>
662
667
  <h3 data-i18n="内置规范包" class="sec-title">内置规范包</h3>
@@ -667,6 +672,22 @@
667
672
  </div>
668
673
  </div>
669
674
 
675
+ <!-- 知识库:运行产出自动整理的知识条目 + 个人知识管理 -->
676
+ <div id="sub-knowledge" class="subpage hidden">
677
+ <div class="panel wide">
678
+ <div class="panel-head"><h2 data-i18n="知识库">知识库</h2>
679
+ <button class="ghost small" onclick="kbFormOpen(null)"><svg class="ico" aria-hidden="true"><use href="#i-plus"></use></svg><span data-i18n="新建条目">新建条目</span></button></div>
680
+ <p class="hint"><span data-i18n="运行产出自动整理成的可复用知识:">运行产出自动整理成的可复用知识:</span><b data-i18n="自动提炼(草稿)">自动提炼(草稿)</b><span data-i18n="——每次任务结束由编排者从产出材料里提炼知识条目,你确认「转正」后才参与注入;">——每次任务结束由编排者从产出材料里提炼知识条目,你确认「转正」后才参与注入;</span><b data-i18n="手动新建(直接转正)">手动新建(直接转正)</b><span data-i18n="——也是你自己的知识管理库。转正条目按任务类型与相关性自动注入同类任务的规划与评审提示词。">——也是你自己的知识管理库。转正条目按任务类型与相关性自动注入同类任务的规划与评审提示词。</span></p>
681
+ <div class="kb-toolbar">
682
+ <input id="kb-search" data-i18n-ph="搜索标题 / 正文 / 标签" placeholder="搜索标题 / 正文 / 标签" oninput="kbSearch(this.value)">
683
+ <div class="cat-chips" id="kb-status-chips"></div>
684
+ </div>
685
+ <div class="cat-chips" id="kb-tag-chips"></div>
686
+ <h3 class="sec-title"><span data-i18n="知识条目">知识条目</span> <span class="tag" id="kb-count"></span></h3>
687
+ <div id="kb-cards" class="cards"></div>
688
+ </div>
689
+ </div>
690
+
670
691
  <!-- 插件市场:经验包一键安装 + 外部生态目录 -->
671
692
  <div id="sub-market" class="subpage hidden">
672
693
  <div class="panel wide">
@@ -745,7 +766,7 @@
745
766
  <div class="panel-head"><h2 data-i18n="关于与更新">关于与更新</h2></div>
746
767
  <div id="su-info" class="empty" data-i18n="加载中…">加载中…</div>
747
768
  <div class="input-row" style="margin-top:10px">
748
- <button id="btn-welcome-replay" class="ghost small" onclick="welcomeOpen()"><svg class="ico" aria-hidden="true"><use href="#i-bee"></use></svg><span data-i18n="使用引导">使用引导</span></button>
769
+ <button id="btn-welcome-replay" class="ghost small" onclick="welcomeOpen()"><svg class="ico" aria-hidden="true"><use href="#i-bee"></use></svg><span data-i18n="帮助中心">帮助中心</span></button>
749
770
  <button id="su-check" class="ghost small" onclick="suCheck()"><svg class="ico" aria-hidden="true"><use href="#i-refresh"></use></svg><span data-i18n="检查更新">检查更新</span></button>
750
771
  <button id="su-apply" class="ghost small hidden" onclick="suApply()"><span data-i18n="升级到新版">升级到新版</span></button>
751
772
  <button id="su-restart" class="ghost small hidden" onclick="suRestart()"><span data-i18n="重启服务生效">重启服务生效</span></button>
@@ -979,8 +1000,8 @@
979
1000
  <svg class="ico welcome-bee" aria-hidden="true"><use href="#i-bee"></use></svg>
980
1001
  <span class="brand-name">CodeBee</span>
981
1002
  </div>
982
- <nav class="help-toc" id="help-toc" aria-label="帮助目录"></nav>
983
- <p class="welcome-foot" data-i18n="可随时在「设置关于与更新」重新打开本引导。">可随时在「设置关于与更新」重新打开本引导。</p>
1003
+ <nav class="help-toc" id="help-toc" aria-label="帮助目录" data-i18n-aria="帮助目录"></nav>
1004
+ <p class="welcome-foot" data-i18n="可随时按 F1,或在「设置 关于与更新」重新打开本帮助中心。">可随时按 F1,或在「设置 关于与更新」重新打开本帮助中心。</p>
984
1005
  </div>
985
1006
  <div class="help-main">
986
1007
  <h1 id="welcome-title" data-i18n="欢迎使用 CodeBee">欢迎使用 CodeBee</h1>
package/app/ui/style.css CHANGED
@@ -5232,3 +5232,7 @@ body.welcome-open { overflow: hidden; }
5232
5232
  .hhelp:hover { color: var(--accent); border-color: var(--accent); }
5233
5233
  .hhelp .ico { width: 12px; height: 12px; }
5234
5234
  .empty a { color: var(--accent); }
5235
+
5236
+ /* —— 知识库:工具行(搜索框 + 状态过滤 chips 同排)—— */
5237
+ .kb-toolbar { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin: 10px 0 2px; }
5238
+ .kb-toolbar input { flex: 1 1 220px; min-width: 180px; }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "codebee",
3
- "version": "0.1.16",
3
+ "version": "0.1.18",
4
4
  "description": "CodeBee · 多智能体编排台 — 统一编排本机 AI 编码 CLI(Codex / Claude Code / QwenCode / OpenCode / Aider…):目标→拆解→路由→执行→验证→跨厂商评审→修复→报告。纯 Python 标准库实现,本地 Web UI。",
5
5
  "license": "MIT",
6
6
  "bin": {