Administrator and Claude Opus 4.8
683cc6d76e
feat(knowledge): 阶段二 向量 RAG 与召回注入
...
- embeddings.py:OpenAI 兼容 embedding 客户端,未配置时关键词兜底
- chunking.py + knowledge_embeddings 表:Markdown 分块与向量索引(Python 余弦)
- search.py:keyword/vector/hybrid 三种模式,向量不可用自动降级
- 笔记创建/更新自动重建向量索引;新增 /reindex 维护接口
- KnowledgeRagMiddleware:按对话级开关 knowledge_rag_enabled 注入 <knowledge-context>,接入 lead agent 中间件链(默认随 config.knowledge.rag_enabled)
- service.build_rag_context(wiki-query 风格分层召回)
- 笔记版本快照(knowledge_note_versions)+ GET /notes/{id}/versions
- 前端:聊天页「知识库」对话级 RAG 开关 + 类型字段
- 新增 entities/relations 表(阶段四预置)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-08 18:18:04 +08:00
Administrator and Claude Opus 4.8
8463289f75
feat(knowledge): LLM 提炼陈述式知识(wiki-capture 规范),规则抽取兜底
...
之前沉淀直接堆砌对话原文。现默认用大模型按 wiki-capture 规范提炼为 Context/Finding/Reasoning/Implications/Related 结构化陈述式知识,过滤寒暄与中间推理;LLM 不可用或解析失败时回退规则抽取。新增 llm_extractor.py + 配置 llm_extract_enabled/extract_model_name/extract_max_input_chars。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-08 18:00:46 +08:00
Administrator and Claude Opus 4.8
d06c8d49d7
feat: 工作台左侧导航新增「知识库」入口
...
之前只加在了 strategy shell 的 sidebar-menu,工作台 shell 用的是 WorkspaceNavChatList,这里补上入口指向 /page/workspace/knowledge。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-08 17:55:11 +08:00
Administrator and Claude Opus 4.8
e193c2df21
feat: 接入知识库聊天入口与前端路由
...
在聊天页工具栏接入「保存到知识库」按钮,并补回 /page/workspace/knowledge 列表/详情/图谱路由(此前被回退丢失)。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-08 17:43:55 +08:00
Administrator and Claude Opus 4.8
cc99ebba81
feat: 产品内知识库(obsidian-wiki 兼容 vault)
...
后端:新增自包含 deerflow.knowledge 模块(models/repository/schemas/
extractor/sources/markdown_vault/manifest/obsidian_adapter/exporter/
search/service),通过 deps.py 装配为 app.state.knowledge_service,
挂载 /api/knowledge 路由;config.yaml 增加 knowledge 配置段,
AppConfig 注册 KnowledgeConfig,ORM 注册 4 张 knowledge_* 表。
前端:新增知识库页面(KnowledgeBasePage/KnowledgeGraphPage)、
core/knowledge api/hooks/types、聊天侧 knowledge-save-trigger,
侧边栏增加「知识库」入口。
知识库为全局共享,不做 user_id 隔离,写入记录 created_by/updated_by
作为审计。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-08 17:38:28 +08:00
Administrator and Claude Opus 4.8
a53e565e5a
feat: 管理菜单增加「用户排行榜」入口
...
侧边栏综合管理与右上角工作区下拉菜单新增「用户排行榜」(admin only),
指向 /page/strategy/admin/user-leaderboard,并默认展开综合管理分组。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-08 13:47:15 +08:00
Administrator and Claude Opus 4.8
d4a71ce384
feat: 浏览器扩展支持交互式页面操作 (browser_act)
...
在原有只读抓取 (browser_fetch_page) 基础上,新增 observe→act 循环,
让 Agent 能在用户的 Chrome 中实际操作网页:点击/输入/滚动/等待/页内跳转。
后端:
- 新工具 browser_act,按 session 复用标签页,返回带编号的可交互元素清单+正文
- browser_context 任务队列扩展 kind/session_id/action 与 observation 结果
- /api/browser-context 路由下发 act 任务、接收 observation
- BrowserContextConfig 增加 actions_enabled 等开关,tools.py 两级门控
- 接线 app.py 路由挂载、app_config.py 配置字段、config.yaml 工具注册
前端:
- ChatPage 处理「发送当前页」回跳的 browser_context query 参数并自动提交
扩展 (browser-extension/deer-web-clipper):
- shared.js 自包含注入函数 deerObservePage / deerPerformAction
- background.js 按 kind 分发任务,session→tab 映射存 chrome.storage.session
测试:tests/test_browser_act.py(队列往返 + 工具校验 + 模拟扩展成功路径,8 passed)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-08 13:47:00 +08:00
Administrator
0001f86826
feat: 完善公开任务预览和用户问答历史
2026-06-07 21:18:16 +08:00
Administrator and Claude Opus 4.8
e7c745a512
feat: 排行榜日快照分析 + 数据库连接池/索引调优
...
- 排行榜改为按天预计算快照(admin_leaderboard_daily_stats),请求只读取合并,重统计移至后台调度;过去日不可变、当天 TTL 刷新,避免在线聚合长时间占用数据库
- 为 runs/tool_call_metrics/llm_call_metrics/threads_meta 增加面向时间段+用户聚合的复合索引(model __table_args__ + migration 20260608_01)
- 连接池可调:DatabaseConfig 新增 max_overflow / pool_timeout,接入 postgres/mysql 引擎;config.yaml 上调 pool_size=20/max_overflow=20
- 新增手动执行的索引脚本 scripts/sql/leaderboard_indexes_mysql.sql(幂等,适用于已存在数据、create_all 不补索引且 alembic 关闭的部署)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-06 00:52:24 +08:00
Administrator
4df71f32a8
fix: use sqlite backend config
2026-06-05 22:44:21 +08:00
Administrator
92f5cb8fe3
enhance admin leaderboard and previews
2026-06-05 01:51:48 +08:00
Administrator
a5897caec4
enhance leaderboard reporting and grouping
2026-06-05 00:02:05 +08:00
Administrator
88c83b4dd7
refine admin leaderboard experience
2026-06-04 23:41:19 +08:00
Administrator
fe0ede178e
polish admin leaderboard analytics
2026-06-04 21:09:36 +08:00
Administrator
5590f7d85a
style: polish admin user leaderboard
2026-06-04 20:22:37 +08:00
Administrator
8f80b7c1ef
feat: add admin user leaderboard analytics
2026-06-04 19:35:11 +08:00
Administrator
1e4ef070cf
fix: 调整提示词和 agent 管理入口
2026-06-04 18:45:16 +08:00
Administrator and Claude Opus 4.8
e3b0958c23
fix: drive logout from real 401s, not local storage changes
...
apiFetch now redirects to login only on a genuine backend 401 (auth endpoints excluded, only when previously logged in). AuthSyncWatcher no longer treats localStorage.clear()/unrelated writes as a logout, fixing spurious sign-outs (e.g. when uploading skills).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-04 17:41:46 +08:00
Administrator and Claude Opus 4.8
225398972d
fix: add missing axios dependency to frontend-web
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-04 16:53:07 +08:00
Administrator and Claude Opus 4.8
87f764bfa9
feat: improve markdown rendering, artifact file preview, and public scheduled task page
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-04 16:52:30 +08:00
Administrator and Claude Opus 4.8
94c02ded2a
feat: add user preferences, agent name desensitization and related improvements
...
- Add user preferences persistence (model, migration, router, frontend core)
- Add agent name desensitization config
- Add agent_id to user custom prompts with migration
- Enhance agents persistence (base, memory, model, sql) and scheduler service
- Improve frontend agent cards/gallery, scheduled tasks, custom prompt menu
- Add pagination UI component; remove stale package-lock.json
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-04 12:40:18 +08:00
Administrator and Claude Opus 4.8
133054e2dd
feat(skills/settings): 技能复制 + 设置持久化等会话前改动
...
- 技能复制:新增 POST 复制接口(_rewrite_skill_frontmatter_name 重写 frontmatter name + 校验 + 去重),前端 skills api/hooks 与技能设置页配套
- 设置持久化:lastAgentId、线程 RAG 模式锁(settings/index、local)
- i18n(en/zh/types)、agent-card/input-box/message-list 等页面文案与交互微调
- scheduler/element.py 小修
(本批为会话前已存在的工作区改动,按要求一并提交;构建产物 backend.zip 未提交)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-03 11:38:47 +08:00
Administrator and Claude Opus 4.8
adcc5a358b
feat(scheduled-tasks): 新增 HTML 页面定时任务(生成/预览/收藏/技能)
...
后端:
- 新增 task_kind=html_page 任务类型,与普通定时任务并存,配置存 execution_context(无需迁移)
- 执行流水线:智能体检索数据 -> 选定模型渲染 HTML -> 清洗/校验 -> 失败自动修复 -> 完整性闸门(缺 doctype/html/head/body/title 或残留脚本即失败) -> 归档 index.html -> 落库
- 新增 scheduled_html_pages / html_page_favorites 表与 store;收藏去重(不可重复)、可删除、收藏时提取可复用风格
- HTML 预览接口(鉴权 + 公开)、收藏接口
- 渲染注入已启用的 HTML 技能(metadata.kind=html_page);全程使用用户所选模型,去除硬编码 GLM-5
- 定时任务跳过 TitleMiddleware,避免标题生成回退默认模型
前端:
- 创建/编辑弹窗增加任务类型与 HTML 配置(页面要求/限制/参考收藏页/模型下拉)
- 运行详情页与公开页 iframe 沙箱预览 HTML;收藏按钮(已收藏禁用)
- 参考收藏页可选可删
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-03 11:35:38 +08:00
Administrator and Claude Opus 4.8
5c2379577b
fix(auth): token 登录将令牌放入 Authorization: Bearer 头
...
token 换登录调上游 getTokenInfo 时参数传错:原来发静态头
Authorization: Bearer admin + 令牌放 access_token cookie。上游实际
从 Authorization: Bearer <token> 头读取令牌。
- 鉴权头改为 "Bearer "+前端传入 token,删除 access_token cookie
- service_authorization 配置项弃用(保留兼容,不再参与请求)
- 新增回归测试 test_token_login_upstream_call.py
- 同步更新 AUTH_LOGIN.md / CLAUDE.md / config.yaml 注释 / login_config 文档
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-03 11:35:38 +08:00
Administrator and Claude Opus 4.8
c5352f2ee7
本地启动环境修复与配置
...
- config.yaml: checkpointer 连接串改为相对路径(原为他机绝对路径,本地无法创建)
- frontend-web: 补充缺失的 dayjs 直接依赖(lockfile 已有,package.json 缺失)
- .gitignore: 忽略 backend/uv.lock 并取消其跟踪
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-03 11:35:38 +08:00
Administrator and Claude Opus 4.8
f590f672be
feat(skills/settings): 技能复制 + 设置持久化等会话前改动
...
- 技能复制:新增 POST 复制接口(_rewrite_skill_frontmatter_name 重写 frontmatter name + 校验 + 去重),前端 skills api/hooks 与技能设置页配套
- 设置持久化:lastAgentId、线程 RAG 模式锁(settings/index、local)
- i18n(en/zh/types)、agent-card/input-box/message-list 等页面文案与交互微调
- scheduler/element.py 小修
(本批为会话前已存在的工作区改动,按要求一并提交;构建产物 backend.zip 未提交)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-02 23:48:19 +08:00
Administrator and Claude Opus 4.8
d9afaca51f
feat(scheduled-tasks): 新增 HTML 页面定时任务(生成/预览/收藏/技能)
...
后端:
- 新增 task_kind=html_page 任务类型,与普通定时任务并存,配置存 execution_context(无需迁移)
- 执行流水线:智能体检索数据 -> 选定模型渲染 HTML -> 清洗/校验 -> 失败自动修复 -> 完整性闸门(缺 doctype/html/head/body/title 或残留脚本即失败) -> 归档 index.html -> 落库
- 新增 scheduled_html_pages / html_page_favorites 表与 store;收藏去重(不可重复)、可删除、收藏时提取可复用风格
- HTML 预览接口(鉴权 + 公开)、收藏接口
- 渲染注入已启用的 HTML 技能(metadata.kind=html_page);全程使用用户所选模型,去除硬编码 GLM-5
- 定时任务跳过 TitleMiddleware,避免标题生成回退默认模型
前端:
- 创建/编辑弹窗增加任务类型与 HTML 配置(页面要求/限制/参考收藏页/模型下拉)
- 运行详情页与公开页 iframe 沙箱预览 HTML;收藏按钮(已收藏禁用)
- 参考收藏页可选可删
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-02 23:46:20 +08:00
Administrator and Claude Opus 4.8
e1e9be8daa
fix(auth): token 登录将令牌放入 Authorization: Bearer 头
...
token 换登录调上游 getTokenInfo 时参数传错:原来发静态头
Authorization: Bearer admin + 令牌放 access_token cookie。上游实际
从 Authorization: Bearer <token> 头读取令牌。
- 鉴权头改为 "Bearer "+前端传入 token,删除 access_token cookie
- service_authorization 配置项弃用(保留兼容,不再参与请求)
- 新增回归测试 test_token_login_upstream_call.py
- 同步更新 AUTH_LOGIN.md / CLAUDE.md / config.yaml 注释 / login_config 文档
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-02 19:33:38 +08:00
Administrator
247ff86f2f
Merge branch 'ji' of http://192.168.0.200/knowledge-base-bj/deerflow-server into ji
2026-06-02 19:06:42 +08:00
Administrator and Claude Opus 4.8
93543919d4
本地启动环境修复与配置
...
- config.yaml: checkpointer 连接串改为相对路径(原为他机绝对路径,本地无法创建)
- frontend-web: 补充缺失的 dayjs 直接依赖(lockfile 已有,package.json 缺失)
- .gitignore: 忽略 backend/uv.lock 并取消其跟踪
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-01 20:29:29 +08:00