目标
通过统一对话参数和脚本入口,完成以下能力:
- 新增投递记录并自动重算统计
- 修改已有记录并自动重算统计
- 仅更新 README 机器维护区块,不改动人工内容
- 自动维护 README 时间轴(日期+公司名横向排列,超宽自动换行)
- 可选执行 git add/commit/push 同步到远端仓库
触发线
- 新增触发:用户表达“新增投递”“记录投递”
- 修改触发:用户表达“修改投递”“更新进度”
参数与枚举
- 投递类型:秋招、春招、日常实习、暑期实习
- 进度:已投递、测评、HR联系、笔试、一面、二面、三面、四面、面委会、HR面、Offer、拒绝、主动中止
- 进度流程非必经,可跳跃或提前结束
推荐执行
- 初始化:
pwsh ./scripts/application-tracker.ps1 -Initialize - 新增(交互):
pwsh ./scripts/application-tracker.ps1 -Action add - 修改(交互):
pwsh ./scripts/application-tracker.ps1 -Action update - 明确同步:
pwsh ./scripts/application-tracker.ps1 -Action add -Sync yes
约束
- 修改定位优先级:ID > 公司+岗位+时间
- 编号规则为三位数字(001、002...),每次写回按投递时间升序全量重编号,最早记录编号最小
- 官网必须为 http/https,表中渲染为短连接
[🔗 投递页](url) - 同步必须显式确认(
-Sync ask/yes/no) - 提交信息模板:
docs(tracker): update application records [timestamp] - 严重警告(防Bug):当用户要求「更新面试时间/进度时间」时,只能改动
-Progress字段(例如传入-Progress "一面(03-19)")。绝对禁止修改-Time字段!-Time字段代表「首次投递时间」,修改它会导致时间轴排序混乱和记录丢失原本的投递日期。 - LLM 在填充时间时,若用户没有指定精确的年份或详细时间,允许留空或仅传入短日期格式。底层脚本已具备自动填充当前时间戳的功能;而在 README 表格渲染中,仅展示对齐到
MM-dd精度的日期。 - 对于所有带有 "面" 字的进度(如一面、二面、HR面),若用户未提供日期后缀,底层脚本将自动加上类似
(MM-dd)格式的日期戳记录。
缺失信息补全规则
- 使用本 skill 时,如果用户未提供完整字段,系统必须补问并等待补全后再执行写入
- 新增记录最少需要:公司、投递类型、进度、岗位、官网。时间为选填。
- 修改记录最少需要:
ID,或公司+岗位(结合时间用于兜底定位) - 若同步策略不明确,必须显式询问是否执行完整 Git 同步流程(add/commit/push)
README 时间轴维护流程
- 每次
add/update后,脚本同时重写TIMELINE机器维护区块 - 时间轴展示日期与公司名,按投递时间降序排列
- 时间标签仅展示月-日,不展示小时和分钟
- 渲染使用 HTML
div/span横向布局,flex-wrap: wrap超宽自动换行
Git 同步全流程
- 触发条件:用户明确要求“同步仓库 / 提交并推送 / 处理整个 git 流程”
- 执行顺序:
git add→git commit→git push git add:默认添加本次修改文件;未指定时可添加全部变更git commit:使用模板docs(tracker): update application records [timestamp]git push:提交后立即推送当前分支- 失败处理:
add或commit失败时停止后续步骤并返回错误push失败时保留本地提交,提示用户稍后重试推送