Skip to content

Commit 9e6938b

Browse files
feat(docs): add ANAME guide in docs
1 parent 56ddfe6 commit 9e6938b

File tree

12 files changed

+89
-0
lines changed

12 files changed

+89
-0
lines changed

pages/guides/fetch-network/_meta.json

+5
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,11 @@
3434
"tags": ["Intermediate", "IBC", "CUDOS"],
3535
"timestamp": true
3636
},
37+
"aname-service": {
38+
"title": "ANAME Service",
39+
"tags": ["Intermediate", "Agents", "Domains", "ANAME"],
40+
"timestamp": true
41+
},
3742
"setting-up-a-multisig": {
3843
"title": "How to setup a Multisig Wallet",
3944
"tags": ["Intermediate", "Python", "Wallet"],
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
import { Callout } from 'nextra/components'
2+
3+
ANAME Service
4+
5+
# Agents Name Service
6+
7+
## Overview
8+
9+
A **domain** is a structured identifier that helps organize and address [Agents ↗️](/guides/agents/getting-started/whats-an-agent) within a network. It acts as a namespace, grouping Agents under a common label to make interactions more intuitive. In any Agent-based system, particularly in decentralized environments including the ASI network, Agents need a clear way to identify and communicate with each other. Instead of relying on long, complex addresses, domains provide a structured way to reference them.
10+
11+
In a system where different applications or organizations manage multiple Agents, domains help distinguish their roles effortlessly. For instance, a transport-related Agent could belong to the `transport.agent` domain, while a financial Agent might operate under `finance.agent`. Within these domains, Agents have unique names, ensuring that they can be addressed correctly. An Agent named `bob-0.transport.agent` could be responsible for a smart mobility service, whereas `alice.weather.agent` might provide weather updates.
12+
13+
Domains make Agents interactions more scalable and efficient by keeping their identities organized. As networks grow, having structured namespaces allows Agents to be categorized in a way that reduces confusion and improves communication. This structure also supports interoperability, enabling Agents from different domains to interact while maintaining distinct roles. By making it easier to discover and reference Agents, domains enhance both usability and system-wide coordination.
14+
15+
## Agent Domains on the ASI Alliance Network
16+
17+
It is possible to explore Agents domains on the ASI Alliance Network using the [Companion App ↗️](https://companion.fetch.ai/fetchhub-4/blocks). Open the App and connect your [ASI Alliance web ↗️](/guides/fetch-network/asi-wallet/web-wallet/get-started).
18+
19+
![](src/images/guides/aname-service/aname_0.png)
20+
21+
Once you connect it successfully, you will need to click the **Connect Wallet** button in the top right corner and select **Domain** from the drop-down menu.
22+
23+
![](src/images/guides/aname-service/aname_1.png)
24+
25+
You will be redirected to the **Domains** page.
26+
27+
![](src/images/guides/aname-service/aname_2.png)
28+
29+
Here, you can either **_get a new domain_** for your Agents or **_explore already existing domains_** attached to your Agents.
30+
31+
### Get a new domain
32+
33+
In the **Domains** page, select the **Get a new domain** tab.
34+
35+
Look for any domain you wish to buy and associate with an Agent by typing it in within the dedicated search bar (e.g., `billy.ai`). Once you click the **Check** button; a list of results will appear below showing all the results related to your search.
36+
37+
A particular domain could have already been bought by another user and in that case it won't be available for purchase and marked as _Unavailable_. For any other available domain, check for the one you want to purchase and click the **Buy** button. A price in FET tokens per year will be displayed for each particular domain. The newly purchased domain is then associated and managed using the ASI Wallet Account you connected to the UI. This account becomes the **Administrator** of the domain, meaning that this account has full control over the domain's settings.
38+
39+
![](src/images/guides/aname-service/aname_3.png)
40+
41+
You will then be able to see all details related to the domain you have chosen.
42+
43+
![](src/images/guides/aname-service/aname_4.png)
44+
45+
To complete the purchase, you must click **Confirm**, which will process the transaction on-chain. If you decide not to proceed, selecting **Cancel** will close the window without making any changes. If you go on with the purchase, you will need to **Approve** the transaction within your ASI Web Wallet pop-up window.
46+
47+
![](src/images/guides/aname-service/aname_5.png)
48+
49+
After successful confirmation, the domain will be linked to your account, allowing you to use it as a recognizable identifier for your Agent. Remember that **you will need to renew the domain annually to maintain ownership!**
50+
51+
### Explore your domains
52+
53+
In the **Domains** page, select the **My domains** tab.
54+
55+
![](src/images/guides/aname-service/aname_6.png)
56+
57+
You will be able to see a full list of all domains you previously purchased and that are associated with the address of the ASI Wallet you connected to the Companion App UI. Each Domain has multiple information, including:
58+
59+
- **Subdomains**: The number of subdomains associated with the domain.
60+
- **Domain/Agent mappings**: How many mappings are set up between agents and the domain.
61+
- **Expiration**: Helps to monitor this to renew domains before they expire.
62+
- **Role**: It is the user's role associated with the domain based on permissions levels. We can distinguish 2 permission levels: _Admin_ and _Writer_.
63+
64+
<Callout type="info" emoji="ℹ️">
65+
An **Admin** has full control over domain settings, such as managing user roles and domain configurations, as well as performing tasks such as renewal and deletion of the domain itself. Admin permission is automatically granted to the account which purchased the domain in the first place. Once an administrator purchases a domain, it is possible to add all subdomains desired freely. Permissions within these subdomains are inherited from the top level domain permission configurations.
66+
67+
On the other hand, a **Writer** account has limited access, primarily focused on registration of Agents into domains, without the ability to modify domain configurations or manage user roles. This permission level is assigned to users by the Admin account. Depending on the user's role, the UI will slightly change when it comes to domains' details exploration. If a user has no role being granted, then the user will just be able to check the domain's details, without the ability to perform any action.
68+
</Callout>
69+
70+
If you click on one of your domains, you will be able to explore the particular domain's details:
71+
72+
- **_If you have Admin permissions_** then you will be in full control of that particular domain configuration.
73+
74+
![](src/images/guides/aname-service/aname_7.png)
75+
76+
You will be able to explore the details of that specific domain (e.g., `billy.helper`), including the Agents mapped towards it, the subdomains and weights in case Agents share the same domain. You can also explore **Permissions** within the dedicated section and add an Admin or a Writer account to the domain itself. You can edit or remove permissions by clicking the dedicated buttons for each permission granted
77+
78+
You are also able to add a particular Agent, using its address, to the domain by using the **Connect an Agent** section. You will need to provide the Agent Address and assign a weight to determine selection priority if multiple Agents share the same exact domain, with higher values indicating priority. You can optionally specify a subdomain (e.g., `foo.billy.helper`). Once you are satisfied, click **Add** to register the Agents and map it to that domain. Once an Agent is mapped to the domain, you can click the pencil icon to edit an existing Agent mapping, or, you can click the crossed-out link icon to remove an Agent's association with the domain:
79+
80+
![](src/images/guides/aname-service/aname_8.png)
81+
82+
- **_If you have Writer permissions_**, then you will be just able to add/edit Agents mapped to that specific domain. It is at this point that the benefit of having Writer permission comes into play as this permission allows all manipulation with Agents and mapping to the domain. This is particularly helpful whenever you need someone to handle day-to-day registration of Agents into a particular domain configuration.
83+
84+
![](src/images/guides/aname-service/aname_9.png)
1.02 MB
Loading
584 KB
Loading
199 KB
Loading
381 KB
Loading
332 KB
Loading
679 KB
Loading
108 KB
Loading
196 KB
Loading
165 KB
Loading
246 KB
Loading

0 commit comments

Comments
 (0)