safehands-pharos 1.2.6 → 1.4.0

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.
Files changed (153) hide show
  1. package/.env.example +64 -26
  2. package/README.md +333 -445
  3. package/dist/cli.d.ts +5 -5
  4. package/dist/cli.d.ts.map +1 -1
  5. package/dist/cli.js +124 -98
  6. package/dist/cli.js.map +1 -1
  7. package/dist/demo.d.ts +1 -1
  8. package/dist/demo.js +171 -171
  9. package/dist/index.d.ts +2 -2
  10. package/dist/index.js +138 -87
  11. package/dist/index.js.map +1 -1
  12. package/dist/init.d.ts +1 -1
  13. package/dist/init.js +65 -65
  14. package/dist/lib/auditLog.d.ts +9 -0
  15. package/dist/lib/auditLog.d.ts.map +1 -0
  16. package/dist/lib/auditLog.js +30 -0
  17. package/dist/lib/auditLog.js.map +1 -0
  18. package/dist/lib/constants.d.ts +291 -291
  19. package/dist/lib/constants.js +292 -292
  20. package/dist/lib/dodoApi.d.ts +78 -70
  21. package/dist/lib/dodoApi.d.ts.map +1 -1
  22. package/dist/lib/dodoApi.js +196 -178
  23. package/dist/lib/dodoApi.js.map +1 -1
  24. package/dist/lib/http.d.ts +14 -14
  25. package/dist/lib/http.js +118 -118
  26. package/dist/lib/pharosClient.d.ts +58 -58
  27. package/dist/lib/pharosClient.d.ts.map +1 -1
  28. package/dist/lib/pharosClient.js +63 -53
  29. package/dist/lib/pharosClient.js.map +1 -1
  30. package/dist/lib/policy/actionPolicyEngine.d.ts +53 -53
  31. package/dist/lib/policy/actionPolicyEngine.js +212 -212
  32. package/dist/lib/policy/actionPolicyEngine.js.map +1 -1
  33. package/dist/lib/riskEngine.d.ts +26 -26
  34. package/dist/lib/riskEngine.js +283 -283
  35. package/dist/lib/signer/index.d.ts +24 -24
  36. package/dist/lib/signer/index.d.ts.map +1 -1
  37. package/dist/lib/signer/index.js +88 -89
  38. package/dist/lib/signer/index.js.map +1 -1
  39. package/dist/lib/spendAccumulator.d.ts +10 -0
  40. package/dist/lib/spendAccumulator.d.ts.map +1 -0
  41. package/dist/lib/spendAccumulator.js +54 -0
  42. package/dist/lib/spendAccumulator.js.map +1 -0
  43. package/dist/lib/testDodoLive.d.ts +1 -1
  44. package/dist/lib/testDodoLive.js +104 -104
  45. package/dist/lib/testLiveSafehands.d.ts +1 -1
  46. package/dist/lib/testLiveSafehands.js +92 -92
  47. package/dist/lib/testRpc.d.ts +1 -1
  48. package/dist/lib/testRpc.js +29 -29
  49. package/dist/lib/testRpcLive.d.ts +1 -1
  50. package/dist/lib/testRpcLive.js +88 -88
  51. package/dist/lib/testTools.d.ts +1 -1
  52. package/dist/lib/testTools.js +397 -397
  53. package/dist/lib/testX402Live.d.ts +1 -1
  54. package/dist/lib/testX402Live.js +159 -159
  55. package/dist/lib/toolResponse.d.ts +25 -25
  56. package/dist/lib/toolResponse.js +53 -53
  57. package/dist/lib/wallet/index.d.ts +37 -18
  58. package/dist/lib/wallet/index.d.ts.map +1 -1
  59. package/dist/lib/wallet/index.js +128 -70
  60. package/dist/lib/wallet/index.js.map +1 -1
  61. package/dist/scripts/checkDeploy.d.ts +1 -1
  62. package/dist/scripts/checkDeploy.js +24 -24
  63. package/dist/scripts/deployRegistry.d.ts +1 -1
  64. package/dist/scripts/deployRegistry.js +100 -100
  65. package/dist/scripts/testRegistry.d.ts +1 -1
  66. package/dist/scripts/testRegistry.js +43 -43
  67. package/dist/tools/approveToken.d.ts +45 -46
  68. package/dist/tools/approveToken.d.ts.map +1 -1
  69. package/dist/tools/approveToken.js +85 -83
  70. package/dist/tools/approveToken.js.map +1 -1
  71. package/dist/tools/assessRisk.d.ts +79 -79
  72. package/dist/tools/assessRisk.d.ts.map +1 -1
  73. package/dist/tools/assessRisk.js +104 -93
  74. package/dist/tools/assessRisk.js.map +1 -1
  75. package/dist/tools/checkAllowance.d.ts +43 -36
  76. package/dist/tools/checkAllowance.d.ts.map +1 -1
  77. package/dist/tools/checkAllowance.js +56 -42
  78. package/dist/tools/checkAllowance.js.map +1 -1
  79. package/dist/tools/checkTokenSecurity.d.ts +46 -46
  80. package/dist/tools/checkTokenSecurity.d.ts.map +1 -1
  81. package/dist/tools/checkTokenSecurity.js +95 -88
  82. package/dist/tools/checkTokenSecurity.js.map +1 -1
  83. package/dist/tools/createAgentWallet.d.ts +26 -26
  84. package/dist/tools/createAgentWallet.d.ts.map +1 -1
  85. package/dist/tools/createAgentWallet.js +58 -59
  86. package/dist/tools/createAgentWallet.js.map +1 -1
  87. package/dist/tools/estimateGas.d.ts +79 -79
  88. package/dist/tools/estimateGas.js +124 -124
  89. package/dist/tools/executeSwap.d.ts +61 -59
  90. package/dist/tools/executeSwap.d.ts.map +1 -1
  91. package/dist/tools/executeSwap.js +141 -129
  92. package/dist/tools/executeSwap.js.map +1 -1
  93. package/dist/tools/explainRisk.d.ts +29 -29
  94. package/dist/tools/explainRisk.js +32 -32
  95. package/dist/tools/getAgentWallet.d.ts +21 -21
  96. package/dist/tools/getAgentWallet.js +27 -27
  97. package/dist/tools/getAgentWalletBalance.d.ts +11 -11
  98. package/dist/tools/getAgentWalletBalance.js +70 -70
  99. package/dist/tools/getExecutionHistory.d.ts +49 -51
  100. package/dist/tools/getExecutionHistory.d.ts.map +1 -1
  101. package/dist/tools/getExecutionHistory.js +154 -93
  102. package/dist/tools/getExecutionHistory.js.map +1 -1
  103. package/dist/tools/getGasPrice.d.ts +43 -43
  104. package/dist/tools/getGasPrice.js +59 -59
  105. package/dist/tools/getPoolInfo.d.ts +75 -75
  106. package/dist/tools/getPoolInfo.js +137 -137
  107. package/dist/tools/getTokenPrice.d.ts +113 -113
  108. package/dist/tools/getTokenPrice.js +117 -117
  109. package/dist/tools/getTransactionStatus.d.ts +43 -57
  110. package/dist/tools/getTransactionStatus.d.ts.map +1 -1
  111. package/dist/tools/getTransactionStatus.js +59 -67
  112. package/dist/tools/getTransactionStatus.js.map +1 -1
  113. package/dist/tools/getWalletBalance.d.ts +68 -68
  114. package/dist/tools/getWalletBalance.js +87 -87
  115. package/dist/tools/publishRiskScore.d.ts +63 -63
  116. package/dist/tools/publishRiskScore.d.ts.map +1 -1
  117. package/dist/tools/publishRiskScore.js +88 -85
  118. package/dist/tools/publishRiskScore.js.map +1 -1
  119. package/dist/tools/queryRiskRegistry.d.ts +38 -48
  120. package/dist/tools/queryRiskRegistry.d.ts.map +1 -1
  121. package/dist/tools/queryRiskRegistry.js +55 -60
  122. package/dist/tools/queryRiskRegistry.js.map +1 -1
  123. package/dist/tools/safehandsPreflightCheck.d.ts +77 -77
  124. package/dist/tools/safehandsPreflightCheck.js +47 -47
  125. package/dist/tools/safehandsRiskReport.d.ts +81 -81
  126. package/dist/tools/safehandsRiskReport.js +28 -28
  127. package/dist/tools/safehandsSafeExecute.d.ts +20 -20
  128. package/dist/tools/safehandsSafeExecute.d.ts.map +1 -1
  129. package/dist/tools/safehandsSafeExecute.js +81 -75
  130. package/dist/tools/safehandsSafeExecute.js.map +1 -1
  131. package/dist/tools/safehandsWalletHealth.d.ts +14 -14
  132. package/dist/tools/safehandsWalletHealth.js +103 -103
  133. package/dist/tools/safehandsX402Preflight.d.ts +26 -26
  134. package/dist/tools/safehandsX402Preflight.js +65 -65
  135. package/dist/tools/sendPayment.d.ts +57 -58
  136. package/dist/tools/sendPayment.d.ts.map +1 -1
  137. package/dist/tools/sendPayment.js +117 -108
  138. package/dist/tools/sendPayment.js.map +1 -1
  139. package/dist/tools/simulateTransaction.d.ts +60 -81
  140. package/dist/tools/simulateTransaction.d.ts.map +1 -1
  141. package/dist/tools/simulateTransaction.js +83 -88
  142. package/dist/tools/simulateTransaction.js.map +1 -1
  143. package/dist/tools/tokenRegistryStatus.d.ts +26 -26
  144. package/dist/tools/tokenRegistryStatus.js +96 -96
  145. package/dist/tools/x402PayAndFetch.d.ts +81 -81
  146. package/dist/tools/x402PayAndFetch.d.ts.map +1 -1
  147. package/dist/tools/x402PayAndFetch.js +152 -149
  148. package/dist/tools/x402PayAndFetch.js.map +1 -1
  149. package/dist/x402Server.d.ts +1 -1
  150. package/dist/x402Server.js +252 -252
  151. package/examples/dashboard/index.html +337 -0
  152. package/package.json +83 -82
  153. package/skill/SKILL.md +133 -133
package/.env.example CHANGED
@@ -1,26 +1,64 @@
1
- NODE_ENV=development
2
-
3
- PHAROS_ENVIRONMENT=atlantic-testnet
4
- PHAROS_CHAIN_ID=688689
5
- PHAROS_RPC_URL=https://atlantic.dplabs-internal.com
6
-
7
- DODO_API_KEY=
8
- FAROSWAP_API_KEY=
9
- GOPLUS_API_KEY=
10
-
11
- WALLET_MODE=none
12
- PRIVATE_KEY=
13
- X402_SIGNER_PRIVATE_KEY=
14
- WALLET_ADDRESS=
15
- WALLET_ENCRYPTION_KEY=
16
-
17
- WRITE_TOOLS_ENABLED=false
18
- ALLOW_UNLIMITED_APPROVAL=false
19
- ALLOW_LOCAL_X402_FETCH=false
20
-
21
- MAX_TX_AMOUNT_PHRS=0.1
22
- MAX_X402_PAYMENT_USDC=0.01
23
- MAX_APPROVAL_AMOUNT_USDC=10
24
- MAX_DAILY_SPEND_USD=10
25
-
26
- X402_SERVER_PORT=4021
1
+ NODE_ENV=development
2
+
3
+ PHAROS_ENVIRONMENT=atlantic-testnet
4
+ PHAROS_CHAIN_ID=688689
5
+ # Primary RPC URL (single endpoint)
6
+ PHAROS_RPC_URL=https://atlantic.dplabs-internal.com
7
+ # Optional: comma-separated list of RPC URLs for failover (takes priority over PHAROS_RPC_URL)
8
+ # PHAROS_RPC_URLS=https://atlantic.dplabs-internal.com,https://rpc2.pharos.xyz
9
+
10
+ # DODO API key for swap routing (required for execute_swap, get_pool_info, simulate_transaction swap mode)
11
+ DODO_API_KEY=
12
+
13
+ # ── Wallet Configuration ──────────────────────────────────────────────────────
14
+ # WALLET_MODE controls how write tools resolve a signer.
15
+ # none — no signer; write tools return NO_SIGNER_AVAILABLE (default, safe)
16
+ # env — reads PRIVATE_KEY from this file (testnet developer mode)
17
+ # managed-testnet — uses a wallet created via create_agent_wallet
18
+ WALLET_MODE=none
19
+ PRIVATE_KEY=
20
+ X402_SIGNER_PRIVATE_KEY=
21
+ WALLET_ADDRESS=
22
+
23
+ # Encryption key for AES-256-GCM encrypted managed wallet store (WALLET_STORE_PATH).
24
+ # If unset, a random per-process key is generated (wallets do not persist across restarts).
25
+ WALLET_ENCRYPTION_KEY=
26
+
27
+ # Path to persist managed agent wallets across restarts (optional).
28
+ # If unset, wallets are in-memory only and lost on server restart.
29
+ # WALLET_STORE_PATH=./.agents/wallets.json
30
+
31
+ # ── Write Tool Gates ──────────────────────────────────────────────────────────
32
+ WRITE_TOOLS_ENABLED=false
33
+ ALLOW_UNLIMITED_APPROVAL=false
34
+ ALLOW_LOCAL_X402_FETCH=false
35
+
36
+ # ── Spend Limits ──────────────────────────────────────────────────────────────
37
+ MAX_TX_AMOUNT_PHRS=0.1
38
+ MAX_X402_PAYMENT_USDC=0.01
39
+ MAX_APPROVAL_AMOUNT_USDC=10
40
+
41
+ # Enforced in-memory per-wallet (resets at UTC midnight).
42
+ # USD value of PHRS is estimated using PHRS_USD_PRICE below.
43
+ MAX_DAILY_SPEND_USD=10
44
+ # Assumed PHRS/USD price for daily spend accounting (update as needed)
45
+ PHRS_USD_PRICE=1.0
46
+
47
+ # ── Observability ─────────────────────────────────────────────────────────────
48
+ # Path to append-only JSON audit log (one JSON object per line).
49
+ # Leave empty to disable. Example: AUDIT_LOG_PATH=./logs/safehands-audit.jsonl
50
+ # AUDIT_LOG_PATH=
51
+
52
+ # Per-tool MCP rate limits (calls/minute). Defaults shown.
53
+ # MCP_RATE_LIMIT_HEAVY=5 # get_execution_history
54
+ # MCP_RATE_LIMIT_WRITE=15 # execute_swap, send_payment, approve_token, etc.
55
+ # MCP_RATE_LIMIT_DEFAULT=120 # all other tools
56
+
57
+ # ── x402 Server (only needed when running `npm run x402-server`) ──
58
+ # Receiver wallet address for x402 micro-payments (defaults to WALLET_ADDRESS if unset)
59
+ # X402_PAY_TO=
60
+ # Private key for the x402 facilitator (settles payments on-chain)
61
+ # X402_FACILITATOR_PRIVATE_KEY=
62
+ # Price per paid endpoint in USDC (default: 0.001)
63
+ # X402_PRICE_USDC=0.001
64
+ X402_SERVER_PORT=4021