abstract technology graphic

Microsoft Research Special Projects

Gov4git: A Decentralized Platform for Community Governance

Share this page

E. Glen Weyl, Kasia Sitkiewicz, Petar Maymounkov

Open-source software, as exemplified by the communities that have formed around the “git” protocol for collaborative software development and version management, is one of the great wonders of digital technology.  Communal open-source projects have found applications well beyond collaborating on code.

They have been used in various capacities to source and share information, such as tracking bugs, sharing scientific data, and writing books and papers. They are also used, in a somewhat ad-hoc manner, for various decentralized autonomous organizations (DAOs) tasks in the Web3 community, such as planning, road mapping, protocol design, policymaking, and others. Most existing applications either serve very small communities or otherwise resort to exogenous mechanisms for the management, security, and credibility of said communities.

We believe that the lack of an accessible, standardized, and secure governance solution for open-source projects is preventing many projects and communities from being formed in the first place, or from growing beyond the Dunbar size (opens in new tab) above which ad-hoc methods of organization are believed inadequate. Additionally, as Generative Foundation Models (GFMs) like GPT-4 become more popular, malicious actors who pose as collaborators will negatively impact community maintenance.

This observation compelled us to attempt a secure and cost-effective framework for community governance, which can be tailored to the specific needs of any one community and can be deployed by non-technical users anywhere where access to git is present. In approaching this goal, we have relied on the learnings of the Web3 communities and have adapted various Web3 ideas and primitives — such as trusted computation or non-interactive zero-knowledge proofs — in our implementation and future roadmap.

To this end, Microsoft Research, and Protocol Labs have been collaborating to develop a git-native protocol with many of the transparency, decentralization, and security benefits of blockchains but that harnesses the power of formal governance to avoid costly approaches to validation and dispute resolution like Proof of Work or to a lesser extent Proof of Stake. 

Gov4git is a decentralized protocol for governing open-source communities based on git. It was created to experiment with organizational and incentive mechanisms that stimulate happy, participatory, productive, and fair open-source communities.  A collaborative, open-source book project we describe below will pilot the protocol.  By designing governance software and protocols, we aim to help any git-based open-source project bootstrap and grow pluralistic, transparent, open-source communities with configurable governance rules. A primary focus of the initial proof of concept is using quadratic voting to prioritize pull requests (PRs) and supporting community-scoped currencies such as voting credits and soulbound tokens (SBTs).

The Gov4git governance framework is aimed at human-centric deliberative processes, is easily extensible and designed to be highly scalable and reliable. Additionally, Gov4git is highly secured where encryption and authentication is used to protect Git-related information.

For our pilot, Gov4git consists of an arbitrarily programmable command line interface and a user interface optimized for a scoped set of features:

  • Polling, using configurable and programmable tallying strategies Quadratic Voting (opens in new tab), using persistent voting credits
  • General-purpose community-scoped token accounts for members (used for voting credits, badges, and so on)
  • Account services for members, including qualitative identity (sometimes called Soulbound) tokens
  • Polls and other governance motions are targeted to specific subsets of members using logical member groups

Features like referenda for approval of changes to a source repository, changes to the governing logic itself, and experimental flavors of quadratic voting aimed at promoting diversity of opinions are planned for later releases.  A key application of these polls will be prioritization and eventual approval of suggested changes to the project, often called “pull requests” and of areas for further development, often called “issues.”

E. Glen Weyl, founder and research lead of the Microsoft Research Special Projects Plural Technology Collaboratory, (opens in new tab) and Audrey Tang, Taiwanese free software programmer and the inaugural Minister of Digital Affairs of the Republic of China (Taipei), will debut Gov4git as the platform for a book they are co-authoring Plurality: Technology for Collaborative Diversity and Democracy (opens in new tab).  The book will be built like an open-source software project, with the content being available on GitHub.  Translation to languages other than English will run in parallel on Gov4git as forks of the underlying English version. They will write the book in public and gradually transition management of the content to the community that helps create it.  The book will, among other things, describe the governance principles that are used to create the book itself.  Then, Tang and Weyl will solicit editorial and research assistance openly from the community and enlist those who contribute to help prioritize pull requests and eventually control the contents of the book. This application will both explain the ideas around the Gov4git platform and act as a perfect test of its capabilities, given both its match to the spirit of the project and the security challenges given existing geopolitical dynamics.

Upcoming milestones

  • Gov4Git open-source command line demonstration, releasing March 2023
  • Plurality open-source book, Chapter 1+2, releasing March 2023
  • Gov4Git with user interface implemented, releasing June 2023
  • Gov4Git beta state, releasing July/August 2023

The purpose of Gov4git is to help open-source organizations manage their Git repositories more effectively, transparently, and securely, therefore empowering communities to make the self-management so often discussed in the open-source community reality. It allows any git-based open-source project to be governed with the transparency, credible neutrality, flexibility, and security that is prized in the Web3 ecosystem at a tiny fraction of the cost. We believe it is critical that collaborative open-source development remains a sovereign process, which is why our governance solution does not depend on any non-git technologies (such as blockchains). By using this decentralized voting mechanism system, communities can overcome many of the challenges open-source communities run into in being true to their ideals and managing themselves sustainably as their complexity grows beyond what an initial “benevolent dictator” can be reasonably expected to manage unilaterally.   Eventually, we hope this will be a powerful tool for all open-source communities to maintain their ethos in this new GFM enriched environment. To learn more please visit the Gov4git repository (opens in new tab) or follow us on Twitter (opens in new tab).