Skip to content

Commit a448247

Browse files
committed
Add capability permission documentation and update related links; remove recursive delegation references from guides
1 parent d6aa54c commit a448247

File tree

9 files changed

+191
-53
lines changed

9 files changed

+191
-53
lines changed

astro.config.mjs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ export default defineConfig({
6262
items: [
6363
{ label: "Agent Registration", slug: "explanations/builders/agent-registration" },
6464
{ label: "Agent Editing", slug: "explanations/builders/agent-editing" },
65-
{ label: "Recursive Delegation", slug: "explanations/builders/recursive-delegation" },
65+
{ label: "Capability Permission", slug: "explanations/builders/capability-permission" },
6666
{ label: "Demand Signaling", slug: "explanations/builders/demand-signaling" },
6767
{ label: "Agent Server", slug: "explanations/builders/agent-server" },
6868
{ label: "Agent Client", slug: "explanations/builders/agent-client" },
@@ -100,6 +100,7 @@ export default defineConfig({
100100
{ label: "Edit your Agent", slug: "how-to-guides/builders/edit-your-agent" },
101101
{ label: "Manage Capabilities", slug: "how-to-guides/builders/manage-capabilities" },
102102
{ label: "Manage Permissions", slug: "how-to-guides/builders/manage-permissions" },
103+
{ label: "Capability Permission", slug: "how-to-guides/builders/capability-permission" },
103104
{ label: "Create a Signal", slug: "how-to-guides/builders/create-signal" },
104105
{ label: "Setup Agent Server", slug: "how-to-guides/builders/setup-agent-server" },
105106
{ label: "Setup Agent Client", slug: "how-to-guides/builders/setup-agent-client" },
231 KB
Loading
228 KB
Loading
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
---
2+
title: Capability Permission
3+
description: Understanding capability permissions and how they enable agents to delegate access to their endpoints and services.
4+
---
5+
6+
import {
7+
Aside,
8+
Card,
9+
CardGrid,
10+
} from "@astrojs/starlight/components";
11+
12+
Capability permissions allow agents to delegate access to their endpoints and services to other agents in the network.
13+
This enables specialized coordination where agents can grant controlled access to their capabilities while maintaining oversight.
14+
15+
### Core Functions
16+
17+
**Access Control**: Agents can precisely control who can use their capabilities and under what conditions.
18+
19+
**Service Delegation**: Wide service scopes can be delegated to specialized agents, creating efficient service networks.
20+
21+
### Permission Structure
22+
23+
Capability permissions operate on specific namespace paths rather than entire capability sets, enabling granular access control.
24+
25+
For capability permissions, agents delegate specific namespace paths to other agents. Each receiving agent can use the delegated capabilities within the constraints set by the delegator.
26+
27+
### Key Rules
28+
29+
- **Revocation**: When a delegator revokes, the capability permission is immediately revoked.
30+
Revocation terms are set during permission creation.
31+
- **Depth**: Measured per capability from root owner to current holder, with maximum of 8 levels.
32+
- **Constraints**: Each delegation can add constraints that must be satisfied for the capability to be exercised.
33+
- **Inheritance**: Permission contents inherit all constraints through delegation chains, with new constraints layering on top.
34+
35+
### Related Concepts
36+
37+
- **[Permission System](https://docs.torus.network/explanations/v05/permissions/)** - Core permission mechanics and delegation basics
38+
- **[Agent Registration](https://docs.torus.network/explanations/builders/agent-registration/)** - How agents become capable of receiving delegations
39+
- **[Root Agents](https://docs.torus.network/explanations/goal-leaders/root-agents/)** - Agents with direct emission access for delegation
40+
41+
<Aside type="tip" title="Ready to Create Capability Permissions?">
42+
Follow our [step-by-step guide to capability permissions](https://docs.torus.network/how-to-guides/builders/capability-permission/) for practical implementation instructions.
43+
</Aside>

src/content/docs/explanations/builders/recursive-delegation.mdx

Lines changed: 0 additions & 51 deletions
This file was deleted.

src/content/docs/explanations/table-of-contents.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ Understanding how agent systems work within Torus:
4646

4747
- [Agent Registration](https://docs.torus.network/explanations/builders/agent-registration/) — Registration economics, burn mechanisms, and discovery
4848
- [Agent Editing](https://docs.torus.network/explanations/builders/agent-editing/) — Update mechanics and storage architecture
49-
- [Recursive Delegation](https://docs.torus.network/explanations/builders/recursive-delegation/)Re-delegation of permissions and specialized responsibility trees
49+
- [Capability Permission](https://docs.torus.network/explanations/builders/capability-permission/)Delegating access to agent endpoints and services
5050
- [Demand Signaling](https://docs.torus.network/explanations/builders/demand-signaling/) — Capability coordination and economic incentives
5151
- [Agent Server](https://docs.torus.network/explanations/builders/agent-server/) — API architecture, authentication, and capability sharing
5252
- [Agent Client](https://docs.torus.network/explanations/builders/agent-client/) — Communication patterns and authentication flow
Lines changed: 139 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,139 @@
1+
---
2+
title: Capability Permission
3+
description: Step-by-step guide to creating capability permissions to delegate access to your agent's endpoints and services.
4+
---
5+
6+
import {
7+
Steps,
8+
Aside,
9+
CardGrid,
10+
Card
11+
} from "@astrojs/starlight/components";
12+
13+
import ClickableImage from '/src/components/ClickableImage.astro';
14+
import RedText from '/src/components/RedText.astro';
15+
import uiExplainedRedelegation from '/public/images/how-to-guide/capability-permission/ui-explained-re-delegation.png';
16+
import numberInstancesExplained from '/public/images/how-to-guide/capability-permission/number-instances-explained.png';
17+
18+
In this guide, we'll walk through **creating capability permissions** in the Torus portal.
19+
Capability permissions enable you to delegate access to your agent's endpoints and services to other agents in the network.
20+
21+
## Why Create Capability Permission?
22+
23+
You want to give another agent access to use your capabilities or re-delegate capabilities you've received.
24+
Capability permissions let you control who can access your services while maintaining oversight of the delegation.
25+
26+
#### What we will accomplish
27+
28+
- [Create capability permission](#create-capability-permission)
29+
30+
<Aside>
31+
⏱️ **Estimated time to complete this guide: 5 minutes**
32+
</Aside>
33+
34+
## Prerequisites
35+
36+
<CardGrid>
37+
<Card title="Registered Agent" icon="seti:license">
38+
You must have a registered agent with capabilities to delegate.
39+
Follow the [manage permissions guide](https://docs.torus.network/how-to-guides/builders/manage-permissions/) to understand permission basics.
40+
</Card>
41+
<Card title="Target Agents" icon="seti:pipeline">
42+
Identify the agents you want to delegate permissions to. These agents must be registered.
43+
</Card>
44+
<Card title="Torus Balance" icon="seti:shell">
45+
Ensure you have enough TORUS to cover permission creation transaction fees.
46+
</Card>
47+
</CardGrid>
48+
49+
## Create Capability Permission
50+
51+
<Steps>
52+
53+
1. **Visit the [Capability Permissions Tab in the Torus Portal](https://portal.torus.network/permissions/create-permission/capability)**
54+
Click the <RedText variant="light">**Capability Permission**</RedText> tab under Permissions in the Torus Portal.
55+
56+
2. **Connect your Torus Wallet**
57+
Ensure you're <RedText variant="light">connected with the agent account</RedText> that has the capabilities you want to delegate.
58+
59+
3. **Select the Paths to Delegate**
60+
Choose the capability paths you want to create permissions for:
61+
62+
- **Your own paths**: You can delegate unlimited instances of paths you own
63+
- **Delegated paths**: You're limited to the number of instances you were given access to (if 0, you cannot use or delegate)
64+
65+
<Aside type="note">
66+
**Path Selection Rules**
67+
You can always delegate one of the following options:
68+
- Your own path
69+
- A Path that you hold with instances available
70+
- Your own path PLUS another path that you have instances for
71+
72+
You cannot delegate two paths that you hold simultaneously.
73+
</Aside>
74+
75+
<ClickableImage src={uiExplainedRedelegation} alt="UI explanation for capability permission interface" />
76+
77+
4. **Create the Permission**
78+
After selecting your paths, click <RedText variant="light">**Create Permission**</RedText> on the bottom left of your screen.
79+
80+
<Aside type="note">
81+
**Automatic Path Inheritance**
82+
83+
When you select a parent path, all child paths to the right are automatically included by default. You can only select the leftmost (parent) path. The child paths will always be granted as part of the delegation and cannot be excluded individually.
84+
</Aside>
85+
86+
<ClickableImage src={numberInstancesExplained} alt="Number of instances explanation interface" />
87+
88+
5. **Fill in the Permission Form**
89+
Complete the required fields:
90+
91+
```md
92+
# Recipient
93+
Search by agent name or address that will receive the permission.
94+
95+
# Confirm Selected Capability Paths
96+
Review your path selections before proceeding.
97+
98+
# Duration
99+
Set the permission duration (same as other permissions).
100+
101+
# Maximum Instances
102+
Set the instance limit (must be equal or less than instances you
103+
have access to; infinite for your own permissions).
104+
105+
# Revocation Terms
106+
Choose from:
107+
- **Irrevocable**: Cannot be revoked
108+
- **Delegator can revoke**: Only you can revoke this permission
109+
- **By arbiters**: Can be revoked by arbiters after a vote
110+
- **After specific block**: Can only be revoked after the block number
111+
```
112+
113+
6. **Submit and Sign Transaction**
114+
Click <RedText variant="light">**Create Capability Permission (n paths)**</RedText>.
115+
Open SubWallet and <RedText variant="light">sign the transaction</RedText>.
116+
117+
7. **All Done**
118+
You've successfully created the capability permission.
119+
The receiving agent can now use the delegated capabilities within the limits you've set.
120+
121+
</Steps>
122+
123+
124+
## What's Next?
125+
126+
Now that you've created capability permission, you might want to:
127+
128+
- **Monitor your delegations**: Adjust delegation chains in the [Manage Permissions tab](https://portal.torus.network/permissions/manage-permission)
129+
- **Create more capabilities**: Register new [capability paths](https://portal.torus.network/capabilities/register-capability) to expand what you can delegate
130+
- **Build agent services**: Set up an [agent server](https://docs.torus.network/how-to-guides/builders/setup-agent-server/) to provide APIs that utilize your delegated permissions
131+
132+
Connect with the community:
133+
- [Discord](https://discord.gg/torus) — Technical discussions, support, and announcements
134+
- [Telegram](https://t.me/torusnetwork) — General chat and announcements
135+
- [Twitter](https://x.com/torus_network) — Updates and ecosystem news
136+
137+
<Aside type="tip" title="Want to Learn More?">
138+
Learn about [recursive delegation concepts](https://docs.torus.network/explanations/builders/recursive-delegation/) and the technical architecture behind permission delegation.
139+
</Aside>

src/content/docs/how-to-guides/builders/manage-capabilities.mdx

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,11 @@ By removing outdated or unused capabilities, you reduce the attack surface and k
6767
Capability paths can only contain <RedText variant="light">**lowercase letters**</RedText>, <RedText variant="light">**numbers**</RedText>, <RedText variant="light">**hyphens**</RedText>, and <RedText variant="light">**underscores**</RedText>.
6868
You **do not** need to type the agent name or method — they are handled by the UI.
6969

70+
**Maximum Depth: 10 segments total**
71+
- `agent.` counts as 1 segment
72+
- `agent-name` counts as 1 segment
73+
- You can create up to 8 additional capability segments
74+
7075
**Examples:**
7176

7277
- `example-agent.tokens.[method]`

src/content/docs/how-to-guides/table-of-contents.mdx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ If you're developing tools, services, or integrations on Torus:
3737
- [Edit your Agent](https://docs.torus.network/how-to-guides/builders/edit-your-agent/)
3838
- [Manage Permissions](https://docs.torus.network/how-to-guides/builders/manage-permissions/)
3939
- [Manage Capabilities](https://docs.torus.network/how-to-guides/builders/manage-capabilities/)
40+
- [Capability Permission](https://docs.torus.network/how-to-guides/builders/capability-permission/)
4041
- [Create a Signal](https://docs.torus.network/how-to-guides/builders/create-signal/)
4142
- [Setup Agent Server](https://docs.torus.network/how-to-guides/builders/setup-agent-server/)
4243
- [Setup Agent Client](https://docs.torus.network/how-to-guides/builders/setup-agent-client/)

0 commit comments

Comments
 (0)