fibx 0.5.0 → 0.6.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 (206) hide show
  1. package/README.md +25 -2
  2. package/dist/index.js +268 -292
  3. package/dist/index.js.map +1 -1
  4. package/package.json +13 -14
  5. package/dist/commands/auth/import.d.ts +0 -3
  6. package/dist/commands/auth/import.d.ts.map +0 -1
  7. package/dist/commands/auth/import.js +0 -44
  8. package/dist/commands/auth/import.js.map +0 -1
  9. package/dist/commands/auth/login.d.ts +0 -3
  10. package/dist/commands/auth/login.d.ts.map +0 -1
  11. package/dist/commands/auth/login.js +0 -13
  12. package/dist/commands/auth/login.js.map +0 -1
  13. package/dist/commands/auth/logout.d.ts +0 -3
  14. package/dist/commands/auth/logout.d.ts.map +0 -1
  15. package/dist/commands/auth/logout.js +0 -11
  16. package/dist/commands/auth/logout.js.map +0 -1
  17. package/dist/commands/auth/verify.d.ts +0 -3
  18. package/dist/commands/auth/verify.d.ts.map +0 -1
  19. package/dist/commands/auth/verify.js +0 -30
  20. package/dist/commands/auth/verify.js.map +0 -1
  21. package/dist/commands/chain/transaction.d.ts +0 -3
  22. package/dist/commands/chain/transaction.d.ts.map +0 -1
  23. package/dist/commands/chain/transaction.js +0 -31
  24. package/dist/commands/chain/transaction.js.map +0 -1
  25. package/dist/commands/config/index.d.ts +0 -3
  26. package/dist/commands/config/index.d.ts.map +0 -1
  27. package/dist/commands/config/index.js +0 -97
  28. package/dist/commands/config/index.js.map +0 -1
  29. package/dist/commands/defi/aave.d.ts +0 -8
  30. package/dist/commands/defi/aave.d.ts.map +0 -1
  31. package/dist/commands/defi/aave.js +0 -238
  32. package/dist/commands/defi/aave.js.map +0 -1
  33. package/dist/commands/portfolio/index.d.ts +0 -3
  34. package/dist/commands/portfolio/index.d.ts.map +0 -1
  35. package/dist/commands/portfolio/index.js +0 -64
  36. package/dist/commands/portfolio/index.js.map +0 -1
  37. package/dist/commands/trade/status.d.ts +0 -3
  38. package/dist/commands/trade/status.d.ts.map +0 -1
  39. package/dist/commands/trade/status.js +0 -30
  40. package/dist/commands/trade/status.js.map +0 -1
  41. package/dist/commands/trade/swap.d.ts +0 -9
  42. package/dist/commands/trade/swap.d.ts.map +0 -1
  43. package/dist/commands/trade/swap.js +0 -205
  44. package/dist/commands/trade/swap.js.map +0 -1
  45. package/dist/commands/wallet/address.d.ts +0 -3
  46. package/dist/commands/wallet/address.d.ts.map +0 -1
  47. package/dist/commands/wallet/address.js +0 -13
  48. package/dist/commands/wallet/address.js.map +0 -1
  49. package/dist/commands/wallet/balance.d.ts +0 -3
  50. package/dist/commands/wallet/balance.d.ts.map +0 -1
  51. package/dist/commands/wallet/balance.js +0 -73
  52. package/dist/commands/wallet/balance.js.map +0 -1
  53. package/dist/commands/wallet/list.d.ts +0 -3
  54. package/dist/commands/wallet/list.d.ts.map +0 -1
  55. package/dist/commands/wallet/list.js +0 -22
  56. package/dist/commands/wallet/list.js.map +0 -1
  57. package/dist/commands/wallet/send.d.ts +0 -7
  58. package/dist/commands/wallet/send.d.ts.map +0 -1
  59. package/dist/commands/wallet/send.js +0 -115
  60. package/dist/commands/wallet/send.js.map +0 -1
  61. package/dist/index.d.ts +0 -3
  62. package/dist/index.d.ts.map +0 -1
  63. package/dist/lib/brand.d.ts +0 -5
  64. package/dist/lib/brand.d.ts.map +0 -1
  65. package/dist/lib/brand.js +0 -15
  66. package/dist/lib/brand.js.map +0 -1
  67. package/dist/lib/cache.d.ts +0 -3
  68. package/dist/lib/cache.d.ts.map +0 -1
  69. package/dist/lib/cache.js +0 -23
  70. package/dist/lib/cache.js.map +0 -1
  71. package/dist/lib/cli-helpers.d.ts +0 -10
  72. package/dist/lib/cli-helpers.d.ts.map +0 -1
  73. package/dist/lib/cli-helpers.js +0 -20
  74. package/dist/lib/cli-helpers.js.map +0 -1
  75. package/dist/lib/concurrency.d.ts +0 -8
  76. package/dist/lib/concurrency.d.ts.map +0 -1
  77. package/dist/lib/concurrency.js +0 -26
  78. package/dist/lib/concurrency.js.map +0 -1
  79. package/dist/lib/config.d.ts +0 -7
  80. package/dist/lib/config.d.ts.map +0 -1
  81. package/dist/lib/config.js +0 -9
  82. package/dist/lib/config.js.map +0 -1
  83. package/dist/lib/errors.d.ts +0 -28
  84. package/dist/lib/errors.d.ts.map +0 -1
  85. package/dist/lib/errors.js +0 -33
  86. package/dist/lib/errors.js.map +0 -1
  87. package/dist/lib/format.d.ts +0 -31
  88. package/dist/lib/format.d.ts.map +0 -1
  89. package/dist/lib/format.js +0 -169
  90. package/dist/lib/format.js.map +0 -1
  91. package/dist/lib/parse-evm-error.d.ts +0 -6
  92. package/dist/lib/parse-evm-error.d.ts.map +0 -1
  93. package/dist/lib/parse-evm-error.js +0 -48
  94. package/dist/lib/parse-evm-error.js.map +0 -1
  95. package/dist/lib/parseAmount.d.ts +0 -3
  96. package/dist/lib/parseAmount.d.ts.map +0 -1
  97. package/dist/lib/parseAmount.js +0 -9
  98. package/dist/lib/parseAmount.js.map +0 -1
  99. package/dist/lib/retry.d.ts +0 -20
  100. package/dist/lib/retry.d.ts.map +0 -1
  101. package/dist/lib/retry.js +0 -36
  102. package/dist/lib/retry.js.map +0 -1
  103. package/dist/lib/validation.d.ts +0 -6
  104. package/dist/lib/validation.d.ts.map +0 -1
  105. package/dist/lib/validation.js +0 -24
  106. package/dist/lib/validation.js.map +0 -1
  107. package/dist/mcp/handlers.d.ts +0 -72
  108. package/dist/mcp/handlers.d.ts.map +0 -1
  109. package/dist/mcp/handlers.js +0 -375
  110. package/dist/mcp/handlers.js.map +0 -1
  111. package/dist/mcp/server.d.ts +0 -2
  112. package/dist/mcp/server.d.ts.map +0 -1
  113. package/dist/mcp/server.js +0 -21
  114. package/dist/mcp/server.js.map +0 -1
  115. package/dist/mcp/tools.d.ts +0 -3
  116. package/dist/mcp/tools.d.ts.map +0 -1
  117. package/dist/mcp/tools.js +0 -216
  118. package/dist/mcp/tools.js.map +0 -1
  119. package/dist/services/api/client.d.ts +0 -34
  120. package/dist/services/api/client.d.ts.map +0 -1
  121. package/dist/services/api/client.js +0 -68
  122. package/dist/services/api/client.js.map +0 -1
  123. package/dist/services/auth/policy.d.ts +0 -2
  124. package/dist/services/auth/policy.d.ts.map +0 -1
  125. package/dist/services/auth/policy.js +0 -3
  126. package/dist/services/auth/policy.js.map +0 -1
  127. package/dist/services/auth/session.d.ts +0 -20
  128. package/dist/services/auth/session.d.ts.map +0 -1
  129. package/dist/services/auth/session.js +0 -70
  130. package/dist/services/auth/session.js.map +0 -1
  131. package/dist/services/chain/client.d.ts +0 -17493
  132. package/dist/services/chain/client.d.ts.map +0 -1
  133. package/dist/services/chain/client.js +0 -30
  134. package/dist/services/chain/client.js.map +0 -1
  135. package/dist/services/chain/constants.d.ts +0 -163
  136. package/dist/services/chain/constants.d.ts.map +0 -1
  137. package/dist/services/chain/constants.js +0 -118
  138. package/dist/services/chain/constants.js.map +0 -1
  139. package/dist/services/chain/erc20.d.ts +0 -100
  140. package/dist/services/chain/erc20.d.ts.map +0 -1
  141. package/dist/services/chain/erc20.js +0 -117
  142. package/dist/services/chain/erc20.js.map +0 -1
  143. package/dist/services/chain/nonceManager.d.ts +0 -13
  144. package/dist/services/chain/nonceManager.d.ts.map +0 -1
  145. package/dist/services/chain/nonceManager.js +0 -45
  146. package/dist/services/chain/nonceManager.js.map +0 -1
  147. package/dist/services/config/config.d.ts +0 -20
  148. package/dist/services/config/config.d.ts.map +0 -1
  149. package/dist/services/config/config.js +0 -75
  150. package/dist/services/config/config.js.map +0 -1
  151. package/dist/services/defi/aave.d.ts +0 -50
  152. package/dist/services/defi/aave.d.ts.map +0 -1
  153. package/dist/services/defi/aave.js +0 -605
  154. package/dist/services/defi/aave.js.map +0 -1
  155. package/dist/services/defi/abi/aave.d.ts +0 -304
  156. package/dist/services/defi/abi/aave.d.ts.map +0 -1
  157. package/dist/services/defi/abi/aave.js +0 -194
  158. package/dist/services/defi/abi/aave.js.map +0 -1
  159. package/dist/services/defi/constants.d.ts +0 -11
  160. package/dist/services/defi/constants.d.ts.map +0 -1
  161. package/dist/services/defi/constants.js +0 -12
  162. package/dist/services/defi/constants.js.map +0 -1
  163. package/dist/services/fibrous/abi/base.d.ts +0 -768
  164. package/dist/services/fibrous/abi/base.d.ts.map +0 -1
  165. package/dist/services/fibrous/abi/base.js +0 -984
  166. package/dist/services/fibrous/abi/base.js.map +0 -1
  167. package/dist/services/fibrous/abi/citrea.d.ts +0 -773
  168. package/dist/services/fibrous/abi/citrea.d.ts.map +0 -1
  169. package/dist/services/fibrous/abi/citrea.js +0 -990
  170. package/dist/services/fibrous/abi/citrea.js.map +0 -1
  171. package/dist/services/fibrous/abi/hyperevm.d.ts +0 -773
  172. package/dist/services/fibrous/abi/hyperevm.d.ts.map +0 -1
  173. package/dist/services/fibrous/abi/hyperevm.js +0 -990
  174. package/dist/services/fibrous/abi/hyperevm.js.map +0 -1
  175. package/dist/services/fibrous/abi/monad.d.ts +0 -773
  176. package/dist/services/fibrous/abi/monad.d.ts.map +0 -1
  177. package/dist/services/fibrous/abi/monad.js +0 -990
  178. package/dist/services/fibrous/abi/monad.js.map +0 -1
  179. package/dist/services/fibrous/balances.d.ts +0 -15
  180. package/dist/services/fibrous/balances.d.ts.map +0 -1
  181. package/dist/services/fibrous/balances.js +0 -27
  182. package/dist/services/fibrous/balances.js.map +0 -1
  183. package/dist/services/fibrous/health.d.ts +0 -12
  184. package/dist/services/fibrous/health.d.ts.map +0 -1
  185. package/dist/services/fibrous/health.js +0 -16
  186. package/dist/services/fibrous/health.js.map +0 -1
  187. package/dist/services/fibrous/route.d.ts +0 -48
  188. package/dist/services/fibrous/route.d.ts.map +0 -1
  189. package/dist/services/fibrous/route.js +0 -65
  190. package/dist/services/fibrous/route.js.map +0 -1
  191. package/dist/services/fibrous/tokens.d.ts +0 -12
  192. package/dist/services/fibrous/tokens.d.ts.map +0 -1
  193. package/dist/services/fibrous/tokens.js +0 -38
  194. package/dist/services/fibrous/tokens.js.map +0 -1
  195. package/dist/services/portfolio/portfolio.d.ts +0 -28
  196. package/dist/services/portfolio/portfolio.d.ts.map +0 -1
  197. package/dist/services/portfolio/portfolio.js +0 -116
  198. package/dist/services/portfolio/portfolio.js.map +0 -1
  199. package/dist/services/privy/account.d.ts +0 -20
  200. package/dist/services/privy/account.d.ts.map +0 -1
  201. package/dist/services/privy/account.js +0 -60
  202. package/dist/services/privy/account.js.map +0 -1
  203. package/dist/services/privy/client.d.ts +0 -2
  204. package/dist/services/privy/client.d.ts.map +0 -1
  205. package/dist/services/privy/client.js +0 -7
  206. package/dist/services/privy/client.js.map +0 -1
package/README.md CHANGED
@@ -11,13 +11,14 @@ A command-line tool for DeFi operations on **Base, Citrea, HyperEVM, and Monad**
11
11
  - **Token Swaps**: Optimal routing via Fibrous aggregation with auto-slippage
12
12
  - **Transfers**: Send ETH or any ERC-20 token
13
13
  - **Aave V3**: Supply, borrow, repay, withdraw, and browse markets on Base
14
- - **MCP Server**: Built-in AI agent integration for Cursor, Claude Desktop, and Antigravity
14
+ - **MCP Server**: Built-in AI agent integration for Cursor, Claude Desktop, and Antigravity (10 tools, 4 categories)
15
15
  - **Agent Skills**: Prompt-based AI skills via [fibx-skills](https://github.com/Fibrous-Finance/fibx-skills)
16
16
  - **Privy Server Wallets**: Secure server-side signing — private keys never leave Privy's TEE
17
- - **Private Key Import**: Use an existing wallet for local execution
17
+ - **Private Key Import**: Use an existing wallet with AES-256-GCM encrypted local storage
18
18
  - **Simulation**: All transactions are simulated before execution
19
19
  - **Dry‑Run Mode**: `--simulate` flag estimates gas without sending a transaction
20
20
  - **JSON Output**: `--json` flag for scripting and pipelines
21
+ - **Zero-Dependency Install**: Single-file bundle via tsup — `npx fibx` runs near-instantly
21
22
 
22
23
  ## Supported Chains
23
24
 
@@ -66,6 +67,8 @@ npx fibx status
66
67
  npx fibx auth logout
67
68
  ```
68
69
 
70
+ > **Security:** When using `auth import`, your private key is encrypted at rest with AES-256-GCM. The encryption key is auto-generated per machine and stored in the OS config directory (e.g. `~/.config/fibx-nodejs/encryption-key` on Linux). You can also set the `FIBX_SESSION_SECRET` environment variable for CI/Docker environments.
71
+
69
72
  ### Global Options
70
73
 
71
74
  | Option | Description | Default |
@@ -156,6 +159,8 @@ npx fibx config reset-rpc # Reset all chains to default
156
159
  npx fibx config list
157
160
  ```
158
161
 
162
+ > **Hot-reload:** Config changes are picked up automatically — no need to restart the CLI or MCP server.
163
+
159
164
  ## AI Agent Integration
160
165
 
161
166
  ### MCP Server
@@ -166,10 +171,28 @@ fibx includes a built-in [MCP](https://modelcontextprotocol.io) server for AI ed
166
171
  npx fibx mcp-start
167
172
  ```
168
173
 
174
+ The MCP server exposes **10 tools** across 4 categories (Auth & Config, Wallet & Portfolio, Trading, DeFi). All write operations support a `simulate=true` parameter for fee estimation without execution.
175
+
169
176
  ### Agent Skills
170
177
 
171
178
  For prompt-based agent integration (Claude Code, Cursor, etc.), see the [fibx-skills](https://github.com/Fibrous-Finance/fibx-skills) repository.
172
179
 
180
+ ## Architecture
181
+
182
+ ```
183
+ fibx/
184
+ ├── src/ # CLI + MCP server (single tsup bundle)
185
+ │ ├── commands/ # CLI commands (auth, trade, send, aave, config)
186
+ │ ├── mcp/ # Modular MCP server
187
+ │ │ ├── server.ts # Entry point + MCP_INSTRUCTIONS
188
+ │ │ ├── tools/ # Tool registrations (auth, wallet, trade, defi)
189
+ │ │ └── handlers/ # Tool implementations + context helpers
190
+ │ ├── services/ # Business logic (chain, fibrous, auth, defi)
191
+ │ └── lib/ # Shared utilities (errors, fetch, format, crypto)
192
+ ├── fibx-server/ # Privy wallet backend (Hono)
193
+ └── fibx-telegram-bot/ # AI-powered Telegram bot
194
+ ```
195
+
173
196
  ## Related Links
174
197
 
175
198
  - [Fibrous Finance](https://fibrous.finance) — DEX aggregator powering swaps