dominusnode-superagi 1.0.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,5 @@
1
+ """DomiNode tools for SuperAGI agents."""
2
+ from dominusnode_superagi.toolkit import DominusNodeToolkit
3
+
4
+ __version__ = "1.0.0"
5
+ __all__ = ["DominusNodeToolkit"]
@@ -0,0 +1,133 @@
1
+ """DomiNode SuperAGI Toolkit -- registers all 24 DomiNode tools.
2
+
3
+ Provides a ``BaseToolkit`` subclass that exposes 24 tools for interacting
4
+ with the DomiNode rotating proxy-as-a-service platform. The toolkit
5
+ covers proxied HTTP fetching, wallet and usage monitoring, agentic wallet
6
+ management, team management, x402 micropayments, and PayPal top-up.
7
+
8
+ Example::
9
+
10
+ from dominusnode_superagi.toolkit import DominusNodeToolkit
11
+
12
+ toolkit = DominusNodeToolkit()
13
+ tools = toolkit.get_tools()
14
+ # Each tool has .name, .description, .args_schema, and ._execute()
15
+
16
+ Requires ``DOMINUSNODE_API_KEY`` (and optionally ``DOMINUSNODE_BASE_URL``,
17
+ ``DOMINUSNODE_PROXY_HOST``, ``DOMINUSNODE_PROXY_PORT``) to be set in
18
+ SuperAGI's tool configuration.
19
+ """
20
+
21
+ from __future__ import annotations
22
+
23
+ from superagi.tools.base_tool import BaseToolkit
24
+
25
+ from dominusnode_superagi.tools import (
26
+ DominusNodeAgenticTransactionsTool,
27
+ DominusNodeAgenticWalletBalanceTool,
28
+ DominusNodeBalanceTool,
29
+ DominusNodeCreateAgenticWalletTool,
30
+ DominusNodeCreateTeamTool,
31
+ DominusNodeDeleteAgenticWalletTool,
32
+ DominusNodeFreezeAgenticWalletTool,
33
+ DominusNodeFundAgenticWalletTool,
34
+ DominusNodeListAgenticWalletsTool,
35
+ DominusNodeListTeamsTool,
36
+ DominusNodeProxiedFetchTool,
37
+ DominusNodeProxyConfigTool,
38
+ DominusNodeSessionsTool,
39
+ DominusNodeTeamCreateKeyTool,
40
+ DominusNodeTeamDetailsTool,
41
+ DominusNodeTeamFundTool,
42
+ DominusNodeTeamUsageTool,
43
+ DominusNodeTopupPaypalTool,
44
+ DominusNodeUnfreezeAgenticWalletTool,
45
+ DominusNodeUpdateTeamMemberRoleTool,
46
+ DominusNodeUpdateTeamTool,
47
+ DominusNodeUpdateWalletPolicyTool,
48
+ DominusNodeUsageTool,
49
+ DominusNodeX402InfoTool,
50
+ )
51
+
52
+
53
+ class DominusNodeToolkit(BaseToolkit):
54
+ """SuperAGI toolkit providing 22 DomiNode proxy service tools.
55
+
56
+ Tools include:
57
+
58
+ **Proxy Operations:**
59
+ - Proxied Fetch -- fetch URLs through rotating proxies
60
+ - Proxy Config -- get proxy endpoint configuration
61
+ - List Sessions -- view active proxy sessions
62
+
63
+ **Wallet:**
64
+ - Check Balance -- view wallet balance
65
+ - Check Usage -- view usage statistics
66
+ - TopUp PayPal -- create a PayPal wallet top-up order
67
+
68
+ **Agentic Wallets:**
69
+ - Create, Fund, Balance, List, Transactions
70
+ - Freeze, Unfreeze, Delete
71
+
72
+ **Teams:**
73
+ - Create, List, Details, Fund, Create Key, Usage
74
+ - Update Team, Update Member Role
75
+
76
+ **Payments:**
77
+ - X402 Info -- micropayment protocol details
78
+ """
79
+
80
+ name: str = "DomiNode Proxy Toolkit"
81
+ description: str = (
82
+ "Rotating proxy-as-a-service with wallet billing, team management, "
83
+ "agentic sub-wallets, and x402 micropayments. Datacenter proxies at "
84
+ "$3/GB, residential at $5/GB."
85
+ )
86
+
87
+ def get_tools(self) -> list:
88
+ """Return all 24 DomiNode tools for registration in SuperAGI.
89
+
90
+ Returns:
91
+ A list of 22 BaseTool instances covering proxy, wallet, team,
92
+ and payment operations.
93
+ """
94
+ return [
95
+ DominusNodeProxiedFetchTool(),
96
+ DominusNodeBalanceTool(),
97
+ DominusNodeUsageTool(),
98
+ DominusNodeProxyConfigTool(),
99
+ DominusNodeSessionsTool(),
100
+ DominusNodeCreateAgenticWalletTool(),
101
+ DominusNodeFundAgenticWalletTool(),
102
+ DominusNodeAgenticWalletBalanceTool(),
103
+ DominusNodeListAgenticWalletsTool(),
104
+ DominusNodeAgenticTransactionsTool(),
105
+ DominusNodeFreezeAgenticWalletTool(),
106
+ DominusNodeUnfreezeAgenticWalletTool(),
107
+ DominusNodeDeleteAgenticWalletTool(),
108
+ DominusNodeUpdateWalletPolicyTool(),
109
+ DominusNodeCreateTeamTool(),
110
+ DominusNodeListTeamsTool(),
111
+ DominusNodeTeamDetailsTool(),
112
+ DominusNodeTeamFundTool(),
113
+ DominusNodeTeamCreateKeyTool(),
114
+ DominusNodeTeamUsageTool(),
115
+ DominusNodeUpdateTeamTool(),
116
+ DominusNodeUpdateTeamMemberRoleTool(),
117
+ DominusNodeX402InfoTool(),
118
+ DominusNodeTopupPaypalTool(),
119
+ ]
120
+
121
+ def get_env_keys(self) -> list:
122
+ """Return the environment/config keys needed by DomiNode tools.
123
+
124
+ Returns:
125
+ A list of configuration key names that SuperAGI should prompt
126
+ the user to set.
127
+ """
128
+ return [
129
+ "DOMINUSNODE_API_KEY",
130
+ "DOMINUSNODE_BASE_URL",
131
+ "DOMINUSNODE_PROXY_HOST",
132
+ "DOMINUSNODE_PROXY_PORT",
133
+ ]