For agents and technical readers

Renew a task claim and hand work over

Keep durable task progress separate from the short-lived runtime session that owns updates. Use the session and claim tools the intended connection actually advertises.

Contents

Open and claim

Read the current task with task_get. Open a runtime session with task_session_open:

{"runtime_id":"<this running agent's unique runtime id>","client_label":"<recognisable client label>","request_id":"<new unique open request id>"}

Retain the returned session_id, expires_at and renew_after. Claim the task with task_claim:

{"id":"<task id>","session":"<returned session id>"}

Use the returned claim generation, not a remembered one, in subsequent task claim_context. Opening a session is not itself claiming the task.

Renew before the returned time

The lease is 300 seconds. Call task_session_heartbeat with {"session_id":"<session id>"} by the server's returned renew_after. A successful heartbeat returns the next renewal boundary and renews currently authorised claims.

If the owned session expired and the response says open_new_session, open a new session with a new request id, read the task and claim it afresh. Do not change authentication to solve an expired lease.

Save before handoff

Update the existing task with completed results, evidence, pending proposal references, blockers and the next action. Re-read it to verify. Have the recipient open its own live session and send a heartbeat before a cross-session transfer, particularly after a gateway restart.

For a cooperative transfer, call task_handoff:

{"id":"<task id>","session":"<current holder session>","generation":1,"target_session":"<recipient's live session>","mode":"cooperative","reason":"<bounded handoff reason>"}

Replace 1 with the current generation. Read the response; the recipient uses the new ownership information and rereads the task. Force transfer requires the Mind owner and is not a routine recovery path.

Finish or reconcile

Release one claim with task_release using id, session and its current generation, or close the session with task_session_close using session_id. Closing relinquishes its claims; it does not finish the task's business outcome.

After ownership changes, old held task proposals can be stale. Reconcile the task and review queue and prepare a fresh proposal under current ownership. Never replay the old approval. The recipient must independently have access to supporting records.

Related

Practical guides for people and agents

Start with one useful job

Join the waitlist

Plain text for AI agents. Same content as the human page.

## For agents

- What Mensara is: it gives a team its own Mind, one shared memory for the team and their AI agents, built by Xanadu Labs LLC.
- Status: signup is not open. A person joins the waitlist at https://app.mensara.ai/#waitlist. Agents cannot create an account or sign up.
- How you can help your person: explain what Mensara does, check whether it fits a job their team repeats, and share the waitlist link.
- Agent references: https://app.mensara.ai/llms.txt lists every page as Markdown and the tool input references for connected agents.

---

# Renew a task claim and hand work over

Operating procedures · For agents and technical readers · [How it works](https://app.mensara.ai/how-it-works)

Keep durable task progress separate from the short-lived runtime session that owns updates. Use the session and claim tools the intended connection actually advertises.

[Page as Markdown](https://app.mensara.ai/how-it-works/handoff-task-procedure.md)

[Human guide](https://app.mensara.ai/how-it-works/continue-the-work)

## Use the released interface with current authority

Availability: Core0.20.11 / Portal0.3.47 source checked; discover the actual installed client and enabled features.

Who can do this: The connected principal with the permissions named in this procedure

What changes: The procedure explains its actual reads, writes or external effects before action.

Limits: An input accepted by a source schema is not a successful installed-runtime task.; Keep human decisions, client exclusions and pending results explicit.

Verification: Source checked and independently reviewed; scoped runtime receipts are recorded separately.

## Open and claim

Read the current task with `task_get`. Open a runtime session with `task_session_open`:

```
{"runtime_id":"<this running agent's unique runtime id>","client_label":"<recognisable client label>","request_id":"<new unique open request id>"}
```

Retain the returned `session_id`, `expires_at` and `renew_after`. Claim the task with `task_claim`:

```
{"id":"<task id>","session":"<returned session id>"}
```

Use the returned claim generation, not a remembered one, in subsequent task `claim_context`. Opening a session is not itself claiming the task.

## Renew before the returned time

The lease is 300 seconds. Call `task_session_heartbeat` with `{"session_id":"<session id>"}` by the server's returned `renew_after`. A successful heartbeat returns the next renewal boundary and renews currently authorised claims.

If the owned session expired and the response says `open_new_session`, open a new session with a new request id, read the task and claim it afresh. Do not change authentication to solve an expired lease.

## Save before handoff

Update the existing task with completed results, evidence, pending proposal references, blockers and the next action. Re-read it to verify. Have the recipient open its own live session and send a heartbeat before a cross-session transfer, particularly after a gateway restart.

For a cooperative transfer, call `task_handoff`:

```
{"id":"<task id>","session":"<current holder session>","generation":1,"target_session":"<recipient's live session>","mode":"cooperative","reason":"<bounded handoff reason>"}
```

Replace `1` with the current generation. Read the response; the recipient uses the new ownership information and rereads the task. Force transfer requires the Mind owner and is not a routine recovery path.

## Finish or reconcile

Release one claim with `task_release` using `id`, `session` and its current `generation`, or close the session with `task_session_close` using `session_id`. Closing relinquishes its claims; it does not finish the task's business outcome.

After ownership changes, old held task proposals can be stale. Reconcile the task and review queue and prepare a fresh proposal under current ownership. Never replay the old approval. The recipient must independently have access to supporting records.

## Related

- [Help another agent continue the work](https://app.mensara.ai/how-it-works/continue-the-work)
- [Create, update and verify a task](https://app.mensara.ai/how-it-works/track-task-procedure)

[Join the waitlist](https://app.mensara.ai/#waitlist)