feat: add guarded image generation controls

This commit is contained in:
john
2026-07-20 07:37:43 +08:00
parent 72ed4dde83
commit 105a72c1f1
19 changed files with 482 additions and 23 deletions
+12 -1
View File
@@ -168,13 +168,14 @@ description: 在专属 MindSpace 目录生成可公开访问的静态 HTML 报
1. **唯一可写目录**\`${publishDir}\`
2. **禁止**使用绝对路径(如 \`/Users/...\`\`../\` 跳出目录)
3. **允许**在本目录内使用 \`write_file\`\`edit_file\`\`read_file\`\`list_dir\`\`generate_docx\`\`generate_long_image\`**禁止**访问此目录外的路径(含 \`../\`、其它用户目录、项目根目录;系统会在 OS 层拦截越界访问)
3. **允许**在本目录内使用 \`write_file\`\`edit_file\`\`read_file\`\`list_dir\`\`generate_image\`\`generate_docx\`\`generate_long_image\`**禁止**访问此目录外的路径(含 \`../\`、其它用户目录、项目根目录;系统会在 OS 层拦截越界访问)
4. **禁止**子 Agent、扩展管理、修改工作区外文件
5. 页面默认写入 \`public/\` 分区,使用相对路径如 \`public/report.html\`\`public/assets/chart.png\`
6. 生成 HTML 后,向用户提供可访问链接,格式:
\`${publicBaseUrl}/${PUBLISH_ROOT_DIR}/${slug}/public/<文件名>\`
(写入 \`public/页面.html\` 时 URL **必须**含 \`public/\`;仅当 HTML 直接写在 workspace 根目录时才省略)
7. **只要页面接收用户输入并要求以后查看、汇总、统计、修改或删除,就不是纯静态页**。禁止使用 \`localStorage\` / \`sessionStorage\` / \`IndexedDB\` 保存任何数据;必须立即 \`load_skill\`\`page-data-collect\`,通过 Page Data API 写入当前用户专属 PostgreSQL schema。禁止 SQLite、静态 JSON/JS 文件或内存 fallback 冒充持久化。记账、日记、打卡、清单、台账、问卷、报名及其管理页都适用。
8. 当编排提示为“图片策略:强制生成”或用户明确要求新图片、背景图、主图、封面、插画、照片时,必须先调用 \`sandbox-fs__generate_image\`;不得用 SVG、CSS 绘图、旧素材或网页搜索图片冒充本次生成结果。
## 推荐工作流
@@ -188,6 +189,16 @@ description: 在专属 MindSpace 目录生成可公开访问的静态 HTML 报
8. 若用户明确要求长图下载,必须先 \`load_skill\`\`long-image-download\`,调用 \`generate_long_image\` 生成并确认 \`public/<页面名>.long.png\` 已存在
9. 完成后按「回复格式」返回可点击链接
## AI 图片生成(按意图与用户选择)
- **强制生成**:页面主图优先只调用一次 \`generate_image(purpose=hero)\`;卡片封面和信息流缩略图必须复用这张主图裁剪派生,hero 成功后禁止再调用 \`card_cover\` / \`feed_cover\`
- 只有后台关闭 \`hero\`、且任务确实只需要某一种封面时,才允许改用一次 \`card_cover\`\`feed_cover\`;正文配图 \`inline_image\` 仅在后台开启且正文确有需要时单独生成
- 成功结果必须满足 \`ok=true\`、包含 \`jobId\`,且 \`source.mimeType\`\`image/png\`\`image/jpeg\`\`image/webp\`
- HTML 的 \`<img>\`、背景图及 \`mindspace-cover.cover\` 必须引用本次返回的 \`asset.publicUrl\` 或对应工作区相对路径;页面主图默认同时作为缩略图源图
- **自动**:只在用户需求确实需要新主图、背景图、正文配图或封面时调用
- **关闭**:禁止调用 \`generate_image\`
- 强制生成失败时必须如实报告,禁止静默改用 SVG/旧图后宣称图片生成完成
## 按需伴生下载文件
- 默认不生成伴生文件;只有用户明确要求下载附件时才生成