董宏凯
27e6b0b23e
Merge branch 'master' of http://192.168.0.200/knowledge-base-bj/deerflow-code into dhk-dev
...
# Conflicts:
# frontend-web/src/open-canvas/components/ai-writing/AIWritingForm.tsx
2026-07-11 19:01:10 +08:00
fengxiangdebaozi
388a9133fc
fix: adapt frontend for legacy Chrome and runtime config
2026-07-11 16:55:08 +08:00
董宏凯
221e947488
Merge branch 'master' of http://192.168.0.200/knowledge-base-bj/deerflow-server into dhk-dev
...
# Conflicts:
# frontend-web/src/open-canvas/components/ai-writing/AIWritingForm.tsx
# frontend-web/src/open-canvas/components/ai-writing/AIWritingPanel.tsx
# offline-backend-20260512/backend/CLAUDE.md
# offline-backend-20260512/backend/app/gateway/services.py
# offline-backend-20260512/backend/tests/test_ai_writing_knowledge_base.py
2026-07-03 22:28:21 +08:00
董宏凯
da856f2b58
fix: improve ai writing chat streaming and intent handling
2026-07-02 17:43:23 +08:00
董宏凯
845c87e3ee
feat: add AI writing chat workspace
2026-07-02 13:56:46 +08:00
董宏凯
54190d7a83
提交代码
2026-07-01 19:24:23 +08:00
董宏凯
d21dbeb214
feat: refine ai writing search flow
2026-07-01 18:00:14 +08:00
董宏凯
025e43f4c5
feat: improve ai writing imitation flow
2026-07-01 17:16:12 +08:00
董宏凯
bb6b9bd84b
feat: add ai writing imitation mode
2026-07-01 11:21:41 +08:00
董宏凯
4bfaeb728b
fix: disable ssl verification for intranet ai writing search
2026-07-01 10:21:52 +08:00
董宏凯
dfb745a5e4
代码提交
2026-06-30 16:04:51 +08:00
fengxiangdebaozi
4fce6f9104
Add intranet retrieval diagnostics for AI writing
2026-06-29 10:21:10 +08:00
董宏凯 and Cursor
5de74e90dc
feat(ai写作): 左栏智能体 Tab 内嵌问答并优化模块侧栏
...
AI 写作页默认展示智能体 Tab,在页内复用 ai-writing 模块配置与 AgentChatPage;确认类型后侧栏扁平展示类型名并支持整块收起动画。同步历史回看、流式续跑、改写菜单与 researcher 检索相关改动。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-27 15:53:51 +08:00
董宏凯 and Claude Opus 4.8
0089af94d3
fix(ai写作): 恢复内网直连检索(知识库检索)空地址回退默认端点
...
knowledge_base 检索类型遇到空 intranet_search_url 会短路报「未配置」、返回 0
素材,导致「内网直连检索不能用」。旧版 get_search_provider(search_provider=
intranet) 在空地址时由 IntranetSearchProvider 回退内置默认内网端点,所以不配
地址也能直连。本次去掉该短路,空地址原样下传由 provider 回退默认端点,恢复旧逻辑。
- researcher.py: knowledge_base 分支无条件构造 IntranetSearchProvider
- test_ai_writing_knowledge_base.py: 空地址用例改为断言回退默认端点仍出素材
- backend CLAUDE.md: 检索类型段说明更新
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-26 22:13:19 +08:00
fengxiangdebaozi
4d10590511
Merge branch 'master' of http://192.168.0.200/knowledge-base-bj/deerflow-server into dhk-1
2026-06-26 11:04:19 +08:00
fengxiangdebaozi and Claude Opus 4.8
3d60651491
feat(ai-writing): 检索类型加回「知识库检索」(直连内网 ES 接口)
...
弱模型常识别不了配置技能(deepseek-chat 等),恢复旧的"不用技能"检索路径
作为独立检索类型 knowledge_base:绕过技能编排,直接调
ai_writing.intranet_search_url 内网知识库 ES 接口(IntranetSearchProvider)
对检索词并发检索;未配地址 → 无素材 + skill_error 告警。
- researcher.py: material_source 归一保留 knowledge_base + 新增直连内网分支
- state.py: material_source 三值注释
- 前端 AIWritingForm/WritingFormContext/types: 下拉新增「知识库检索」
- tests/test_ai_writing_knowledge_base.py: 直连/未配/不编排技能 3 用例
- backend CLAUDE.md: 检索类型段更新为三值
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-26 10:04:57 +08:00
fengxiangdebaozi and Claude Opus 4.8
158d157af4
feat(ai写作): 内网检索接口执行诊断写入 material_package.intranet_debug(排查用)
...
- material_package 新增 intranet_debug:是否配置/端点/知识库/超时/每个检索词命中数与
报错/原始响应片段/总命中数/是否被采用为兜底/status(not_configured|pending|ran|
cancelled|crashed)。随 values 事件回前端,前端忽略该字段,仅供 devtools 排查。
- 新增 config ai_writing.intranet_search_debug(默认 false):开启后即使技能成功也跑完
内网并记录完整结果,用于验证内网接口是否真能通。
- 前端不改动。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-25 22:55:27 +08:00
fengxiangdebaozi and Claude Opus 4.8
1ed004fbb1
fix(ai写作): 弱模型也能真正执行技能脚本(执行优先的强提示)
...
弱模型在 lead agent 能执行 py 脚本、在 ai写作子智能体却不能:根因是子智能体的
_MATERIAL_OUTPUT_CONTRACT 过度强调"只输出 JSON",弱模型据此跳过工具执行直接吐空 JSON。
对齐 lead agent 的 skill_system 强框架,把契约改成"执行优先":
- 第一步强制先用 bash 实际运行技能脚本(给出 cd 技能目录 && python3 scripts/..py 的命令形态),
严禁不调用工具就直接输出 JSON/凭记忆编造
- JSON 输出降级为第二步"检索完成后再整理"
- task 末尾追加"现在立刻开始执行检索"的强指令,进一步推动弱模型先动手
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-25 22:50:10 +08:00
fengxiangdebaozi and Claude Opus 4.8
854de9b43c
fix(ai写作): 技能检索稳定接收数据(复用参考文献提取+截断抢救+上限早停)
...
- 复用主智能体「参考文献」模式的提取逻辑(deerflow.runtime.references)解析技能JSON,字段并集兼容
- bash输出中间截断时逐条抢救完整记录对象,不再因大JSON解析失败而全丢
- 所有退出路径(超时/递归上限/异常)都从tool输出收割,不依赖模型最终汇总
- 达到max_materials上限即停止驱动模型,修复步骤条爆100+条/素材超额
- 步骤条实时显示每次检索获得多少条数据
- 内网兜底:与技能并行预跑、响应解析兼容两套接口字段、0结果换简单检索词重试、超时放宽到10分钟
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-25 17:05:09 +08:00
fengxiangdebaozi and Claude Opus 4.8
893f1e6933
fix(会商第三步): 流程图入库限 rwfx-A + 修复跳过报告生成流程图出现双调度中卡片
...
- 入库功能仅 rwfx-A(businessCode 6BF)深链会商模式提供,其它业务深链生成流程图不再出现入库按钮/询问
- 流程图抽取串行化:auto 自动出图与用户「跳过报告直接生成流程图」手动出图竞态时,先中止上一轮、复用/移除被取代气泡,保证任意时刻只有一张流程图卡片
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-25 12:29:45 +08:00
fengxiangdebaozi and Claude Opus 4.8
1d6659f9e7
fix(ai写作): 技能步骤从节点协程 emit,custom 事件真正实时刷给前端
...
前端/SDK 都是实时的(onCustomEvent 逐条即触发,draft_chunk 同链路就实时)。
问题在后端:技能步骤原来在节点内的嵌套 agent.astream 里直接 emit,custom 事件
被攒到整段跑完才一次性吐到 SSE(后端在跑、前端一直 loading)。
改为:嵌套 astream 跑后台任务,只把工具调用塞进 asyncio.Queue;真正的 writer
由 researcher 节点**自身协程**从队列取出来调(与 draft_chunk 同一上下文),
custom 事件即被 LangGraph 实时刷给前端。撤掉上一版无效的 sleep(0)。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-25 01:04:49 +08:00
fengxiangdebaozi and Claude Opus 4.8
a4a67c1a00
fix(ai写作): 技能流式每步主动让出事件循环,custom 事件实时刷给前端
...
前端 skill_search_step 已是 pushImmediate(实时渲染),但事件在节点内的嵌套
agent.astream 里发出后没及时让出事件循环,被攒到整段跑完才一次性吐到 SSE,
前端看着像卡死。每个 chunk 处理完 await asyncio.sleep(0) 主动让出,促使刚 emit
的 custom 事件实时刷给前端(对齐 draft_chunk 的实时行为)。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-25 00:48:57 +08:00
fengxiangdebaozi and Claude Opus 4.8
8f773d3f1b
fix(ai写作): 技能调用实时流式显示 + 去掉大纲拼检索词/复用检索词
...
- 技能调用过程改为实时流式:run_skill_via_real_agent 不再 to_thread 阻塞跑
executor.execute(),而是复用其 agent/state 构建后在图事件循环里 astream,
每个工具调用(读 SKILL.md / bash / 检索)实时推一条步骤到时间线——内网慢时
用户能看到技能在执行,不会以为卡死。整段 asyncio.wait_for 卡 5 分钟超时。
- 回退检索词相关改动(实测无用、且结合大纲后检索词变长不利按词匹配):
- intent_parser 不再顺便生成 keywords,删 precomputed_keywords 状态字段;
- researcher 不再复用,每次自己现生成检索词(回到原行为);
- 检索词提示词去掉「结合大纲/{outline_section}」,删 keyword_outline_section。
保留:关思考、技能真实运行时、技能目录修复、内网兜底。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-25 00:33:57 +08:00
fengxiangdebaozi and Claude Opus 4.8
c0305c9269
fix(ai写作): 修复内网技能检不出东西(技能目录路径 + 模型 + 兜底 + 开关)
...
对比主智能体与 AI 写作两份调用日志定位到根因:真实 agent 路径只注入了
SKILL.md 内容、没告诉模型技能在容器内的目录,模型用相对路径跑脚本
(python3 scripts/search)→ No such file。主智能体则 cd 进技能绝对目录再跑。
- _skill_agent:注入 skill.get_container_path() 的绝对目录,要求先 cd 再执行
脚本/用绝对路径(对齐主智能体 skill_view 拿 location 后的行为)。
- researcher:跑技能的 agent 改用用户选定的写作主模型(model_name_fallback=None),
不再用常配成外网的 keyword_model,避免技能 agent 连不上自己的模型。
- researcher:所有技能都 0 条时,最终兜底直连内网 ES 接口(IntranetSearchProvider),
受 ai_writing.intranet_search_url 控制。
- config.yaml:开 researcher_skill_agent=true(内网技能必须走真实运行时),
新增 intranet_search_url / intranet_knowledge_base 兜底配置项。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-24 23:52:32 +08:00
fengxiangdebaozi and Claude Opus 4.8
d8b43e7579
fix(ai写作): 技能检索超时硬编码 5 分钟(内网慢检索不被过早切断)
...
内网检索很慢,原 120s 在三个真正生效的层把检索切断。统一硬编码 300s,
不依赖环境变量(部署方不一定会配):
- researcher._SKILL_SEARCH_TIMEOUT_SECONDS:120(env) → 300(写死),删掉 _env_int;
作用于直连/定向技能检索的 wait_for,也传给真实智能体路径。
- IntranetSearchProvider 默认 httpx 超时:120 → 300(直连内网 ES 的真正瓶颈)。
- run_skill_via_real_agent 整段运行上限:max(timeout_s, 300),至少 5 分钟。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-24 22:54:42 +08:00
fengxiangdebaozi and Claude Opus 4.8
afb78a6943
feat(ai写作): 素材收集专家按真实智能体运行时跑技能 + 步骤条对齐
...
- 新增 run_skill_via_real_agent:复用 SubagentExecutor(与 lead agent / 子智能体
同一套运行时),加载技能 SKILL.md + 全套工具 + 懒加载沙箱,让技能的真实检索逻辑
(读文件 / 调内网接口 / MCP)真正执行,再按 JSON 契约收割结构化素材;researcher 的
_execute_skill 在 researcher_skill_agent 开启时切到它,失败/空结果回退直连检索。
解决内网技能(在别的智能体里好使)在 AI 写作里检不出东西的问题。
- 步骤条轻量对齐别的智能体:技能调用拆成「读取 SKILL.md → 执行检索 → 检索到 N 条」
三段(前两段新增,结果段沿用 skill_result);前端 SkillStepsCard 零改动。
- 含 roundtable-planning(业务链选择 / Step2 编排)的进行中改动。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-24 22:19:30 +08:00
fengxiangdebaozi and Claude Opus 4.8
c117e296cb
feat(ai写作): 草稿局部修改只改命中章节,支持改章节标题,修改时右侧流式重写
...
用户在草稿确认填修改意见(user_revise)时,按章节定位只重写命中章节、
其余字节级保留;新增范围识别区分「改标题」与「改正文」,改标题同步回写
outline 使其持久生效(修复改章节标题不生效);整体性/结构性意见自动回退
整篇重写。前端新增 isRevising:修改时右侧先恢复初始占位(清空旧稿),
重写流到达后实时展示被改章节的流式重写。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-24 19:45:00 +08:00
fengxiangdebaozi and Claude Opus 4.8
304e1b637a
feat(ai写作): 意图解析顺便生成检索词 + 修复快捷模式
...
- 意图解析(intent_parser)与意图理解共用同一次 LLM 调用顺便生成检索词
(结合意图 + 大纲覆盖各章节主题),存入 state.precomputed_keywords;
researcher 首轮直接复用,省掉素材收集阶段单独的「生成检索词」LLM 往返。
解析失败/为空时回退到 researcher 自己生成(优雅降级);re_search 仍重新生成。
keyword_outline_section 提到 _utils 供两处共用。
- 修复快捷模式:之前被「大纲先行确认」改动拖累,先误成「问一堆问题」,再被我
过度修正成「不生成大纲」。现修正为——快捷模式 = 用默认选项、不逐项澄清提问
(make_lead_agent 在快捷模式下直接不挂 ask_clarification 工具,物理上问不了),
但**仍生成并确认大纲**再提交;普通模式不变。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-24 18:32:10 +08:00
fengxiangdebaozi and Claude Opus 4.8
49173d9c28
feat(ai写作): 大纲整理可见化 + 检索词结合大纲 + 素材/大纲阶段关思考
...
- 草稿确认卡:「给出修改意见」「让编辑继续审核」移到「确认定稿」上方。
- 大纲整理阶段文案:用户自带大纲时显示「整理你的大纲」而非「规划大纲」
(OutlineStreamingView / 骨架屏 / 状态栏,按 request.userOutline 切换)。
- 素材收集专家:用户自带大纲时把大纲原文带入检索词生成,让关键词结合写作
意图覆盖各章节主题(_keyword_outline_section,agent + legacy 两路)。
- 素材收集(检索词/排序)与大纲整理/生成阶段强制关闭思考
(create_chat_model force_disable_thinking:GLM thinking.disabled +
Qwen/vLLM enable_thinking=false),关不掉的模型仍由 ThinkTagParser 把
<think> 分流到思考框正常展示。disable_thinking 串入
_utils.get_model/llm_json 与 _agent_runner.stream/run_writing_agent。
- 含草稿「局部修改」WIP(writer_draft 只重写命中章节)及外观控件改动。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-24 18:32:10 +08:00
fengxiangdebaozi and Claude Opus 4.8
e9c8d1cea2
feat(ai写作): 自带大纲/会商及研究模板等前后端改动
...
提交工作区中 AI 写作(表单/时间线/历史/上下文/流式 hook/类型)、
研究模板配置页、lead_agent、researcher/graph/state 及 gateway/config
的进行中改动。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-24 16:15:39 +08:00
fengxiangdebaozi and Claude Opus 4.8
d2c76100f2
perf(ai写作): 用户自带大纲整理提速并流式化
...
用户自带大纲时「整理大纲」原有两个阻塞式非流式 LLM 调用,内网模型
<think> 关不掉导致用户长时间干等:
- 素材关联(每次都调)改为确定性词重叠 _assign_materials_heuristic,
零 LLM、瞬时;有编号/标题/缩进的大纲整理几乎零等待。
- 散文化大纲的 LLM 归一改为流式 _stream_normalize_user_outline:
ThinkTagParser 把思考推思考框、正文实时打字机展示并累积解析;
并在 OUTLINE_NORMALIZE_USER 末尾追加 /no_think。
- researcher 路径只做确定性解析,解析不出返回 None,交给 writer_outline
流式归一(outline_chunk 在该阶段天然映射大纲思考框)。
- 移除废弃的 OUTLINE_MATERIAL_ASSIGN_* 提示词与 llm_json 死引用。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-24 16:15:39 +08:00
fengxiangdebaozi and Claude Opus 4.8
b8c78ba06e
feat(ai-writing): 大纲先行确认 + 新文章类型识别 + 参考文献 + 编辑器修复
...
- 写作配置 Q&A 改为「先流式生成大纲并多轮确认 → 再确认意图」,放宽轮数上限
- 意图识别出列表外的新文章类型时带上类型名+简介(仅本次写作临时使用)
- 成稿支持参考文献:正文 [n] 角标 + 文末按出现顺序的「参考文献」列表(表单开关,默认开)
- 流式接取未闭合 <think> 思考内容,首 token 前加「正在整理…」占位
- 修复右侧编辑器输入空格只出一次、光标跳字(避免自激回灌 setContent 重置光标)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-23 19:07:03 +08:00
fengxiangdebaozi and Claude Opus 4.8
b59cbd51d9
feat(ai-writing): 各阶段模型调用自动容错,失败时换下一个模型继续
...
参考多智能体会商的容错思路:意图解析/大纲/正文/审核四个 LLM
环节失败时,按 config.yaml models 顺序换下一个模型重跑该环节,
并通过 model_switch 事件在前端时间线提示「『X』模型<原因>,
已自动切换到『Y』继续」。正文逐章节、审核逐维度独立切换,
已生成的章节/维度保留;意图解析成功的模型还会写回 state
供下游阶段沿用,避免每阶段重复经历同一次失败。
- nodes/_model_fallback.py: 候选模型链 + 异常分类 + model_switch
事件构造(沿用 ROUNDTABLE_MODEL_FALLBACK[_MAX] env 开关)
- intent_parser/writer_outline/writer_draft/editor: 失败循环换模型
- 前端 types/reducer/timeline: 新增 model_switch 事件类型,按
stage 复位对应流式缓冲并以 amber 系统提示渲染
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-22 17:07:53 +08:00
董宏凯 and Claude Opus 4.8
03b6fb724c
feat(roundtable): 深链策划流程小图 + 流程图弹窗横向/缩略图/深蓝适配
...
- Step1 消息列表头部:深链 taskId 模式取到目的树后,左侧标题换成「策划流程」
彩色层级小图(任务→目的→…→叙事,每级配色对齐流程图节点 + 类型小图标),
点击打开任务目的流程图弹窗;仅第一步、有数据时出现。
- TaskPurposeDialog 流程图:横向(LR)布局 + 右下角缩略图(MiniMap)。
- FlowGraphPanel 深蓝主题适配(随 ThemeContext):容器/头部/画布点阵/连线/图例/
小地图/节点详情弹窗 + 节点配色(FLOW_NODE_TYPE_META_DARK),浅色红主题不受影响。
- 圆桌侧栏深色兜底:neutral 家族 + 米色 hex(#FAF6F5/#ECE7E4/#E8D0CC) 映射到深蓝
token(关系图背板、第N步 tag 等不再泛白)。
附带提交工作区其余暂存改动(AI 写作等),不含 config.yaml。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-18 17:39:19 +08:00
董宏凯 and Claude Opus 4.8
da3d38013e
feat(ai-writing): 素材收集技能调用失败时容错回退到其他技能
...
默认/选中技能调用失败(超时、报错、全部检索词失败)时不再直接报错,
改用其他技能继续检索:节点 emit skill_error 步骤(带真实原因),配置技能
全部失败且无新素材时跑 fallback 兜底(内置知识库检索优先,再到目录其它已
启用技能)。前端 SkillStepsCard 渲染 skill_error(玫红)/ fallback(琥珀),
时间线展示"技能报错→改用其他技能搜集"。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-16 14:15:49 +08:00
董宏凯
d5f319d9cb
@
...
feat(圆桌): Step3 三产物并行 + 大屏多页模式 + 后台挂起查看恢复流程
后台挂起 Step3:
- engine 总结报告/结果绘制/大屏数据 asyncio.gather 三流并行,故障隔离
- request.state 回归修复(进程内虚拟 request 补 state),恢复后台报告
- ROUNDTABLE_JOB_GATEWAY 默认 inprocess;产物自愈重试(截断/缺失纠偏)
- 大屏后端只产 report-json(dashboardJson),前端按当前主题渲染
结果绘制大屏多页模式(模式二):
- report-template 模板渲染(report-json→大屏HTML),零截断、主题跟随
- 与模式一同款交互(流式+沙箱+可修改);沙箱新窗口打开按钮
最终方案展示:左侧席位栏+总控头像、交付/文件合并、收展动画、内联沙箱
后台挂起查看=恢复实时流程:
- handleLoadDraft 返回 Promise,await hydrate 后订阅 streamJob SSE 跟随
- saveDraftNow 强制存(发起前+查看前各一次)防丢
第二步优化:总控判断串/并行(并行单列可写)、席位上下文+交付模板、
peerDeliveries、失败重试、共识标记、流程图小窗(缩放/拖动/并行批)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
@
2026-06-13 10:36:46 +08:00
董宏凯 and Cursor
a4a9a4d26e
AI 写作四阶段内置智能体 Phase 1-4 落地
...
新增 ai-writing-researcher/outliner/writer/editor 种子 agent、_agent_runner 与 use_builtin_agents 灰度开关;四节点可按 flag 切换 SOUL 模式;时间线补大纲规划师配色并更新改造文档。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-11 22:58:38 +08:00
xuhd and Claude Opus 4.8
b0e48b6bda
refactor(studio): 文案“我的笔记/笔记本”统一改为“我的空间”
...
涉及空间详情页、AI 写作表单/上下文/类型、researcher 注释及 env 注释。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-11 11:45:35 +08:00
xuhd
82d14351fc
修改名称 笔记本改为 空间
2026-06-11 11:19:26 +08:00
xuhd
b8d3a549df
buggggg
2026-06-10 11:27:48 +08:00
董宏凯 and Claude Opus 4.8
d49406d2f1
Merge branch 'master' into dhk-1
...
解决 8 处冲突:
- app.py:同时挂载 public_embed + html_page_favorites 两个 router
- .env:保留 dhk-1 的 CORS 配置(含 5174、ALLOW_ALL=0)
- message-list.tsx:并入双方新增(onSetupWriting* 解构 + contentClassName/fitMessageRowsToContent 类型)
- WorkspaceRoutes.tsx:采用 master 的路由结构(含 chats_iframe/IframeChatPage),补回 dhk-1 的 BusinessChainEditorPage 导入与 roundtable/chains 路由
- LoginPage.tsx:合并两套登录(master 的 token 换登录 + dhk-1 的 online-ticket),并集依赖数组
- ScheduledTasksPage.tsx:采用 master 的 HTML 定时任务表单(isHtmlTask 分支)
- AIWritingForm.tsx:保留 dhk-1 的 useWritingForm 重构,补回 master 的笔记来源 useState;WritingFormContext.materialSource 扩展支持 'notebook'
- useAIWritingStream.ts:保留 dhk-1 重构(仅 reducer/helpers,useAIWriting 已移至 AIWritingContext),不并入 master 在此文件的旧实现
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-03 17:26:52 +08:00
fengxiangdebaozi
ab876fc7d8
feat(ai-writing): 支持用户粘贴已有大纲并按结构生成
...
表单可提交 userOutline,后端解析/归一用户大纲并关联素材;补充大纲测试用例与右侧编辑器滑词/段落菜单文档。
2026-06-03 11:43:44 +08:00
xuhd and Claude Sonnet 4.6
73700cca54
fix(ai_writing): 笔记来源素材使用真实检索分数并打印请求日志
...
- 笔记 chunk 的 relevance_score 改用接口返回的 score 字段(向量相似度/RRF),接口无分数时降级为位置估算
- _search_notebook 增加 INFO 级日志,输出每次请求的 payload 和响应 status/body,便于调试
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-02 16:31:57 +08:00
xuhd and Claude Sonnet 4.6
e4983be9d7
fix: 解决 merge 冲突,恢复笔记来源字段
...
合并 master 时冲突导致 notebook_search_space_id / notebook_source_ids
被覆盖,现补回;同时兼容 master 新增的 material_source / model_name 字段。
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-01 14:22:55 +08:00
xuhd
e30b44dae1
Merge branch 'master' of http://192.168.0.200/knowledge-base-bj/deerflow-server into xuhd
2026-06-01 14:21:20 +08:00
董宏凯 and Claude Opus 4.8
5d0bafd651
AI写作:新增素材来源选项(知识库/技能检索)
...
写作表单新增「素材来源」下拉:知识库(默认 web/intranet 检索)/
技能检索(用已启用技能编排检索)。用户选择后素材收集专家首次检索
据此决定检索方式。
- state 新增 material_source 通道(缺省 knowledge_base,兼容老 session)
- researcher 首次检索(无干预)时按来源决定 is_skill_search;
PAUSE-1「启用技能检索」按钮仍独立有效
- 前端 AIWritingRequest.materialSource + 表单下拉 + hook 提交 material_source
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-01 12:58:50 +08:00
xuhd and Claude Sonnet 4.6
b749c78efa
feat: AI写作集成笔记来源,支持多文档多选检索
...
- 前端 AIWritingForm 新增笔记来源选择器(笔记本单选 + 文档多选 checkbox)
- AIWritingRequest 类型新增 noteSearchSpaceId / noteSourceIds 字段
- AIMaterial.sourceType 新增 notebook 类型
- useAIWritingStream startWriting 时自动获取 notebook_token 并携带笔记参数
- 后端 AIWritingState 新增 notebook_search_space_id / notebook_source_ids 字段
- researcher 节点新增 _search_notebook,解析 API 返回的 documents/chunks,
每个 chunk 作为独立素材(source_type=notebook)混入素材包
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-01 11:47:37 +08:00
董宏凯 and Cursor
633a350bfc
AI写作:技能检索进度反馈与超时兜底
...
检索等待时 SkillStepsCard 显示 spinner;单技能检索 25s 超时避免卡死;前后端增加 skill-timing 调试日志。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-31 14:42:51 +08:00
董宏凯
24e92c437d
ai写作bug修改
2026-05-29 22:16:19 +08:00
fengxiangdebaozi
786ddaa38f
代码修改
2026-05-29 18:07:45 +08:00