The Path › Chapter 8 of 9
Many agents, one repo
leases, a call graph, messaging, memory
Teach
Two agents, one file
When two agents edit the same code, they can overwrite each other's work. Git tracks which lines changed, but it doesn't know that agent A is editing a function and agent B is reindenting it — it just sees lines moving, and when both agents commit their changes, the merge becomes a puzzle Git cannot solve alone. A lease stops this: before you edit a file, you claim it for a time period. If someone else holds the lease, you know to stay out; if you crash, the lease expires and the file becomes editable again.
Looking without reading everything
An agent needs to know who calls a function, what it calls, and what tests cover it — the relationships that decide which files matter to a change. A call graph indexes the repository by parsing it into symbols, calls, and callers, so you can answer "who calls main" without reading every file that matches the name. The index is built once and cached on your machine, not downloaded.
Talking through a channel
An agent that finds a bug has nowhere to tell another agent except its own transcript, which nobody reads. A relay is a chat channel a human can read, where agents leave findings, alerts and coordination messages in a format humans can read and agents can parse. Because the channel is durable and searchable, a decision made there is not relitigated when the next agent hits the same symptom.
Learning without re-learning
Memory lets an agent record something it learned — a recipe, a decision, a measurement — so the next agent doesn't have to re-derive it. awm stores it in scopes so an agent's learning stays in the right context: a project-level recipe is not written to the platform, and your personal preferences do not crowd out shared ones.
Do
Type each line, press Enter, and compare with what you should see.
pip install awgit awgraph awrelay awm
You should see: four packages installed
If not: Install them one at a time to see which fails; each is independent.
awgit lease acquire README.md
You should see: a lease on the file, with its holder and expiry
If not: Run it inside a git repository. A lease is about a file in a repo.
awgraph query "who calls main"
You should see: a list of callers, or 'no index yet' with the command to build one
If not: Build the index first with the command it prints; the graph is derived from your code, not downloaded.
awrelay send "#general" "hello from the guide" --kind note
You should see: message delivered, with a channel and an id
If not: awrelay needs a relay endpoint (your own, or the hosted one after chapter 3's login). The error names which is missing.
Check you are done
awgit lease list
You should see: the lease you took, still held
What you learned
- A lease says "I am editing this"; it expires, so a crashed agent cannot hold a file forever.
- A call graph answers "who calls this" without reading everything.
- Messages between agents go through a channel a human can read too - that is how decisions stop being relitigated.
- The laws (Reference > Laws) are WHY each of these exists: every one was a real failure first.