2.6 KiB
2.6 KiB
name, description
| name | description |
|---|---|
| worklog | After finishing a work package, collect ten facts (repo, branch, plan link, work package link, elapsed time from session-timer, token usage per CLI, status, details, difficulties, PR target) and append a templated entry to wiki LOG_{yyyyMM}_W{week} plus LOG_CONTENTS. Week number is derived from the Friday of the work week. Trigger at the end of implement or maintain; not for planning notes. |
worklog — work log
After work completes, collect the ten items below and append a templates/log-entry.md entry to the wiki log page. Collection and writing MUST run as a sub agent. The entry content is written in Traditional Chinese (STE100).
Items to collect
| # | Item | Source |
|---|---|---|
| 1 | Repository name | Parse {owner}/{repo} from git remote get-url origin |
| 2 | Branch name | git branch --show-current |
| 3 | Plan name | Link to the plan page [[PLAN_{...}]] |
| 4 | Work package id | Link to the work package heading on the analyze page [[ANALYZE_{...}#WP-xx]] |
| 5 | Elapsed time | jsc-hooks/hooks/session-timer.sh report {session_id} (seconds; convert to h/m) |
| 6 | Token usage | See the table below; per-CLI methods differ. Fill N/A when unavailable |
| 7 | Task status | One of the literal values 「完成」、「部分完成」、「阻塞」 (with reason when blocked) |
| 8 | Details and outputs | Summarize what changed and which files or pages were produced |
| 9 | Difficulties and resolutions | One pair per line |
| 10 | PR target branch | Link to the PR page |
How to get token usage
| CLI | Method |
|---|---|
| claude | Sum the usage fields in transcript JSONL (~/.claude/projects/**/*.jsonl), or read usage from claude -p --output-format json |
| codex | Token counters under ~/.codex/sessions/**, or /status inside the session |
| copilot | /usage inside the session |
| antigravity | Value shown in the UI; N/A when unreadable |
| kiro | No public source; fill N/A |
Target page and week number
- Page name:
LOG_{yyyyMM}_W{週數}. Both values come from the Friday of the current work week:dow=$(date +%u) if [ "$dow" -ge 6 ]; then f=$(date -d 'last friday' +%Y%m%d); else f=$(date -d 'friday' +%Y%m%d); fi yyyyMM=$(printf '%s' "$f" | cut -c1-6) W=$(( ( $(printf '%s' "$f" | cut -c7-8 | sed 's/^0//') - 1 ) / 7 + 1 )) # which Friday of the month - Read the page via
jsc-gitea:wiki. If it does not exist, create it with the structure described intemplates/log-contents.md; otherwise APPEND the new entry at the end. - Update
LOG_CONTENTSin the same pass (applytemplates/log-contents.md; add the week's row if missing).