diff --git a/docs/cli/Guides/collaboration.md b/docs/cli/Guides/collaboration.md
index 044651ad..101a0842 100644
--- a/docs/cli/Guides/collaboration.md
+++ b/docs/cli/Guides/collaboration.md
@@ -85,13 +85,13 @@ Both Alice and Bob can retrieve the order report (11) that confirms the authenti
**Bob**:
- [SPCTL](/cli)
-- Provider Tools
+- [Provider Tools](/cli/guides/provider-tools)
## Preparation
### Alice: 1. Build a solution
-1.1. Write a Dockerfile that creates an image with the training engine. Keep in mind the special file structure inside the TEE:
+1.1. Write a Dockerfile that creates an image with your code. Keep in mind the special file structure inside the TEE:
| **Location** | **Purpose** | **Access** |
| :- | :- | :- |
@@ -351,3 +351,7 @@ Additionally, find entries in the `runtimeInfo` array that start with `"type": "
```
These hashes are of the actual solution and data that were executed within a TEE. Compare them with the solution and dataset hashes from the respective resource files.
+
+## Support
+
+If you have any issues or questions, contact Super Protocol on [Discord](https://discord.gg/superprotocol) or via the [contact form](https://superprotocol.zendesk.com/hc/en-us/requests/new).
\ No newline at end of file
diff --git a/docs/cli/Guides/confidential-fine-tuning.md b/docs/cli/Guides/confidential-fine-tuning.md
index 5f90826d..5b7d9ac7 100644
--- a/docs/cli/Guides/confidential-fine-tuning.md
+++ b/docs/cli/Guides/confidential-fine-tuning.md
@@ -2,7 +2,7 @@
id: "fine-tune"
title: "Confidential Fine-Tuning"
slug: "/guides/fine-tune"
-sidebar_position: 2
+sidebar_position: 3
---
Super Protocol enables independent parties to jointly compute over their private inputs without revealing those inputs to one another.
@@ -23,7 +23,7 @@ The following is just one example of confidential collaboration. Super Protocol'
## General workflow
-**Prepare the solution**
+**Prepare the solution**:
```mermaid
sequenceDiagram
@@ -47,7 +47,7 @@ Alice and Bob download the solution ([4](/cli/guides/fine-tune#alice-and-bob-4-d
If Carol cannot share the code with Alice and Bob, and a third-party auditor is involved, the workflow will differ slightly. After uploading, Carol must also create a solution offer on Super Protocol Marketplace (similar to Bob's [Step 8](/cli/guides/fine-tune#bob-8-create-an-offer)).
-**Prepare the data**
+**Prepare the data**:
```mermaid
sequenceDiagram
@@ -68,7 +68,7 @@ Alice uploads her model ([6](/cli/guides/fine-tune#alice-6-upload-the-model)) an
Bob creates an offer on the Marketplace ([8](/cli/guides/fine-tune#bob-8-create-an-offer)). The offer requires Bob's manual approval for use. He shares the offer's IDs with Alice.
-**Execute**
+**Execute**:
```mermaid
sequenceDiagram
@@ -113,7 +113,7 @@ Both Alice and Bob can retrieve the order report ([12](/cli/guides/fine-tune#ali
**Bob**:
- [SPCTL](/cli)
-- Provider Tools
+- [Provider Tools](/cli/guides/provider-tools)
**Carol**:
@@ -411,3 +411,7 @@ Additionally, find entries in the `runtimeInfo` array that start with `"type": "
```
These hashes are of the actual solution and data that were executed within a TEE. Compare them with the solution and dataset hashes from the respective resource files.
+
+## Support
+
+If you have any issues or questions, contact Super Protocol on [Discord](https://discord.gg/superprotocol) or via the [contact form](https://superprotocol.zendesk.com/hc/en-us/requests/new).
\ No newline at end of file
diff --git a/docs/cli/Guides/provider-tools.md b/docs/cli/Guides/provider-tools.md
new file mode 100644
index 00000000..d041a00e
--- /dev/null
+++ b/docs/cli/Guides/provider-tools.md
@@ -0,0 +1,147 @@
+---
+id: "provider-tools"
+title: "Set Up Provider Tools"
+slug: "/guides/provider-tools"
+sidebar_position: 1
+---
+
+import Tabs from '@theme/Tabs';
+import TabItem from '@theme/TabItem';
+
+Provider Tools is a Super Protocol CLI utility for registering providers and creating offers.
+
+## Download
+
+
+
+Create a separate directory, open a terminal there, and run the following command:
+```
+curl -L https://github.com/Super-Protocol/provider-tools/releases/latest/download/provider-tools-linux-x64 -o provider-tools
+chmod +x ./provider-tools
+```
+
+
+Create a separate directory, open Terminal there, and run the following command:
+```
+curl -L https://github.com/Super-Protocol/provider-tools/releases/latest/download/provider-tools-macos-x64 -o provider-tools
+chmod +x ./provider-tools
+```
+
+
+Install and launch [WSL](https://learn.microsoft.com/en-us/windows/wsl). Create a separate directory, and install Provider Tools for Linux:
+```
+curl -L https://github.com/Super-Protocol/provider-tools/releases/latest/download/provider-tools-linux-x64 -o provider-tools
+chmod +x ./provider-tools
+```
+
+
+
+## Set Up
+
+```shell
+./provider-tools setup
+```
+
+Enter the Access token:
+
+```text
+eyJhbGciOiJFUzI1NiJ9.eyJhZGRyZXNzIjoiMHhBN0E5NjQ4ZGE2QTg5QjBhNzFhNGMwRDQ2Y2FENDAwMDU3ODI3NGEyIiwiaWF0IjoxNjc5OTk4OTQyLCJleHAiOjE3NDMxMTQxNDJ9.x2lx90D733mToYYdOWhh4hhXn3YowFW4JxFjDFtI7helgp2uqekDHFgekT5yjbBWeHTzRap7SHbDC3VvMIDe0g
+```
+
+Follow the dialog:
+
+Q: `Do you need to generate a new authority account?`
+A: `y` (Yes)
+
+Q: `Do you need to generate a new action account?`
+A: `y` (Yes)
+
+Q: `Do you need to generate a new tokenReceiver account?`
+A: `y` (Yes)
+
+## Provider's SPCTL
+
+Providers need another copy of SPCTL configured to manage their offers.
+
+
+
+ If you registered a provider using Provider Tools, you should have a configuration file created automatically in the Provider Tools directory. Its name should be similar to `spctl-config-0xB9f0b77BDbAe9fBe3E60BdC567E453f503605BAb.json`, where `0xB9f0b77BDbAe9fBe3E60BdC567E453f503605BAb` is your Authority Account wallet address.
+
+ Copy or download the SPCTL binary to the Provider Tools directory; rename this file to `config.json` so SPCTL can recognize it as its configuration file.
+
+ Alternatively, add the `--config` option to SPCTL commands to use the same SPCTL binary with another account. For example:
+
+ ```shell
+ ./spctl orders list --my-account --type tee --config ../provider-tools/spctl-config-0xB9f0b77BDbAe9fBe3E60BdC567E453f503605BAb.json
+ ```
+
+
+ As with your User Account's configuration file, you can manually create the provider's SPCTL configuration file.
+
+ 1. In the Provider Tools directory, create a file named `config.json`. Use the following template:
+
+ ```json title="config.json"
+ {
+ "backend": {
+ "url": "https://bff.superprotocol.com/graphql",
+ "accessToken": "eyJhbGciOiJFUzI1NiJ9.eyJhZGRyZXNzIjoiMHhBN0E5NjQ4ZGE2QTg5QjBhNzFhNGMwRDQ2Y2FENDAwMDU3ODI3NGEyIiwiaWF0IjoxNjc5OTk4OTQyLCJleHAiOjE3NDMxMTQxNDJ9.x2lx90D733mToYYdOWhh4hhXn3YowFW4JxFjDFtI7helgp2uqekDHFgekT5yjbBWeHTzRap7SHbDC3VvMIDe0g"
+ },
+ "blockchain": {
+ "rpcUrl": "https://opbnb.superprotocol.com",
+ "smartContractAddress": "0x3C69ea105Fc716C1Dcb41859281Aa817D0A0B279",
+ "accountPrivateKey": "",
+ "authorityAccountPrivateKey": ""
+ },
+ "storage": {
+ "type": "STORJ",
+ "bucket": "",
+ "prefix": "",
+ "writeAccessToken": "",
+ "readAccessToken": ""
+ },
+ "workflow": {
+ "resultEncryption": {
+ "algo": "ECIES",
+ "key": "",
+ "encoding": "base64"
+ }
+ }
+ }
+ ```
+
+ 2. Do not change the preconfigured values and provide values to the following keys:
+
+ | **Key** | **Description** |
+ | :- | :- |
+ | `"accountPrivateKey"` | Action Account private key. |
+ | `"authorityAccountPrivateKey"` | Authority Account private key. |
+ | `"bucket"` | (optional) Name of a Storj bucket. |
+ | `"prefix"` | (optional) Path to a directory inside the bucket. It can be empty. |
+ | `"writeAccessToken"` | (optional) Storj access grant with **Full** permission (**Read**, **List**, **Write**, **Delete**) for this bucket. |
+ | `"readAccessToken"` | (optional) Storj access grant with **Read** permission for this bucket. |
+
+ You can find the section with your Authority and Action Accounts private keys in `provider-tools-config.json` in the Provider Tools directory. For example:
+
+ ```json title="provider-tools-config.json"
+ "account": {
+ "authority": "0x50612a8bf52cb263825e58c72361ea58c04efa7af7e5b549ea9c2ed02059c668d",
+ "action": "0x0512ad96fzc01900d3ecf0987m81c7bc1fd2daf455ebb49kjce5b410c7dc6f05",
+ "tokenReceiver": "0x167d93786ghbf00d19b7d58065a5a59276e55ca1e621e47330f2b64d9fcb6a38"
+ },
+ ```
+
+ Save and close the file.
+
+ 3. Generate a key for order result encryption using the [`workflows generate-key`](/cli/commands/workflows/generate-key) command. Open `config.json` again and set the generated key to `workflow.resultEncryption.key`. Save and close the file.
+
+
+
+### Set up Storj access (optional)
+
+If you already [set up Storj access](/cli/#set-up-storj-access-optional) for your regular SPCTL, you may reuse the same credentials for your provider's SPCTL.
+
+If you skip this step, Super Protocol will automatically provide you with 20 GB of storage.
+
+## Support
+
+If you have any issues or questions, contact Super Protocol on [Discord](https://discord.gg/superprotocol) or via the [contact form](https://superprotocol.zendesk.com/hc/en-us/requests/new).
\ No newline at end of file
diff --git a/docs/cli/Guides/quick-guide.md b/docs/cli/Guides/quick-guide.md
index b10548e1..801e8523 100644
--- a/docs/cli/Guides/quick-guide.md
+++ b/docs/cli/Guides/quick-guide.md
@@ -2,7 +2,7 @@
id: "quick-guide"
title: "Quick Deployment Guide"
slug: "/guides/quick-guide"
-sidebar_position: 1
+sidebar_position: 2
---
This quick guide provides instructions on deploying a solution and data on Super Protocol. Its purpose is to introduce you to the logic and sequence of the CLI commands.
diff --git a/docs/cli/commands/offers/add-slot.md b/docs/cli/commands/offers/add-slot.md
index c00ce34b..dd4ce284 100644
--- a/docs/cli/commands/offers/add-slot.md
+++ b/docs/cli/commands/offers/add-slot.md
@@ -8,7 +8,7 @@ sidebar_position: 9
Adds a slot to an offer.
-**Important:** This command requires SPCTL with a [provider configuration file](/cli/#for-providers).
+**Important:** This command requires SPCTL with a [provider configuration file](/cli/guides/provider-tools#providers-spctl).
## Syntax
diff --git a/docs/cli/commands/offers/delete-slot.md b/docs/cli/commands/offers/delete-slot.md
index 63e30dda..efb0d9e4 100644
--- a/docs/cli/commands/offers/delete-slot.md
+++ b/docs/cli/commands/offers/delete-slot.md
@@ -8,7 +8,7 @@ sidebar_position: 11
Deletes a slot in an offer.
-**Important:** This command requires SPCTL with a [provider configuration file](/cli/#for-providers).
+**Important:** This command requires SPCTL with a [provider configuration file](/cli/guides/provider-tools#providers-spctl).
Use the [`offers get`](/cli/commands/offers/get) command to get the IDs of all slots in an offer. Use the [`offers get-slot`](/cli/commands/offers/get-slot) command to get additional information on a slot.
diff --git a/docs/cli/commands/offers/disable.md b/docs/cli/commands/offers/disable.md
index 055cb1be..274311a6 100644
--- a/docs/cli/commands/offers/disable.md
+++ b/docs/cli/commands/offers/disable.md
@@ -8,7 +8,7 @@ sidebar_position: 6
Disables an existing enabled offer.
-**Important:** This command requires SPCTL with a [provider configuration file](/cli/#for-providers).
+**Important:** This command requires SPCTL with a [provider configuration file](/cli/guides/provider-tools#providers-spctl).
## Syntax
diff --git a/docs/cli/commands/offers/enable.md b/docs/cli/commands/offers/enable.md
index c8d8edb0..88586e91 100644
--- a/docs/cli/commands/offers/enable.md
+++ b/docs/cli/commands/offers/enable.md
@@ -8,7 +8,7 @@ sidebar_position: 7
Enables an existing disabled offer.
-**Important:** This command requires SPCTL with a [provider configuration file](/cli/#for-providers).
+**Important:** This command requires SPCTL with a [provider configuration file](/cli/guides/provider-tools#providers-spctl).
## Syntax
diff --git a/docs/cli/commands/offers/update-slot.md b/docs/cli/commands/offers/update-slot.md
index 1ddf8482..b9959301 100644
--- a/docs/cli/commands/offers/update-slot.md
+++ b/docs/cli/commands/offers/update-slot.md
@@ -8,7 +8,7 @@ sidebar_position: 10
Updates a slot in an offer.
-**Important:** This command requires SPCTL with a [provider configuration file](/cli/#for-providers).
+**Important:** This command requires SPCTL with a [provider configuration file](/cli/guides/provider-tools#providers-spctl).
Use the [`offers get`](/cli/commands/offers/get) command to get the IDs of all slots in an offer. Use the [`offers get-slot`](/cli/commands/offers/get-slot) command to get additional information on a slot.
diff --git a/docs/cli/commands/offers/update.md b/docs/cli/commands/offers/update.md
index 11a20313..501a7acc 100644
--- a/docs/cli/commands/offers/update.md
+++ b/docs/cli/commands/offers/update.md
@@ -8,7 +8,7 @@ sidebar_position: 5
Updates information about an offer.
-**Important:** This command requires SPCTL with a [provider configuration file](/cli/#for-providers).
+**Important:** This command requires SPCTL with a [provider configuration file](/cli/guides/provider-tools#providers-spctl).
## Syntax
diff --git a/docs/cli/commands/providers/update.md b/docs/cli/commands/providers/update.md
index bc5d3f92..8b57c044 100644
--- a/docs/cli/commands/providers/update.md
+++ b/docs/cli/commands/providers/update.md
@@ -8,7 +8,7 @@ sidebar_position: 3
Updates information about a provider.
-**Important:** This command requires SPCTL with a [provider configuration file](/cli/#for-providers).
+**Important:** This command requires SPCTL with a [provider configuration file](/cli/guides/provider-tools#providers-spctl).
## Syntax
diff --git a/docs/cli/commands/syntax.md b/docs/cli/commands/syntax.md
index 6d71110d..877a52d7 100644
--- a/docs/cli/commands/syntax.md
+++ b/docs/cli/commands/syntax.md
@@ -54,4 +54,8 @@ So, the final format of this option should be one of the following:
- `--solution ,`. For example, `--solution 26,25`.
- `--solution `. For example, `--solution ./solution.resource.json`.
-Read the descriptions of arguments and options and refer to the examples for more information. If you have any issues or questions, contact Super Protocol on [Discord](https://discord.gg/superprotocol) or via the [contact form](https://superprotocol.zendesk.com/hc/en-us/requests/new).
\ No newline at end of file
+Read the descriptions of arguments and options and refer to the examples for more information. If you have any issues or questions, contact Super Protocol on [Discord](https://discord.gg/superprotocol) or via the [contact form](https://superprotocol.zendesk.com/hc/en-us/requests/new).
+
+## Support
+
+If you have any issues or questions, contact Super Protocol on [Discord](https://discord.gg/superprotocol) or via the [contact form](https://superprotocol.zendesk.com/hc/en-us/requests/new).
\ No newline at end of file
diff --git a/docs/cli/index.md b/docs/cli/index.md
index eba0c16f..39e44e41 100644
--- a/docs/cli/index.md
+++ b/docs/cli/index.md
@@ -10,7 +10,7 @@ import TabItem from '@theme/TabItem';
**SPCTL**—Super Protocol Control—is a versatile tool to access the Super Protocol CLI. With this tool, you can create and manage orders, offers, providers, keys, files, and more.
-## Download SPCTL
+## Download
@@ -41,7 +41,7 @@ import TabItem from '@theme/TabItem';
You can also download and install SPCTL manually from the Super Protocol [GitHub repository](https://github.com/Super-Protocol/ctl).
-## For users
+## Set Up
You can set up SPCTL using the `./spctl setup` command or by manually creating a configuration file.
@@ -146,85 +146,6 @@ If you use a free Storj account, your files will become unavailable after the en
| `"writeAccessToken"` | Storj access grant with **Full** permission (**Read**, **List**, **Write**, **Delete**) for this bucket. |
| `"readAccessToken"` | Storj access grant with **Read** permission for this bucket. |
-## For providers
-
-This section is for providers only. Skip it if you are a regular user.
-
-Providers need another copy of SPCTL configured to manage their offers.
-
-
-
- If you registered a provider using Provider Tools, you should have a configuration file created automatically in the Provider Tools directory. Its name should be similar to `spctl-config-0xB9f0b77BDbAe9fBe3E60BdC567E453f503605BAb.json`, where `0xB9f0b77BDbAe9fBe3E60BdC567E453f503605BAb` is your Authority Account wallet address.
-
- Rename this file to `config.json` so SPCTL can recognize it as its configuration file. Copy or download the SPCTL binary to the Provider Tools directory.
-
- Alternatively, use the `--config` option with SPCTL commands to use the same SPCTL binary with a different account. For example:
-
- ```shell
- ./spctl orders list --my-account --type tee --config ./spctl-config-0xB9f0b77BDbAe9fBe3E60BdC567E453f503605BAb.json
- ```
-
-
- As with your User Account's configuration file, you can manually create the provider's SPCTL configuration file.
-
- 1. In the Provider Tools directory, create a file named `config.json`. Use the following template:
-
- ```json title="config.json"
- {
- "backend": {
- "url": "https://bff.superprotocol.com/graphql",
- "accessToken": "eyJhbGciOiJFUzI1NiJ9.eyJhZGRyZXNzIjoiMHhBN0E5NjQ4ZGE2QTg5QjBhNzFhNGMwRDQ2Y2FENDAwMDU3ODI3NGEyIiwiaWF0IjoxNjc5OTk4OTQyLCJleHAiOjE3NDMxMTQxNDJ9.x2lx90D733mToYYdOWhh4hhXn3YowFW4JxFjDFtI7helgp2uqekDHFgekT5yjbBWeHTzRap7SHbDC3VvMIDe0g"
- },
- "blockchain": {
- "rpcUrl": "https://opbnb.superprotocol.com",
- "smartContractAddress": "0x3C69ea105Fc716C1Dcb41859281Aa817D0A0B279",
- "accountPrivateKey": "",
- "authorityAccountPrivateKey": ""
- },
- "storage": {
- "type": "STORJ",
- "bucket": "",
- "prefix": "",
- "writeAccessToken": "",
- "readAccessToken": ""
- },
- "workflow": {
- "resultEncryption": {
- "algo": "ECIES",
- "key": "",
- "encoding": "base64"
- }
- }
- }
- ```
-
- 2. Do not change the preconfigured values and provide values to the following keys:
-
- | **Key** | **Description** |
- | :- | :- |
- | `"accountPrivateKey"` | The provider's Action Account private key. |
- | `"authorityAccountPrivateKey"` | The provider's Authority Account private key. |
- | `"bucket"` | (optional) Name of a Storj bucket. |
- | `"prefix"` | (optional) Path to a directory inside the bucket. It can be empty. |
- | `"writeAccessToken"` | (optional) Storj access grant with **Full** permission (**Read**, **List**, **Write**, **Delete**) for this bucket. |
- | `"readAccessToken"` | (optional) Storj access grant with **Read** permission for this bucket. |
-
- You can find the section with your Authority and Action Accounts private keys in `provider-tools-config.json` in the Provider Tools directory. For example:
-
- ```json title="provider-tools-config.json"
- "account": {
- "authority": "0x50612a8bf52cb263825e58c72361ea58c04efa7af7e5b549ea9c2ed02059c668d",
- "action": "0x0512ad96fzc01900d3ecf0987m81c7bc1fd2daf455ebb49kjce5b410c7dc6f05",
- "tokenReceiver": "0x167d93786ghbf00d19b7d58065a5a59276e55ca1e621e47330f2b64d9fcb6a38"
- },
- ```
-
- Save and close the file.
-
- 3. Generate a key for order result encryption using the [`workflows generate-key`](/cli/commands/workflows/generate-key) command. Open `config.json` again and set the generated key to `workflow.resultEncryption.key`. Save and close the file.
-
-
-
## Support
-If you have any issues or questions, contact Super Protocol on [Discord](https://discord.gg/superprotocol). The Community Managers will be happy to help you.
\ No newline at end of file
+If you have any issues or questions, contact Super Protocol on [Discord](https://discord.gg/superprotocol) or via the [contact form](https://superprotocol.zendesk.com/hc/en-us/requests/new).
\ No newline at end of file
diff --git a/docs/developers/cli_guides/providers_offers.md b/docs/developers/cli_guides/providers_offers.md
index 9e1941c3..4fd12887 100644
--- a/docs/developers/cli_guides/providers_offers.md
+++ b/docs/developers/cli_guides/providers_offers.md
@@ -600,4 +600,4 @@ If there is an error, check `error.log` in the Provider Tools directory and `err
## Support
-If you have any issues or questions, contact Super Protocol on [Discord](https://discord.gg/superprotocol). The Community Managers will be happy to help you.
\ No newline at end of file
+If you have any issues or questions, contact Super Protocol on [Discord](https://discord.gg/superprotocol) or via the [contact form](https://superprotocol.zendesk.com/hc/en-us/requests/new).
\ No newline at end of file
diff --git a/docs/developers/index.md b/docs/developers/index.md
index c8d5c39b..d8bcab43 100644
--- a/docs/developers/index.md
+++ b/docs/developers/index.md
@@ -30,7 +30,7 @@ When you know the basics, try SPCTL—the Super Protocol CLI tool:
## Create your provider and offers with CLI
1. Follow the [Providers and Offers](/developers/cli_guides/providers_offers) guide to create your provider and a first offer.
2. Follow the [Moderation Guidelines](/developers/marketplace/moderation/) to approve your offer for Marketplace GUI.
-3. [Update SPCTL configuration](/cli/#for-providers) as a provider to enable management of your provider and offers.
+3. [Update SPCTL configuration](/cli/guides/provider-tools#providers-spctl) as a provider to enable management of your provider and offers.
4. Use [SPCTL commands](/developers/cli_guides/providers_offers#faq) to manage your provider and offers.
Join us on [Discord](https://discord.gg/superprotocol). The Super Protocol team welcomes any feedback and questions!
\ No newline at end of file
diff --git a/docs/developers/marketplace_gui/first-steps.md b/docs/developers/marketplace_gui/first-steps.md
index 1d7a5aff..60611168 100644
--- a/docs/developers/marketplace_gui/first-steps.md
+++ b/docs/developers/marketplace_gui/first-steps.md
@@ -214,4 +214,4 @@ Then, click the **Connect Wallet** button in the Marketplace GUI again and sel
## Support
-If you have any issues or questions, contact Super Protocol on [Discord](https://discord.gg/superprotocol). Community Managers will be happy to help.
\ No newline at end of file
+If you have any issues or questions, contact Super Protocol on [Discord](https://discord.gg/superprotocol) or via the [contact form](https://superprotocol.zendesk.com/hc/en-us/requests/new).
\ No newline at end of file