user-feedback-processor
处理用户反馈文档(docx)并修改项目代码。当用户提到"用户反馈"、"修改需求"、"反馈文档"、拖入 docx 文件、或指向 feedback-docs 目录时触发。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
处理用户反馈文档(docx)并修改项目代码。当用户提到"用户反馈"、"修改需求"、"反馈文档"、拖入 docx 文件、或指向 feedback-docs 目录时触发。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
| name | user-feedback-processor |
| description | 处理用户反馈文档(docx)并修改项目代码。当用户提到"用户反馈"、"修改需求"、"反馈文档"、拖入 docx 文件、或指向 feedback-docs 目录时触发。 |
| metadata | {"version":"1.4.0"} |
解析用户反馈文档,根据需求修改 LIMS 前端/后端代码,生成 PDF 修改报告。
feedback-docs/reports/python .cursor/skills/user-feedback-processor/scripts/parse_docx.py feedback-docs/<文档>.docx
图片保存在 feedback-docs/images/,使用 Read 工具查看用户标注。
在截图前,必须检查前后端服务是否正常运行:
terminals/ 目录下的文件,查看是否有运行中的服务http://localhost:3002http://localhost:8002重要:后端服务需要在 lims conda 环境中运行!
# 后端(需要先启动,必须激活 lims 环境)
cd backend && conda activate lims && uvicorn app.main:app --reload --port 8002
# 前端
cd frontend && npm run dev
lims conda 环境中运行
conda activate limssource activate lims启动后等待 5-10 秒,确认终端输出显示服务已就绪:
✓ Ready in XsUvicorn running on http://0.0.0.0:8002根据需求修改代码,确保:
frontend/components/)ReadLints 检查代码是否有语法错误修改完成后,必须运行前端构建确保无错误:
cd frontend && npm run build
如果构建失败,根据错误信息修复代码后再次构建,直到通过。
如果修改涉及后端模型(backend/app/models/),需要同步更新 init_db.py:
检查模型变更:查看是否有新增字段、新表、或字段类型变更
更新 init_db.py:
init_db() 中添加示例数据重建数据库(测试环境):
cd backend && conda activate lims && python init_db.py --drop
注意:--drop 会删除所有现有数据,仅在测试环境使用!
模型文件位置:
backend/app/models/ - SQLAlchemy 模型定义backend/app/schemas/ - Pydantic 数据模式backend/init_db.py - 数据库初始化脚本修改代码后,必须验证页面是否正常工作:
browser_navigate 重新访问browser_snapshotalert、dialog 元素browser_console_messages| 错误类型 | 可能原因 | 解决方法 |
|---|---|---|
| Network Error | 后端未启动 | 启动后端服务 |
| 404 Not Found | API 路径错误 | 检查 API 端点 |
| TypeScript Error | 类型错误 | 修复代码类型 |
| Runtime Error | 代码逻辑错误 | 检查堆栈跟踪 |
重要:修改代码后,必须仔细检查页面的 UI 显示是否正常。常见问题包括:
发现问题时,检查相关组件的 CSS 样式(特别是 overflow、width、z-index、whitespace、flex-shrink 等属性)。
常用修复方案:
whitespace-nowrapflex-shrink-0min-width 或父容器布局重要:发现错误时必须先修复,不能带着错误继续生成报告!
确认页面无错误后,为每个修改项截取 ROI 截图:
browser_navigate → browser_snapshot → 检查错误 → browser_take_screenshot → 压缩图片
截图要求:
feedback-docs/reports/ 目录高分辨率截图必须压缩,否则可能导致 "image too large" 错误。
截图后立即运行压缩脚本:
# 压缩单张图片(自动转换为 JPEG,最大 1200x800)
python .cursor/skills/user-feedback-processor/scripts/compress_image.py feedback-docs/reports/screenshot.png
# 自定义参数
python .cursor/skills/user-feedback-processor/scripts/compress_image.py screenshot.png --max-width 1000 --quality 70
# 压缩目录下所有图片
python .cursor/skills/user-feedback-processor/scripts/compress_image.py feedback-docs/reports/ --all
压缩参数说明:
| 参数 | 默认值 | 说明 |
|---|---|---|
--max-width | 1200 | 最大宽度(像素) |
--max-height | 800 | 最大高度(像素) |
--quality | 75 | JPEG 质量 (1-95, 越低越小) |
--keep-png | false | 保持 PNG 格式不转换为 JPEG |
典型压缩效果:
生成综合 PDF 报告,每条修改后直接附上对应截图。
为每个修改项截取 ROI 截图
browser_take_screenshot 截取相关区域feedback-docs/reports/ 目录生成 PDF 报告
使用 scripts/generate_report.py 生成 PDF:
python .cursor/skills/user-feedback-processor/scripts/generate_report.py \
--title "修改报告 - 标签管理" \
--date "2026-01-22" \
--doc "修改内容清单-20260116.docx" \
--output "feedback-docs/reports/report.pdf" \
--items '[
{"id": 1, "desc": "修改描述", "status": "completed", "image": "screenshot.png"},
{"id": 2, "desc": "修改描述", "status": "completed", "image": "screenshot2.png"}
]'
前端: frontend/pages/ frontend/components/ frontend/services/
后端: backend/app/api/v1/endpoints/ backend/app/models/ backend/app/schemas/
报告输出: feedback-docs/reports/
在完成任务前,确认以下事项:
cd frontend && npm run buildinit_db.py| 问题 | 解决方案 |
|---|---|
| Network Error | 启动后端:conda activate lims && uvicorn ... |
| 文字截断 | 检查 overflow、max-width、父容器宽度 |
| 文字换行 | 添加 whitespace-nowrap |
| 元素被压缩 | 添加 flex-shrink-0 |
| 下拉菜单被遮挡 | 检查父容器 overflow、z-index |
| image too large | 运行 compress_image.py 压缩截图 |
| 数据库不同步 | 运行 python init_db.py --drop 重建 |