explainx / blog
Codeberg Bans Vibe-Coded Projects: What the New ToU Actually Says
Codeberg's members voted to ban projects "mostly" made by unreviewed LLM output from its Terms of Use. Here's the exact wording, the vote, and the debate.
explainx / blog
Codeberg's members voted to ban projects "mostly" made by unreviewed LLM output from its Terms of Use. Here's the exact wording, the vote, and the debate.

Jul 22, 2026
The model gets the headline; the harness decides whether the agent actually finishes the task. Here are the top 10 closed-source and top 10 open-source agent harnesses builders are running in 2026 — what each one does differently, what it costs, and who should pick it.
Jul 19, 2026
RL researcher kache (@yacineMTB) sparked a Saturday X firestorm at 7:49 AM: maybe programming is a low-intelligence waste of human time. explainx.ai founder @goyashy pushed back — programming is a creative language. Replies split across bottleneck, nihilism, and shareholder-value camps. Here is the debate decoded.
Jul 22, 2026
Jack Dorsey announced Buzz on July 21, 2026 — a self-hostable, open-source workspace where humans and AI agents share one identity system across chat, Git, and workflows. Every message and code event is a signed Nostr event. Here's what's real, what's early, and why it matters for anyone running Claude Code, Codex, or Goose on a team.
Codeberg, the nonprofit, community-run alternative to GitHub built on Forgejo, just voted to ban what its own members are calling "LLM-extrusions" — projects that mostly consist of AI-generated code nobody meaningfully reviewed. The amendment passed as pull request #1253 on the Codeberg/org repository, merged after member vote at Codeberg's 2026 general assembly. It's a small change in word count and a large one in intent: a nonprofit git host telling its community, in its own binding Terms of Use, that dumping unreviewed model output is not welcome.
| Question | Direct answer |
|---|---|
| Did this actually pass? | Yes — merged into main after member vote at the 2026 assembly |
| Who proposed it? | Codeberg community/board members gedankenstuecke and Gusted, ahead of a members-only forum discussion |
| What's actually banned? | Sharing projects that "mostly consist of" LLM-generated code with little to no human review |
| Is using Copilot/Claude Code banned? | No — the rule targets unreviewed output, not the use of AI coding tools |
| Why copyright, not quality? | The board kept the ToU language narrow — unclear copyright status and insufficient safeguards are the stated legal rationale |
| How will they detect it? | Not automated at scale — reports, obvious tells (leftover Claude commit trailers, AGENTS.md files), and moderator judgment |
| What's still unresolved? | What "mostly" means numerically, whether reading-then-sharing code counts, how private repos and forks are treated |
The proposal, titled "Proposal Assembly 2026: ToU extension to prohibit LLM-extrusions," was opened by contributor gedankenstuecke with sign-off from board member Gusted. It extends Codeberg's existing list of prohibited content — the same category that already bans sharing content that "expresses hate or encourages violence" — to include projects built mostly from unreviewed LLM output. Community member camopants flagged grammar in the draft ("Such projects have an unclear copyright status" rather than "have unclear copyright status"), which the author acknowledged but left for a later minor edit since the text had already gone to member vote.
The pull request thread — open for roughly three weeks before merge — accumulated 14 comments across a mix of first-time and long-standing Codeberg contributors, split between enthusiastic support, requests for tighter wording, and genuine confusion about scope. Board member Gusted confirmed the vote passed with a screenshot of the tally and said Codeberg would publish an official blog post explaining both this ToU change and a companion statement on Codeberg e.V.'s own institutional use of AI, which passed the same assembly.
The most substantive pushback in the thread came from hsza, who asked why the rule leans entirely on copyright status rather than the broader ethical case against low-effort AI contributions, given that Codeberg markets itself as "the ethical alternative" to corporate-owned git hosting. Community member geikha answered with the pragmatic case: LLM-generated code currently sits in a genuinely unresolved legal gray area, and a small nonprofit — unlike a well-funded platform — has essentially no capacity to litigate a copyright dispute if an AI vendor's training-data or output-ownership terms end up contested in court. Anchoring the rule in copyright, rather than in a harder-to-defend subjective quality judgment, gives Codeberg's board defensible ground if the policy is ever challenged.
That reasoning echoes a concern explainx.ai has tracked elsewhere: unresolved AI copyright status is a live legal question across the industry, not a Codeberg-specific worry, and it's part of why platforms as different as Anthropic's identity-verification push for Claude and open-source registries are all tightening their terms in 2026 rather than waiting for courts to settle it first.
The most repeated criticism in the thread wasn't philosophical — it was definitional. Commenter lucg raised a concrete edge case: if you read, understand, and manually test a 150-line Python utility that an LLM helped draft, and then share it, does the policy's "mostly consist of" language still catch that, absent 75 lines of hand-written padding to prove human involvement? Commenter mbunkus answered that the wording isn't meant to be forensically precise — it's meant to capture a pattern the Codeberg community says it's actually observing: reviewers approving huge LLM-authored pull requests with a rubber-stamp "LGTM, merge" once reviewer fatigue sets in, not genuine line-by-line understanding.
Separately, hsza pushed on the word "mostly" itself, arguing a codebase that's 49% AI-slop-by-volume could technically clear the bar while still being substantially outsourced thinking, and proposed tighter language like "in significant part." That specific wording question was not resolved in the visible thread before the vote closed — Gusted noted in a follow-up comment that minor textual edits can still be made by the board/presidium after the fact, since the substantive proposal had already gone to a binding member vote and rewriting it mid-vote wasn't an option.
When the story reached Hacker News, the top thread of discussion wasn't about whether the policy is a good idea — most commenters agreed with the spirit — but whether it's enforceable. Commenter guessmyname pointed out that most AI coding tools, including Claude Code, leave a Co-Authored-By: trailer in git commits by default, which is trivially greppable. Others noted that leftover AGENTS.md or CLAUDE.md configuration files in a repo are an equally obvious tell. Several commenters argued these signals alone could catch a large share of cases without needing a sophisticated classifier — while others pointed out a determined contributor could simply configure their AI tooling to avoid touching or referencing those files, meaning detection will always trail evasion.
The counterpoint from commenter adisguy is worth holding onto for anyone evaluating this kind of policy: most platform Terms of Use are enforced reactively rather than through blanket automated scanning. A rule like this exists to give moderators clear grounds to act on reported repositories and to state, in writing, what the platform stands for — not to guarantee zero violations slip through. That's a materially different enforcement model from the "detect every instance" bar critics were implicitly holding it to.
Codeberg runs on Forgejo, the community fork of Gitea, and has spent years positioning itself as the nonprofit, EU-based, ethically-run counterpart to Microsoft-owned GitHub. This ToU change sharpens that positioning into something concrete and testable rather than aspirational branding: GitHub has actively built Copilot into its core product and has no comparable restriction on AI-generated contributions, while Codeberg's member-governed nonprofit structure just used a democratic vote to draw a hard line the other direction.
That governance difference is the actual story here, more than the specific wording of "LLM-extrusions." A publicly traded platform answers to shareholders and product roadmaps; a members' association like Codeberg e.V. answers to a vote its own contributors can show up to and argue in. The forum thread linked from the pull request — visible only to dues-paying members — is where the underlying debate happened; the pull request thread is where the wording got stress-tested in public.
For maintainers weighing whether to adopt something similar in their own project's contributing guidelines, the Codeberg thread is a useful template of what actually needs deciding before you write the policy, not after:
For developers using AI coding assistants day to day, the practical takeaway is narrower and less alarming than "Codeberg banned AI": tools like Claude Code remain fine to use there. What changes is that shipping large, essentially unreviewed AI output as a "finished" open-source project — the workflow critics call vibe-coded slop — is now explicitly against the rules on one of the platforms trying hardest to be an ethical alternative to GitHub.
This is less a referendum on AI coding tools and more a nonprofit git host protecting itself from a copyright question nobody in the industry has actually answered yet, using its own democratic governance to do it. The wording still has rough edges — "mostly" is doing a lot of unquantified work, and the board has already signaled minor edits are coming. But the core mechanism — member vote, public pull request debate, board-issued rationale — is a genuinely different model of AI policy-making than the top-down terms-of-service updates most platforms ship unilaterally. Whether "LLM-extrusion" enforcement holds up in practice will depend entirely on how Codeberg's moderators handle the first contested case, not on how clean the text reads today.
Sources: Codeberg/org pull request #1253 · Codeberg community forum (members-only) discussion referenced in the PR · Hacker News discussion thread, July 2026
Vote outcome, pull request text, and community comments reflect the public Codeberg/org repository and linked Hacker News discussion as of July 22, 2026. Codeberg's official blog post explaining the change in full had not yet been published at time of writing.