* feat(canvas): 参考素材 - 增加移除按钮并删除对应连线 * feat(canvas): 完善节点面板交互与拖拽反馈 * fix(canvas): 画布交互与小地图 - 统一浮层层级并完善节点识别 * feat(prompt-optimizer): 增加 AI 提示词优化器及宿主接入 * feat(canvas): 画布 - 增加自动整理节点按钮并补充文档 * chore(web): 前端 - 修正提示词优化器格式 * chore(backend): 后端 - 修正 Go 格式检查 * feat(workspace): 完善诊断导出与本地排障支持 * chore(web): 格式化诊断导出文件 * fix(web-test): 兼容 Bun 测试运行时 * fix(web-test): 对齐模型目录协议断言
94 lines
5.0 KiB
Plaintext
94 lines
5.0 KiB
Plaintext
---
|
||
title: 功能清单
|
||
description: 影策当前已实现的核心工作台能力与使用入口
|
||
---
|
||
|
||
# 功能清单
|
||
|
||
## AI 提示词优化器
|
||
|
||
提示词优化器是一个内置 AI 能力插件,用于把模糊的生图或生视频想法整理成可以直接使用的提示词。它复用宿主已经配置的文本模型和渠道,不在浏览器中保存或拼接第三方密钥。
|
||
|
||
### 使用入口
|
||
|
||
- 创作页 `/create` 的提示词输入框中,点击“优化”。
|
||
- 画布中的图片或视频节点提示词编辑器中,点击“优化”。
|
||
|
||
面板使用紧凑的聊天式交互,跟随当前输入框定位,支持拖动、边缘调整尺寸和窗口尺寸变化。打开与关闭不使用延迟动效,避免遮挡画布或让用户误以为请求卡住。
|
||
|
||
### 优化方式
|
||
|
||
| 方式 | 用途 |
|
||
| --- | --- |
|
||
| 扩展想法 | 从模糊想法补齐主体、场景、构图、光线、镜头等可执行细节。 |
|
||
| 精修已有提示词 | 尽量保留原意,只修正表达并补充必要细节。 |
|
||
| 强化风格 | 保留主体和动作,强化色彩、材质、光影与指定风格。 |
|
||
| 适配模型 | 按当前生成模型和协议调整提示词结构,避免使用未确认的参数语法。 |
|
||
| 结合参考 | 使用已连接的图片或文本补充外观、一致性、构图和关联关系。 |
|
||
|
||
面板底部可以单独选择优化所使用的文本模型;目标生成模型仍取当前图片或视频生成配置。两者职责不同:前者负责整理提示词,后者负责最终生成内容。
|
||
|
||
### 结果与安全边界
|
||
|
||
- 优化结果以结构化内容返回,包含正向提示词、规避项、修改说明、假设和可选备选版本。
|
||
- 结果可以继续编辑;只有点击“采用”才会回填当前输入框,并自动关闭面板。
|
||
- 请求支持流式反馈、取消和错误提示,不会在优化失败时覆盖原提示词。
|
||
- 参考素材只提交当前已连接且符合类型的内容;插件不自行访问素材库或后端密钥。
|
||
|
||
### 相关实现
|
||
|
||
- `web/src/lib/plugins/builtin/prompt-optimizer.ts`:插件清单、优化方式和模型适配策略。
|
||
- `web/src/components/canvas/canvas-prompt-optimizer-drawer.tsx`:聊天面板、拖动缩放和结果采用交互。
|
||
- `web/src/services/plugin-host.ts`:将插件文本请求接入宿主现有模型渠道。
|
||
- `web/src/pages/create/index.tsx`、`web/src/components/canvas/canvas-node-prompt-panel.tsx`:两个入口的接入。
|
||
|
||
## 用户诊断包导出
|
||
|
||
设置页的“问题诊断”入口和任务失败快捷入口支持导出脱敏诊断包,帮助普通用户提交问题时保留足够的排障上下文。
|
||
|
||
### 当前能力
|
||
|
||
- 浏览器内存中保留最近的全局错误、未处理 Promise、API 请求和任务创建事件。
|
||
- 后端按当前登录用户、时间范围、任务或项目聚合 `Task`、`TaskLog` 和 `ApiCallLog`。
|
||
- 下载前显示数据量预览,并生成包含清单、运行时信息和 JSONL 日志的 ZIP。
|
||
- 默认排除提示词、任务输入、API Key、Cookie、上游请求/响应体和 URL 查询参数。
|
||
|
||
### 使用入口
|
||
|
||
- 设置页:`/settings?section=diagnostics`。
|
||
- 失败任务详情中的“导出诊断包”按钮会自动带入任务和项目范围。
|
||
|
||
相关设计和接口边界见[用户诊断包设计](../../../design/user-diagnostic-bundle.mdx)。
|
||
|
||
## Eagle 外部素材库
|
||
|
||
内置 Eagle 插件可以从用户配置的 Eagle 服务读取素材、文件夹和标签,并将素材映射为工作台可引用的外部资源。
|
||
|
||
### 当前能力
|
||
|
||
- 支持按文件夹、关键词和素材类型查询 Eagle 素材。
|
||
- 素材没有文件夹或标签时,仍返回稳定的空集合,工作台可以继续展示和引用素材。
|
||
- 保留素材的文件夹路径、标签、扩展名、尺寸、大小和修改时间等排障与展示信息。
|
||
|
||
### 相关实现
|
||
|
||
- `backend/internal/service/eagle.go`:Eagle 响应解析和集合字段归一化。
|
||
- `web/src/lib/plugins/builtin/eagle.ts`:外部素材映射、预览和引用处理。
|
||
|
||
## 画布节点自动整理
|
||
|
||
画布底部的“自动整理节点”按钮用于快速改善节点排布,适合处理节点散落、间距不一致或流程方向不清晰的画布。
|
||
|
||
### 使用规则
|
||
|
||
- 选中了两个或以上节点时,只整理选中的可移动节点;没有选中节点时,整理所有顶层可移动节点。
|
||
- 候选节点存在连线时,按连线依赖关系进行流程布局;没有连线时,自动使用网格布局。
|
||
- 锁定节点、容器节点和折叠批次中的隐藏子节点不会被移动。
|
||
- 节点位置变化会进入现有画布历史记录,可使用“撤销”恢复整理前的布局,并继续由画布生命周期自动保存。
|
||
|
||
### 相关实现
|
||
|
||
- `web/src/components/canvas/canvas-zoom-controls.tsx`:底部视图控制 Dock 与“自动整理节点”入口。
|
||
- `web/src/pages/canvas/use-canvas-node-operations.ts`:候选节点筛选、流程/网格布局选择和位置提交。
|
||
- `web/src/lib/canvas/canvas-layout.ts`:流程、网格、行列排列和对齐算法。
|