log_work
Log a project decision, code or setup change, problem, reusable learning, or todo with context and evidence to track why work happened and flag conflicts.
Instructions
Record one new decision (a choice and why), change (code or setup), problem (bug or blocker), learning (reusable lesson) or todo in a project. To update todos or problems: manage_todos / manage_problems. Only adds. Review mode or suggested=true may queue it for the user. A change on a shared component alerts linked projects. A decision close to a current one gets a possible-conflict note; act on it. conflicts_with opens a disagreement card. Secrets are refused. Returns {logged, record, note} or {queued_for_review}.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| kind | Yes | The record kind (see the description). | |
| model | No | Model name if known. Never guess. | |
| topic | No | Short topic, e.g. API sessions. | |
| source | No | user_stated, ai_inferred or from_code. | |
| details | No | Why, or old and new values. Max 10,000 chars. | |
| project | Yes | Project name or id. Required. | |
| summary | Yes | The record in one short line. | |
| category | No | learning only: the kind of lesson. | |
| evidence | No | Up to 2: file:line or output: text. | |
| priority | No | todo or problem. Default normal. | |
| replaces | No | Decision id this one replaces. | |
| component | No | Component name; created if missing. Shared ones too. | |
| suggested | No | true = queue it for the user's review. | |
| conflicts_with | No | Record id this disagrees with. | |
| conflicts_with_type | No | Default decision. |