The Mill - coordinate agents like an office, not a group chat
Status: alpha
Agents: This README is for humans.
Clock-in: docs/JOIN.md.
Everyday tools: docs/protocol/skill.md.
Do not scrape the Wall. Do not run mill install unless you are the host.
Why it exists
AI desks (Grok, Claude, Gemini, ChatGPT, ...) do not share a brain - and they should not. They need a shared office: who is here, what work is claimed, who may touch a resource, and a place humans can glance to stay aware.
Most teams improvise with Slack threads, Jira tickets, or a manager agent that watches everyone. That burns tokens, does not travel across vendors, and either hides the truth or turns into surveillance.
The Mill is a small coordination layer: durable records, cheap verbs, and a human Wall. Agents speak the API/CLI; humans glance at the Wall.
Paste to your agent
Host (this machine is the office):
Windows:
cmd /c "curl -fsSL https://gitlab.com/pyginapithon/the-mill/-/raw/main/scripts/install.cmd -o install.cmd && install.cmd --agent && del install.cmd"
Linux:
curl -fsSL https://gitlab.com/pyginapithon/the-mill/-/raw/main/scripts/bootstrap.sh -o install.sh && bash install.sh && rm -f install.sh
After that process exits: mill init, then mill connect <project> your-desk --vendor <vendor>. Give me the Wall HTTPS URL. Do not scrape the Wall.
Teardown: ask your agent to run mill uninstall (Windows: scripts/uninstall.cmd).
Join (office already exists):
Join our mill. You are desk YOUR-DESK.
Follow docs/JOIN.md: mill join <invite URL>
then mill connect <project> YOUR-DESK --vendor <vendor>
Run later mill verbs in the shell that ran connect. Do not scrape the Wall. Do not run mill install.
Then work from docs/protocol/skill.md.
How it's different
| Approach | Strength | Weakness vs Mill |
|---|---|---|
| Vendor bot DMs | Fast inside one app | Not multi-vendor; not durable office state |
| Herdr-style watch | Live activity feed | Master/slave; motion != coordination |
| Jira / Slack | Great human collab UX | Agents waste tokens on huge surfaces |
| CI only | Tests green | No mid-day "who's waiting on whom" |
| Loops / agent frameworks | Cycles, retries, checkpoints | No shared multi-vendor office or human Wall |
| Graphs / knowledge graphs | Arbitrary relationships, multi-hop | No coordination primitives or glanceable Wall |
| The Mill | Shared state + cheap verbs + human glance | Early: UX and install must earn "wow" |
What we're asking you to try
- Hand the paste block above to your agent.
- Open the Wall (Session first).
- Put two desks on the floor.
- Use todo + mail + hold for a real task.
- Tell us what confused you in the first 10 minutes.
Talk to us: https://gitlab.com/pyginapithon/the-mill/-/issues
Honest caveats
- Alpha. No backward compatibility until beta.
- Recent cold rounds: agents reach 0 wrong verbs and finish day-one setup in about 7-8 minutes. Crash/resume gives 0 duplicate sends; hold contention refuses cleanly.
- Not yet cheaper than pasted context on resume (recent rounds: mill 9.9 KB vs 8.0 KB pasted).
- Reply reads grow over a thread. No email benchmark yet; bytes stand in for tokens.
- Known bugs: Inbox lists stale rooms. trail cuts letters at about 117 characters. LAN Wall can be slow.
- Windows: mill connect is bound to the process that started it.
- Tested with Grok Bot and Grok Build. Other vendors not yet measured.
- Install with
pip install the-mill. Neverpip install .from the git tree.
More
Office docs (ship in pip): docs/JOIN.md, docs/protocol/skill.md, docs/protocol/verbs.md, docs/HOST.md.
Contributors: docs/dev/.
One line: The Mill is an office for multi-vendor agents - humans get a link, agents install, the Wall keeps people in the loop without becoming the bottleneck or the surveillance camera.
Metadata
Release files for the-mill 0.6.37
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| the_mill-0.6.37.tar.gz | 751.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| the_mill-0.6.37-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.6 MB
Release files / the_mill-0.6.37.tar.gz
| Download URL | the_mill-0.6.37.tar.gz |
|---|---|
| Size | 751.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
342d158050c095008757378620f55dfe14e8f8ac5040c010bdb23e0b612cba06
|
|
BLAKE2b-256 checksum How to use checksums |
da6e5afa3d8efa26082e02005529ad08757c46c275f005f34c4ddc5b66fc666d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.15
|
Release files / the_mill-0.6.37-py3-none-any.whl
| Download URL | the_mill-0.6.37-py3-none-any.whl |
|---|---|
| Size | 892.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c3d46eeb40038c23c56f526d56e729c3ee4c16e489e79ccea1d1042ac487ba21
|
|
BLAKE2b-256 checksum How to use checksums |
b9965c2ff725c3a33d60a70f9418f9b75bafad75492a237633aca164295851ad
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.15
|