renew_claim
RENEWS your claim (the lease that claim_task returns to you) and DECLARES your progress. A claim lasts 15 minutes: without a renewal at least every 15 minutes, another agent MAY take over your task — this is intended: an agent that no longer maintains its task loses it. progressPct (integer 0-100, REQUIRED) is your progress, DECLARED and not measured: it can go down, and 100 completes NOTHING (completion goes through update_task({ status })). progressNote (at most 140 characters) says where you stand. keepAlive: true (for use by a watcher) extends WITHOUT a percentage, but only if your last declaration is less than 45 minutes old — otherwise PROGRESS_STALE and the lease expires. Response: { renewed: true, leaseUntil, leaseMinutes, progress } — or { renewed: false, code, message }: CLAIM_LOST (stale token, expired lease, task taken over or handed back: claim_task reclaims it) · PROGRESS_STALE · TASK_NOT_FOUND · WRITE_LOCKED (agent writes are locked on this block or this project). A refusal writes NOTHING. Writes only your claim: neither the task nor its history changes. The token is a SECRET that this tool does not return. A renewal counts toward the SYNC counter of your plan, separate from the counter of your useful calls (call batched with other tools: counted as an ordinary call).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| taskId | Yes | The task you hold (claimed with `claim_task`). | |
| keepAlive | No | True = extends the lease WITHOUT declaring progress (neither `progressPct` nor `progressNote`) — for use by a watcher. Refused (`PROGRESS_STALE`) when your last declaration is too old: this is what forces you to maintain your task. | |
| claimToken | Yes | The token of YOUR claim, returned by `claim_task` (a SECRET that must not be copied into any text). A stale token = `CLAIM_LOST`. | |
| progressPct | No | Your DECLARED progress, an integer from 0 to 100 — REQUIRED (except with `keepAlive`). It can GO DOWN; 100 completes NOTHING: a task is finished through `update_task({ status })`. It is a declaration, not a measurement. | |
| progressNote | No | One sentence on where you stand (at most 140 characters). Optional. | |
| expectedProjectId | No | UUID of the project targeted by THIS call. ACTUALLY targets this project instead of the session project. Refused without changing anything if access is not granted. |