<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.kosmos.org/index.php?action=history&amp;feed=atom&amp;title=Aragon</id>
	<title>Aragon - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.kosmos.org/index.php?action=history&amp;feed=atom&amp;title=Aragon"/>
	<link rel="alternate" type="text/html" href="https://wiki.kosmos.org/index.php?title=Aragon&amp;action=history"/>
	<updated>2026-04-08T03:20:24Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.34.2</generator>
	<entry>
		<id>https://wiki.kosmos.org/index.php?title=Aragon&amp;diff=524&amp;oldid=prev</id>
		<title>Bumi: Add aragon notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.kosmos.org/index.php?title=Aragon&amp;diff=524&amp;oldid=prev"/>
		<updated>2019-02-25T08:46:01Z</updated>

		<summary type="html">&lt;p&gt;Add aragon notes&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&lt;br /&gt;
== What is Aragon? ==&lt;br /&gt;
&lt;br /&gt;
Aragon is a decentralised app on the Ethereum blockchain which allows anyone to create and manage decentralized organisations. It is an open-source project led by the Aragon Association. Aragon provides a platform for the creation of new, decentralised organisational forms that protect self-sovereignty, empower communities and facilitate collaboration across borders and jurisdictions.&lt;br /&gt;
&lt;br /&gt;
=== Links: ===&lt;br /&gt;
&lt;br /&gt;
* [https://aragon.org/ aragon.org]&lt;br /&gt;
* [https://blog.aragon.org/the-aragon-manifesto-4a21212eac03/ Aragon Manifesto]&lt;br /&gt;
* [https://blog.aragon.org/ Aragon blog]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== AragonOS and AragonCLI ==&lt;br /&gt;
&lt;br /&gt;
aragonOS is a smart contract framework for building decentralized organizations, dapps, and protocols.&lt;br /&gt;
&lt;br /&gt;
aragonOS provides the following functionality:&lt;br /&gt;
&lt;br /&gt;
* Upgreadability: standard for upgradeable smart contracts&lt;br /&gt;
* Permission control: flexible permission control system that lets us define permissions on runtime&lt;br /&gt;
* Forwarders: standard on how contracts interact with each other &lt;br /&gt;
&lt;br /&gt;
aragonCLI is a wrapper around truffle to interact with an aragonOS app and that allows to manage permissions and contract versions. &lt;br /&gt;
e.g. it provides a nice CLI interface to list and manage contract versions. &lt;br /&gt;
&lt;br /&gt;
AragonOS and the CLI are very similar to what we are currently doing with kredits-contracts with similar ideas and solutions. &lt;br /&gt;
Some of our work was also inspired by code and proposals from Aragaon. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Every aragon DAO consists for multiple apps that have different versions. Similar to our registry that points to the different contracts.  &lt;br /&gt;
An app would be for example the Contributors address book or the Contributions Management. &lt;br /&gt;
&lt;br /&gt;
Through forwarders these apps can be loosely coupled and for example a static call from a fixed account could later be changed to require a voting through the voting app.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Process ===&lt;br /&gt;
&lt;br /&gt;
==== Init a new DAO ====&lt;br /&gt;
&lt;br /&gt;
The CLI allows to create a new DAO and initialize some defaults through DAO-kits. &lt;br /&gt;
&lt;br /&gt;
$ ''aragon dao new''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The whole DAO can then be managed through the ''aragon dao'' command&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Adding a new app ====&lt;br /&gt;
&lt;br /&gt;
To use an app it first has to be &amp;quot;installed&amp;quot; for the DAO. &lt;br /&gt;
Installing basically means creating a new upgradable proxy contract that uses the code from a specific contract at a specific address.&lt;br /&gt;
Thus the contract can be upgraded to new versions independently of the proxy contract. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''$ aragon dao install''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Upgrading contracts ===&lt;br /&gt;
&lt;br /&gt;
AragonOS and aragonCLI provide a standard way to manage different version of the contracts/app. They basically also have a proxy contract and point to different implementations. &lt;br /&gt;
The CLI provides: &lt;br /&gt;
&lt;br /&gt;
''aragon apm versions'' and ''aragon apm publish'' to manage new versions of contracts.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The contract that is used can be updated through ''aragon dao upgrade''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Permission control ===&lt;br /&gt;
&lt;br /&gt;
So far Kredits has used hard-coded permission controls (e.g. a function can only be called from one specific contract address). &lt;br /&gt;
The aragon permission ACL lists allow to define controls on runtime. &lt;br /&gt;
&lt;br /&gt;
* https://hack.aragon.org/docs/acl-intro&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is also possible to change permission through a voting contract. &lt;br /&gt;
&lt;br /&gt;
or through the CLI: ''aragon dao acl''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Aragon Nest ==&lt;br /&gt;
&lt;br /&gt;
Aragon runs a grant program called [https://aragon.org/project/grants/ Aragon Nest] that supports relevant projects around the DAO, Aragon, Ethereum ecosystem. &lt;br /&gt;
This might be interesting for Kredits but also there might be some inspiration among the current projects and proposals: [https://github.com/aragon/nest/issues]&lt;/div&gt;</summary>
		<author><name>Bumi</name></author>
		
	</entry>
</feed>