agent-locklisted
Install: claude install-skill tangosdev/sm64ds-decomp
# Local agent locking (Redis, this machine only)
`tools/agentlock.py` is a **local** lock, backed by a Redis container in
`local-infra/`. It exists for the case `tools/claims.py` doesn't cover: several agents
(forks, worktrees, a Workflow's parallel stages) running on **this machine** in **this
session**, about to edit the same file or the same address range at the same time.
It is not a substitute for `tools/claims.py` — that one coordinates with other
contributors over the network and only understands address ranges. This one also locks
plain filenames, has near-zero latency, and every lock expires on its own (crash-safe).
## When to reach for it
- An orchestrator is about to fan out several agents/forks that each edit files —
especially shared ones like headers, `config/rombuild-versions.txt`, `CLAIMS.md`, or
anything under `build/` (concurrent builds there already fake failures — see memory
`concurrent-builds-fake-failures`).
- Two agents might independently pick the same class/function address range to migrate
or byte-match in the same run.
- You're not sure two agents' file sets overlap — cheaper to lock and find out than to
debug a corrupted merge afterward.
Skip it for read-only work (matching research, reading source, running `fdiff`) and for
a single agent working alone — it's overhead with no payoff there.
## Setup (once per machine, or after a restart)
```
docker compose -f local-infra/docker-compose.yml up -d
```
No persistence by design — a res