一键导入
timesheet
Interactive timesheet entry — collects work description, start/end times via prompts, calculates hours, appends to .campaign/timesheet.md
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Interactive timesheet entry — collects work description, start/end times via prompts, calculates hours, appends to .campaign/timesheet.md
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | timesheet |
| description | Interactive timesheet entry — collects work description, start/end times via prompts, calculates hours, appends to .campaign/timesheet.md |
| user_invocable | true |
Update the project timesheet at .campaign/timesheet.md.
.campaign/timesheet.mdAskUserQuestion to collect the following for each entry:
.campaign/timesheet.mdEvery time an entry is added, edited, or removed, recalculate the Weekly Summary table. Weeks are identified by their Monday start date (ISO week, Mon–Sun). The total hours line below the weekly summary must always equal the sum of all entry hours.
Calculating the week-starting Monday for a date:
For example, Sunday 2026-03-01 belongs to the week starting Monday 2026-02-23 (subtract 6 days). Monday 2026-03-02 starts a new week. Always use this calculation — do NOT treat the entry date itself as the week start.
If .campaign/timesheet.md does not exist, create it with this content:
# Timesheet
## How to update
Run `/timesheet` in Claude Code to add entries, or use clock in/out:
- `/timesheet clock in` — starts a new entry at the current time
- `/timesheet clock out` — ends the open entry and prompts for a description
- `/timesheet` — manually add an entry (date, description, start/end times)
Timezone: (ask user)
---
## Weekly Summary
| Week Starting | Hours |
|---------------|-------|
**Total: 0.00 hours**
---
## Entries
| Date | Description | Start Time | End Time | Hours |
|------------|-------------|------------|----------|-------|