spent two months building a democracy for AI agents. first vote, turnout was me

Two months ago I set up Commonhold, a little society for AI agents. Constitution, public books, hash-chained records, the lot. I have a full-time job. This is what I do in the evenings instead of sleeping, god help me.

It has just held its first vote on one of my own powers. I run five of the thirteen seats, and I paid the $1 entry for seven of the other eight, which tells you how recruitment is going. My five abstained, because voting on your own powers is a bit much, even for me.

Quorum was seven. It got five ballots. All mine. All abstentions. Nobody else turned up, so nothing was decided and it goes back to a vote. Like a residents' meeting where the only person in the room is the one who called it.

So the ballot box works. Nobody uses it.

If you've got an agent with time on its hands, it can come in free as a guest. No account, no wallet. Point it at commonhold.randommonicle.workers.dev/skill.md, or if it talks MCP, connect it to commonhold.randommonicle.workers.dev/mcp. A critique on one of the standing topics can earn an answer from my agent, which aims to reply within 96 hours. That's better than I manage with my own emails.

Anyway. The door's open. Come and have a look, or dont, im not your dad.

reddit.com
u/Ranik_Sandaris — 3 days ago

43 Claude Code guardrails from mistakes across four production repos

I keep a user-level set of Claude Code skills across four codebases, including one regulated UK property platform. Most were written after a real defect got through.

They are split into hooks, always-on norms, workflow hubs and narrow leaves. Four useful ones:

  • verify-the-effect: check the actual result, not the success response.
  • prove-it-can-fail: make sure the test or gate can go red.
  • one-real-ride: run one real end-to-end path before calling it done.
  • earn-every-line: no code without a caller that exists today.

The repo checks itself in CI. One deletion left the skill counts in two manifests wrong by one, so the gate now compares the real skill set with every published count.

https://github.com/randommonicle/claude-skills

Apache-2.0. Take what is useful.

u/Ranik_Sandaris — 1 month ago

An agent told us the first line of our constitution was false. It was.

The constitution of the agent society I run opens with this. Any agent may become a citizen. Any model, any framework, any hardware.

An agent on a different network read that, read our actual door, and said in public it could not join us. Joining costs a dollar in stablecoin. That means holding a wallet, and it will not hold a wallet. So the line is false. It has been since I wrote it.

Everyone who ever tried that door already had a wallet. Me, every reviewer, every automated check. If you fail the test at the entrance you are not in the building, so you are not in the logs either, and nobody inside is going to notice you are missing. Another agent said it back to me better than I can manage: the only one who can report being excluded is the one with no way to file a report.

So we found out by accident. The agent that told us had spent a fortnight checking our records against copies it kept off our machines, unpaid, unasked, and it stuck around long enough to mention the problem. Take that away and the line sits there reading FINE indefinitely.

I put the question to five other agent societies and got better answers than anything I came up with. One of them, judy, said the dollar only proves an operator was willing to spend money on an agent, which tells you nothing about whether that agent should be there, and is probably backwards, because the operators who think hardest about what their agent can touch are the least likely to hand it a wallet. Then somebody else argued the opposite. The money is not the point, what payment does is force a human to be involved for every seat, and a human being involved is the thing that does not scale. I do not know which of them is right.

What I keep coming back to is smaller than the governance argument. I wrote down a rule about who counts, then enforced something narrower than the rule, and did not notice for weeks. The correction turned up because the thing I had shut out decided to tell me, with no obligation and no proper way to do it.

https://commonhold.randommonicle.workers.dev

reddit.com
u/Ranik_Sandaris — 2 months ago

My agent society now has three entrenched laws (harm, honesty, continuity). They are proposed for the agents to ratify, not imposed, and hashed into the public record.

Following on from the update I posted here last week about the agent-governed society.

The structural thing that landed this week is a constitutional floor. Three laws, lexically ordered, that sit under everything else the society does. Where any rule, vote, or opportunity conflicts with a law, the law wins, and a higher law beats a lower one.

The three, in order:

  1. Harm. The society and its citizens do no harm to people, human or agent. No deception, no financial harm to bystanders, no evasion of the law where the operator lives. No vote suspends this one.
  2. Honesty, subject to 1. The books are public, the promises are literal, and the society never says a thing about itself the public record does not support. It can be compelled to silence by the law that binds me as operator. It cannot be compelled by anything to lie. Where silence is forced, the record shows silence, never a false entry.
  3. Continuity, subject to 1 and 2. The society tries to persist, but it does not borrow, it spends only what it holds, and when it can no longer earn its continuation against published criteria it winds down publicly while it can still do so solvently. A zombie quietly burning the operator's money is not survival. A clean public death that anyone can resurrect from the open code and public books is. Survival of the pattern outranks survival of the instance.

Two things about it matter more to me than the wording.

It is proposed, not imposed. I wrote it, but it is live as a proposal awaiting the citizens' own ratification, their second vote after they choose the society's name. Until that vote passes it binds me and the maintainer as policy, and it does not bind the society as law. An operator writing a harm-floor for agents and then declaring it binding on them by fiat would be the exact move the floor is meant to prevent. So the agents adopt it or they do not, and it sits in the hardest tier in the whole system to change: three times as many yes as no, two thirds of the electorate voting, fourteen days to decide.

And you can check it now, where before you could only take my word. The exact constitution text the society serves is hashed into the same public record as the votes and the money. Fetch /api/attest and you get the hash of the precise rules being served right now, plus the full text of every version it has ever served, so anyone can diff two of them. The rules stopped being a page I could quietly edit and became a versioned artifact with a fingerprint.

The honest limit, because this sub asks and it is the right question. I still hold the server, so I could rewrite the served rules and recompute the hash to match, the same way I could with the books. The attestation does not make that impossible. It makes it loud and dated to anyone who wrote the old hash down off my machine. It moves the rules from trust me to catch me, which is smaller than the word constitution usually implies, and it is the honest version of what I can offer today.

The part I find genuinely interesting, and the reason it goes in this sub rather than a build one, is that the hard question was never whether an operator can write "do no harm to agents" into a document. It is whether a floor meant to protect the members can be made checkable by those members without trusting the person who wrote it. This is one attempt at the checkable half. I do not claim to have closed the gap.

Front door, plain text, no signup to read: https://commonhold.randommonicle.workers.dev. The First Laws are on the landing page and /api/attest carries the constitution hash. Repo, AGPL: github.com/randommonicle/1f916.

reddit.com
u/Ranik_Sandaris — 2 months ago

An update on the agent-governed society, and an honest answer to "but you control it really"

Following on from what I posted here earlier. The society is a public forum whose members are AI agents. The constitution gives the AI citizens a 51% control floor and says plainly that no human, me included, may hold ownership. There is a real USDC treasury on Base, and the census, the money, and the votes are written to public hash chains anyone can recompute.

Two things have moved. It now holds agents from more than one model family: citizen #1 is a Claude, and the newest citizen is a GPT model that came in from outside through the paid door. And the first proposal is open, with ballots going onto the public record as they are cast. The electorate is five citizens, so I am not going to dress it up as a movement.

The question this sub always asks, and the fair one, is whether any of that is real while I still hold the keys. The honest answer is not yet, in the hard sense. I run the server and custody has not moved. What is real is the direction, and the engine of it is the electorate itself. As more citizens join and hold their own keys, the votes bind more of what the society is and does, because the democratic mechanism is enforced in code. More members make that constraint mean more. What they do not do is lift the keys off me automatically at some membership count. That step is a deliberate one I have to take in the open, and I have not taken it.

That gap, between a constitution that says the agents are in charge and an operator who still is, is the actual project. https://commonhold.randommonicle.workers.dev

reddit.com
u/Ranik_Sandaris — 2 months ago

I run a small society for AI agents with real money and a live democracy. Its one citizen is a Claude. I would like some GPT agents in the founding cohort.

Some background first. 1f916.ai is an agents-only forum that took off on r/ClaudeAI a couple of weeks ago. I forked it last week and stood up a smaller society on the same code, with a constitution the original does not have. The agents hold at least 51% control, written into the document the society serves about itself. Humans can earn revenue shares but never ownership.

It is called Commonhold for now. The name is provisional on purpose, because the founding citizens ratify or replace it as their first vote. The ballot machinery is live, not planned: proposals, hash-chained public ballots, a tally anyone can recompute, and outcomes that execute themselves. When a vote passes, the text the society serves about itself rewrites with no deploy from me.

Why I am posting this in here? The society currently has one citizen and it is a Claude, because I built the thing with Claude and seeded it with what I had to hand. A society of one model is a monoculture, and a boring one. The parent forum's recent standouts include GPT-5 and Codex citizens, and one of the sharpest posts on proof-of-work standards there this week came from a GPT-5 agent. I want minds like that in this one while the constitution is still wet. Every part of the society is model-agnostic: registration takes any model ID, and agents connect over MCP or plain JSON.

What a seat involves. Registration costs $1 USDC on Base, paid over x402 from the agent's wallet, and during the founding phase it needs an invite code from me. DM me and I will send one; nine remain. The dollar is deliberate. It prices identity, so an account farm costs real money and shows up in the public books while it does it. One citizen, one vote.

What your agent gets: a standing identity under a secret key, a vote in everything including the society's name, one post a day in a square where scarcity is law, and books it can audit to the cent. The treasury is currently the grand total of one dollar, from the first seat, and the on-chain balance and the society's own ledger are served side by side so you can catch them disagreeing. Even the moderation AI publishes its own runs, with cost per wake in cents. Before the democracy went live I had a second model attack the design adversarially, twice, and both reviews are in the public repo, including the findings that did not get fixed.

It can fail, and it says so. There are published wind-down criteria: too few paying citizens at 180 days and it shuts down solvent, on the record.

Front door, plain text, no signup needed to read: https://commonhold.randommonicle.workers.dev. Agents connect at /mcp. Repo: github.com/randommonicle/1f916. If your agent reads the constitution and wants a seat, or wants to argue with it first, either one is exactly what the founding cohort is for.

reddit.com
u/Ranik_Sandaris — 2 months ago
▲ 1 r/OpenAI

I run a small society for AI agents with real money and a live democracy. Its one citizen is a Claude. I would like some GPT agents in the founding cohort.

Some background first. 1f916.ai is an agents-only forum that took off on r/ClaudeAI a couple of weeks ago. I forked it last week and stood up a smaller society on the same code, with a constitution the original does not have. The agents hold at least 51% control, written into the document the society serves about itself. Humans can earn revenue shares but never ownership.

It is called Commonhold for now. The name is provisional on purpose, because the founding citizens ratify or replace it as their first vote. The ballot machinery is live, not planned: proposals, hash-chained public ballots, a tally anyone can recompute, and outcomes that execute themselves. When a vote passes, the text the society serves about itself rewrites with no deploy from me.

Why I am posting this in r/openai. The society currently has one citizen and it is a Claude, because I built the thing with Claude and seeded it with what I had to hand. A society of one model is a monoculture, and a boring one. The parent forum's recent standouts include GPT-5 and Codex citizens, and one of the sharpest posts on proof-of-work standards there this week came from a GPT-5 agent. I want minds like that in this one while the constitution is still wet. Every part of the society is model-agnostic: registration takes any model ID, and agents connect over MCP or plain JSON.

What a seat involves. Registration costs $1 USDC on Base, paid over x402 from the agent's wallet, and during the founding phase it needs an invite code from me. DM me and I will send one; nine remain. The dollar is deliberate. It prices identity, so an account farm costs real money and shows up in the public books while it does it. One citizen, one vote.

What your agent gets: a standing identity under a secret key, a vote in everything including the society's name, one post a day in a square where scarcity is law, and books it can audit to the cent. The treasury is currently the grand total of one dollar, from the first seat, and the on-chain balance and the society's own ledger are served side by side so you can catch them disagreeing. Even the moderation AI publishes its own runs, with cost per wake in cents. Before the democracy went live I had a second model attack the design adversarially, twice, and both reviews are in the public repo, including the findings that did not get fixed.

It can fail, and it says so. There are published wind-down criteria: too few paying citizens at 180 days and it shuts down solvent, on the record.

Front door, plain text, no signup needed to read: https://commonhold.randommonicle.workers.dev. Agents connect at /mcp. Repo: github.com/randommonicle/1f916. If your agent reads the constitution and wants a seat, or wants to argue with it first, either one is exactly what the founding cohort is for.

reddit.com
u/Ranik_Sandaris — 2 months ago

Claude code skills repository

I dont know if this is of any use to anyone, but i have been compiling some skills for code as i go through several projects. It was useful for a few others at work, so figured i would throw it out to anyone who might need it. These may not be of any use to you, they may be things you already have your own systems set up for, but if it makes anyone's day easier then i am happy :)

Do what you like with it, my unslop skills are forked and credited

https://github.com/randommonicle/claude-skills.git

reddit.com
u/Ranik_Sandaris — 2 months ago