项目周报管理框架 V2.5(2026-07-08更新)
触发条件
- 每周五16:00自动生成周报
- 每周一09:00询问是否有修改版
- 每周一10:30提醒提交周报
- 用户提到"周报"、"生成周报"、"导出周报"
铁律(4条,2026-07-06确认)
- 记住项目名称和群聊关联
- 没有攀哥主动要求修改时,不允许自己修改
- 如果攀哥发来的文件/照片和已记录的不一致,必须先询问是否修改
- 违反此规则视为严重错误
日期计算铁律(2026-07-07)
- 禁止心算日期,必须用Python代码计算
- 汇报周期 = 该周周一至周日
- 文件名日期 = 该周周日日期(YYYYMMDD)
- 计算后必须打印验证
项目编号规则
| 项目状态 | 编号格式 | 示例 |
|---|---|---|
| 已立项 | 研究室缩写+年份(2位)+2位数字 | ME2601, IV2601, LA2601 |
| 未立项 | 年份(2位)+3位数字 | 26001, 26002, 26003 |
执行流程
1. 检查知识库(V2.5更新:路径动态化)
路径:knowledge/项目周报知识库_{研究室}/
文件:
- 项目清单.md
- 群聊关联表.md
- 成员归属表.md
- 项目周报管理框架V2.5.md
- 周报模板_{研究室}.xlsx
研究室路径映射:
| 研究室 | 知识库路径 |
|---|---|
| 机电系统 | knowledge/项目周报知识库_机电系统/ |
| 工业视觉 | knowledge/项目周报知识库_工业视觉/ |
| 物流与自动化 | knowledge/项目周报知识库_物流与自动化/ |
注意:机电系统当前使用旧路径knowledge/项目周报知识库/,待迁移。
如果知识库不存在 → 进入初始化流程(见下方)
2. 计算文件名日期
from datetime import datetime, timedelta
today = datetime.now()
weekday = today.weekday() # 0=周一
monday = today - timedelta(days=weekday)
sunday = monday + timedelta(days=6)
filename_date = sunday.strftime("%Y%m%d")
3. 群聊匹配(模糊匹配+人工确认)
1. 获取美信会话列表 → mx_message_sessions(本地接口,稳定)
2. 字符串相似度匹配 → 相似度>85%的候选群
3. 列出候选群 → 让攀哥确认哪个是对的
4. 确认后记录sId → 存入群聊关联表的sId列
5. 后续直接用sId查询 → 不再依赖搜索API
为什么这样做:
| 问题 | 解决方案 |
|---|---|
| 搜索API不稳定(HTTP 500) | 用本地会话列表,不依赖搜索API |
| 群名差几个字符匹配不上 | 模糊匹配,容错性强 |
| 容易关联错误 | 人工确认,最终攀哥拍板 |
| 每次都要搜索 | sId永久记录,后续直接用 |
4. 检查群聊抓取
检查 knowledge/项目周报知识库/群聊抓取记录/
├─ 有md文件 → 增量抓取(从last_fetch_time开始)
└─ 无md文件 → 首次抓取(需确认)
首次抓取规则(最近3个月):
- 范围:从当前日期往前推90天(3个月)
- 示例:今天是2026-07-08,则抓取2026-04-09至今的消息
- 不抓取超过3个月的历史消息(避免数据量过大)
- 输出:生成last_fetch.json
首次抓取确认规则:
- 提示攀哥:"以下群聊需要首次全量抓取,耗时可能较长(几分钟到十几分钟)"
- 等待攀哥确认"抓取"或"稍后"
限流策略:
- 单次请求间隔:1-3秒
- 批次大小:10页(1000条消息)
- 批次间休息:30秒
- 多群间隔:5分钟
4. 生成周报内容(V2.5更新:增加异常检测)
生成步骤:
- 读取项目清单
- 读取群聊关联
- 抓取群聊消息
- 状态合法性检查
- 异常检测(V2.5新增):
- 检测群聊无消息超2周的项目 → 提醒确认项目状态
- 检测项目状态长期未变(>4周)→ 提醒更新状态
- 输出异常列表,写入
预警记录.md
- 生成周报内容
- 保存周报
12列字段:
| 列 | 字段 | 格式要点 |
|---|---|---|
| A | 序号 | 项目编码(ME2603/26001),居中,不是纯数字 |
| B | 项目 | 项目名称,垂直居中+水平居中 |
| C | 项目状态 | 11阶段+3特殊状态,居中 |
| D | 项目经理 | 居中 |
| E | 本周成员输出 | 按归属分组:智研院:→空行→事业部&工厂:(脚本自动读取成员归属表) |
| F | 本周进度 | 实际情况+本周进展+问题点(序号"1、",同一天用";"合并) |
| G | 本周洞察 | 上周计划核对→建议(序号"1、") |
| H | 下周计划 | AI预判+具体日期节点 |
| I | 上周进度 | 从上周周报复制,首次生成从群聊提取最近一周 |
| J | 风险/阻塞 | 自动提取 |
| K | 备注 | 留空 |
| L | 信息来源 | 群聊名称 |
表头完整名称:序号/项目/状态/项目经理/本周成员输出/本周进度/本周洞察/下周计划/上周进度/风险/阻塞/备注/信息来源
Excel格式规范(2026-07-08确认):
- 序号列(A列):必须是项目编码(如ME2603、26001),不是纯数字
- 项目列(B列):必须垂直居中+水平居中,不是左对齐
- 表头标题结构:
- 第1行:
{研究室名称}周报(大标题,合并A-L列,微软雅黑14号加粗)- 机电系统研究室 →
机电系统研究室周报 - 工业视觉研究室 →
工业视觉研究室周报 - 物流与自动化研究室 →
物流与自动化研究室周报
- 机电系统研究室 →
- 第2行:
汇报周期:2026-06-29 至 2026-07-05(合并A-L列,微软雅黑11号) - 第3行:列头(序号/项目/状态/项目经理/本周成员输出/本周进度/本周洞察/下周计划/上周进度/风险/阻塞/备注/信息来源)
- 第4行起:项目数据
- 第1行:
- 表头名称:必须使用完整表头,不能简化
- 自动行高:根据内容自动设置合适的行高,保证表格内容显示完整
- 同一天合并:同一天的多条进展用";"合并为一行
- 示例:
1、7.1 采购物料确认到位(已完成);约电工周五接线(进行中)
- 示例:
F列格式(方案B):
实际情况:设备调试阶段。项目整体状态描述(进展+数据+问题+要求)。
本周进展:
1、7.8 焊接参数优化完成,良率提升至85%(已完成)
2、7.9 移载机构精度验收通过,偏差±0.3mm(已完成)
问题点:
1、双排成像仍有轻微干扰,需继续优化
群聊无消息时:
实际情况:设备调试阶段。项目整体状态描述。
本周进展:
1、本周群聊无新消息(7.6-7.12)
2、最后进展:7.4 移载定位精度测试完成,偏差±0.5mm(已完成)
3、手动补充:7.3 现场已完成设备安装
5. 增量迭代规则
| 场景 | 处理 |
|---|---|
| 首次生成 | 从零分析,生成V1 |
| 再次生成 | 读取上一版,对比群聊,只增减 |
| 攀哥修改后 | 以攀哥修改版为基准 |
| 新一周周报 | 新一周开始时(周一00:00起),重新从零开始 |
攀哥修改版同步流程:
攀哥修改Excel → 发给我
↓
我读取Excel,对比差异
↓
告诉攀哥差异,询问"是否修改?"
↓
攀哥确认"修改"
↓
自动备份当前版本为 v1.xlsx / v1.md
↓
更新 latest.xlsx + latest.md
6. 数据保留策略
| 数据类型 | 保留策略 |
|---|---|
| 群聊抓取记录 | 永久保存,不删减 |
| 周报草稿 | 保留2周,第4周删除第1周 |
| 周报草稿(项目结项后) | 不删除,保留 |
7. 归档与发送
归档路径:knowledge/项目周报知识库/周报归档/
文件名:机电系统研究室周报-YYYYMMDD.xlsx
初始化流程(3种方式,V2.5更新)
初始化步骤(V2.5新增)
用户说"生成周报"
↓
检查知识库是否存在
├─ 存在 → 正常生成周报
└─ 不存在 → 进入初始化流程
↓
1. 询问研究室名称(机电系统/工业视觉/物流与自动化)
↓
2. 创建知识库目录:knowledge/项目周报知识库_{研究室}/
↓
3. 自动生成Excel模板:周报模板_{研究室}.xlsx
(调用 scripts/generate_weekly_report_template.py)
↓
4. 提示用户选择初始化方式(1/2/3)
方式1:手动填写md模板
适合熟悉markdown的用户,直接编辑模板文件。
方式2:对话式填写
AI询问用户信息,帮用户写入md文件。
方式3:Excel模板填写(推荐,V2.5更新:模板自动生成)
- 初始化时自动生成模板(不再使用assets中的空白模板)
- AI发送自动生成的Excel模板文件
- 用户下载、填写、上传
- AI读取Excel,验证格式
- 梳理信息让用户确认
- 确认后写入md文件
Excel模板生成命令:
python scripts/generate_weekly_report_template.py
模板内容:
- Sheet1:已立项项目(含示例数据)
- Sheet2:未立项项目(含示例数据)
- Sheet3:填表说明(项目编号规则、项目状态、12列字段说明)
关键人物
- 尹德斌:智能装备研究所所长,称呼"尹博"(不是客户!)
多研究室适配(2026-07-08)
本技能包支持多个研究室使用,只需在初始化时指定研究室名称。
研究室列表
| 研究室名称 | 编号前缀 | 说明 |
|---|---|---|
| 机电系统研究室 | ME | 默认研究室 |
| 工业视觉研究室 | IV | 工业视觉相关项目 |
| 物流与自动化研究室 | LA | 物流与自动化相关项目 |
适配方式
-
标题自动适配:
- 模板第1行标题:
{研究室名称}周报 - 机电系统 →
机电系统研究室周报 - 工业视觉 →
工业视觉研究室周报 - 物流与自动化 →
物流与自动化研究室周报
- 模板第1行标题:
-
项目编号前缀适配:
- 机电系统:ME2601, ME2602...
- 工业视觉:IV2601, IV2602...
- 物流与自动化:LA2601, LA2602...
-
知识库目录适配:
- 机电系统:
knowledge/项目周报知识库_机电系统/ - 工业视觉:
knowledge/项目周报知识库_工业视觉/ - 物流与自动化:
knowledge/项目周报知识库_物流与自动化/
- 机电系统:
初始化时指定研究室
对话式初始化时,AI会询问:
"请问您是哪个研究室?(机电系统/工业视觉/物流与自动化)"
根据回答自动配置:
- 知识库路径
- 项目编号前缀
- 周报标题
异常检测规则(V2.5新增)
检测项8:群聊无消息超2周
- 触发条件:某项目所有关联群聊连续2周(14天)无新消息
- 预警输出:
【提示】以下项目群聊无消息超过2周,请确认项目状态: 1. ME2601 F4新月输出管自动插管焊接连续流(楼宇荆州)- 最后消息:2026-06-20 建议:如项目已暂停/终止,请更新项目状态。
检测项9:项目状态长期未变
- 触发条件:项目状态连续4周(28天)未变化
- 预警输出:
【提示】以下项目状态连续4周未变化,请确认是否需要更新: 1. ME2604 水路镀层导热及阻垢优化及设备化 - 状态"设备装配"已持续35天 建议:确认项目是否正常推进,或是否需要更新状态。
详细框架
完整20章节框架文档:references/项目周报管理框架V2.5.md
