|
| 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> |
0 commit comments