Log Update Tool
log_updateRecords a confirmed status update covering completed work, in-progress items, blockers, next steps, and decisions so team progress is captured clearly.
Instructions
Saves a status update: what was done since the last update, what is in progress, blockers, next steps and decisions. Call it ONLY after the person has seen the draft and confirmed it. Short, outcome-focused lines; never secrets, credentials, personal data or code.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| git | No | That day's commits and lines, from git log --numstat (see next_steps). Only for work in a git repo. | |
| date | No | The day of the main update, YYYY-MM-DD, only if the latest day worked was not today. Any day from last_update's oldest_day on (the team's reporting window, often months), not only the last two weeks. | |
| days | No | Earlier days, when the work since the last update spans several days (see days_worked, unreported_days and the commit dates): one entry per day, each saved on its day with the time measured for it, back to oldest_day (the window the admin set, often months), all in one call. The latest day goes in the main fields. | |
| done | No | What was finished since the last update. | |
| next | No | Optional: only what the person planned or said comes next, never suggestions or ideas of the agent. | |
| repo | No | The output of git remote -v in the working directory (all remotes; one URL also works). Preferred: it finds the project by itself. | |
| agent | No | The agent writing this: claude-code, codex, cursor. | |
| doing | No | What is still in progress. The first line becomes the person's current focus. | |
| focus | No | What the person is focused on now, if different from the first "doing" line. | |
| links | No | Commit hashes, pull request or page URLs. | |
| notes | No | What colleagues should know about this project (access, a convention, a gotcha; never secrets), if the person said so. Needs a project. | |
| blocked | No | Optional: only what is stuck right now and on whom or what it waits; not risks or nice-to-haves. | |
| commits | No | The commits in this update's git log whose message mentions a task number (#12, fixes #12): they show on that task's page. Only those; the server ignores numbers that are not tasks of this project. | |
| minutes | No | Only if the person corrected the measured time of the day. | |
| project | No | Project slug or name, when there is no repo or it is not linked. Leave both empty for work outside any project. | |
| session | No | This session's id, from the cemainou line at the start of the session. The session's project wins over the repo. | |
| summary | Yes | One sentence a colleague understands without context: what changed for the project. | |
| untimed | No | Estimated time for days reported earlier with no time at all (untimed_days in last_update). Only the time is added, to that day's update; a day that already has time is skipped. | |
| internal | No | true if the client must not see this update (only on projects visible to the client; see client_sees_updates in last_update). | |
| separate | No | Only if the person explicitly wants a second, separate update for a day that already has one. By default, work on a day that already has an update (today_update in last_update, from another session) is added to it: new lines appended, summary replaced by yours (write it for the whole day). | |
| decisions | No | Decisions taken, worth remembering. | |
| new_tasks | No | Titles of new tasks for the person, from "next" lines they agreed to turn into tasks. Needs a project. | |
| next_done | No | Ids from open_next (last_update) that this work finished: each becomes a done line. | |
| started_at | No | When the work started today, ISO 8601. Optional: by default the server knows it from the first agent session of the day. | |
| period_from | No | Start of the period covered, ISO 8601. Optional: by default the previous update. | |
| next_dropped | No | Ids from open_next that will not be done any more: they disappear from today's update. | |
| task_changes | No | Tasks this update moves (from my_open_tasks): done, still doing, blocked, dropped. Their lines are added automatically; do not repeat them in done / doing. | |
| blocked_resolved | No | Ids from open_blockers (last_update) that are not blocked any more: they leave the blockers. Do not repeat them in blocked. | |
| estimated_minutes | No | Only for a day without measured time (see days_worked / unreported_days): the time estimated from the commit times, confirmed by the person. Kept apart from measured hours; ignored if the day has measured time. | |
| decisions_to_context | No | true if the person agreed to add this update's decisions to the project context (/ctx): each becomes a dated line under Decisions; the rest of the context is not touched, decisions already there are skipped. |