董宏凯
|
95baa44a1c
|
ai写作修改
|
2026-05-27 14:19:11 +08:00 |
|
xuhd
|
3f8a520624
|
修复一下
|
2026-05-27 11:40:41 +08:00 |
|
 吉鑫升andClaude Opus 4.7
|
eda0ccffdb
|
管理员智能体/技能管理 + 跨标签登录同步 + 上游响应异常重试
- 「设置和更多」新增「智能体管理」「技能管理」入口,与定时任务管理同级;
独立的 AdminAgentsPage/AdminSkillsPage 复用 AgentCard/SkillRow,
管理员可查看并编辑/删除所有用户的智能体与技能。
- 后端 /api/agents、/api/skills 增加 ?admin=true 越权列表;agents 端
放宽 _get_editable_or_raise 让管理员可编辑/删除任意智能体;新增
list_all/update_any/delete_any(agents)与 list_all(skills)。
- 新增 AuthSyncWatcher:监听 localStorage["deerflow.auth"] 的 storage
事件,user_id 变化时自动 reload,修复多标签切换登录后老页面点击
「新对话」偶发 404 的问题。
- LLMErrorHandlingMiddleware 将 bad_response_status_code / JSON
decode 等上游网关乱码识别为可重试的 upstream 类故障。
- 侧边栏「任务管理」改名为「定时任务」。
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-05-27 11:13:29 +08:00 |
|
xu hd
|
1d399c3c21
|
Merge branch 'xuhd' into 'master'
feat: 笔记本 Studio 模块 — RAG 聊天、引用弹窗、侧边栏工作室
See merge request knowledge-base-bj/deerflow-server!62
|
2026-05-27 03:10:13 +00:00 |
|
 xuhdandClaude Sonnet 4.6
|
ff8eb930f7
|
feat: 笔记本 Studio 模块 — RAG 聊天、引用弹窗、侧边栏工作室
- 新增 Studio 笔记本列表页与详情页(RAG 流式聊天、历史线程切换)
- 修复 streamSubgraphs: true 使 AI 流式消息正常展示
- 引用圆圈 [[cite:N]] 渲染 + 点击弹窗显示文档 chunk 内容
- 侧边栏「工作室」区域支持折叠/展开,笔记本过滤 is_owner=true
- 后端 lead_agent 支持 notebook_source_ids / notebook_token 参数
- 线程 metadata 改为 thread_type=notebook,侧边栏过滤同步
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-05-26 23:55:08 +08:00 |
|
董宏凯
|
8ca3fdec75
|
ai写作
|
2026-05-26 21:10:27 +08:00 |
|
 吉鑫升andClaude Opus 4.7
|
c9c59b761f
|
默认主题改为浅色 + 管理员可配置全局默认主题
- system_settings 新增 AppearanceSettings(default_theme),默认为 light,
对应 GET /api/system-settings/appearance(任何人可读)+ PUT(admin 可写)
- App.tsx 把 NextThemesProvider 的 defaultTheme 从 dark 改为 light,并把
QueryClientProvider 提到 ThemeProvider 外层以便后者使用 useQuery
- ThemeContext 新增 localStorage 标志 strategy-theme-user-set:用户调用
toggleTheme / setTheme 时打标;每次启动若标志未设,则跟随 admin 配置的
default_theme 同步主题,admin 改动用户刷新即生效;标志一旦存在永远尊重
用户个人选择
- legacy 'theme' 键迁移视为用户显式选择,避免老用户被新默认覆盖
- frontend system-settings api/hook 增 appearance 拉取与更新
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-05-26 19:29:45 +08:00 |
|
吉鑫升
|
b671b49725
|
Merge remote-tracking branch 'origin/master' into ji
|
2026-05-26 14:25:02 +08:00 |
|
 吉鑫升andClaude Opus 4.7
|
26a388e3bf
|
新增智能体私密广场(is_private + 管理员密码门控)
- agents 表新增 is_private 列与迁移 20260526_01;列表 filter 拆分为公开
广场用的 _listing_filter(剔除私密)与单条访问用的 _visible_filter(保留可达)
- system_settings 增 PrivateSquareSettings(enabled + password_hash),
对应 GET/PUT /api/system-settings/private-square 由管理员管理
- /api/agents 接口:列表/创建/更新新增 is_private 字段;新增
POST /api/agents/private-square/list(密码校验后返回私密智能体)与
PUT /api/agents/{id}/private(管理员跨用户搬动智能体)
- 前端「智能体」页签新增「私密广场」入口(密码校验 + sessionStorage 缓存 +
锁定按钮),卡片增加紫色私密徽章与盾牌切换按钮(owner 自助 / 管理员跨用户),
「广场」与首页推荐候选均剔除私密智能体
- 新增管理员配置页 /settings/private-square 与侧边栏入口
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-05-26 14:24:29 +08:00 |
|
董宏凯
|
daba5c0599
|
代码修改
|
2026-05-26 14:18:00 +08:00 |
|
 吉鑫升andClaude Opus 4.7
|
ad5d55220c
|
技能展示适配持久化 + 参考文献收集与新对话流式修复
- 后端新增 skill_display_adapters 表,持久化每个技能的 display 配置与 sample
payload;/api/skills 列表、详情、设置接口同步读写
- 新增 /api/skills/{name}/display-sample 端点,编辑器优先加载库中样例
- 前端展示适配面板改为从后端加载持久样例,无样例时提示"自动识别"
- 参考文献收集修复:仅在 bash/shell/python 等执行类工具上从参数推断技能
名,避免 read_file / web_fetch 误匹配;引用列表纳入最新一条助手消息
- ChatBox 改用「最新 human → 最新 ai」窗口收集引用,并仅保留 citation
模式
- 修复「新对话」点击后已发消息消失:useThreadStream 只在 threadId 切回
空值时重置/中止 SSE,避免 onCreated 分配 id 时把刚开始的流打断;
ChatPage 在 landing 状态隐藏 MessageList,移除 KeyedChatPage remount
- 技能详情对话框:所有者可查看源码与文件 tab(不再要求管理员)
- LocalSandbox:Windows PowerShell 5 路径下把 && 重写为 ;,并以
UTF-8 解码 subprocess 输出,避免中文乱码
- knowledge-search-v2 mock 样例改为中文固定测试数据
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-05-25 23:16:51 +08:00 |
|
吉鑫升
|
a800baf8ae
|
Merge remote-tracking branch 'origin/master' into ji
|
2026-05-25 18:59:32 +08:00 |
|
吉鑫升
|
8892637b97
|
新增 RAG 引用展示模式:支持技能结果按编号引用/列表/表格渲染
- 前端新增 skill-display 适配层(runtime/display-adapter)与可视化适配面板,
支持从技能返回 JSON 自动识别字段并配置 citation/list/table/card 展示
- 正文 [[N]] 编号渲染为可点击徽章,点击不跳 URL 而是定位到右侧参考文献面板;
参考卡片样式重做(圆形编号、悬停高亮、过滤掉 "result" 占位类型)
- bash 工具调用按命令中的 skills/{public,custom}/<name>/ 路径反查展示适配,
解决调用名为 "bash" 时无法匹配到具体技能的问题
- 工具结果 JSON 解析放宽:能从 stderr/exit code 噪声尾巴里抢救出 JSON 主体
- 展示适配自动识别接入 LLM:读 SKILL.md 让模型推断真实返回结构,失败回退 mock
- 展示适配面板修复保存回显:保存后表单跟随服务端最新值刷新,样例文本不再被抹掉
- 设置页加 "RAG 引用模式" 开关(默认开),关联 lead-agent prompt 注入引用规则
|
2026-05-25 18:19:52 +08:00 |
|
董宏凯
|
8c55d4b55d
|
文档修改
|
2026-05-25 18:19:16 +08:00 |
|
董宏凯
|
525218f9a7
|
多智能体协作
|
2026-05-25 17:48:59 +08:00 |
|
董宏凯
|
8673eb5eca
|
接口联调
|
2026-05-23 23:05:01 +08:00 |
|
fengxiangdebaozi
|
3987ee7ee3
|
Merge branch 'dhk-1' of http://192.168.0.200/knowledge-base-bj/deerflow-server into dhk-1
|
2026-05-23 17:23:22 +08:00 |
|
fengxiangdebaozi
|
edb3238f3e
|
接口修改
|
2026-05-22 20:40:36 +08:00 |
|
 吉鑫升andClaude Opus 4.7
|
67d5e43ec4
|
标题生成强制关闭 think 模式,回答速度指示器默认开启
- TitleMiddleware 给模型实例注入 extra_body 关 think(覆盖 Zhipu GLM 与 Qwen/vLLM 两套写法),并兜底剥离不闭合/残留的 <think> 标签,避免 GLM5 起标题时长时间思考与标签泄漏。
- 前端 streamSpeedMeterEnabled 默认改为 true,设置项描述同步为"默认开启"。
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-05-22 18:03:24 +08:00 |
|
吉鑫升
|
ef410e298d
|
Merge remote-tracking branch 'origin/master' into ji
|
2026-05-22 16:23:11 +08:00 |
|
 吉鑫升andClaude Opus 4.7
|
80fc2a9240
|
新增技能目录重新扫描接口与分页,关掉技能安全扫描的配置开关
- 后端新增 POST /api/skills/reconcile-custom:扫描 custom 目录,把磁盘存在但 DB 无记录的技能登记到调用者名下(published=false),附 4 个单元测试
- 前端技能列表加"重新扫描技能目录"按钮,列表分页每页 10 条
- SkillsConfig 新增 security_scan.enabled(默认 true)用于关闭 LLM 安全扫描;scan_skill_content 在开关关闭时直接放行
- 智能体卡片/对话页长名 truncate 显示 + loading 占位
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-05-22 16:22:42 +08:00 |
|
 xuhdandClaude Sonnet 4.6
|
2c0bb2041b
|
feat: 统一 Admin 用户中心 + 修复默认对话记忆存储路径
## 前端
- 新增 AdminUserHub 页面,合并用户管理/审计/记忆三个页面为统一中心(左侧用户列表 + 右侧 Tab)
- 旧三条 admin 路由重定向到新 /admin 路由
- 侧边栏导航菜单合并为单一入口"用户中心"
- memory-settings-page: 默认助手下拉选项传 agent=default(后端识别为全局哨兵)
## 后端
- memory.py: 将 "default" 加入全局哨兵 _GLOBAL_AGENT_VALUES,?agent=default 读全局记忆文件
- memory_middleware.py: _resolve_agent_id() 无 agent 上下文时返回 None,默认对话写入 users/{id}/memory.json
- manager.py: 移除 agent_id or "default" 回退,让 None 透传给 V1 provider
- admin_users.py: Admin 记忆 API 将"默认助手"桶改为读全局文件(agent_id=None)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-05-22 16:04:49 +08:00 |
|
吉鑫升
|
b6a2c9336e
|
Merge remote-tracking branch 'origin/master' into ji
|
2026-05-22 14:25:23 +08:00 |
|
 吉鑫升andClaude Opus 4.7
|
ba2bc46042
|
智能体对话选 Agent 直达、澄清问题批量提交、LLM 错误中文化等
- 前端:新会话选 Agent 后直接跳转并自动发送,智能体页输入框宽度与首页对齐
- 前端:澄清卡片支持多选+多问题合并提交,消除单题逐一发送的割裂感
- 前端:定时任务弹窗 Agent 下拉支持长描述截断,避免撑破布局
- 后端:ask_clarification 支持同回合多次调用以提多个独立问题
- 后端:LLM 错误处理与定时任务失败提示统一改为中文
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-05-22 14:24:29 +08:00 |
|
 xuhdandClaude Sonnet 4.6
|
b3a39cbdf7
|
feat: V1记忆系统支持、管理员记忆编辑及对话记忆注入开关
- 新增 V1 记忆系统(memory.json)支持:提取结果强制中文、历史字段修复为增量累积日志
- 用户设置页面:V1 模式下新增 agent 选择器,可查看各 agent 的私有记忆
- 管理员记忆页面:区分 V1/V2 渲染,V1 支持完整 CRUD(用户画像/历史摘要/事实记录)
- 后端新增 V1 记忆 CRUD API(sections/facts),前端同步添加对应 hooks 和 API 调用
- 新建专家页面:标记 bootstrap 线程类型,跳过记忆保存,侧边栏过滤该类线程
- 输入框工具栏新增「记忆」开关:关闭时 V1/V2 均不注入,开启时按 config.yaml 版本正常注入
- 修复 agent 目录不存在时的 FileNotFoundError,回退至默认配置
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-05-22 12:32:47 +08:00 |
|
 吉鑫升andClaude Opus 4.7
|
a258122e22
|
定时任务:修复智能体执行 422、新增描述字段、公开页删除按钮等
- 定时任务执行时按 agent.id 解析智能体,老数据中存的中文显示名会回退按 name 查找,避免 422
- scheduled_tasks 表新增 description 字段(迁移 20260522_01),创建/编辑表单支持,公开页标题下显示
- 公开页(/public/scheduled-tasks/{id})新增删除单次执行记录入口,使用样式化 Dialog 确认
- 公开页左侧标题区精简:去掉 schedule/timezone/最近状态两行;执行列表标题剥离尾部时间戳,"计划"改为"执行时间"
- 工作区定时任务列表:超长标题改为按字符换行不再截断;按 created_at 倒序(新建任务在前)
- 启动 Alembic 升级加超时与单独线程,MySQL 缺库时自动 CREATE DATABASE
- vite build 增加 8GB 内存上限
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-22 10:55:59 +08:00 |
|
 吉鑫升andClaude Opus 4.7
|
a892f55cb2
|
Merge branch 'master' into ji
冲突解决:
- frontend-web/src/pages/AgentChatPage.tsx: 保留 HEAD 的 isLandingState +
AgentWelcome 欢迎页扩展,丢弃 master 的旧版 InputBox 风格
- offline-backend-20260512/backend/config.yaml: 保留 HEAD 的对齐注释格式;
master 引入的中文 bank_mission / bank_retain_mission 已自动合入
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-05-21 20:31:49 +08:00 |
|
吉鑫升
|
ac4424bab2
|
代码修改
|
2026-05-21 20:19:44 +08:00 |
|
wghe
|
c516b74b75
|
Merge branch 'master' of http://192.168.0.200/knowledge-base-bj/deerflow-server into hwg
|
2026-05-21 19:44:15 +08:00 |
|
董宏凯
|
8c2ab6b860
|
Merge branch 'dhk-1' into 'master'
意图理解
See merge request knowledge-base-bj/deerflow-server!38
|
2026-05-21 10:48:46 +00:00 |
|
董宏凯
|
d639b24c2d
|
意图理解
|
2026-05-21 18:48:15 +08:00 |
|
wghe
|
6ebbf3aa32
|
Merge branch 'ji' of http://192.168.0.200/knowledge-base-bj/deerflow-server into hwg
|
2026-05-21 18:35:56 +08:00 |
|
吉鑫升
|
643f9b2c76
|
Merge remote-tracking branch 'origin/master' into ji
# Conflicts:
# frontend-web/src/pages/AgentChatPage.tsx
|
2026-05-21 17:44:09 +08:00 |
|
董宏凯
|
2089f5e8ee
|
Merge branch 'dhk-1' into 'master'
配置参数修改
See merge request knowledge-base-bj/deerflow-server!36
|
2026-05-21 09:38:12 +00:00 |
|
董宏凯
|
7e98d7dc52
|
配置参数修改
|
2026-05-21 17:37:39 +08:00 |
|
xu hd
|
a514b2fe79
|
Merge branch 'xuhd' into 'master'
feat: 记忆配置改为数据库存储,用户只可配置召回模式
See merge request knowledge-base-bj/deerflow-server!35
|
2026-05-21 09:34:48 +00:00 |
|
 xuhdandClaude Sonnet 4.6
|
d56230e04d
|
feat: 记忆配置改为数据库存储,用户只可配置召回模式
- 新增 persistence/memory_config/ 模块:UserMemoryConfigRow ORM 模型 +
SqlUserMemoryConfigRepository + MemoryUserMemoryConfigStore(内存兼容)
- 新增 Alembic 迁移脚本 20260521_01 创建 user_memory_configs 表
- memory_config.py:USER_WRITABLE_FIELDS 从 3 个缩减为 1 个
(hindsight.recall_budget),移除文件 IO,改为进程内 cache + async DB 对接函数
- Gateway lifespan 启动时批量预热 recall_budget cache
- memory router PATCH/DELETE 改用 DB 存储,支持 400 校验非法 budget 值
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-05-21 17:34:25 +08:00 |
|
董宏凯
|
065bd8f28a
|
样式修改
|
2026-05-21 17:22:40 +08:00 |
|
董宏凯
|
c69486556a
|
Merge branch 'master' of http://192.168.0.200/knowledge-base-bj/deerflow-server into dhk-1
|
2026-05-21 16:31:27 +08:00 |
|
董宏凯
|
bfd75da308
|
功能迁移,页面整体样式修改
|
2026-05-21 16:30:11 +08:00 |
|
 吉鑫升andClaude Opus 4.7
|
53bbb9b15b
|
feat: 公开定时任务页支持正文/MD 切换与内联编辑
- 公开查看器右侧改为 Tabs:MD 附件优先、然后是「正文」;标签使用文件名(去后缀)
- 新增内联编辑:正文与 MD 文件均可编辑保存,每个 Tab 支持 Word 下载
- 后端新增公开 PUT 端点(/runs/{run_id}/files/{i}、/runs/{run_id}/body),服务层提取 _apply_run_file_edit 并新增 admin_update_run_file / admin_update_run_body
- 列表过滤:仅展示 succeeded 且有正文或可用 MD 的执行记录;后端在响应中标记每个文件 available,前端隐藏磁盘已缺失的 MD Tab
- 左侧任务名与右侧执行记录标题均改为可换行 + Tooltip 显示完整内容
- .gitignore 增加 frontend-web/dist
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-05-21 15:53:43 +08:00 |
|
吉鑫升
|
f1d58983c2
|
feat: 智能体精选排序与新对话智能体选择器
- 后端新增 featured_order 字段及精选排序 API(/agents/selector、/agents/{id}/featured、/agents/featured/order),移除 user_agent_pin 表
- 前端新对话页 (ChatPage) 与输入框 (InputBox) 接入 agent-selector,选中后跳转 AgentChatPage 并通过 sessionStorage 透传首条消息
- 新增管理员智能体管理弹窗 (agent-manage-dialog) 支持精选添加/移除/上下移动
|
2026-05-21 14:39:12 +08:00 |
|
 xuhdandClaude Sonnet 4.6
|
3748513996
|
feat: 智能体创建流程优化与管理员记忆页面
- 创建智能体页面:保存后自动跳转列表页、技能列表增加搜索过滤框
- Bootstrap 模式:开放全部技能可见性,注入专属提示词(skill_list 匹配意图、禁止 skill_manage)
- 管理员记忆页面:新增 AdminMemoryPage 及路由,支持查看/编辑用户记忆条目
- 内存配置与管理员用户接口同步更新
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-05-21 11:43:59 +08:00 |
|
吉鑫升
|
313290b22c
|
Merge remote-tracking branch 'origin/master'
|
2026-05-20 17:06:06 +08:00 |
|
董宏凯
|
f358cfb7c7
|
容错处理
|
2026-05-20 12:51:04 +08:00 |
|
董宏凯
|
f44e2ccf52
|
报错兜底
|
2026-05-19 22:54:36 +08:00 |
|
吉鑫升
|
7e75c5b9b9
|
Merge remote-tracking branch 'origin/master' into ji
|
2026-05-19 19:58:59 +08:00 |
|
董宏凯
|
226439ef36
|
Merge branch 'master' of http://192.168.0.200/knowledge-base-bj/deerflow-server into dhk-1
|
2026-05-19 19:54:18 +08:00 |
|
董宏凯
|
81aca93b81
|
章节问答
|
2026-05-19 19:51:44 +08:00 |
|
 吉鑫升andClaude Opus 4.7
|
777c3b0079
|
fix: 定时任务执行过程实时刷新——RunJournal 增加按时间 flush
RunJournal 原本只在缓冲满 20 条或运行结束时才把事件落库,短运行会在结束前一直查不到消息,导致定时任务执行详情页的「执行过程」一直显示「暂无执行消息」。
新增 _FLUSH_INTERVAL_SECONDS=3s 的按时间 flush(由 _put 驱动);flush 失败时退回缓冲并重新抛出以便区分成败;flush 成功后若缓冲仍有残留则补一次 flush,失败则不重试避免空转。
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-19 18:18:14 +08:00 |
|