dominusnode-dify 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.
Potentially problematic release.
This version of dominusnode-dify might be problematic. Click here for more details.
- dominusnode_dify/__init__.py +64 -0
- dominusnode_dify/tools.py +1570 -0
- dominusnode_dify-1.0.0.dist-info/LICENSE +21 -0
- dominusnode_dify-1.0.0.dist-info/METADATA +241 -0
- dominusnode_dify-1.0.0.dist-info/RECORD +7 -0
- dominusnode_dify-1.0.0.dist-info/WHEEL +5 -0
- dominusnode_dify-1.0.0.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"""DomiNode Dify integration -- 24 tools for the Dify AI platform.
|
|
2
|
+
|
|
3
|
+
Provides a Dify-compatible tool provider that exposes 24 tools for
|
|
4
|
+
interacting with the DomiNode rotating proxy-as-a-service platform.
|
|
5
|
+
|
|
6
|
+
Tools cover:
|
|
7
|
+
- Proxied HTTP fetching through rotating proxies
|
|
8
|
+
- Wallet balance and usage monitoring
|
|
9
|
+
- Proxy configuration and session listing
|
|
10
|
+
- Agentic wallet management (create, fund, freeze, unfreeze, delete)
|
|
11
|
+
- Team management (create, list, fund, keys, usage, update, role changes)
|
|
12
|
+
- x402 micropayment info
|
|
13
|
+
- PayPal top-up
|
|
14
|
+
|
|
15
|
+
Security:
|
|
16
|
+
- Full SSRF prevention (private IP blocking, DNS rebinding, Teredo/6to4,
|
|
17
|
+
IPv4-mapped/compatible IPv6, hex/octal/decimal normalization, zone ID
|
|
18
|
+
stripping, .localhost/.local/.internal/.arpa TLD blocking, embedded
|
|
19
|
+
credential blocking)
|
|
20
|
+
- OFAC sanctioned country validation (CU, IR, KP, RU, SY)
|
|
21
|
+
- Credential scrubbing in all error outputs
|
|
22
|
+
- Prototype pollution prevention on all parsed JSON
|
|
23
|
+
- HTTP method restriction (GET/HEAD/OPTIONS only for proxied fetch)
|
|
24
|
+
- 10 MB response cap, 4000 char truncation, 30 s timeout
|
|
25
|
+
- Redirect following disabled to prevent open redirect abuse
|
|
26
|
+
|
|
27
|
+
Requires: httpx (``pip install httpx``)
|
|
28
|
+
"""
|
|
29
|
+
|
|
30
|
+
from __future__ import annotations
|
|
31
|
+
|
|
32
|
+
__version__ = "1.0.0"
|
|
33
|
+
|
|
34
|
+
from dominusnode_dify.tools import (
|
|
35
|
+
BLOCKED_HOSTNAMES,
|
|
36
|
+
SANCTIONED_COUNTRIES,
|
|
37
|
+
DominusNodeProvider,
|
|
38
|
+
_extract_6to4_ipv4,
|
|
39
|
+
_extract_teredo_ipv4,
|
|
40
|
+
_is_private_ip,
|
|
41
|
+
_normalize_ipv4,
|
|
42
|
+
_sanitize_error,
|
|
43
|
+
_strip_dangerous_keys,
|
|
44
|
+
_validate_label,
|
|
45
|
+
_validate_positive_int,
|
|
46
|
+
_validate_uuid,
|
|
47
|
+
validate_url,
|
|
48
|
+
)
|
|
49
|
+
|
|
50
|
+
__all__ = [
|
|
51
|
+
"DominusNodeProvider",
|
|
52
|
+
"BLOCKED_HOSTNAMES",
|
|
53
|
+
"SANCTIONED_COUNTRIES",
|
|
54
|
+
"_is_private_ip",
|
|
55
|
+
"_normalize_ipv4",
|
|
56
|
+
"_extract_teredo_ipv4",
|
|
57
|
+
"_extract_6to4_ipv4",
|
|
58
|
+
"_sanitize_error",
|
|
59
|
+
"_strip_dangerous_keys",
|
|
60
|
+
"_validate_label",
|
|
61
|
+
"_validate_positive_int",
|
|
62
|
+
"_validate_uuid",
|
|
63
|
+
"validate_url",
|
|
64
|
+
]
|