1. 11 Aug, 2026 2 commits
    • feat: 迁移 lufa 定制 - 应用层(projects/) · eed99aae
      基于 FastGPT v4.14.30 三向合并:
      - API 接口:保留 userKey 传参、协作权限(app/dataset)、app 数量上限检查等 lufa 定制
      - 前端组件/页面:按定制类型合并,品牌类保留 lufa,旧版代码采用官方最新
      - Dockerfile:保留 xmldom 运行时修复(复制 @xmldom/xmldom 到容器)
      - package.json:添加 @xmldom/xmldom 依赖
      - 修复 loginByPassword 的 createJWT → createUserSession(适配官方新版 session 机制)
      - 保留 shareLogin/postShareLogin 分享登录定制
      赵月辉 committed
    • feat: 迁移 lufa 定制 - 核心服务层(packages/) · a71e1ce4
      基于 FastGPT v4.14.30 三向合并(base=v4.12.1, ours=官方最新, theirs=lufa定制):
      - AI 配置:重新应用 userKey 定制(embedding/speech/createQuestionGuide),适配新版 createLLMResponse API
      - 权限系统:保留 lufa auth 函数(parseHeaderCert/setCookie/clearCookie),适配官方重构的权限计算逻辑
      - vectorDB/dataset:合并双方改动,保留 userKey 与官方新版结构
      - i18n:合并所有 key,保留 lufa 品牌文案定制
      - outLink/user/workflow:按定制类型分别合并
      赵月辉 committed
  2. 10 Aug, 2026 3 commits
  3. 09 Aug, 2026 2 commits
  4. 07 Aug, 2026 5 commits
    • feat(outlink): new configuration page (#7456) · 47134990
      * feat(outlink): add channel counts
      
      * feat(publish): show channel connection counts
      
      * refactor(outlink): query optimization
      
      Signed-off-by: Nixieboluo <me@sagirii.me>
      
      * feat(outlink): a11y optimizations
      
      Signed-off-by: Nixieboluo <me@sagirii.me>
      
      * test(outlink): fix test failure
      
      Signed-off-by: Nixieboluo <me@sagirii.me>
      
      * fix(outlink): add required
      
      Signed-off-by: Nixieboluo <me@sagirii.me>
      
      * refactor(outlink): address review comments
      
      Signed-off-by: Nixieboluo <me@sagirii.me>
      
      ---------
      
      Signed-off-by: Nixieboluo <me@sagirii.me>
      Nixieboluo committed
    • Doc (#7471) · 549230b0
      * doc
      
      * doc
      
      * doc
      Archer committed
    • feat(tool-marketplace): support partial plugin update retries (#7444) · 9c8450da
      * feat(plugin): support partial batch update retries
      
      * fix: table header font size
      
      * refactor(upload): centralize extension normalization helpers
      
      * feat(marketplace): align batch update tool details
      
      * fix(tool-marketplace): handle plugin update failures and refine status
      
      * fix(i18n): rename ai managed label
      
      * fix(i18n): rename generated input labels
      
      * fix(marketplace): track installed plugin version in detail
      
      * fix(marketplace): make version install action exclusive
      
      * fix(marketplace): sync selected installed version
      
      * fix(marketplace): persist installed version in tool state
      
      * fix(marketplace): persist installed version status
      
      * fix(marketplace): truncate long tool card titles
      
      * fix(marketplace): preserve installed state after tool updates
      
      * fix(marketplace): surface install errors and defer success toast
      Finley Ge committed
  5. 06 Aug, 2026 8 commits
  6. 05 Aug, 2026 6 commits
    • Account verification (#7452) · 4b88d6e2
      * Account verification (#7390)
      
      * feat: add account verification service
      
      * feat: login access account verification service
      
      * fix(account-verification): remove googleAuthToken, username with prefix
      
      * Account verification (#7418)
      
      * Account verification (#7390)
      
      * feat: add account verification service
      
      * feat: login access account verification service
      
      * fix(account-verification): remove googleAuthToken, username with prefix
      
      * feat(account-verify): add tmp_datas verification, remove auth_code
      
      * fix account-verification
      
      * fix account-verification
      
      * fix account-verification
      
      * fix account-verification
      
      * fix account-verification
      
      * Refine account verification behavior
      
      * fix(auth): support independent verification codes
      
      * refactor: migrate frequency limits to redis
      
      * refactor: centralize rate limit policies
      
      * update version
      
      * update doc
      
      * doc
      
      * perf: snadbox
      
      * test: sync agent reminder assertions
      
      * fix: reject unknown password reset accounts
      
      * fix(account-verify): ui (#7458)
      
      * fix(account-verify): ui
      
      * fix(account-verify): fix off email register
      
      * submodule
      
      * fix(account-verify): refine send code validation
      
      ---------
      
      Co-authored-by: light5980 <148292178+shortlight5980@users.noreply.github.com>
      Archer committed
    • fix(sandbox): handle OpenSandbox PVC lifecycle races and UID preconditions (#7435) · fc70c504
      * fix(sandbox): handle OpenSandbox PVC lifecycle races and UID preconditions (#7423)
      
      * fix(sandbox): handle OpenSandbox PVC lifecycle races and UID preconditions
      
      * refactor(sandbox): operate volume manager on explicit claimName
      
      * refactor(sandbox): configure OpenSandbox image and compact volume names
      
      refactor(sandbox): unify volume schemas and volume-manager contracts
      
      fix(sandbox): harden OpenSandbox volume lifecycle
      
      * fix(sandbox): handle stale restore rollback phases and legacy volume fallback
      DigHuang committed
    • fix: swc helpers (#7457) · 93955e04
      Xianquan committed
    • refactor(redis): consolidate Redis runtime and BullMQ services in DAL (#7393) · 6fe7cedf
      * refactor(redis): establish runtime and keyspace
      
      * refactor(redis): add capabilities and script registry
      
      * refactor(redis): centralize phase 3a stores
      
      * refactor(redis): migrate wechat qr login store
      
      * refactor(redis): move Redis access into DAL
      
      * refactor(redis): migrate lease repository
      
      * refactor(redis): migrate stop signal and stream resume repositories
      
      * refactor(redis): complete DAL migration
      
      * test(redis): complete DAL Redis test coverage
      
      * chore(redis): align pro lockfile importer
      
      * test(redis): update service and app redis mocks
      
      * chore(redis): align pro migration submodule
      
      * refactor(redis): consolidate cache migration
      
      * refactor(redis): convert runtime to class
      
      * chore(deps): update redis and tooling dependencies
      
      * refactor(redis): move BullMQ services into DAL
      
      * fix(redis): harden DAL checks and lifecycle
      
      * chore: fix bullmq to 5.52.2
      
      * chore: bump deps
      
      * test(redis): mock captured BullMQ binding
      
      * lock
      
      * docs: consolidate DAL and WeChat designs
      
      * chore: remove DAL review artifacts
      
      ---------
      
      Co-authored-by: Archer <545436317@qq.com>
      Xianquan committed
  7. 04 Aug, 2026 8 commits
  8. 03 Aug, 2026 6 commits
    • feat: support multiple questions in agent asking tool (#7408) · 34632ba4
      * feat: prepare support for ask_user v2 in aux gen
      
      Signed-off-by: Nixieboluo <me@sagirii.me>
      
      * fix: align ask composer UI
      
      * feat: prepare support for ask_user v2 in agent
      
      Signed-off-by: Nixieboluo <me@sagirii.me>
      
      * feat: unified frontend logic for ask_user v2
      
      Signed-off-by: Nixieboluo <me@sagirii.me>
      
      * test: update tests for ask_user v2
      
      Signed-off-by: Nixieboluo <me@sagirii.me>
      
      * refactor: more strict ask_user schema validation
      
      Signed-off-by: Nixieboluo <me@sagirii.me>
      
      * refactor: add transitions and hide answer when retrying
      
      Signed-off-by: Nixieboluo <me@sagirii.me>
      
      * refactor: reorganize ask v2 composer ui
      
      Signed-off-by: Nixieboluo <me@sagirii.me>
      
      * test: update tests
      
      Signed-off-by: Nixieboluo <me@sagirii.me>
      
      * feat: format ask user answers
      
      * refactor: remove compat for legacy agent_ask in aux gen
      
      Signed-off-by: Nixieboluo <me@sagirii.me>
      
      * fix: agent ask composer ui focus handling
      
      Signed-off-by: Nixieboluo <me@sagirii.me>
      
      * refactor: cleanup compatibility fallback for agent ask
      
      Signed-off-by: Nixieboluo <me@sagirii.me>
      
      * feat: legacy ask_user record compatibility
      
      Signed-off-by: Nixieboluo <me@sagirii.me>
      
      * test: fix test mismatches
      
      Signed-off-by: Nixieboluo <me@sagirii.me>
      
      * feat: convert legacy ask to the new one
      
      Signed-off-by: Nixieboluo <me@sagirii.me>
      
      * chore: trigger correct pro build
      
      Signed-off-by: Nixieboluo <me@sagirii.me>
      
      * refactor: remove legacy auxiliary ask fallback
      
      * chore: update pro storage mock fix
      
      Signed-off-by: Archer <545436317@qq.com>
      
      * submodule
      
      ---------
      
      Signed-off-by: Nixieboluo <me@sagirii.me>
      Signed-off-by: Archer <545436317@qq.com>
      Co-authored-by: Archer <545436317@qq.com>
      Nixieboluo committed
    • fix(workflow): preserve explicit tool input render types (#7437) · 8751665d
      * fix(workflow): preserve explicit tool input render types
      
      * fix(tool-runtime): exclude referenced inputs from model schema
      Finley Ge committed
    • perf: improve Sandbox timeouts and update 4.16.0 documentation (#7438) · b60be546
      * perf: timeout and doc
      
      * fix(docs): use valid dotenv code fence
      Archer committed
    • feat: unify browser object storage multipart uploads (#7411) · f732bc52
      * feat: optimize object storage multipart upload
      
      * feat: unify browser object storage uploads
      
      * chore: update storage package and pro submodule
      
      * Bump deps
      
      * fix: configure home chat custom PDF parsing
      
      * fix: extend dataset parsing timeout
      
      * fix: ocr comments
      
      * fix: resolve pro submodule conflict
      
      * chore: remove invalid multipart benchmark command
      
      * refactor: select multipart uploads by file size
      
      ---------
      
      Co-authored-by: Archer <545436317@qq.com>
      Xianquan committed
    • fix(dataset): export index and metadata columns in exportAll (#7436) · 8fe60f24
      The schema-detection aggregate in exportAll builds its $match from teamId
      (returned by authDataset as a string). find() casts the string to ObjectId,
      but aggregate() does not schema-cast $match values, so the aggregation
      matched zero documents. exportSchema became undefined, indexCount/hasMetadata
      fell back to 0/false, and the CSV header collapsed to q,a.
      
      Wrap teamId and dataset _ids in Types.ObjectId so the aggregate $match works.
      dataset _ids are already ObjectId from .lean(), so that wrap is defensive.
      
      Co-authored-by: Claude <noreply@anthropic.com>
      Hxy committed
    • 当 DOCX 文件名包含空格时(如 新建 DOCX 文档 (2).docx),会触发以下连锁反应导致图片 404 (#7432) · 7b382e80
      * Fix regex for S3 markdown and improve VLM model fallback
      
      Update regex pattern for S3 markdown key and adjust fallback logic for VLM model retrieval.
      
      [^)]+? → [^)>]+?:在排除列表中增加 > 字符
      (${pattern}) → <?(${pattern})>?:URL 前后添加可选的 <> 包裹匹配
      
      * Implement space replacement in S3 key handling
      
      Add function to replace spaces with underscores in S3 key.
      
      在 replaceParentheses 后新增 replaceSpaces,将所有空白字符(\s+)替换为下划线,避免新上传的文件产生含空格的 S3 key。
      
      * Fix filename formatting tests in utils.test.ts
      
      Updated test cases to ensure formatted filenames replace spaces with underscores and handle multiple spaces correctly.
      
      更新 getFormatedFilename 的空格文件名测试期望
      更新真实场景的测试期望
      新增 5 个空格替换测试用例(单独替换、括号+空格组合、连续空格、首尾空格等场景)
      
      * fix: handle S3 markdown key edge cases
      
      ---------
      
      Co-authored-by: Xianquan <whoeverimf5@gmail.com>
      ai123 committed