Back to all skills
docx-work-reportSKILL.md ↗

生成实习生结构化工作记录文档(格式对齐官方「AI Agent 小团队实习生工作记录模板包」)。当用户说"日报"、"新增"、"周报"、"任务看板"、"台账"、"生成docx"、"写日报"、"填新增"、"打包提交"时触发。支持日报、新增记录、周报、任务看板(五表联动)四类 docx 自动生成;台账不生成 Word,而是用 openpyxl 追加到汇总 Excel。输入为口语化的工作内容描述,输出为格式化的 .docx / .xlsx 文件。

docx-work-report

将口语化的工作内容描述转化为结构化文档,用于实习生/小团队的日常工作记录。输出格式对齐官方模板包(01 每日工作记录 / 02 每日新增记录 / 03 周报 / 04 任务看板与导师反馈 / 05 台账 Excel)。日报/新增/周报/任务看板输出为 Word;台账不生成 Word,而是用 openpyxl 追加到汇总 Excel。

注意:此为通用版,不含具体姓名等个人信息。首次使用需配置姓名、导师和项目名。

触发条件

  • "日报"、"新增"、"周报"、"任务看板"、"台账"、"生成docx"、"写日报"、"填新增"、"打包提交"
  • 用户提供某天/某周的工作内容并要求生成文档

依赖

  • Python 3.12+,需安装 python-docx、lxml、openpyxl
  • 安装命令:pip install python-docx lxml openpyxl

工作流程

第一步:收集信息

首次使用需用户提供(后续沿用):

  • 姓名、导师姓名
  • 项目名称(填在基本信息"所在小组/项目"栏)

必填项(用户需提供):

  • 工作/任务内容(口语化即可)
  • 用户给 PR 链接时,产出/证据列直接放对应链接

可选项(有则填,无则跳过):

  • 实验记录、调试过程、风险问题
  • 导师反馈、每日站会信息
  • 下周计划、明日计划
  • 能力建设进展、个人成长沉淀(周报第四、六节)

第二步:确定输出类型

根据用户请求生成对应文档:

用户请求输出文件命名格式
日报日报.docx(对齐 01 模板),每周一到周五每天各一份姓名-YYYY-MM-DD-日报.docx
新增记录新增.docx(对齐 02 模板),每天各一份,编号每天从 NEW-001 重新起姓名-YYYY-MM-DD-新增.docx
周报周报.docx(对齐 03 模板)姓名-YYYY-WXX-周报.docx
任务看板任务看板.docx(对齐 04 模板)姓名-YYYY-WXX-任务看板.docx
台账追加到汇总 Excel,不生成 Word追加到汇总台账 .xlsx

第三步:运行生成脚本

核心库:scripts/generate_all.py 提供 4 个函数(create_daily_report、create_new_record、create_weekly_report、create_kanban)。create_ledger 已弃用——台账改用 Excel 追加方式(见下节)。

实际生成模式:以已有的数据脚本为模板,复制后只替换 NAME/REVIEWER 和数据区段(d0622、new_0622、weekly_data、kanban_data 等变量内容)。一次运行生成该周全部 docx(不含台账)。

脚本通用结构(复制后只改数据):

import sys
sys.path.insert(0, r"<本技能目录>\scripts")
from generate_all import (create_daily_report, create_new_record,
    create_weekly_report, create_kanban)

OUTPUT_DIR = os.path.dirname(os.path.abspath(__file__))
import generate_all; generate_all.OUTPUT_DIR = OUTPUT_DIR

NAME = "填写姓名"
REVIEWER = "填写导师"
PROJECT = "填写项目名"

# 数据定义区(唯一需要修改的部分)
d0622 = { "date": "2026-06-22", "goals": [...], ... }
# ... 更多数据 ...

# 生成区(不变)
create_daily_report(date_str=d0622["date"], ...)    # 日报
create_new_record(date_str=new_0622["date"], ...)    # 新增
create_weekly_report(..., capability_rows=[...], growth_rows=[...])  # 周报(8节)
create_kanban(...)                                   # 任务看板

重要规则:

  • 脚本结构不变,只替换 NAME/REVIEWER 和数据;不要每次重写生成逻辑
  • 通过 generate_all.OUTPUT_DIR 覆盖输出目录到脚本所在位置
  • 日期在表格数据行内使用 YYYY/M/D(不补零),由 format_date() 辅助
  • 基本信息表日期使用 YYYY年M月D日,由 format_date_cn() 辅助

台账生成(Excel 追加方式,不生成 Word)

台账不再生成 docx,而是把本周数据追加到汇总 Excel(改前先备份 .bak)。Excel 结构对齐官方 05 模板:6 个 sheet = 使用说明 + 4 个数据 sheet + 评价与反馈。

若找不到之前每周叠加的汇总 Excel 文件,先向用户询问其位置或名称,不要自行新建或猜测。

Excel 结构(表头行位置与列数):

Sheet表头行数据起始行列数追加内容
每日工作记录第 8 行第 9 行13整周逐日任务记录
每日新增记录第 4 行第 5 行11整周逐日新增事项
周报第 4 行第 5 行10一行周报汇总
任务看板第 4 行第 5 行11任务行,ID T-XXX 全表递增
评价与反馈第 4 行第 5 行9导师反馈/阶段评价行

各 sheet 列头(与 05 模板一致):

  • 每日工作记录(13列):日期/姓名/Agent模块/任务类型/今日目标/实际产出/证据链接/验证方式·指标/状态/工时/阻塞事项/明日计划/导师备注
  • 每日新增记录(11列):日期/新增类型/关联模块/标题/来源/价值·影响/处理建议/是否进看板/是否进周报/证据·链接/备注
  • 周报(10列):周次/周期/姓名/项目·小组/一句话总结/关键产出/指标·证据/问题与风险/下周计划/导师评价
  • 任务看板(11列):任务ID/任务名称/负责人/优先级/状态/Agent模块/验收标准/开始日期/截止日期/阻塞·依赖/备注
  • 评价与反馈(9列):日期/反馈对象/反馈类型/具体反馈/行动项/复查日期/完成状态/评分/备注

注意:每日工作记录 sheet 顶部第 4-5 行是"本周汇总信息块",追加时不动该块,只在第 8 行表头下方追加。模板自带下拉选项(数据验证),实际覆盖范围往往不完整——追加新行前先用 ws.data_validations 检查覆盖范围;新行超出范围时,复制原 DataValidation 并扩展其 sqref(或确认该列无需下拉后留空)。

追加流程(openpyxl):

  1. 备份:修改前先 cp 一份 .bak.xlsx(若同目录已存在则跳过或覆盖前确认)
  2. 探测结构:用 openpyxl 读文件,逐 sheet 找到最后一个非空数据行(不能只看 max_row,可能有空行)
  3. 追加数据:从 最后数据行+1 开始写入,日期列用 datetime 对象,其余为字符串。任务看板的开始/截止日期列必须把 number_format 设为 m"月"d"日"——若沿用模板行的"常规"格式,日期会显示成 46251 这样的序列数字
  4. 继承样式:每行逐列 copy() 上一数据行的 font/border/fill/alignment/number_format 作为模板(不要只写值,否则新行无边框无字体)
  5. 任务看板 ID:读上一行的 T-XXX 编号,+1 递增分配
  6. 保存并验证:save 后重新 load 打印新增行,确认列数和内容正确
  7. 同步本周副本:追加完成后,把台账复制一份(对齐官方模板包的 05 号文件命名)放进本周打包文件夹。若复制报 Device or resource busy,说明文件正被 Excel 打开,提醒用户关闭后重试
  8. git 存档(目录已 git init 时):git add -A && git commit -m "WXX: 工作记录追加",与 .bak 备份互为双保险

追加行核心代码模式:

import openpyxl
from copy import copy
from datetime import datetime

def append_row(ws, row_idx, data, template_row, max_cols):
    for col_idx in range(1, max_cols + 1):
        cell = ws.cell(row=row_idx, column=col_idx)
        cell.value = data[col_idx - 1] if col_idx - 1 < len(data) else None
        tpl = ws.cell(row=template_row, column=col_idx)
        cell.font = copy(tpl.font)
        cell.border = copy(tpl.border)
        cell.fill = copy(tpl.fill)
        cell.alignment = copy(tpl.alignment)
        cell.number_format = tpl.number_format

第四步:交付

生成的 docx 文件保存到当前工作区,交付给用户。

文件夹命名规范:每周的文件统一放入一个文件夹,命名格式为 YYYYMMDD-YYYYMMDD_工作记录汇报_姓名。文件夹内必须包含台账 Excel 副本(对齐官方模板包的 05 号文件编号),与 docx 一起打包提交。

文档结构规范(对齐官方模板包)

每份文档开头统一为:文档标题 + 副标题 + 规则说明框,然后进入分节。

日报结构(7节,对齐 01 模板)

标题「AI Agent 小团队实习生每日工作记录」+ 副标题 + 「填写规则」说明框(3条)。

  1. 基本信息(4列表:日期/姓名/所在小组·项目/导师/今日工作时长/整体状态)
  2. 今日目标与实际结果(4列:类别/内容/验收标准·证据/完成情况)
  3. 任务执行记录(6列:序号/Agent模块·任务/输入与方法/今日产出/验证方式·指标/状态与下一步)
  4. 实验/调试记录(5列:实验ID/假设·问题/配置或变更/结果/结论与下一步)— 无则写"无"
  5. 风险、问题与支持需求(4列:问题/风险/影响范围/已尝试方案/需要支持)— 无则写"无"
  6. 明日计划(4列:优先级/计划事项/预期产出/依赖·风险)
  7. 自评与导师反馈(3列:维度/自评/导师反馈留空)

新增记录结构(6节,对齐 02 模板)

标题「AI Agent 实习生每日新增记录」+ 副标题 + 「适用范围」说明框(3条)。

  1. 基本信息(4列表:日期/记录人/关联项目/关联模块)
  2. 新增事项清单(6列:编号/新增类型/标题/来源/价值·影响/处理建议)
  3. 新知识/新方法沉淀(5列)— 无则写"无"
  4. 新问题/缺陷记录(5列)— 无则写"无"
  5. 可复用资产登记(5列)— 无则写"无"
  6. 是否同步到周报(4列)— 无则写"无"

周报结构(8节,对齐 03 模板)

标题「AI Agent 小团队实习生周报」+ 副标题 + 「周报原则」说明框(3条)。

  1. 基本信息(4列表:周次/周期/姓名/导师·Reviewer/项目·小组/本周总工时)
  2. 本周一句话总结(2列:一句话结论/本周最重要证据)
  3. 本周关键产出(4列:产出类别/具体产出/质量·影响证据/当前状态)
  4. AI Agent 能力建设进展(4列:能力维度/本周动作/指标或观察/结论)— 无则写"无"
  5. 问题、风险与决策需求(4列:问题/风险/影响/已采取动作/需要团队决策·支持)
  6. 个人成长与方法沉淀(3列:本周学到的关键点/对应实践/可复用沉淀)— 无则写"无"
  7. 下周计划(5列:优先级/计划事项/预期产物/验收标准/依赖)
  8. 导师评价(3列:评价维度/评分/建议,留空待填)

任务看板(对齐 04 模板,五表联动)

标题「AI Agent 小团队任务看板与导师反馈模板」+ 副标题 + 「使用方式」说明框(3条)。

  1. 一、任务看板(7列:任务ID/任务名称/负责人/优先级/状态/验收标准/截止日期,T-001递增)
  2. 二、每日站会记录(5列:日期/昨日完成/今日计划/阻塞/需同步事项)
  3. 三、导师反馈记录(6列)— 无数据则写"暂无数据"
  4. 四、阶段评价表(4列:评价维度/观察证据/评分/改进建议,评分留空)
  5. 五、团队复盘(2列:复盘问题/记录,5个固定问题)

台账(汇总 Excel,对齐 05 模板,6 sheet)

  1. 使用说明(不动)
  2. 每日工作记录(13列,数据从第 9 行起,第 4-5 行为本周汇总信息块)
  3. 每日新增记录(11列)
  4. 周报(10列)
  5. 任务看板(11列,T-XXX 全表递增)
  6. 评价与反馈(9列)

数据通过 openpyxl 追加到汇总 Excel,各表信息与 docx 日报/新增/周报/任务看板保持一致。

排版规范(对齐官方模板)

  • 页面:A4(21cm × 29.7cm),边距上 1.6cm、下 1.5cm、左右各 1.6cm
  • 文档标题:仿宋 20pt 加粗,深蓝 #1F4E79,居中;下方副标题:仿宋、灰色 #666666、居中
  • 节标题(一、基本信息…):仿宋 14pt 加粗 #1F4E79
  • 数据表:仿宋 9.5pt;边框单线 0.75pt(#B7CBD8);表头底纹 #D9EAF7、文字加粗 #1F4E79 居中;数据行首列 #555555、其余黑色
  • 基本信息表:4 列 [标签, 值, 标签, 值],列宽 3.0/5.8/3.0/5.8cm,标签列底纹 #D9EAF7 加粗 #1F4E79 居中
  • 规则说明框:1×1 表格,底纹 #F7FBFD、边框 #C7DCE8,标签加粗 #1F4E79,条目 9.5pt
  • 正文默认:宋体 10.5pt
  • 各数据表列宽已按官方模板逐表固定(见 generate_all.py 各函数 widths= 参数),不要随意改动
  • 日期格式:基本信息表日期用 YYYY年M月D日;表格数据行日期用 YYYY/M/D(不补零);文件名用 YYYY-MM-DD
  • 周次格式:YYYY-WXX

枚举值参考

优先级

P0(阻塞/核心)、P1(重要)、P2(锦上添花)

状态

Backlog / Todo / Doing / Review / Done / Blocked

新增类型

知识 / 问题 / 机会 / 资产 / 风险 / 需求 / 其他

任务类型

学习 / 开发 / 实验 / 调试 / 文档 / 会议 / Review / 其他

Agent模块

Planner / RAG / Tool Use / Memory / Eval / UI / Infra / Other

关键规则

  1. 不编造用户未提供的信息,缺失项填"-"
  2. 导师评价/反馈列始终留空,等待导师填写
  3. 任务看板中 Done 的任务带截止日期,未完成的不填
  4. 五表联动:各表信息自动流转,保持一致性
  5. 产出文件的命名严格按格式,便于排序和查找
  6. 每周文件统一放入文件夹,命名格式:YYYYMMDD-YYYYMMDD_工作记录汇报_姓名
  7. 每行数据的列数必须与表头一致,多一列会导致 IndexError。常见易错点:
    • 日报 experiments:5列 = 实验ID/假设·问题/配置或变更/结果/结论与下一步(不要加适用范围列)
    • 日报 risks:4列 = 问题/风险/影响范围/已尝试方案/需要支持
    • 周报 outputs:4列 = 产出类别/具体产出/质量·影响证据/当前状态
    • 周报 capability:4列 = 能力维度/本周动作/指标或观察/结论
    • 周报 growth:3列 = 本周学到的关键点/对应实践/可复用沉淀
    • 周报 risks:4列 = 问题/风险/影响/已采取动作/需要团队决策·支持
    • 看板 tasks:7列 = 任务ID/任务名称/负责人/优先级/状态/验收标准/截止日期(不要加模块列)
  8. 台账走 Excel 追加,不生成 Word:追加前先备份 .bak.xlsx;追加行必须 copy() 模板行样式;日期用 datetime 对象;改完重新 load 验证;历史信息不删除、不覆盖,只新增。Excel 各 sheet 列数:每日工作记录 13、每日新增记录 11、周报 10、任务看板 11、评价与反馈 9
  9. 日报和新增记录按天各生成一份(不是周五汇总一份),新增记录编号每天从 NEW-001 重新开始;台账「每日新增记录」sheet 同步写入逐日行
  10. 任务看板 Excel 的开始/截止日期列:值用 datetime 对象 + number_format 设为 m"月"d"日",禁止序列数字 + 常规格式(会显示成 46251)