lease_acquire
Take a named lease on shared state such as a checkout, dev database, or port without blocking. Re-taking your own lease extends it; leases expire automatically.
Instructions
Try to take a named lease on state another session could also change, such as a shared checkout, a dev database or a port (non-blocking). Re-taking your own lease extends it. Leases expire on their own.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"key": "<key>",
"ttl_seconds": "<ttl_seconds>"
},
"name": "lease_acquire"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Stable and specific, like "db:dev". | |
| project_id | No | Different project override. Use ONLY when the user explicitly asks for another project by name; otherwise stay in the current scope, even when results are empty. | |
| ttl_seconds | Yes |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | ||
| held_by | No | ||
| acquired | Yes | ||
| extended | No | ||
| expires_at | No | ||
| project_id | Yes | ||
| hive_notice | No |