From 42eb30a3b626816608ecfd2c1f51015f6698774e Mon Sep 17 00:00:00 2001 From: UjjwalGupta49 Date: Sat, 4 Jan 2025 18:55:09 +0530 Subject: [PATCH 1/8] Add Flash.Trade leveraged open and close position --- package.json | 9 +- pnpm-lock.yaml | 220 +++++++++++++++++++++++ src/agent/index.ts | 22 +++ src/langchain/index.ts | 128 ++++++++++++++ src/tools/flash_close_trade.ts | 124 +++++++++++++ src/tools/flash_open_trade.ts | 254 +++++++++++++++++++++++++++ src/tools/index.ts | 3 + src/utils/flashUtils.ts | 310 +++++++++++++++++++++++++++++++++ 8 files changed, 1066 insertions(+), 4 deletions(-) create mode 100644 src/tools/flash_close_trade.ts create mode 100644 src/tools/flash_open_trade.ts create mode 100644 src/utils/flashUtils.ts diff --git a/package.json b/package.json index 648ce0f..2ff727a 100644 --- a/package.json +++ b/package.json @@ -44,20 +44,21 @@ "@pythnetwork/price-service-client": "^1.9.0", "@raydium-io/raydium-sdk-v2": "0.1.95-alpha", "@solana/spl-token": "^0.4.9", - "ai": "^4.0.22", - "@tensor-oss/tensorswap-sdk": "^4.5.0", "@solana/web3.js": "^1.98.0", + "@tensor-oss/tensorswap-sdk": "^4.5.0", "@tiplink/api": "^0.3.1", + "ai": "^4.0.22", "bn.js": "^5.2.1", "bs58": "^6.0.0", "chai": "^5.1.2", "decimal.js": "^10.4.3", "dotenv": "^16.4.7", + "flash-sdk": "^2.24.3", "form-data": "^4.0.1", - "zod": "^3.24.1", "langchain": "^0.3.8", "openai": "^4.77.0", - "typedoc": "^0.27.6" + "typedoc": "^0.27.6", + "zod": "^3.24.1" }, "devDependencies": { "@types/bn.js": "^5.1.6", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 05add17..8965ad3 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -101,6 +101,9 @@ importers: dotenv: specifier: ^16.4.7 version: 16.4.7 + flash-sdk: + specifier: ^2.24.3 + version: 2.24.3(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.2)(utf-8-validate@5.0.10) form-data: specifier: ^4.0.1 version: 4.0.1 @@ -217,6 +220,10 @@ packages: resolution: {integrity: sha512-PxRl+wu5YyptWiR9F2MBHOLLibm87Z4IMUBPreX+DYBtPM+xggvcPi0KAN7+kIL4IrIhXI8ma5V0MCXxSN1pHg==} engines: {node: '>=11'} + '@coral-xyz/anchor@0.27.0': + resolution: {integrity: sha512-+P/vPdORawvg3A9Wj02iquxb4T0C5m4P6aZBVYysKl4Amk+r6aMPZkUhilBkD6E4Nuxnoajv3CFykUfkGE0n5g==} + engines: {node: '>=11'} + '@coral-xyz/anchor@0.29.0': resolution: {integrity: sha512-eny6QNG0WOwqV0zQ7cs/b1tIuzZGmP7U7EcH+ogt4Gdbl8HDmIYVMh/9aTmYZPaFWjtUaI8qSn73uYEXWfATdA==} engines: {node: '>=11'} @@ -227,6 +234,18 @@ packages: peerDependencies: '@solana/web3.js': ^1.68.0 + '@coral-xyz/borsh@0.27.0': + resolution: {integrity: sha512-tJKzhLukghTWPLy+n8K8iJKgBq1yLT/AxaNd10yJrX8mI56ao5+OFAKAqW/h0i79KCvb4BK0VGO5ECmmolFz9A==} + engines: {node: '>=10'} + peerDependencies: + '@solana/web3.js': ^1.68.0 + + '@coral-xyz/borsh@0.28.0': + resolution: {integrity: sha512-/u1VTzw7XooK7rqeD7JLUSwOyRSesPUk0U37BV9zK0axJc1q0nRbKFGFLYCQ16OtdOJTTwGfGp11Lx9B45bRCQ==} + engines: {node: '>=10'} + peerDependencies: + '@solana/web3.js': ^1.68.0 + '@coral-xyz/borsh@0.29.0': resolution: {integrity: sha512-s7VFVa3a0oqpkuRloWVPdCK7hMbAMY270geZOGfCnaqexrP5dTIpbEHL33req6IYPPJ0hYa71cdvJ1h6V55/oQ==} engines: {node: '>=10'} @@ -596,6 +615,11 @@ packages: resolution: {integrity: sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==} engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} + '@pythnetwork/client@2.22.0': + resolution: {integrity: sha512-Cyv23YqewKUL1pcm99jfmdetUa2aaUXjyRF9jvSeFcY895FddRu7uSWftYiaevsnx7vn4WbJgQR6ExxH+aONow==} + peerDependencies: + '@solana/web3.js': ^1.30.2 + '@pythnetwork/price-service-client@1.9.0': resolution: {integrity: sha512-SLm3IFcfmy9iMqHeT4Ih6qMNZhJEefY14T9yTlpsH2D/FE5+BaGGnfcexUifVlfH6M7mwRC4hEFdNvZ6ebZjJg==} deprecated: This package is deprecated and is no longer maintained. Please use @pythnetwork/hermes-client instead. @@ -819,6 +843,9 @@ packages: '@solana/web3.js@1.95.3': resolution: {integrity: sha512-O6rPUN0w2fkNqx/Z3QJMB9L225Ex10PRDH8bTaIUPZXMPV0QP8ZpPvjQnXK+upUczlRgzHzd6SjKIha1p+I6og==} + '@solana/web3.js@1.95.8': + resolution: {integrity: sha512-sBHzNh7dHMrmNS5xPD1d0Xa2QffW/RXaxu/OysRXBfwTp+LYqGGmMtCYYwrHPrN5rjAmJCsQRNAwv4FM0t3B6g==} + '@solana/web3.js@1.98.0': resolution: {integrity: sha512-nz3Q5OeyGFpFCR+erX2f6JPt3sKhzhYcSycBCSPkWjzSVDh/Rr1FqTVMRe58FKO16/ivTUcuJjeS5MyBvpkbzA==} @@ -882,6 +909,9 @@ packages: '@types/node@18.19.69': resolution: {integrity: sha512-ECPdY1nlaiO/Y6GUnwgtAAhLNaQ53AyIVz+eILxpEo5OvuqE6yWkqWBIb5dU0DqhKQtMeny+FBD3PK6lm7L5xQ==} + '@types/node@20.17.11': + resolution: {integrity: sha512-Ept5glCK35R8yeyIeYlRIZtX6SLRyqMhOFTgj5SOkMpLTdw3SEHI9fHx60xaUZ+V1aJxQJODE+7/j5ocZydYTg==} + '@types/node@22.10.5': resolution: {integrity: sha512-F8Q+SeGimwOo86fiovQh8qiXfFEh2/ocYv7tU5pJ3EXMSSxk1Joj5wefpFK2fHTf/N6HKGSxIDBT9f3gCxXPkQ==} @@ -1228,6 +1258,10 @@ packages: crypto-js@4.2.0: resolution: {integrity: sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==} + data-uri-to-buffer@4.0.1: + resolution: {integrity: sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==} + engines: {node: '>= 12'} + dayjs@1.11.13: resolution: {integrity: sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==} @@ -1479,6 +1513,10 @@ packages: fastq@1.18.0: resolution: {integrity: sha512-QKHXPW0hD8g4UET03SdOdunzSouc9N4AuHdsX8XNcTsuz+yYFILVNIX4l9yHABMhiEI9Db0JTTIpu0wB+Y1QQw==} + fetch-blob@3.2.0: + resolution: {integrity: sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==} + engines: {node: ^12.20 || >= 14.13} + file-entry-cache@6.0.1: resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} engines: {node: ^10.12.0 || >=12.0.0} @@ -1502,6 +1540,9 @@ packages: resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} engines: {node: '>=10'} + flash-sdk@2.24.3: + resolution: {integrity: sha512-3JdmHZksBgcRlCXVVFZEV64NGKxVHURHoHAMc3+Ev1BdN0Re2S44wxTaQmO6EIvwPYscVG0BPbp6GibpEuMdsw==} + flat-cache@3.2.0: resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==} engines: {node: ^10.12.0 || >=12.0.0} @@ -1540,9 +1581,16 @@ packages: resolution: {integrity: sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ==} engines: {node: '>= 12.20'} + formdata-polyfill@4.0.10: + resolution: {integrity: sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==} + engines: {node: '>=12.20.0'} + fs.realpath@1.0.0: resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + fs@0.0.1-security: + resolution: {integrity: sha512-3XY9e1pP0CVEUCdj5BmfIZxRBTSDycnbqhIOGec9QYtmVH2fbLpj86CFWkrNOkt/Fvty4KZG5lTglL9j/gJ87w==} + function-bind@1.1.2: resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} @@ -1753,6 +1801,9 @@ packages: resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} hasBin: true + jsbi@4.3.0: + resolution: {integrity: sha512-SnZNcinB4RIcnEyZqFPdGPVgrg2AcnykiBy0sHVJQKHYeaLUvi3Exj+iaPpLnFVkDPZIV4U0yvgC9/R4uEAZ9g==} + json-buffer@3.0.1: resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} @@ -2018,6 +2069,10 @@ packages: encoding: optional: true + node-fetch@3.3.2: + resolution: {integrity: sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + node-gyp-build@4.8.4: resolution: {integrity: sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ==} hasBin: true @@ -2468,6 +2523,9 @@ packages: undici-types@5.26.5: resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} + undici-types@6.19.8: + resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==} + undici-types@6.20.0: resolution: {integrity: sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==} @@ -2751,6 +2809,28 @@ snapshots: - encoding - utf-8-validate + '@coral-xyz/anchor@0.27.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/borsh': 0.27.0(@solana/web3.js@1.98.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@solana/web3.js': 1.98.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) + base64-js: 1.5.1 + bn.js: 5.2.1 + bs58: 4.0.1 + buffer-layout: 1.2.2 + camelcase: 6.3.0 + cross-fetch: 3.2.0 + crypto-hash: 1.3.0 + eventemitter3: 4.0.7 + js-sha256: 0.9.0 + pako: 2.1.0 + snake-case: 3.0.4 + superstruct: 0.15.5 + toml: 3.0.0 + transitivePeerDependencies: + - bufferutil + - encoding + - utf-8-validate + '@coral-xyz/anchor@0.29.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)': dependencies: '@coral-xyz/borsh': 0.29.0(@solana/web3.js@1.98.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)) @@ -2778,6 +2858,18 @@ snapshots: bn.js: 5.2.1 buffer-layout: 1.2.2 + '@coral-xyz/borsh@0.27.0(@solana/web3.js@1.98.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))': + dependencies: + '@solana/web3.js': 1.98.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) + bn.js: 5.2.1 + buffer-layout: 1.2.2 + + '@coral-xyz/borsh@0.28.0(@solana/web3.js@1.95.8(bufferutil@4.0.9)(utf-8-validate@5.0.10))': + dependencies: + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(utf-8-validate@5.0.10) + bn.js: 5.2.1 + buffer-layout: 1.2.2 + '@coral-xyz/borsh@0.29.0(@solana/web3.js@1.98.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))': dependencies: '@solana/web3.js': 1.98.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) @@ -3332,6 +3424,17 @@ snapshots: '@pkgr/core@0.1.1': {} + '@pythnetwork/client@2.22.0(@solana/web3.js@1.95.8(bufferutil@4.0.9)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.29.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) + '@coral-xyz/borsh': 0.28.0(@solana/web3.js@1.95.8(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(utf-8-validate@5.0.10) + buffer: 6.0.3 + transitivePeerDependencies: + - bufferutil + - encoding + - utf-8-validate + '@pythnetwork/price-service-client@1.9.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)': dependencies: '@pythnetwork/price-service-sdk': 1.8.0 @@ -3706,6 +3809,14 @@ snapshots: - fastestsmallesttextencoderdecoder - typescript + '@solana/spl-token-metadata@0.1.6(@solana/web3.js@1.95.8(bufferutil@4.0.9)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.2)': + dependencies: + '@solana/codecs': 2.0.0-rc.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.2) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + - typescript + '@solana/spl-token-metadata@0.1.6(@solana/web3.js@1.98.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@4.9.5)': dependencies: '@solana/codecs': 2.0.0-rc.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@4.9.5) @@ -3735,6 +3846,20 @@ snapshots: - encoding - utf-8-validate + '@solana/spl-token@0.3.11(@solana/web3.js@1.95.8(bufferutil@4.0.9)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.2)(utf-8-validate@5.0.10)': + dependencies: + '@solana/buffer-layout': 4.0.1 + '@solana/buffer-layout-utils': 0.2.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) + '@solana/spl-token-metadata': 0.1.6(@solana/web3.js@1.95.8(bufferutil@4.0.9)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.2) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(utf-8-validate@5.0.10) + buffer: 6.0.3 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate + '@solana/spl-token@0.3.11(@solana/web3.js@1.98.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@4.9.5)(utf-8-validate@5.0.10)': dependencies: '@solana/buffer-layout': 4.0.1 @@ -3834,6 +3959,28 @@ snapshots: - encoding - utf-8-validate + '@solana/web3.js@1.95.8(bufferutil@4.0.9)(utf-8-validate@5.0.10)': + dependencies: + '@babel/runtime': 7.26.0 + '@noble/curves': 1.8.0 + '@noble/hashes': 1.7.0 + '@solana/buffer-layout': 4.0.1 + agentkeepalive: 4.6.0 + bigint-buffer: 1.1.5 + bn.js: 5.2.1 + borsh: 0.7.0 + bs58: 4.0.1 + buffer: 6.0.3 + fast-stable-stringify: 1.0.0 + jayson: 4.1.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) + node-fetch: 2.7.0 + rpc-websockets: 9.0.4 + superstruct: 2.0.2 + transitivePeerDependencies: + - bufferutil + - encoding + - utf-8-validate + '@solana/web3.js@1.98.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)': dependencies: '@babel/runtime': 7.26.0 @@ -3977,6 +4124,10 @@ snapshots: dependencies: undici-types: 5.26.5 + '@types/node@20.17.11': + dependencies: + undici-types: 6.19.8 + '@types/node@22.10.5': dependencies: undici-types: 6.20.0 @@ -4348,6 +4499,8 @@ snapshots: crypto-js@4.2.0: {} + data-uri-to-buffer@4.0.1: {} + dayjs@1.11.13: {} debug@4.4.0: @@ -4622,6 +4775,11 @@ snapshots: dependencies: reusify: 1.0.4 + fetch-blob@3.2.0: + dependencies: + node-domexception: 1.0.0 + web-streams-polyfill: 3.3.3 + file-entry-cache@6.0.1: dependencies: flat-cache: 3.2.0 @@ -4654,6 +4812,34 @@ snapshots: locate-path: 6.0.0 path-exists: 4.0.0 + flash-sdk@2.24.3(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.2)(utf-8-validate@5.0.10): + dependencies: + '@coral-xyz/anchor': 0.27.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) + '@pythnetwork/client': 2.22.0(@solana/web3.js@1.95.8(bufferutil@4.0.9)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(utf-8-validate@5.0.10) + '@pythnetwork/price-service-client': 1.9.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) + '@solana/spl-token': 0.3.11(@solana/web3.js@1.95.8(bufferutil@4.0.9)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.2)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(utf-8-validate@5.0.10) + '@types/node': 20.17.11 + bignumber.js: 9.1.2 + bs58: 5.0.0 + dotenv: 16.4.7 + fs: 0.0.1-security + js-sha256: 0.9.0 + jsbi: 4.3.0 + node-fetch: 3.3.2 + rimraf: 5.0.10 + ts-node: 10.9.2(@types/node@20.17.11)(typescript@5.7.2) + tweetnacl: 1.0.3 + transitivePeerDependencies: + - '@swc/core' + - '@swc/wasm' + - bufferutil + - debug + - encoding + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate + flat-cache@3.2.0: dependencies: flatted: 3.3.2 @@ -4691,8 +4877,14 @@ snapshots: node-domexception: 1.0.0 web-streams-polyfill: 4.0.0-beta.3 + formdata-polyfill@4.0.10: + dependencies: + fetch-blob: 3.2.0 + fs.realpath@1.0.0: {} + fs@0.0.1-security: {} + function-bind@1.1.2: {} get-intrinsic@1.2.7: @@ -4946,6 +5138,8 @@ snapshots: dependencies: argparse: 2.0.1 + jsbi@4.3.0: {} + json-buffer@3.0.1: {} json-schema-traverse@0.4.1: {} @@ -5174,6 +5368,12 @@ snapshots: dependencies: whatwg-url: 5.0.0 + node-fetch@3.3.2: + dependencies: + data-uri-to-buffer: 4.0.1 + fetch-blob: 3.2.0 + formdata-polyfill: 4.0.10 + node-gyp-build@4.8.4: {} number-to-bn@1.7.0: @@ -5549,6 +5749,24 @@ snapshots: ts-log@2.2.7: {} + ts-node@10.9.2(@types/node@20.17.11)(typescript@5.7.2): + dependencies: + '@cspotcode/source-map-support': 0.8.1 + '@tsconfig/node10': 1.0.11 + '@tsconfig/node12': 1.0.11 + '@tsconfig/node14': 1.0.3 + '@tsconfig/node16': 1.0.4 + '@types/node': 20.17.11 + acorn: 8.14.0 + acorn-walk: 8.3.4 + arg: 4.1.3 + create-require: 1.1.1 + diff: 4.0.2 + make-error: 1.3.6 + typescript: 5.7.2 + v8-compile-cache-lib: 3.0.1 + yn: 3.1.1 + ts-node@10.9.2(@types/node@22.10.5)(typescript@5.7.2): dependencies: '@cspotcode/source-map-support': 0.8.1 @@ -5617,6 +5835,8 @@ snapshots: undici-types@5.26.5: {} + undici-types@6.19.8: {} + undici-types@6.20.0: {} unicode-trie@2.0.0: diff --git a/src/agent/index.ts b/src/agent/index.ts index ae0c367..69397ad 100644 --- a/src/agent/index.ts +++ b/src/agent/index.ts @@ -59,6 +59,10 @@ import { fetchTokenReportSummary, fetchTokenDetailedReport, OrderParams, + FlashTradeParams, + FlashCloseTradeParams, + flashOpenTrade, + flashCloseTrade, } from "../tools"; import { @@ -537,4 +541,22 @@ export class SolanaAgentKit { async fetchTokenDetailedReport(mint: string): Promise { return fetchTokenDetailedReport(mint); } + + /** + * Opens a new trading position on Flash.Trade + * @param params Flash trade parameters including market, side, collateral, leverage, and pool name + * @returns Transaction signature + */ + async flashOpenTrade(params: FlashTradeParams): Promise { + return flashOpenTrade(this, params); + } + + /** + * Closes an existing trading position on Flash.Trade + * @param params Flash trade close parameters + * @returns Transaction signature + */ + async flashCloseTrade(params: FlashCloseTradeParams): Promise { + return flashCloseTrade(this, params); + } } diff --git a/src/langchain/index.ts b/src/langchain/index.ts index d5d17e5..0d653d1 100644 --- a/src/langchain/index.ts +++ b/src/langchain/index.ts @@ -774,6 +774,131 @@ export class SolanaGetWalletAddressTool extends Tool { } } +export class SolanaFlashOpenTrade extends Tool { + name = "solana_flash_open_trade"; + description = `Opens a new leveraged trading position on Flash.Trade exchange. + + Inputs (input is a JSON string): + token: string, one of ["SOL", "BTC", "ETH"] (required) + side: string, either "long" or "short" (required) + collateralUsd: number, amount in USD for collateral eg 10 (required) + leverage: number, eg 5 for 5x leverage (required) + + Example: + { + "token": "SOL", + "side": "long", + "collateralUsd": 10, + "leverage": 5 + }`; + + constructor(private solanaKit: SolanaAgentKit) { + super(); + } + + protected async _call(input: string): Promise { + try { + const parsedInput = JSON.parse(input); + + // Validate input parameters + if (!parsedInput.token) { + throw new Error("Token is required"); + } + if (!["SOL", "BTC", "ETH"].includes(parsedInput.token)) { + throw new Error('Token must be one of ["SOL", "BTC", "ETH"]'); + } + if (!["long", "short"].includes(parsedInput.side)) { + throw new Error('Side must be either "long" or "short"'); + } + if (!parsedInput.collateralUsd || parsedInput.collateralUsd <= 0) { + throw new Error("Collateral USD amount must be positive"); + } + if (!parsedInput.leverage || parsedInput.leverage <= 0) { + throw new Error("Leverage must be positive"); + } + + const tx = await this.solanaKit.flashOpenTrade({ + token: parsedInput.token, + side: parsedInput.side, + collateralUsd: parsedInput.collateralUsd, + leverage: parsedInput.leverage, + }); + + return JSON.stringify({ + status: "success", + message: "Flash trade position opened successfully", + transaction: tx, + token: parsedInput.token, + side: parsedInput.side, + collateralUsd: parsedInput.collateralUsd, + leverage: parsedInput.leverage, + }); + } catch (error: any) { + return JSON.stringify({ + status: "error", + message: error.message, + code: error.code || "UNKNOWN_ERROR", + }); + } + } +} + +export class SolanaFlashCloseTrade extends Tool { + name = "solana_flash_close_trade"; + description = `Closes an existing leveraged trading position on Flash.Trade exchange. + + Inputs (input is a JSON string): + token: string, one of ["SOL", "BTC", "ETH"] (required) + side: string, either "long" or "short" (required) + + Example: + { + "token": "SOL", + "side": "long" + }`; + + constructor(private solanaKit: SolanaAgentKit) { + super(); + } + + protected async _call(input: string): Promise { + try { + const parsedInput = JSON.parse(input); + + // Validate input parameters + if (!parsedInput.token) { + throw new Error("Token is required"); + } + if (!["SOL", "BTC", "ETH"].includes(parsedInput.token)) { + throw new Error('Token must be one of ["SOL", "BTC", "ETH"]'); + } + if (!["long", "short"].includes(parsedInput.side)) { + throw new Error('Side must be either "long" or "short"'); + } + + const tx = await this.solanaKit.flashCloseTrade({ + token: parsedInput.token, + side: parsedInput.side, + }); + + return JSON.stringify({ + status: "success", + message: "Flash trade position closed successfully", + transaction: tx, + token: parsedInput.token, + side: parsedInput.side, + }); + } catch (error: any) { + return JSON.stringify({ + status: "error", + message: error.message, + code: error.code || "UNKNOWN_ERROR", + }); + } + } +} + + export class SolanaPumpfunTokenLaunchTool extends Tool { name = "solana_launch_pumpfun_token"; @@ -2175,5 +2300,8 @@ export function createSolanaTools(solanaKit: SolanaAgentKit) { new SolanaFetchTokenDetailedReportTool(solanaKit), new SolanaPerpOpenTradeTool(solanaKit), new SolanaPerpCloseTradeTool(solanaKit), + new SolanaFlashOpenTrade(solanaKit), + new SolanaFlashCloseTrade(solanaKit), ]; } + diff --git a/src/tools/flash_close_trade.ts b/src/tools/flash_close_trade.ts new file mode 100644 index 0000000..2ad248f --- /dev/null +++ b/src/tools/flash_close_trade.ts @@ -0,0 +1,124 @@ +import { PublicKey, ComputeBudgetProgram } from "@solana/web3.js"; +import { + PerpetualsClient, + OraclePrice, + PoolConfig, + Privilege, + Side, +} from "flash-sdk"; +import { BN } from "@coral-xyz/anchor"; +import { SolanaAgentKit } from "../index"; +import { + CLOSE_POSITION_CU, + marketSdkInfo, + marketTokenMap, + getNftTradingAccountInfo, + fetchOraclePrice, + createPerpClient, +} from "../utils/flashUtils"; + +export interface FlashCloseTradeParams { + token: string; + side: "long" | "short"; +} + +/** + * Closes an existing position on Flash.Trade + * @param agent SolanaAgentKit instance + * @param params Trade parameters + * @returns Transaction signature + */ +export async function flashCloseTrade( + agent: SolanaAgentKit, + params: FlashCloseTradeParams, +): Promise { + try { + const { token, side } = params; + + // Get market ID from token and side using marketTokenMap + const tokenMarkets = marketTokenMap[token]; + if (!tokenMarkets) { + throw new Error(`Token ${token} not supported for trading`); + } + + const sideEntry = tokenMarkets[side]; + if (!sideEntry) { + throw new Error(`${side} side not available for ${token}`); + } + + const market = sideEntry.marketID; + + // Validate market data using marketSdkInfo + const marketData = marketSdkInfo[market]; + if (!marketData) { + throw new Error(`Invalid market configuration for ${token}/${side}`); + } + + // Get token information + const [targetSymbol, collateralSymbol] = marketData.tokenPair.split("/"); + + // Fetch oracle prices + const [targetPrice, collateralPrice] = await Promise.all([ + fetchOraclePrice(targetSymbol), + fetchOraclePrice(collateralSymbol), + ]); + + // Initialize pool configuration and perpClient + const poolConfig = PoolConfig.fromIdsByName(marketData.pool, "mainnet-beta"); + const perpClient = createPerpClient(agent.connection, agent.wallet); + + // Calculate price after slippage + const slippageBpsBN = new BN(100); // 1% slippage + const sideEnum = side === "long" ? Side.Long : Side.Short; + const priceWithSlippage = perpClient.getPriceAfterSlippage( + false, // isEntry = false for closing position + slippageBpsBN, + targetPrice.price, + sideEnum, + ); + + // Get NFT trading account info + const tradingAccounts = await getNftTradingAccountInfo( + agent.wallet_address, + perpClient, + poolConfig, + collateralSymbol, + ); + + if ( + !tradingAccounts.nftTradingAccountPk || + !tradingAccounts.nftReferralAccountPK || + !tradingAccounts.nftOwnerRebateTokenAccountPk + ) { + throw new Error("Required NFT trading accounts not found"); + } + + // Build and send transaction + const { instructions, additionalSigners } = await perpClient.closePosition( + targetSymbol, + collateralSymbol, + priceWithSlippage, + sideEnum, + poolConfig, + Privilege.Referral, + tradingAccounts.nftTradingAccountPk, + tradingAccounts.nftReferralAccountPK, + tradingAccounts.nftOwnerRebateTokenAccountPk, + ); + + const computeBudgetIx = ComputeBudgetProgram.setComputeUnitLimit({ + units: CLOSE_POSITION_CU, + }); + + return await perpClient.sendTransaction( + [computeBudgetIx, ...instructions], + { + additionalSigners: additionalSigners, + alts: perpClient.addressLookupTables, + prioritizationFee: 5000000, + }, + ); + } catch (error) { + throw new Error(`Flash trade close failed: ${error}`); + } +} diff --git a/src/tools/flash_open_trade.ts b/src/tools/flash_open_trade.ts new file mode 100644 index 0000000..b0a968f --- /dev/null +++ b/src/tools/flash_open_trade.ts @@ -0,0 +1,254 @@ +import { PublicKey, ComputeBudgetProgram } from "@solana/web3.js"; +import { + PerpetualsClient, + OraclePrice, + PoolConfig, + Privilege, + Side, + CustodyAccount, + Custody, +} from "flash-sdk"; +import { BN } from "@coral-xyz/anchor"; +import { SolanaAgentKit } from "../index"; +import { + ALL_TOKENS, + marketSdkInfo, + marketTokenMap, + getNftTradingAccountInfo, + OPEN_POSITION_CU, + fetchOraclePrice, + createPerpClient, +} from "../utils/flashUtils"; + +export interface FlashTradeParams { + token: string; + side: "long" | "short"; + collateralUsd: number; + leverage: number; +} + +/** + * Opens a new position on Flash.Trade + * @param agent SolanaAgentKit instance + * @param params Trade parameters + * @returns Transaction signature + */ +export async function flashOpenTrade( + agent: SolanaAgentKit, + params: FlashTradeParams, +): Promise { + try { + const { token, side, collateralUsd, leverage } = params; + + // Get market ID from token and side using marketTokenMap + const tokenMarkets = marketTokenMap[token]; + if (!tokenMarkets) { + throw new Error(`Token ${token} not supported for trading`); + } + + const sideEntry = tokenMarkets[side]; + if (!sideEntry) { + throw new Error(`${side} side not available for ${token}`); + } + + const market = sideEntry.marketID; + + // Validate market data using marketSdkInfo + const marketData = marketSdkInfo[market]; + if (!marketData) { + throw new Error(`Invalid market configuration for ${token}/${side}`); + } + + // Get token information + const [targetSymbol, collateralSymbol] = marketData.tokenPair.split("/"); + const targetToken = ALL_TOKENS.find((t) => t.symbol === targetSymbol); + const collateralToken = ALL_TOKENS.find( + (t) => t.symbol === collateralSymbol, + ); + + if (!targetToken || !collateralToken) { + throw new Error(`Token not found for pair ${marketData.tokenPair}`); + } + + // Fetch oracle prices + const [targetPrice, collateralPrice] = await Promise.all([ + fetchOraclePrice(targetSymbol), + fetchOraclePrice(collateralSymbol), + ]); + + // Initialize pool configuration and perpClient + const poolConfig = PoolConfig.fromIdsByName(marketData.pool, "mainnet-beta"); + const perpClient = createPerpClient(agent.connection, agent.wallet); + + // Calculate position parameters + const leverageBN = new BN(leverage); + const collateralTokenPrice = convertPriceToNumber(collateralPrice.price); + const collateralAmount = calculateCollateralAmount( + collateralUsd, + collateralTokenPrice, + collateralToken.decimals, + ); + + // Get custody accounts + const { targetCustody, collateralCustody } = await fetchCustodyAccounts( + perpClient, + poolConfig, + targetSymbol, + collateralSymbol, + ); + + // Calculate position size + const positionSize = calculatePositionSize( + perpClient, + collateralAmount, + leverageBN, + targetToken, + collateralToken, + side, + targetPrice.price, + collateralPrice.price, + targetCustody, + collateralCustody, + ); + + // Get NFT trading account info + const tradingAccounts = await getNftTradingAccountInfo( + agent.wallet_address, + perpClient, + poolConfig, + collateralSymbol, + ); + + if ( + !tradingAccounts.nftTradingAccountPk || + !tradingAccounts.nftReferralAccountPK + ) { + throw new Error("Required NFT trading accounts not found"); + } + + // Prepare transaction + const slippageBps = new BN(1000); + const priceWithSlippage = perpClient.getPriceAfterSlippage( + true, + slippageBps, + targetPrice.price, + side === "long" ? Side.Long : Side.Short, + ); + + // Build and send transaction + const { instructions, additionalSigners } = await perpClient.openPosition( + targetSymbol, + collateralSymbol, + priceWithSlippage, + collateralAmount, + positionSize, + side === "long" ? Side.Long : Side.Short, + poolConfig, + Privilege.Referral, + tradingAccounts.nftTradingAccountPk, + tradingAccounts.nftReferralAccountPK, + tradingAccounts.nftOwnerRebateTokenAccountPk!, + false, + ); + + const computeBudgetIx = ComputeBudgetProgram.setComputeUnitLimit({ + units: OPEN_POSITION_CU, + }); + + return await perpClient.sendTransaction( + [computeBudgetIx, ...instructions], + { + additionalSigners: additionalSigners, + alts: perpClient.addressLookupTables, + prioritizationFee: 5000000, + }, + ); + } catch (error) { + throw new Error(`Flash trade failed: ${error}`); + } +} + +// Helper functions +function convertPriceToNumber(oraclePrice: OraclePrice): number { + const price = parseInt(oraclePrice.price.toString("hex"), 16); + const exponent = parseInt(oraclePrice.exponent.toString("hex"), 16); + return price * Math.pow(10, exponent); +} + +function calculateCollateralAmount( + usdAmount: number, + tokenPrice: number, + decimals: number, +): BN { + return new BN((usdAmount / tokenPrice) * Math.pow(10, decimals)); +} + +async function fetchCustodyAccounts( + perpClient: PerpetualsClient, + poolConfig: PoolConfig, + targetSymbol: string, + collateralSymbol: string, +) { + const targetConfig = poolConfig.custodies.find( + (c) => c.symbol === targetSymbol, + ); + const collateralConfig = poolConfig.custodies.find( + (c) => c.symbol === collateralSymbol, + ); + + if (!targetConfig || !collateralConfig) { + throw new Error("Custody configuration not found"); + } + + const accounts = await perpClient.provider.connection.getMultipleAccountsInfo( + [targetConfig.custodyAccount, collateralConfig.custodyAccount], + ); + + if (!accounts[0] || !accounts[1]) { + throw new Error("Failed to fetch custody accounts"); + } + + return { + targetCustody: CustodyAccount.from( + targetConfig.custodyAccount, + perpClient.program.coder.accounts.decode( + "custody", + accounts[0].data, + ), + ), + collateralCustody: CustodyAccount.from( + collateralConfig.custodyAccount, + perpClient.program.coder.accounts.decode( + "custody", + accounts[1].data, + ), + ), + }; +} + +function calculatePositionSize( + perpClient: PerpetualsClient, + collateralAmount: BN, + leverage: BN, + targetToken: any, + collateralToken: any, + side: "long" | "short", + targetPrice: OraclePrice, + collateralPrice: OraclePrice, + targetCustody: CustodyAccount, + collateralCustody: CustodyAccount, +): BN { + return perpClient.getSizeAmountFromLeverageAndCollateral( + collateralAmount, + leverage.toString(), + targetToken, + collateralToken, + side === "long" ? Side.Long : Side.Short, + targetPrice, + targetPrice, + targetCustody, + collateralPrice, + collateralPrice, + collateralCustody, + ); +} diff --git a/src/tools/index.ts b/src/tools/index.ts index 62a11de..8dcf8a4 100644 --- a/src/tools/index.ts +++ b/src/tools/index.ts @@ -59,3 +59,6 @@ export * from "./create_tiplinks"; export * from "./tensor_trade"; export * from "./rugcheck"; + +export * from "./flash_open_trade"; +export * from "./flash_close_trade"; \ No newline at end of file diff --git a/src/utils/flashUtils.ts b/src/utils/flashUtils.ts new file mode 100644 index 0000000..0b1a2ef --- /dev/null +++ b/src/utils/flashUtils.ts @@ -0,0 +1,310 @@ +import { PriceServiceConnection } from "@pythnetwork/price-service-client"; +import { OraclePrice } from "flash-sdk"; +import { AnchorProvider, BN, Wallet } from "@coral-xyz/anchor"; +import { PoolConfig, Token, Referral, PerpetualsClient } from "flash-sdk"; +import { Cluster, PublicKey, Connection, Keypair } from "@solana/web3.js"; +import { getAssociatedTokenAddressSync } from "@solana/spl-token"; + +const POOL_NAMES = [ + "Crypto.1", + "Virtual.1", + "Governance.1", + "Community.1", + "Community.2", + "Community.3", +]; + +const DEFAULT_CLUSTER: Cluster = "mainnet-beta"; +export const POOL_CONFIGS = POOL_NAMES.map((f) => + PoolConfig.fromIdsByName(f, DEFAULT_CLUSTER), +); + +const DUPLICATE_TOKENS = POOL_CONFIGS.map((f) => f.tokens).flat(); +const tokenMap = new Map(); +for (const token of DUPLICATE_TOKENS) { + tokenMap.set(token.symbol, token); +} +export const ALL_TOKENS: Token[] = Array.from(tokenMap.values()); +export const ALL_CUSTODIES = POOL_CONFIGS.map((f) => f.custodies).flat(); +const PROGRAM_ID = POOL_CONFIGS[0].programId; + +// CU for trade instructions +export const OPEN_POSITION_CU = 150_000; +export const CLOSE_POSITION_CU = 180_000; + +const HERMES_URL = "https://hermes.pyth.network"; // Replace with the actual Hermes URL if different + +// Create a map of symbol to Pyth price ID +const PRICE_FEED_IDS = ALL_TOKENS.reduce( + (acc, token) => { + acc[token.symbol] = token.pythPriceId; + return acc; + }, + {} as { [key: string]: string }, +); + +const priceServiceConnection = new PriceServiceConnection(HERMES_URL, { + priceFeedRequestConfig: { + binary: true, + }, +}); + +export interface PythPriceEntry { + price: OraclePrice; + emaPrice: OraclePrice; + isStale: boolean; + status: PriceStatus; +} + +export enum PriceStatus { + Trading, + Unknown, + Halted, + Auction, +} + +export const fetchOraclePrice = async ( + symbol: string, +): Promise => { + const priceFeedId = PRICE_FEED_IDS[symbol]; + if (!priceFeedId) { + throw new Error(`Price feed ID not found for symbol: ${symbol}`); + } + + try { + const priceFeed = await priceServiceConnection.getLatestPriceFeeds([ + priceFeedId, + ]); + + if (!priceFeed || priceFeed.length === 0) { + throw new Error(`No price feed received for ${symbol}`); + } + + const price = priceFeed[0].getPriceUnchecked(); + const emaPrice = priceFeed[0].getEmaPriceUnchecked(); + + const priceOracle = new OraclePrice({ + price: new BN(price.price), + exponent: new BN(price.expo), + confidence: new BN(price.conf), + timestamp: new BN(price.publishTime), + }); + + const emaPriceOracle = new OraclePrice({ + price: new BN(emaPrice.price), + exponent: new BN(emaPrice.expo), + confidence: new BN(emaPrice.conf), + timestamp: new BN(emaPrice.publishTime), + }); + + const token = ALL_TOKENS.find((t) => t.pythPriceId === priceFeedId); + if (!token) { + throw new Error(`Token not found for price feed ID: ${priceFeedId}`); + } + + const status = !token.isVirtual ? PriceStatus.Trading : PriceStatus.Unknown; + + const pythPriceEntry: PythPriceEntry = { + price: priceOracle, + emaPrice: emaPriceOracle, + isStale: false, + status: status, + }; + + return pythPriceEntry; + } catch (error) { + console.error(`Error in fetchOraclePrice for ${symbol}:`, error); + throw error; + } +}; + +// If you need to get all price IDs for subscription or other purposes +export const getAllPriceIds = () => ALL_TOKENS.map((t) => t.pythPriceId); + +export const subscribeToPriceFeeds = ( + callback: (symbol: string, priceEntry: PythPriceEntry) => void, +) => { + const priceIds = getAllPriceIds(); + priceServiceConnection.subscribePriceFeedUpdates(priceIds, (priceFeed) => { + const token = ALL_TOKENS.find((f) => f.pythPriceId === `0x${priceFeed.id}`); + if (token) { + const priceOracle = new OraclePrice({ + price: new BN(priceFeed.getPriceUnchecked().price), + exponent: new BN(priceFeed.getPriceUnchecked().expo), + confidence: new BN(priceFeed.getPriceUnchecked().conf), + timestamp: new BN(priceFeed.getPriceUnchecked().publishTime), + }); + const emaPriceOracle = new OraclePrice({ + price: new BN(priceFeed.getEmaPriceUnchecked().price), + exponent: new BN(priceFeed.getEmaPriceUnchecked().expo), + confidence: new BN(priceFeed.getEmaPriceUnchecked().conf), + timestamp: new BN(priceFeed.getEmaPriceUnchecked().publishTime), + }); + + const status = !token.isVirtual + ? PriceStatus.Trading + : PriceStatus.Unknown; + const priceEntry: PythPriceEntry = { + price: priceOracle, + emaPrice: emaPriceOracle, + isStale: false, + status: status, + }; + callback(token.symbol, priceEntry); + } + }); +}; + +export interface MarketInfo { + [key: string]: { + tokenPair: string; + token: string; + side: string; + pool: string; + }; +} + +const marketSdkInfo: MarketInfo = {}; + +// Loop through POOL_CONFIGS to process each market +POOL_CONFIGS.forEach((poolConfig) => { + poolConfig.markets.forEach((market) => { + const targetToken = ALL_TOKENS.find( + (token) => token.mintKey.toString() === market.targetMint.toString(), + ); + + // Find collateral token by matching mintKey + const collateralToken = ALL_TOKENS.find( + (token) => token.mintKey.toString() === market.collateralMint.toString(), + ); + + if (targetToken?.symbol && collateralToken?.symbol) { + marketSdkInfo[market.marketAccount.toString()] = { + tokenPair: `${targetToken.symbol}/${collateralToken.symbol}`, + token: targetToken.symbol, + side: Object.keys(market.side)[0], + pool: poolConfig.poolName, + }; + } + }); +}); + +export { marketSdkInfo }; + +export interface MarketTokenSides { + [token: string]: { + long?: { marketID: string }; + short?: { marketID: string }; + }; +} + +const marketTokenMap: MarketTokenSides = {}; + +// Convert marketSdkInfo into marketTokenMap +Object.entries(marketSdkInfo).forEach(([marketID, info]) => { + if (!marketTokenMap[info.token]) { + marketTokenMap[info.token] = {}; + } + + marketTokenMap[info.token][info.side.toLowerCase() as 'long' | 'short'] = { + marketID + }; +}); + +export { marketTokenMap }; + +interface TradingAccountResult { + nftReferralAccountPK: PublicKey | null; + nftTradingAccountPk: PublicKey | null; + nftOwnerRebateTokenAccountPk: PublicKey | null; +} + +export async function getNftTradingAccountInfo( + userPublicKey: PublicKey, + perpClient: PerpetualsClient, + poolConfig: PoolConfig, + collateralCustodySymbol: string, +): Promise { + const getNFTReferralAccountPK = (publicKey: PublicKey) => { + return PublicKey.findProgramAddressSync( + [Buffer.from("referral"), publicKey.toBuffer()], + PROGRAM_ID, + )[0]; + }; + const nftReferralAccountPK = getNFTReferralAccountPK(userPublicKey); + const nftReferralAccountInfo = + await perpClient.provider.connection.getAccountInfo(nftReferralAccountPK); + + let nftTradingAccountPk: PublicKey | null = null; + let nftOwnerRebateTokenAccountPk: PublicKey | null = null; + + if (nftReferralAccountInfo) { + const nftReferralAccountData = perpClient.program.coder.accounts.decode( + "referral", + nftReferralAccountInfo.data, + ) as Referral; + + nftTradingAccountPk = nftReferralAccountData.refererTradingAccount; + + if (nftTradingAccountPk) { + const nftTradingAccountInfo = + await perpClient.provider.connection.getAccountInfo( + nftTradingAccountPk, + ); + if (nftTradingAccountInfo) { + const nftTradingAccount = perpClient.program.coder.accounts.decode( + "trading", + nftTradingAccountInfo.data, + ) as { owner: PublicKey }; + + nftOwnerRebateTokenAccountPk = getAssociatedTokenAddressSync( + poolConfig.getTokenFromSymbol(collateralCustodySymbol).mintKey, + nftTradingAccount.owner, + ); + // Check if the account exists + const accountExists = + await perpClient.provider.connection.getAccountInfo( + nftOwnerRebateTokenAccountPk, + ); + if (!accountExists) { + console.log( + "NFT owner rebate token account does not exist and may need to be created", + ); + } + } + } + } + + return { + nftReferralAccountPK, + nftTradingAccountPk, + nftOwnerRebateTokenAccountPk, + }; +} + +/** + * Creates a new PerpetualsClient instance with the given connection and wallet + * @param connection Solana connection + * @param wallet Solana wallet + * @returns PerpetualsClient instance + */ +export function createPerpClient(connection: Connection, wallet: Keypair): PerpetualsClient { + const provider = new AnchorProvider( + connection, + new Wallet(wallet), + { + commitment: 'confirmed', + preflightCommitment: 'confirmed', + skipPreflight: true + } + ); + + return new PerpetualsClient( + provider, + POOL_CONFIGS[0].programId, + POOL_CONFIGS[0].perpComposibilityProgramId, + POOL_CONFIGS[0].fbNftRewardProgramId, + POOL_CONFIGS[0].rewardDistributionProgram.programId, + {} + ); +} \ No newline at end of file From aa4dfdf9c3de1ab97d1c7790f49e5906379e6209 Mon Sep 17 00:00:00 2001 From: UjjwalGupta49 Date: Sun, 5 Jan 2025 00:27:18 +0530 Subject: [PATCH 2/8] update manifest sdk --- .env.example | 5 ----- docs/assets/hierarchy.js | 2 +- docs/assets/navigation.js | 2 +- docs/assets/search.js | 2 +- docs/classes/SolanaAgentKit.html | 20 +++++++++++++------ docs/functions/createSolanaTools.html | 2 +- docs/functions/createVercelAITools.html | 2 +- docs/functions/executeAction.html | 2 +- docs/functions/findAction.html | 2 +- docs/functions/getActionExamples.html | 2 +- docs/interfaces/Action.html | 14 ++++++------- docs/interfaces/ActionExample.html | 4 ++-- docs/interfaces/CollectionDeployment.html | 4 ++-- docs/interfaces/CollectionOptions.html | 4 ++-- docs/interfaces/Config.html | 4 ++-- docs/interfaces/Creator.html | 4 ++-- docs/interfaces/FetchPriceResponse.html | 4 ++-- docs/interfaces/GibworkCreateTaskReponse.html | 4 ++-- docs/interfaces/JupiterTokenData.html | 4 ++-- .../LuloAccountDetailsResponse.html | 4 ++-- .../interfaces/MintCollectionNFTResponse.html | 4 ++-- docs/interfaces/PumpFunTokenOptions.html | 4 ++-- docs/interfaces/PumpfunLaunchResponse.html | 4 ++-- docs/interfaces/PythFetchPriceResponse.html | 4 ++-- docs/interfaces/TokenCheck.html | 4 ++-- docs/types/Handler.html | 2 +- docs/variables/actions.html | 2 +- src/tools/flash_open_trade.ts | 2 +- 28 files changed, 60 insertions(+), 57 deletions(-) delete mode 100644 .env.example diff --git a/.env.example b/.env.example deleted file mode 100644 index e8004fd..0000000 --- a/.env.example +++ /dev/null @@ -1,5 +0,0 @@ -OPENAI_API_KEY= -RPC_URL= -SOLANA_PRIVATE_KEY= -JUPITER_REFERRAL_ACCOUNT= -JUPITER_FEE_BPS= \ No newline at end of file diff --git a/docs/assets/hierarchy.js b/docs/assets/hierarchy.js index fb85f0a..88636f0 100644 --- a/docs/assets/hierarchy.js +++ b/docs/assets/hierarchy.js @@ -1 +1 @@ -window.hierarchyData = "eJyrVirKzy8pVrKKjtVRKkpNy0lNLsnMzytWsqqurQUAmx4Kpg==" \ No newline at end of file +window.hierarchyData = "eJyrVirKzy8pVrKKjtVRKkpNy0lNLsnMzwMKVNfWAgCbHgqm" \ No newline at end of file diff --git a/docs/assets/navigation.js b/docs/assets/navigation.js index 492edcd..2f0a0ee 100644 --- a/docs/assets/navigation.js +++ b/docs/assets/navigation.js @@ -1 +1 @@ -window.navigationData = "eJyNlU1PwkAQhv/LnokIfnMjIH6hEmy8GA/rMqWbLrNNd1Yhxv9uKMRSuh289NB53mfayXT79i0IliR64sUaibI/B6QHTaIlMkmJ6AllpHPg2tX6UUILI1oi1TgTvU738qf1Z+or0hZLg0aCPJYKXHtTqoa7Z+e18PVSLjIDjGNLcKqBNQYKeAiZsasFIAWNIfB/4udsfXUHrFuKV2Ks5w2edYkN5yDJ5uH0psbFR0AqmeRawRRcZtGF517HOOmN/viyeVq0h0i6dArN6iaYa3DvM02QRzYFHEqSQfE+xAnH3ti+UtYjDYGkNo4dRzPONXnUSOViPI0itkcjzbWY+EUWexxLjyph9UHykHrksRgnt/oBjtWuKPnnEoZRTl48xCABlQaFZZmT3EqcGdj5wmiVgWtvb+8lj68uOmfd3TNtEN09P72U6U+Za/lh1ofZplQ1nOyGVfFRbE7fyFqzM/HYY7EYrl2DqsLz05rwFXIFpn93QFnBGCksQXmC/aO/1FUARhRrnDVbyiqjmANV/hHB16tBNeH7L4Zcd8U=" \ No newline at end of file +window.navigationData = "eJyNlcFSwjAQht+lZ0YEBZUbA6IoAgMdL46HELY005B02q3COL67oWVsS9OFSw/Z7/82TZP048dB2KHTc5ZaMsX6G1D4KtBpOCFD34xzyeIY4ma5fuXjVhooEGrt9Frt+9/Gv6nPUWiVG4RCiDzGjSQrlcPtTrcSftyxbSiBcBwJSjXQUkIKDyGUer81U7cabeBl4ll4eMZnrEeKVipPbGo8hxIZjoChjuzprEbFR4Dcn0eCwwLi0EzUvu5VjJI+idW3joK0PbgsDhZQr66DqQYvSSiMwNUBqCFDZhWfQpRwkkjd51wnCoeATMiYXI56nGryZgz5xpiOXLJHLU21mCfb0EvUhCWK+6TeSp5TjxKVLie19S0cqd2jf+EmtKOUPJ3EwAceWIV5mZI8M7WWUDhhuA9N+Dh8krx+uGt12sU7beCOZ9Nlnv5ikWArebjMslLZcFMM8/RQZLevq7UsrLj5dunGiJsVqCzs3laE7xBxkP3xGWUJI6SwA54gnF79ua4EECLPDNVb8iqh2ACW/hHW16tAFeHnH4Zcd8U=" \ No newline at end of file diff --git a/docs/assets/search.js b/docs/assets/search.js index 611142f..39c4130 100644 --- a/docs/assets/search.js +++ b/docs/assets/search.js @@ -1 +1 @@ -window.searchData = "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"; \ No newline at end of file +window.searchData = "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"; \ No newline at end of file diff --git a/docs/classes/SolanaAgentKit.html b/docs/classes/SolanaAgentKit.html index 035f908..d398ecd 100644 --- a/docs/classes/SolanaAgentKit.html +++ b/docs/classes/SolanaAgentKit.html @@ -1,7 +1,7 @@ SolanaAgentKit | solana-agent-kit

Class SolanaAgentKit

Main class for interacting with Solana blockchain Provides a unified interface for token operations, NFT management, trading and more

SolanaAgentKit

-

Constructors

Constructors

Properties

config connection wallet @@ -17,6 +17,8 @@ Provides a unified interface for token operations, NFT management, trading and m fetchTokenDetailedReport fetchTokenPrice fetchTokenReportSummary +flashCloseTrade +flashOpenTrade getAllDomainsTLDs getAllRegisteredAllDomains getBalance @@ -64,8 +66,14 @@ Please use the new constructor with Config object instead:

const agent = new SolanaAgentKit(privateKey, rpcUrl, {
OPENAI_API_KEY: 'your-key'
});
-
  • Parameters

    • private_key: string
    • rpc_url: string
    • config: Config

    Returns SolanaAgentKit

  • Properties

    config: Config

    Configuration object

    -
    connection: Connection

    Solana RPC connection

    -
    wallet: Keypair

    Wallet keypair for signing transactions

    -
    wallet_address: PublicKey

    Public key of the wallet

    -

    Methods

    • Parameters

      • marketId: PublicKey
      • orders: OrderParams[]

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey

      Returns Promise<string>

    • Parameters

      • args: Omit<{ agent: SolanaAgentKit; price: number; tradeMint: PublicKey }, "agent">

      Returns Promise<string>

    • Parameters

      • args: Omit<{ agent: SolanaAgentKit; price: number; tradeMint: PublicKey }, "agent">

      Returns Promise<string>

    • Parameters

      • title: string
      • content: string
      • requirements: string
      • tags: string[]
      • tokenMintAddress: string
      • tokenAmount: number
      • Optionalpayer: string

      Returns Promise<GibworkCreateTaskReponse>

    • Parameters

      • amount: number
      • OptionalsplmintAddress: PublicKey

      Returns Promise<{ signature: string; url: string }>

    • Parameters

      • name: string
      • uri: string
      • symbol: string
      • decimals: number = DEFAULT_OPTIONS.TOKEN_DECIMALS
      • OptionalinitialSupply: number

      Returns Promise<{ mint: PublicKey }>

    • Parameters

      • mint: string

      Returns Promise<string>

    • Returns Promise<string[]>

    • Returns Promise<string[]>

    • Parameters

      • Optionaltoken_address: PublicKey

      Returns Promise<number>

    • Parameters

      • walletAddress: PublicKey
      • OptionaltokenAddress: PublicKey

      Returns Promise<number>

    • Parameters

      • owner: PublicKey

      Returns Promise<null | string>

    • Parameters

      • owner: PublicKey

      Returns Promise<string[]>

    • Parameters

      • tld: string

      Returns Promise<string[]>

    • Parameters

      • account: PublicKey

      Returns Promise<string>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey
      • quantity: number
      • side: string
      • price: number

      Returns Promise<string>

    • Parameters

      • baseMint: PublicKey
      • quoteMint: PublicKey

      Returns Promise<string[]>

    • Parameters

      • collectionMint: PublicKey
      • metadata: {
            creators?: { address: string; share: number }[];
            name: string;
            sellerFeeBasisPoints?: number;
            uri: string;
        }
      • Optionalrecipient: PublicKey

      Returns Promise<MintCollectionNFTResponse>

    • Parameters

      • baseMint: PublicKey
      • quoteMint: PublicKey
      • lotSize: number = 1
      • tickSize: number = 0.01

      Returns Promise<string[]>

    • Parameters

      • args: Omit<
            {
                agent: SolanaAgentKit;
                collateralAmount: number;
                collateralMint?: PublicKey;
                leverage?: number;
                price: number;
                slippage?: number;
                tradeMint?: PublicKey;
            },
            "agent",
        >

      Returns Promise<string>

    • Parameters

      • args: Omit<
            {
                agent: SolanaAgentKit;
                collateralAmount: number;
                collateralMint?: PublicKey;
                leverage?: number;
                price: number;
                slippage?: number;
                tradeMint?: PublicKey;
            },
            "agent",
        >

      Returns Promise<string>

    • Parameters

      • positionMintAddress: PublicKey

      Returns Promise<string>

    • Parameters

      • mintDeploy: PublicKey
      • mintPair: PublicKey
      • initialPrice: Decimal
      • feeTier: 1 | 2 | 4 | 5 | 16 | 30 | 65 | 100 | 200

      Returns Promise<string>

    • Parameters

      • depositTokenAmount: number
      • depositTokenMint: PublicKey
      • otherTokenMint: PublicKey
      • initialPrice: Decimal
      • maxPrice: Decimal
      • feeTier: 1 | 2 | 4 | 5 | 16 | 30 | 65 | 100 | 200

      Returns Promise<string>

    • Parameters

      • whirlpoolAddress: PublicKey
      • priceOffsetBps: number
      • inputTokenMint: PublicKey
      • inputAmount: Decimal

      Returns Promise<string>

    • Parameters

      • whirlpoolAddress: PublicKey
      • distanceFromCurrentPriceBps: number
      • widthBps: number
      • inputTokenMint: PublicKey
      • inputAmount: Decimal

      Returns Promise<string>

    • Parameters

      • priceFeedID: string

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey
      • baseAmount: BN
      • quoteAmount: BN
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • mint1: PublicKey
      • mint2: PublicKey
      • configId: PublicKey
      • initialPrice: Decimal
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • mint1: PublicKey
      • mint2: PublicKey
      • configId: PublicKey
      • mintAAmount: BN
      • mintBAmount: BN
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • name: string
      • OptionalspaceKB: number

      Returns Promise<string>

    • Parameters

      • domain: string

      Returns Promise<undefined | PublicKey>

    • Parameters

      • domain: string

      Returns Promise<PublicKey>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • amount: number
      • choice: "rock" | "paper" | "scissors"

      Returns Promise<string>

    • Parameters

      • mintAddress: string
      • amount: number
      • decimals: number
      • recipients: string[]
      • priorityFeeInLamports: number
      • shouldLog: boolean

      Returns Promise<string[]>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • nftMint: PublicKey

      Returns Promise<string>

    • Parameters

      • nftMint: PublicKey
      • price: number

      Returns Promise<string>

    • Parameters

      • outputMint: PublicKey
      • inputAmount: number
      • OptionalinputMint: PublicKey
      • slippageBps: number = DEFAULT_OPTIONS.SLIPPAGE_BPS

      Returns Promise<string>

    • Parameters

      • to: PublicKey
      • amount: number
      • Optionalmint: PublicKey

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey

      Returns Promise<string>

    +
  • Parameters

    • private_key: string
    • rpc_url: string
    • config: Config

    Returns SolanaAgentKit

  • Properties

    config: Config

    Configuration object

    +
    connection: Connection

    Solana RPC connection

    +
    wallet: Keypair

    Wallet keypair for signing transactions

    +
    wallet_address: PublicKey

    Public key of the wallet

    +

    Methods

    • Parameters

      • marketId: PublicKey
      • orders: OrderParams[]

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey

      Returns Promise<string>

    • Parameters

      • args: Omit<{ agent: SolanaAgentKit; price: number; tradeMint: PublicKey }, "agent">

      Returns Promise<string>

    • Parameters

      • args: Omit<{ agent: SolanaAgentKit; price: number; tradeMint: PublicKey }, "agent">

      Returns Promise<string>

    • Parameters

      • title: string
      • content: string
      • requirements: string
      • tags: string[]
      • tokenMintAddress: string
      • tokenAmount: number
      • Optionalpayer: string

      Returns Promise<GibworkCreateTaskReponse>

    • Parameters

      • amount: number
      • OptionalsplmintAddress: PublicKey

      Returns Promise<{ signature: string; url: string }>

    • Parameters

      • name: string
      • uri: string
      • symbol: string
      • decimals: number = DEFAULT_OPTIONS.TOKEN_DECIMALS
      • OptionalinitialSupply: number

      Returns Promise<{ mint: PublicKey }>

    • Parameters

      • mint: string

      Returns Promise<string>

    • Closes an existing trading position on Flash.Trade

      +

      Parameters

      • params: FlashCloseTradeParams

        Flash trade close parameters

        +

      Returns Promise<string>

      Transaction signature

      +
    • Opens a new trading position on Flash.Trade

      +

      Parameters

      • params: FlashTradeParams

        Flash trade parameters including market, side, collateral, leverage, and pool name

        +

      Returns Promise<string>

      Transaction signature

      +
    • Returns Promise<string[]>

    • Returns Promise<string[]>

    • Parameters

      • Optionaltoken_address: PublicKey

      Returns Promise<number>

    • Parameters

      • walletAddress: PublicKey
      • OptionaltokenAddress: PublicKey

      Returns Promise<number>

    • Parameters

      • owner: PublicKey

      Returns Promise<null | string>

    • Parameters

      • owner: PublicKey

      Returns Promise<string[]>

    • Parameters

      • tld: string

      Returns Promise<string[]>

    • Parameters

      • account: PublicKey

      Returns Promise<string>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey
      • quantity: number
      • side: string
      • price: number

      Returns Promise<string>

    • Parameters

      • baseMint: PublicKey
      • quoteMint: PublicKey

      Returns Promise<string[]>

    • Parameters

      • collectionMint: PublicKey
      • metadata: {
            creators?: { address: string; share: number }[];
            name: string;
            sellerFeeBasisPoints?: number;
            uri: string;
        }
      • Optionalrecipient: PublicKey

      Returns Promise<MintCollectionNFTResponse>

    • Parameters

      • baseMint: PublicKey
      • quoteMint: PublicKey
      • lotSize: number = 1
      • tickSize: number = 0.01

      Returns Promise<string[]>

    • Parameters

      • args: Omit<
            {
                agent: SolanaAgentKit;
                collateralAmount: number;
                collateralMint?: PublicKey;
                leverage?: number;
                price: number;
                slippage?: number;
                tradeMint?: PublicKey;
            },
            "agent",
        >

      Returns Promise<string>

    • Parameters

      • args: Omit<
            {
                agent: SolanaAgentKit;
                collateralAmount: number;
                collateralMint?: PublicKey;
                leverage?: number;
                price: number;
                slippage?: number;
                tradeMint?: PublicKey;
            },
            "agent",
        >

      Returns Promise<string>

    • Parameters

      • positionMintAddress: PublicKey

      Returns Promise<string>

    • Parameters

      • mintDeploy: PublicKey
      • mintPair: PublicKey
      • initialPrice: Decimal
      • feeTier: 1 | 2 | 4 | 5 | 16 | 30 | 65 | 100 | 200

      Returns Promise<string>

    • Parameters

      • depositTokenAmount: number
      • depositTokenMint: PublicKey
      • otherTokenMint: PublicKey
      • initialPrice: Decimal
      • maxPrice: Decimal
      • feeTier: 1 | 2 | 4 | 5 | 16 | 30 | 65 | 100 | 200

      Returns Promise<string>

    • Parameters

      • whirlpoolAddress: PublicKey
      • priceOffsetBps: number
      • inputTokenMint: PublicKey
      • inputAmount: Decimal

      Returns Promise<string>

    • Parameters

      • whirlpoolAddress: PublicKey
      • distanceFromCurrentPriceBps: number
      • widthBps: number
      • inputTokenMint: PublicKey
      • inputAmount: Decimal

      Returns Promise<string>

    • Parameters

      • priceFeedID: string

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey
      • baseAmount: BN
      • quoteAmount: BN
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • mint1: PublicKey
      • mint2: PublicKey
      • configId: PublicKey
      • initialPrice: Decimal
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • mint1: PublicKey
      • mint2: PublicKey
      • configId: PublicKey
      • mintAAmount: BN
      • mintBAmount: BN
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • name: string
      • OptionalspaceKB: number

      Returns Promise<string>

    • Parameters

      • domain: string

      Returns Promise<undefined | PublicKey>

    • Parameters

      • domain: string

      Returns Promise<PublicKey>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • amount: number
      • choice: "rock" | "paper" | "scissors"

      Returns Promise<string>

    • Parameters

      • mintAddress: string
      • amount: number
      • decimals: number
      • recipients: string[]
      • priorityFeeInLamports: number
      • shouldLog: boolean

      Returns Promise<string[]>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • nftMint: PublicKey

      Returns Promise<string>

    • Parameters

      • nftMint: PublicKey
      • price: number

      Returns Promise<string>

    • Parameters

      • outputMint: PublicKey
      • inputAmount: number
      • OptionalinputMint: PublicKey
      • slippageBps: number = DEFAULT_OPTIONS.SLIPPAGE_BPS

      Returns Promise<string>

    • Parameters

      • to: PublicKey
      • amount: number
      • Optionalmint: PublicKey

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey

      Returns Promise<string>

    diff --git a/docs/functions/createSolanaTools.html b/docs/functions/createSolanaTools.html index ccdcc08..69741ad 100644 --- a/docs/functions/createSolanaTools.html +++ b/docs/functions/createSolanaTools.html @@ -1 +1 @@ -createSolanaTools | solana-agent-kit

    Function createSolanaTools

    • Parameters

      Returns (
          | SolanaBalanceTool
          | SolanaBalanceOtherTool
          | SolanaTransferTool
          | SolanaDeployTokenTool
          | SolanaDeployCollectionTool
          | SolanaMintNFTTool
          | SolanaPerpCloseTradeTool
          | SolanaPerpOpenTradeTool
          | SolanaTradeTool
          | SolanaLimitOrderTool
          | SolanaBatchOrderTool
          | SolanaCancelAllOrdersTool
          | SolanaWithdrawAllTool
          | SolanaRequestFundsTool
          | SolanaRegisterDomainTool
          | SolanaResolveDomainTool
          | SolanaGetDomainTool
          | SolanaGetWalletAddressTool
          | SolanaPumpfunTokenLaunchTool
          | SolanaCreateImageTool
          | SolanaLendAssetTool
          | SolanaTPSCalculatorTool
          | SolanaStakeTool
          | SolanaRestakeTool
          | SolanaFetchPriceTool
          | SolanaTokenDataTool
          | SolanaTokenDataByTickerTool
          | SolanaCompressedAirdropTool
          | SolanaClosePosition
          | SolanaOrcaCreateCLMM
          | SolanaOrcaCreateSingleSideLiquidityPool
          | SolanaOrcaFetchPositions
          | SolanaOrcaOpenCenteredPosition
          | SolanaOrcaOpenSingleSidedPosition
          | SolanaRaydiumCreateAmmV4
          | SolanaRaydiumCreateClmm
          | SolanaRaydiumCreateCpmm
          | SolanaOpenbookCreateMarket
          | SolanaManifestCreateMarket
          | SolanaPythFetchPrice
          | SolanaResolveAllDomainsTool
          | SolanaGetOwnedDomains
          | SolanaGetOwnedTldDomains
          | SolanaGetAllTlds
          | SolanaGetMainDomain
          | SolanaCreateGibworkTask
          | SolanaRockPaperScissorsTool
          | SolanaTipLinkTool
          | SolanaListNFTForSaleTool
          | SolanaCancelNFTListingTool
          | SolanaFetchTokenReportSummaryTool
          | SolanaFetchTokenDetailedReportTool
      )[]

    +createSolanaTools | solana-agent-kit

    Function createSolanaTools

    • Parameters

      Returns (
          | SolanaBalanceTool
          | SolanaBalanceOtherTool
          | SolanaTransferTool
          | SolanaDeployTokenTool
          | SolanaDeployCollectionTool
          | SolanaMintNFTTool
          | SolanaPerpCloseTradeTool
          | SolanaPerpOpenTradeTool
          | SolanaTradeTool
          | SolanaLimitOrderTool
          | SolanaBatchOrderTool
          | SolanaCancelAllOrdersTool
          | SolanaWithdrawAllTool
          | SolanaRequestFundsTool
          | SolanaRegisterDomainTool
          | SolanaResolveDomainTool
          | SolanaGetDomainTool
          | SolanaGetWalletAddressTool
          | SolanaFlashOpenTrade
          | SolanaFlashCloseTrade
          | SolanaPumpfunTokenLaunchTool
          | SolanaCreateImageTool
          | SolanaLendAssetTool
          | SolanaTPSCalculatorTool
          | SolanaStakeTool
          | SolanaRestakeTool
          | SolanaFetchPriceTool
          | SolanaTokenDataTool
          | SolanaTokenDataByTickerTool
          | SolanaCompressedAirdropTool
          | SolanaClosePosition
          | SolanaOrcaCreateCLMM
          | SolanaOrcaCreateSingleSideLiquidityPool
          | SolanaOrcaFetchPositions
          | SolanaOrcaOpenCenteredPosition
          | SolanaOrcaOpenSingleSidedPosition
          | SolanaRaydiumCreateAmmV4
          | SolanaRaydiumCreateClmm
          | SolanaRaydiumCreateCpmm
          | SolanaOpenbookCreateMarket
          | SolanaManifestCreateMarket
          | SolanaPythFetchPrice
          | SolanaResolveAllDomainsTool
          | SolanaGetOwnedDomains
          | SolanaGetOwnedTldDomains
          | SolanaGetAllTlds
          | SolanaGetMainDomain
          | SolanaCreateGibworkTask
          | SolanaRockPaperScissorsTool
          | SolanaTipLinkTool
          | SolanaListNFTForSaleTool
          | SolanaCancelNFTListingTool
          | SolanaFetchTokenReportSummaryTool
          | SolanaFetchTokenDetailedReportTool
      )[]

    diff --git a/docs/functions/createVercelAITools.html b/docs/functions/createVercelAITools.html index 12775cb..b14d924 100644 --- a/docs/functions/createVercelAITools.html +++ b/docs/functions/createVercelAITools.html @@ -1 +1 @@ -createVercelAITools | solana-agent-kit

    Function createVercelAITools

    +createVercelAITools | solana-agent-kit

    Function createVercelAITools

    diff --git a/docs/functions/executeAction.html b/docs/functions/executeAction.html index ce82002..3cd61c6 100644 --- a/docs/functions/executeAction.html +++ b/docs/functions/executeAction.html @@ -1,2 +1,2 @@ executeAction | solana-agent-kit

    Function executeAction

    • Execute an action with the given input

      -

      Parameters

      Returns Promise<Record<string, any>>

    +

    Parameters

    Returns Promise<Record<string, any>>

    diff --git a/docs/functions/findAction.html b/docs/functions/findAction.html index 3eba58f..be090a6 100644 --- a/docs/functions/findAction.html +++ b/docs/functions/findAction.html @@ -1,2 +1,2 @@ findAction | solana-agent-kit

    Function findAction

    • Find an action by its name or one of its similes

      -

      Parameters

      • query: string

      Returns Action | undefined

    +

    Parameters

    • query: string

    Returns Action | undefined

    diff --git a/docs/functions/getActionExamples.html b/docs/functions/getActionExamples.html index 0b133b9..c43549d 100644 --- a/docs/functions/getActionExamples.html +++ b/docs/functions/getActionExamples.html @@ -1,2 +1,2 @@ getActionExamples | solana-agent-kit

    Function getActionExamples

    • Get examples for an action

      -

      Parameters

      • action: Action

      Returns string

    +

    Parameters

    • action: Action

    Returns string

    diff --git a/docs/interfaces/Action.html b/docs/interfaces/Action.html index 00c6ccf..1e9a535 100644 --- a/docs/interfaces/Action.html +++ b/docs/interfaces/Action.html @@ -1,16 +1,16 @@ Action | solana-agent-kit

    Interface Action

    Main Action interface inspired by ELIZA This interface makes it easier to implement actions across different frameworks

    -
    interface Action {
        description: string;
        examples: ActionExample[][];
        handler: Handler;
        name: string;
        schema: ZodType;
        similes: string[];
    }

    Properties

    interface Action {
        description: string;
        examples: ActionExample[][];
        handler: Handler;
        name: string;
        schema: ZodType;
        similes: string[];
    }

    Properties

    description: string

    Detailed description of what the action does

    -
    examples: ActionExample[][]

    Array of example inputs and outputs for the action +

    examples: ActionExample[][]

    Array of example inputs and outputs for the action Each inner array represents a group of related examples

    -
    handler: Handler

    Function that executes the action

    -
    name: string

    Unique name of the action

    -
    schema: ZodType

    Zod schema for input validation

    -
    similes: string[]

    Alternative names/phrases that can trigger this action

    -
    +
    handler: Handler

    Function that executes the action

    +
    name: string

    Unique name of the action

    +
    schema: ZodType

    Zod schema for input validation

    +
    similes: string[]

    Alternative names/phrases that can trigger this action

    +
    diff --git a/docs/interfaces/ActionExample.html b/docs/interfaces/ActionExample.html index 4af324b..25fb2e0 100644 --- a/docs/interfaces/ActionExample.html +++ b/docs/interfaces/ActionExample.html @@ -1,5 +1,5 @@ ActionExample | solana-agent-kit

    Interface ActionExample

    Example of an action with input and output

    -
    interface ActionExample {
        explanation: string;
        input: Record<string, any>;
        output: Record<string, any>;
    }

    Properties

    interface ActionExample {
        explanation: string;
        input: Record<string, any>;
        output: Record<string, any>;
    }

    Properties

    explanation: string
    input: Record<string, any>
    output: Record<string, any>
    +

    Properties

    explanation: string
    input: Record<string, any>
    output: Record<string, any>
    diff --git a/docs/interfaces/CollectionDeployment.html b/docs/interfaces/CollectionDeployment.html index 60ae6f2..d89428c 100644 --- a/docs/interfaces/CollectionDeployment.html +++ b/docs/interfaces/CollectionDeployment.html @@ -1,3 +1,3 @@ -CollectionDeployment | solana-agent-kit

    Interface CollectionDeployment

    interface CollectionDeployment {
        collectionAddress: PublicKey;
        signature: Uint8Array;
    }

    Properties

    collectionAddress +CollectionDeployment | solana-agent-kit

    Interface CollectionDeployment

    interface CollectionDeployment {
        collectionAddress: PublicKey;
        signature: Uint8Array;
    }

    Properties

    collectionAddress: PublicKey
    signature: Uint8Array
    +

    Properties

    collectionAddress: PublicKey
    signature: Uint8Array
    diff --git a/docs/interfaces/CollectionOptions.html b/docs/interfaces/CollectionOptions.html index 6f5e64b..07b9e0d 100644 --- a/docs/interfaces/CollectionOptions.html +++ b/docs/interfaces/CollectionOptions.html @@ -1,5 +1,5 @@ -CollectionOptions | solana-agent-kit

    Interface CollectionOptions

    interface CollectionOptions {
        creators?: Creator[];
        name: string;
        royaltyBasisPoints?: number;
        uri: string;
    }

    Properties

    creators? +CollectionOptions | solana-agent-kit

    Interface CollectionOptions

    interface CollectionOptions {
        creators?: Creator[];
        name: string;
        royaltyBasisPoints?: number;
        uri: string;
    }

    Properties

    creators?: Creator[]
    name: string
    royaltyBasisPoints?: number
    uri: string
    +

    Properties

    creators?: Creator[]
    name: string
    royaltyBasisPoints?: number
    uri: string
    diff --git a/docs/interfaces/Config.html b/docs/interfaces/Config.html index 94e8716..7ee328a 100644 --- a/docs/interfaces/Config.html +++ b/docs/interfaces/Config.html @@ -1,4 +1,4 @@ -Config | solana-agent-kit

    Interface Config

    interface Config {
        JUPITER_FEE_BPS?: number;
        JUPITER_REFERRAL_ACCOUNT?: string;
        OPENAI_API_KEY?: string;
    }

    Properties

    JUPITER_FEE_BPS? +Config | solana-agent-kit

    Interface Config

    interface Config {
        JUPITER_FEE_BPS?: number;
        JUPITER_REFERRAL_ACCOUNT?: string;
        OPENAI_API_KEY?: string;
    }

    Properties

    JUPITER_FEE_BPS?: number
    JUPITER_REFERRAL_ACCOUNT?: string
    OPENAI_API_KEY?: string
    +

    Properties

    JUPITER_FEE_BPS?: number
    JUPITER_REFERRAL_ACCOUNT?: string
    OPENAI_API_KEY?: string
    diff --git a/docs/interfaces/Creator.html b/docs/interfaces/Creator.html index 8ff6cce..2e2a18a 100644 --- a/docs/interfaces/Creator.html +++ b/docs/interfaces/Creator.html @@ -1,3 +1,3 @@ -Creator | solana-agent-kit

    Interface Creator

    interface Creator {
        address: string;
        percentage: number;
    }

    Properties

    address +Creator | solana-agent-kit

    Interface Creator

    interface Creator {
        address: string;
        percentage: number;
    }

    Properties

    Properties

    address: string
    percentage: number
    +

    Properties

    address: string
    percentage: number
    diff --git a/docs/interfaces/FetchPriceResponse.html b/docs/interfaces/FetchPriceResponse.html index 1ba2522..18869fa 100644 --- a/docs/interfaces/FetchPriceResponse.html +++ b/docs/interfaces/FetchPriceResponse.html @@ -1,6 +1,6 @@ -FetchPriceResponse | solana-agent-kit

    Interface FetchPriceResponse

    interface FetchPriceResponse {
        code?: string;
        message?: string;
        priceInUSDC?: string;
        status: "success" | "error";
        tokenId?: string;
    }

    Properties

    code? +FetchPriceResponse | solana-agent-kit

    Interface FetchPriceResponse

    interface FetchPriceResponse {
        code?: string;
        message?: string;
        priceInUSDC?: string;
        status: "success" | "error";
        tokenId?: string;
    }

    Properties

    code?: string
    message?: string
    priceInUSDC?: string
    status: "success" | "error"
    tokenId?: string
    +

    Properties

    code?: string
    message?: string
    priceInUSDC?: string
    status: "success" | "error"
    tokenId?: string
    diff --git a/docs/interfaces/GibworkCreateTaskReponse.html b/docs/interfaces/GibworkCreateTaskReponse.html index 9443f14..fd5ba86 100644 --- a/docs/interfaces/GibworkCreateTaskReponse.html +++ b/docs/interfaces/GibworkCreateTaskReponse.html @@ -1,4 +1,4 @@ -GibworkCreateTaskReponse | solana-agent-kit

    Interface GibworkCreateTaskReponse

    interface GibworkCreateTaskReponse {
        signature?: string;
        status: "success" | "error";
        taskId?: string;
    }

    Properties

    signature? +GibworkCreateTaskReponse | solana-agent-kit

    Interface GibworkCreateTaskReponse

    interface GibworkCreateTaskReponse {
        signature?: string;
        status: "success" | "error";
        taskId?: string;
    }

    Properties

    signature?: string
    status: "success" | "error"
    taskId?: string
    +

    Properties

    signature?: string
    status: "success" | "error"
    taskId?: string
    diff --git a/docs/interfaces/JupiterTokenData.html b/docs/interfaces/JupiterTokenData.html index f2c23b6..28f3512 100644 --- a/docs/interfaces/JupiterTokenData.html +++ b/docs/interfaces/JupiterTokenData.html @@ -1,4 +1,4 @@ -JupiterTokenData | solana-agent-kit

    Interface JupiterTokenData

    interface JupiterTokenData {
        address: string;
        daily_volume: number;
        decimals: number;
        extensions: { coingeckoId?: string };
        freeze_authority: null | string;
        logoURI: string;
        mint_authority: null | string;
        name: string;
        permanent_delegate: null | string;
        symbol: string;
        tags: string[];
    }

    Properties

    address +JupiterTokenData | solana-agent-kit

    Interface JupiterTokenData

    interface JupiterTokenData {
        address: string;
        daily_volume: number;
        decimals: number;
        extensions: { coingeckoId?: string };
        freeze_authority: null | string;
        logoURI: string;
        mint_authority: null | string;
        name: string;
        permanent_delegate: null | string;
        symbol: string;
        tags: string[];
    }

    Properties

    address: string
    daily_volume: number
    decimals: number
    extensions: { coingeckoId?: string }
    freeze_authority: null | string
    logoURI: string
    mint_authority: null | string
    name: string
    permanent_delegate: null | string
    symbol: string
    tags: string[]
    +

    Properties

    address: string
    daily_volume: number
    decimals: number
    extensions: { coingeckoId?: string }
    freeze_authority: null | string
    logoURI: string
    mint_authority: null | string
    name: string
    permanent_delegate: null | string
    symbol: string
    tags: string[]
    diff --git a/docs/interfaces/LuloAccountDetailsResponse.html b/docs/interfaces/LuloAccountDetailsResponse.html index 20d1ec5..23d1d77 100644 --- a/docs/interfaces/LuloAccountDetailsResponse.html +++ b/docs/interfaces/LuloAccountDetailsResponse.html @@ -1,6 +1,6 @@ LuloAccountDetailsResponse | solana-agent-kit

    Interface LuloAccountDetailsResponse

    Lulo Account Details response format

    -
    interface LuloAccountDetailsResponse {
        interestEarned: number;
        realtimeApy: number;
        settings: {
            allowedProtocols: null | string;
            homebase: null | string;
            minimumRate: string;
            owner: string;
        };
        totalValue: number;
    }

    Properties

    interface LuloAccountDetailsResponse {
        interestEarned: number;
        realtimeApy: number;
        settings: {
            allowedProtocols: null | string;
            homebase: null | string;
            minimumRate: string;
            owner: string;
        };
        totalValue: number;
    }

    Properties

    interestEarned: number
    realtimeApy: number
    settings: {
        allowedProtocols: null | string;
        homebase: null | string;
        minimumRate: string;
        owner: string;
    }
    totalValue: number
    +

    Properties

    interestEarned: number
    realtimeApy: number
    settings: {
        allowedProtocols: null | string;
        homebase: null | string;
        minimumRate: string;
        owner: string;
    }
    totalValue: number
    diff --git a/docs/interfaces/MintCollectionNFTResponse.html b/docs/interfaces/MintCollectionNFTResponse.html index 0706240..0c39ca7 100644 --- a/docs/interfaces/MintCollectionNFTResponse.html +++ b/docs/interfaces/MintCollectionNFTResponse.html @@ -1,3 +1,3 @@ -MintCollectionNFTResponse | solana-agent-kit

    Interface MintCollectionNFTResponse

    interface MintCollectionNFTResponse {
        metadata: PublicKey;
        mint: PublicKey;
    }

    Properties

    metadata +MintCollectionNFTResponse | solana-agent-kit

    Interface MintCollectionNFTResponse

    interface MintCollectionNFTResponse {
        metadata: PublicKey;
        mint: PublicKey;
    }

    Properties

    Properties

    metadata: PublicKey
    mint: PublicKey
    +

    Properties

    metadata: PublicKey
    mint: PublicKey
    diff --git a/docs/interfaces/PumpFunTokenOptions.html b/docs/interfaces/PumpFunTokenOptions.html index 2abe435..acb07b4 100644 --- a/docs/interfaces/PumpFunTokenOptions.html +++ b/docs/interfaces/PumpFunTokenOptions.html @@ -1,7 +1,7 @@ -PumpFunTokenOptions | solana-agent-kit

    Interface PumpFunTokenOptions

    interface PumpFunTokenOptions {
        initialLiquiditySOL?: number;
        priorityFee?: number;
        slippageBps?: number;
        telegram?: string;
        twitter?: string;
        website?: string;
    }

    Properties

    initialLiquiditySOL? +PumpFunTokenOptions | solana-agent-kit

    Interface PumpFunTokenOptions

    interface PumpFunTokenOptions {
        initialLiquiditySOL?: number;
        priorityFee?: number;
        slippageBps?: number;
        telegram?: string;
        twitter?: string;
        website?: string;
    }

    Properties

    initialLiquiditySOL?: number
    priorityFee?: number
    slippageBps?: number
    telegram?: string
    twitter?: string
    website?: string
    +

    Properties

    initialLiquiditySOL?: number
    priorityFee?: number
    slippageBps?: number
    telegram?: string
    twitter?: string
    website?: string
    diff --git a/docs/interfaces/PumpfunLaunchResponse.html b/docs/interfaces/PumpfunLaunchResponse.html index 67dc930..fad18b9 100644 --- a/docs/interfaces/PumpfunLaunchResponse.html +++ b/docs/interfaces/PumpfunLaunchResponse.html @@ -1,5 +1,5 @@ -PumpfunLaunchResponse | solana-agent-kit

    Interface PumpfunLaunchResponse

    interface PumpfunLaunchResponse {
        error?: string;
        metadataUri?: string;
        mint: string;
        signature: string;
    }

    Properties

    error? +PumpfunLaunchResponse | solana-agent-kit

    Interface PumpfunLaunchResponse

    interface PumpfunLaunchResponse {
        error?: string;
        metadataUri?: string;
        mint: string;
        signature: string;
    }

    Properties

    error?: string
    metadataUri?: string
    mint: string
    signature: string
    +

    Properties

    error?: string
    metadataUri?: string
    mint: string
    signature: string
    diff --git a/docs/interfaces/PythFetchPriceResponse.html b/docs/interfaces/PythFetchPriceResponse.html index ff637f4..0ea9b6a 100644 --- a/docs/interfaces/PythFetchPriceResponse.html +++ b/docs/interfaces/PythFetchPriceResponse.html @@ -1,6 +1,6 @@ -PythFetchPriceResponse | solana-agent-kit

    Interface PythFetchPriceResponse

    interface PythFetchPriceResponse {
        code?: string;
        message?: string;
        price?: string;
        priceFeedID: string;
        status: "success" | "error";
    }

    Properties

    code? +PythFetchPriceResponse | solana-agent-kit

    Interface PythFetchPriceResponse

    interface PythFetchPriceResponse {
        code?: string;
        message?: string;
        price?: string;
        priceFeedID: string;
        status: "success" | "error";
    }

    Properties

    code?: string
    message?: string
    price?: string
    priceFeedID: string
    status: "success" | "error"
    +

    Properties

    code?: string
    message?: string
    price?: string
    priceFeedID: string
    status: "success" | "error"
    diff --git a/docs/interfaces/TokenCheck.html b/docs/interfaces/TokenCheck.html index ede4846..36f40af 100644 --- a/docs/interfaces/TokenCheck.html +++ b/docs/interfaces/TokenCheck.html @@ -1,5 +1,5 @@ -TokenCheck | solana-agent-kit

    Interface TokenCheck

    interface TokenCheck {
        risks: {
            description: string;
            level: string;
            name: string;
            score: number;
        }[];
        score: number;
        tokenProgram: string;
        tokenType: string;
    }

    Properties

    risks +TokenCheck | solana-agent-kit

    Interface TokenCheck

    interface TokenCheck {
        risks: {
            description: string;
            level: string;
            name: string;
            score: number;
        }[];
        score: number;
        tokenProgram: string;
        tokenType: string;
    }

    Properties

    risks: { description: string; level: string; name: string; score: number }[]
    score: number
    tokenProgram: string
    tokenType: string
    +

    Properties

    risks: { description: string; level: string; name: string; score: number }[]
    score: number
    tokenProgram: string
    tokenType: string
    diff --git a/docs/types/Handler.html b/docs/types/Handler.html index 687ab38..8c41fa6 100644 --- a/docs/types/Handler.html +++ b/docs/types/Handler.html @@ -1,2 +1,2 @@ Handler | solana-agent-kit

    Type Alias Handler

    Handler: (
        agent: SolanaAgentKit,
        input: Record<string, any>,
    ) => Promise<Record<string, any>>

    Handler function type for executing the action

    -

    Type declaration

      • (
            agent: SolanaAgentKit,
            input: Record<string, any>,
        ): Promise<Record<string, any>>
      • Parameters

        Returns Promise<Record<string, any>>

    +

    Type declaration

      • (
            agent: SolanaAgentKit,
            input: Record<string, any>,
        ): Promise<Record<string, any>>
      • Parameters

        Returns Promise<Record<string, any>>

    diff --git a/docs/variables/actions.html b/docs/variables/actions.html index 81c4e42..7c4f00d 100644 --- a/docs/variables/actions.html +++ b/docs/variables/actions.html @@ -1 +1 @@ -ACTIONS | solana-agent-kit

    Variable ACTIONSConst

    ACTIONS: {
        BALANCE_ACTION: Action;
        CREATE_GIBWORK_TASK_ACTION: Action;
        CREATE_IMAGE_ACTION: Action;
        CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: Action;
        DEPLOY_COLLECTION_ACTION: Action;
        DEPLOY_TOKEN_ACTION: Action;
        FETCH_PRICE_ACTION: Action;
        GET_ALL_DOMAINS_TLDS_ACTION: Action;
        GET_ALL_REGISTERED_ALL_DOMAINS_ACTION: Action;
        GET_MAIN_ALL_DOMAINS_DOMAIN_ACTION: Action;
        GET_OWNED_ALL_DOMAINS_ACTION: Action;
        GET_OWNED_DOMAINS_FOR_TLD_ACTION: Action;
        GET_PRIMARY_DOMAIN_ACTION: Action;
        GET_TOKEN_DATA_ACTION: Action;
        GET_TPS_ACTION: Action;
        LAUNCH_PUMPFUN_TOKEN_ACTION: Action;
        LEND_ASSET_ACTION: Action;
        MINT_NFT_ACTION: Action;
        PYTH_FETCH_PRICE_ACTION: Action;
        RAYDIUM_CREATE_AMM_V4_ACTION: Action;
        RAYDIUM_CREATE_CPMM_ACTION: Action;
        REGISTER_DOMAIN_ACTION: Action;
        REQUEST_FUNDS_ACTION: Action;
        RESOLVE_DOMAIN_ACTION: Action;
        RESOLVE_SOL_DOMAIN_ACTION: Action;
        STAKE_WITH_JUP_ACTION: Action;
        STAKE_WITH_SOLAYER_ACTION: Action;
        TRADE_ACTION: Action;
        TRANSFER_ACTION: Action;
        WALLET_ADDRESS_ACTION: Action;
    } = ...

    Type declaration

    • BALANCE_ACTION: Action
    • CREATE_GIBWORK_TASK_ACTION: Action
    • CREATE_IMAGE_ACTION: Action
    • CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: Action
    • DEPLOY_COLLECTION_ACTION: Action
    • DEPLOY_TOKEN_ACTION: Action
    • FETCH_PRICE_ACTION: Action
    • GET_ALL_DOMAINS_TLDS_ACTION: Action
    • GET_ALL_REGISTERED_ALL_DOMAINS_ACTION: Action
    • GET_MAIN_ALL_DOMAINS_DOMAIN_ACTION: Action
    • GET_OWNED_ALL_DOMAINS_ACTION: Action
    • GET_OWNED_DOMAINS_FOR_TLD_ACTION: Action
    • GET_PRIMARY_DOMAIN_ACTION: Action
    • GET_TOKEN_DATA_ACTION: Action
    • GET_TPS_ACTION: Action
    • LAUNCH_PUMPFUN_TOKEN_ACTION: Action
    • LEND_ASSET_ACTION: Action
    • MINT_NFT_ACTION: Action
    • PYTH_FETCH_PRICE_ACTION: Action
    • RAYDIUM_CREATE_AMM_V4_ACTION: Action
    • RAYDIUM_CREATE_CPMM_ACTION: Action
    • REGISTER_DOMAIN_ACTION: Action
    • REQUEST_FUNDS_ACTION: Action
    • RESOLVE_DOMAIN_ACTION: Action
    • RESOLVE_SOL_DOMAIN_ACTION: Action
    • STAKE_WITH_JUP_ACTION: Action
    • STAKE_WITH_SOLAYER_ACTION: Action
    • TRADE_ACTION: Action
    • TRANSFER_ACTION: Action
    • WALLET_ADDRESS_ACTION: Action
    +ACTIONS | solana-agent-kit

    Variable ACTIONSConst

    ACTIONS: {
        BALANCE_ACTION: Action;
        CREATE_GIBWORK_TASK_ACTION: Action;
        CREATE_IMAGE_ACTION: Action;
        CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: Action;
        DEPLOY_COLLECTION_ACTION: Action;
        DEPLOY_TOKEN_ACTION: Action;
        FETCH_PRICE_ACTION: Action;
        GET_ALL_DOMAINS_TLDS_ACTION: Action;
        GET_ALL_REGISTERED_ALL_DOMAINS_ACTION: Action;
        GET_MAIN_ALL_DOMAINS_DOMAIN_ACTION: Action;
        GET_OWNED_ALL_DOMAINS_ACTION: Action;
        GET_OWNED_DOMAINS_FOR_TLD_ACTION: Action;
        GET_PRIMARY_DOMAIN_ACTION: Action;
        GET_TOKEN_DATA_ACTION: Action;
        GET_TPS_ACTION: Action;
        LAUNCH_PUMPFUN_TOKEN_ACTION: Action;
        LEND_ASSET_ACTION: Action;
        MINT_NFT_ACTION: Action;
        PYTH_FETCH_PRICE_ACTION: Action;
        RAYDIUM_CREATE_AMM_V4_ACTION: Action;
        RAYDIUM_CREATE_CPMM_ACTION: Action;
        REGISTER_DOMAIN_ACTION: Action;
        REQUEST_FUNDS_ACTION: Action;
        RESOLVE_DOMAIN_ACTION: Action;
        RESOLVE_SOL_DOMAIN_ACTION: Action;
        STAKE_WITH_JUP_ACTION: Action;
        STAKE_WITH_SOLAYER_ACTION: Action;
        TRADE_ACTION: Action;
        TRANSFER_ACTION: Action;
        WALLET_ADDRESS_ACTION: Action;
    } = ...

    Type declaration

    • BALANCE_ACTION: Action
    • CREATE_GIBWORK_TASK_ACTION: Action
    • CREATE_IMAGE_ACTION: Action
    • CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: Action
    • DEPLOY_COLLECTION_ACTION: Action
    • DEPLOY_TOKEN_ACTION: Action
    • FETCH_PRICE_ACTION: Action
    • GET_ALL_DOMAINS_TLDS_ACTION: Action
    • GET_ALL_REGISTERED_ALL_DOMAINS_ACTION: Action
    • GET_MAIN_ALL_DOMAINS_DOMAIN_ACTION: Action
    • GET_OWNED_ALL_DOMAINS_ACTION: Action
    • GET_OWNED_DOMAINS_FOR_TLD_ACTION: Action
    • GET_PRIMARY_DOMAIN_ACTION: Action
    • GET_TOKEN_DATA_ACTION: Action
    • GET_TPS_ACTION: Action
    • LAUNCH_PUMPFUN_TOKEN_ACTION: Action
    • LEND_ASSET_ACTION: Action
    • MINT_NFT_ACTION: Action
    • PYTH_FETCH_PRICE_ACTION: Action
    • RAYDIUM_CREATE_AMM_V4_ACTION: Action
    • RAYDIUM_CREATE_CPMM_ACTION: Action
    • REGISTER_DOMAIN_ACTION: Action
    • REQUEST_FUNDS_ACTION: Action
    • RESOLVE_DOMAIN_ACTION: Action
    • RESOLVE_SOL_DOMAIN_ACTION: Action
    • STAKE_WITH_JUP_ACTION: Action
    • STAKE_WITH_SOLAYER_ACTION: Action
    • TRADE_ACTION: Action
    • TRANSFER_ACTION: Action
    • WALLET_ADDRESS_ACTION: Action
    diff --git a/src/tools/flash_open_trade.ts b/src/tools/flash_open_trade.ts index b0a968f..4c46e6b 100644 --- a/src/tools/flash_open_trade.ts +++ b/src/tools/flash_open_trade.ts @@ -1,4 +1,4 @@ -import { PublicKey, ComputeBudgetProgram } from "@solana/web3.js"; +import { ComputeBudgetProgram } from "@solana/web3.js"; import { PerpetualsClient, OraclePrice, From 0b654b064eba39a3bb793a552aaabb16d1ddf1f8 Mon Sep 17 00:00:00 2001 From: UjjwalGupta49 Date: Sun, 5 Jan 2025 00:31:25 +0530 Subject: [PATCH 3/8] Revert "update manifest sdk" This reverts commit aa4dfdf9c3de1ab97d1c7790f49e5906379e6209. revert docs --- .env.example | 5 +++++ docs/assets/hierarchy.js | 2 +- docs/assets/navigation.js | 2 +- docs/assets/search.js | 2 +- docs/classes/SolanaAgentKit.html | 20 ++++++------------- docs/functions/createSolanaTools.html | 2 +- docs/functions/createVercelAITools.html | 2 +- docs/functions/executeAction.html | 2 +- docs/functions/findAction.html | 2 +- docs/functions/getActionExamples.html | 2 +- docs/interfaces/Action.html | 14 ++++++------- docs/interfaces/ActionExample.html | 4 ++-- docs/interfaces/CollectionDeployment.html | 4 ++-- docs/interfaces/CollectionOptions.html | 4 ++-- docs/interfaces/Config.html | 4 ++-- docs/interfaces/Creator.html | 4 ++-- docs/interfaces/FetchPriceResponse.html | 4 ++-- docs/interfaces/GibworkCreateTaskReponse.html | 4 ++-- docs/interfaces/JupiterTokenData.html | 4 ++-- .../LuloAccountDetailsResponse.html | 4 ++-- .../interfaces/MintCollectionNFTResponse.html | 4 ++-- docs/interfaces/PumpFunTokenOptions.html | 4 ++-- docs/interfaces/PumpfunLaunchResponse.html | 4 ++-- docs/interfaces/PythFetchPriceResponse.html | 4 ++-- docs/interfaces/TokenCheck.html | 4 ++-- docs/types/Handler.html | 2 +- docs/variables/actions.html | 2 +- src/tools/flash_open_trade.ts | 2 +- 28 files changed, 57 insertions(+), 60 deletions(-) create mode 100644 .env.example diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..e8004fd --- /dev/null +++ b/.env.example @@ -0,0 +1,5 @@ +OPENAI_API_KEY= +RPC_URL= +SOLANA_PRIVATE_KEY= +JUPITER_REFERRAL_ACCOUNT= +JUPITER_FEE_BPS= \ No newline at end of file diff --git a/docs/assets/hierarchy.js b/docs/assets/hierarchy.js index 88636f0..fb85f0a 100644 --- a/docs/assets/hierarchy.js +++ b/docs/assets/hierarchy.js @@ -1 +1 @@ -window.hierarchyData = "eJyrVirKzy8pVrKKjtVRKkpNy0lNLsnMzwMKVNfWAgCbHgqm" \ No newline at end of file +window.hierarchyData = "eJyrVirKzy8pVrKKjtVRKkpNy0lNLsnMzytWsqqurQUAmx4Kpg==" \ No newline at end of file diff --git a/docs/assets/navigation.js b/docs/assets/navigation.js index 2f0a0ee..492edcd 100644 --- a/docs/assets/navigation.js +++ b/docs/assets/navigation.js @@ -1 +1 @@ -window.navigationData = "eJyNlcFSwjAQht+lZ0YEBZUbA6IoAgMdL46HELY005B02q3COL67oWVsS9OFSw/Z7/82TZP048dB2KHTc5ZaMsX6G1D4KtBpOCFD34xzyeIY4ma5fuXjVhooEGrt9Frt+9/Gv6nPUWiVG4RCiDzGjSQrlcPtTrcSftyxbSiBcBwJSjXQUkIKDyGUer81U7cabeBl4ll4eMZnrEeKVipPbGo8hxIZjoChjuzprEbFR4Dcn0eCwwLi0EzUvu5VjJI+idW3joK0PbgsDhZQr66DqQYvSSiMwNUBqCFDZhWfQpRwkkjd51wnCoeATMiYXI56nGryZgz5xpiOXLJHLU21mCfb0EvUhCWK+6TeSp5TjxKVLie19S0cqd2jf+EmtKOUPJ3EwAceWIV5mZI8M7WWUDhhuA9N+Dh8krx+uGt12sU7beCOZ9Nlnv5ikWArebjMslLZcFMM8/RQZLevq7UsrLj5dunGiJsVqCzs3laE7xBxkP3xGWUJI6SwA54gnF79ua4EECLPDNVb8iqh2ACW/hHW16tAFeHnH4Zcd8U=" \ No newline at end of file +window.navigationData = "eJyNlU1PwkAQhv/LnokIfnMjIH6hEmy8GA/rMqWbLrNNd1Yhxv9uKMRSuh289NB53mfayXT79i0IliR64sUaibI/B6QHTaIlMkmJ6AllpHPg2tX6UUILI1oi1TgTvU738qf1Z+or0hZLg0aCPJYKXHtTqoa7Z+e18PVSLjIDjGNLcKqBNQYKeAiZsasFIAWNIfB/4udsfXUHrFuKV2Ks5w2edYkN5yDJ5uH0psbFR0AqmeRawRRcZtGF517HOOmN/viyeVq0h0i6dArN6iaYa3DvM02QRzYFHEqSQfE+xAnH3ti+UtYjDYGkNo4dRzPONXnUSOViPI0itkcjzbWY+EUWexxLjyph9UHykHrksRgnt/oBjtWuKPnnEoZRTl48xCABlQaFZZmT3EqcGdj5wmiVgWtvb+8lj68uOmfd3TNtEN09P72U6U+Za/lh1ofZplQ1nOyGVfFRbE7fyFqzM/HYY7EYrl2DqsLz05rwFXIFpn93QFnBGCksQXmC/aO/1FUARhRrnDVbyiqjmANV/hHB16tBNeH7L4Zcd8U=" \ No newline at end of file diff --git a/docs/assets/search.js b/docs/assets/search.js index 39c4130..611142f 100644 --- a/docs/assets/search.js +++ b/docs/assets/search.js @@ -1 +1 @@ -window.searchData = "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"; \ No newline at end of file +window.searchData = "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"; \ No newline at end of file diff --git a/docs/classes/SolanaAgentKit.html b/docs/classes/SolanaAgentKit.html index d398ecd..035f908 100644 --- a/docs/classes/SolanaAgentKit.html +++ b/docs/classes/SolanaAgentKit.html @@ -1,7 +1,7 @@ SolanaAgentKit | solana-agent-kit

    Class SolanaAgentKit

    Main class for interacting with Solana blockchain Provides a unified interface for token operations, NFT management, trading and more

    SolanaAgentKit

    -

    Constructors

    Constructors

    Properties

    config connection wallet @@ -17,8 +17,6 @@ Provides a unified interface for token operations, NFT management, trading and m fetchTokenDetailedReport fetchTokenPrice fetchTokenReportSummary -flashCloseTrade -flashOpenTrade getAllDomainsTLDs getAllRegisteredAllDomains getBalance @@ -66,14 +64,8 @@ Please use the new constructor with Config object instead:

    const agent = new SolanaAgentKit(privateKey, rpcUrl, {
    OPENAI_API_KEY: 'your-key'
    });
    -
  • Parameters

    • private_key: string
    • rpc_url: string
    • config: Config

    Returns SolanaAgentKit

  • Properties

    config: Config

    Configuration object

    -
    connection: Connection

    Solana RPC connection

    -
    wallet: Keypair

    Wallet keypair for signing transactions

    -
    wallet_address: PublicKey

    Public key of the wallet

    -

    Methods

    • Parameters

      • marketId: PublicKey
      • orders: OrderParams[]

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey

      Returns Promise<string>

    • Parameters

      • args: Omit<{ agent: SolanaAgentKit; price: number; tradeMint: PublicKey }, "agent">

      Returns Promise<string>

    • Parameters

      • args: Omit<{ agent: SolanaAgentKit; price: number; tradeMint: PublicKey }, "agent">

      Returns Promise<string>

    • Parameters

      • title: string
      • content: string
      • requirements: string
      • tags: string[]
      • tokenMintAddress: string
      • tokenAmount: number
      • Optionalpayer: string

      Returns Promise<GibworkCreateTaskReponse>

    • Parameters

      • amount: number
      • OptionalsplmintAddress: PublicKey

      Returns Promise<{ signature: string; url: string }>

    • Parameters

      • name: string
      • uri: string
      • symbol: string
      • decimals: number = DEFAULT_OPTIONS.TOKEN_DECIMALS
      • OptionalinitialSupply: number

      Returns Promise<{ mint: PublicKey }>

    • Parameters

      • mint: string

      Returns Promise<string>

    • Closes an existing trading position on Flash.Trade

      -

      Parameters

      • params: FlashCloseTradeParams

        Flash trade close parameters

        -

      Returns Promise<string>

      Transaction signature

      -
    • Opens a new trading position on Flash.Trade

      -

      Parameters

      • params: FlashTradeParams

        Flash trade parameters including market, side, collateral, leverage, and pool name

        -

      Returns Promise<string>

      Transaction signature

      -
    • Returns Promise<string[]>

    • Returns Promise<string[]>

    • Parameters

      • Optionaltoken_address: PublicKey

      Returns Promise<number>

    • Parameters

      • walletAddress: PublicKey
      • OptionaltokenAddress: PublicKey

      Returns Promise<number>

    • Parameters

      • owner: PublicKey

      Returns Promise<null | string>

    • Parameters

      • owner: PublicKey

      Returns Promise<string[]>

    • Parameters

      • tld: string

      Returns Promise<string[]>

    • Parameters

      • account: PublicKey

      Returns Promise<string>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey
      • quantity: number
      • side: string
      • price: number

      Returns Promise<string>

    • Parameters

      • baseMint: PublicKey
      • quoteMint: PublicKey

      Returns Promise<string[]>

    • Parameters

      • collectionMint: PublicKey
      • metadata: {
            creators?: { address: string; share: number }[];
            name: string;
            sellerFeeBasisPoints?: number;
            uri: string;
        }
      • Optionalrecipient: PublicKey

      Returns Promise<MintCollectionNFTResponse>

    • Parameters

      • baseMint: PublicKey
      • quoteMint: PublicKey
      • lotSize: number = 1
      • tickSize: number = 0.01

      Returns Promise<string[]>

    • Parameters

      • args: Omit<
            {
                agent: SolanaAgentKit;
                collateralAmount: number;
                collateralMint?: PublicKey;
                leverage?: number;
                price: number;
                slippage?: number;
                tradeMint?: PublicKey;
            },
            "agent",
        >

      Returns Promise<string>

    • Parameters

      • args: Omit<
            {
                agent: SolanaAgentKit;
                collateralAmount: number;
                collateralMint?: PublicKey;
                leverage?: number;
                price: number;
                slippage?: number;
                tradeMint?: PublicKey;
            },
            "agent",
        >

      Returns Promise<string>

    • Parameters

      • positionMintAddress: PublicKey

      Returns Promise<string>

    • Parameters

      • mintDeploy: PublicKey
      • mintPair: PublicKey
      • initialPrice: Decimal
      • feeTier: 1 | 2 | 4 | 5 | 16 | 30 | 65 | 100 | 200

      Returns Promise<string>

    • Parameters

      • depositTokenAmount: number
      • depositTokenMint: PublicKey
      • otherTokenMint: PublicKey
      • initialPrice: Decimal
      • maxPrice: Decimal
      • feeTier: 1 | 2 | 4 | 5 | 16 | 30 | 65 | 100 | 200

      Returns Promise<string>

    • Parameters

      • whirlpoolAddress: PublicKey
      • priceOffsetBps: number
      • inputTokenMint: PublicKey
      • inputAmount: Decimal

      Returns Promise<string>

    • Parameters

      • whirlpoolAddress: PublicKey
      • distanceFromCurrentPriceBps: number
      • widthBps: number
      • inputTokenMint: PublicKey
      • inputAmount: Decimal

      Returns Promise<string>

    • Parameters

      • priceFeedID: string

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey
      • baseAmount: BN
      • quoteAmount: BN
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • mint1: PublicKey
      • mint2: PublicKey
      • configId: PublicKey
      • initialPrice: Decimal
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • mint1: PublicKey
      • mint2: PublicKey
      • configId: PublicKey
      • mintAAmount: BN
      • mintBAmount: BN
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • name: string
      • OptionalspaceKB: number

      Returns Promise<string>

    • Parameters

      • domain: string

      Returns Promise<undefined | PublicKey>

    • Parameters

      • domain: string

      Returns Promise<PublicKey>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • amount: number
      • choice: "rock" | "paper" | "scissors"

      Returns Promise<string>

    • Parameters

      • mintAddress: string
      • amount: number
      • decimals: number
      • recipients: string[]
      • priorityFeeInLamports: number
      • shouldLog: boolean

      Returns Promise<string[]>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • nftMint: PublicKey

      Returns Promise<string>

    • Parameters

      • nftMint: PublicKey
      • price: number

      Returns Promise<string>

    • Parameters

      • outputMint: PublicKey
      • inputAmount: number
      • OptionalinputMint: PublicKey
      • slippageBps: number = DEFAULT_OPTIONS.SLIPPAGE_BPS

      Returns Promise<string>

    • Parameters

      • to: PublicKey
      • amount: number
      • Optionalmint: PublicKey

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey

      Returns Promise<string>

    +
  • Parameters

    • private_key: string
    • rpc_url: string
    • config: Config

    Returns SolanaAgentKit

  • Properties

    config: Config

    Configuration object

    +
    connection: Connection

    Solana RPC connection

    +
    wallet: Keypair

    Wallet keypair for signing transactions

    +
    wallet_address: PublicKey

    Public key of the wallet

    +

    Methods

    • Parameters

      • marketId: PublicKey
      • orders: OrderParams[]

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey

      Returns Promise<string>

    • Parameters

      • args: Omit<{ agent: SolanaAgentKit; price: number; tradeMint: PublicKey }, "agent">

      Returns Promise<string>

    • Parameters

      • args: Omit<{ agent: SolanaAgentKit; price: number; tradeMint: PublicKey }, "agent">

      Returns Promise<string>

    • Parameters

      • title: string
      • content: string
      • requirements: string
      • tags: string[]
      • tokenMintAddress: string
      • tokenAmount: number
      • Optionalpayer: string

      Returns Promise<GibworkCreateTaskReponse>

    • Parameters

      • amount: number
      • OptionalsplmintAddress: PublicKey

      Returns Promise<{ signature: string; url: string }>

    • Parameters

      • name: string
      • uri: string
      • symbol: string
      • decimals: number = DEFAULT_OPTIONS.TOKEN_DECIMALS
      • OptionalinitialSupply: number

      Returns Promise<{ mint: PublicKey }>

    • Parameters

      • mint: string

      Returns Promise<string>

    • Returns Promise<string[]>

    • Returns Promise<string[]>

    • Parameters

      • Optionaltoken_address: PublicKey

      Returns Promise<number>

    • Parameters

      • walletAddress: PublicKey
      • OptionaltokenAddress: PublicKey

      Returns Promise<number>

    • Parameters

      • owner: PublicKey

      Returns Promise<null | string>

    • Parameters

      • owner: PublicKey

      Returns Promise<string[]>

    • Parameters

      • tld: string

      Returns Promise<string[]>

    • Parameters

      • account: PublicKey

      Returns Promise<string>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey
      • quantity: number
      • side: string
      • price: number

      Returns Promise<string>

    • Parameters

      • baseMint: PublicKey
      • quoteMint: PublicKey

      Returns Promise<string[]>

    • Parameters

      • collectionMint: PublicKey
      • metadata: {
            creators?: { address: string; share: number }[];
            name: string;
            sellerFeeBasisPoints?: number;
            uri: string;
        }
      • Optionalrecipient: PublicKey

      Returns Promise<MintCollectionNFTResponse>

    • Parameters

      • baseMint: PublicKey
      • quoteMint: PublicKey
      • lotSize: number = 1
      • tickSize: number = 0.01

      Returns Promise<string[]>

    • Parameters

      • args: Omit<
            {
                agent: SolanaAgentKit;
                collateralAmount: number;
                collateralMint?: PublicKey;
                leverage?: number;
                price: number;
                slippage?: number;
                tradeMint?: PublicKey;
            },
            "agent",
        >

      Returns Promise<string>

    • Parameters

      • args: Omit<
            {
                agent: SolanaAgentKit;
                collateralAmount: number;
                collateralMint?: PublicKey;
                leverage?: number;
                price: number;
                slippage?: number;
                tradeMint?: PublicKey;
            },
            "agent",
        >

      Returns Promise<string>

    • Parameters

      • positionMintAddress: PublicKey

      Returns Promise<string>

    • Parameters

      • mintDeploy: PublicKey
      • mintPair: PublicKey
      • initialPrice: Decimal
      • feeTier: 1 | 2 | 4 | 5 | 16 | 30 | 65 | 100 | 200

      Returns Promise<string>

    • Parameters

      • depositTokenAmount: number
      • depositTokenMint: PublicKey
      • otherTokenMint: PublicKey
      • initialPrice: Decimal
      • maxPrice: Decimal
      • feeTier: 1 | 2 | 4 | 5 | 16 | 30 | 65 | 100 | 200

      Returns Promise<string>

    • Parameters

      • whirlpoolAddress: PublicKey
      • priceOffsetBps: number
      • inputTokenMint: PublicKey
      • inputAmount: Decimal

      Returns Promise<string>

    • Parameters

      • whirlpoolAddress: PublicKey
      • distanceFromCurrentPriceBps: number
      • widthBps: number
      • inputTokenMint: PublicKey
      • inputAmount: Decimal

      Returns Promise<string>

    • Parameters

      • priceFeedID: string

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey
      • baseAmount: BN
      • quoteAmount: BN
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • mint1: PublicKey
      • mint2: PublicKey
      • configId: PublicKey
      • initialPrice: Decimal
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • mint1: PublicKey
      • mint2: PublicKey
      • configId: PublicKey
      • mintAAmount: BN
      • mintBAmount: BN
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • name: string
      • OptionalspaceKB: number

      Returns Promise<string>

    • Parameters

      • domain: string

      Returns Promise<undefined | PublicKey>

    • Parameters

      • domain: string

      Returns Promise<PublicKey>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • amount: number
      • choice: "rock" | "paper" | "scissors"

      Returns Promise<string>

    • Parameters

      • mintAddress: string
      • amount: number
      • decimals: number
      • recipients: string[]
      • priorityFeeInLamports: number
      • shouldLog: boolean

      Returns Promise<string[]>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • nftMint: PublicKey

      Returns Promise<string>

    • Parameters

      • nftMint: PublicKey
      • price: number

      Returns Promise<string>

    • Parameters

      • outputMint: PublicKey
      • inputAmount: number
      • OptionalinputMint: PublicKey
      • slippageBps: number = DEFAULT_OPTIONS.SLIPPAGE_BPS

      Returns Promise<string>

    • Parameters

      • to: PublicKey
      • amount: number
      • Optionalmint: PublicKey

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey

      Returns Promise<string>

    diff --git a/docs/functions/createSolanaTools.html b/docs/functions/createSolanaTools.html index 69741ad..ccdcc08 100644 --- a/docs/functions/createSolanaTools.html +++ b/docs/functions/createSolanaTools.html @@ -1 +1 @@ -createSolanaTools | solana-agent-kit

    Function createSolanaTools

    • Parameters

      Returns (
          | SolanaBalanceTool
          | SolanaBalanceOtherTool
          | SolanaTransferTool
          | SolanaDeployTokenTool
          | SolanaDeployCollectionTool
          | SolanaMintNFTTool
          | SolanaPerpCloseTradeTool
          | SolanaPerpOpenTradeTool
          | SolanaTradeTool
          | SolanaLimitOrderTool
          | SolanaBatchOrderTool
          | SolanaCancelAllOrdersTool
          | SolanaWithdrawAllTool
          | SolanaRequestFundsTool
          | SolanaRegisterDomainTool
          | SolanaResolveDomainTool
          | SolanaGetDomainTool
          | SolanaGetWalletAddressTool
          | SolanaFlashOpenTrade
          | SolanaFlashCloseTrade
          | SolanaPumpfunTokenLaunchTool
          | SolanaCreateImageTool
          | SolanaLendAssetTool
          | SolanaTPSCalculatorTool
          | SolanaStakeTool
          | SolanaRestakeTool
          | SolanaFetchPriceTool
          | SolanaTokenDataTool
          | SolanaTokenDataByTickerTool
          | SolanaCompressedAirdropTool
          | SolanaClosePosition
          | SolanaOrcaCreateCLMM
          | SolanaOrcaCreateSingleSideLiquidityPool
          | SolanaOrcaFetchPositions
          | SolanaOrcaOpenCenteredPosition
          | SolanaOrcaOpenSingleSidedPosition
          | SolanaRaydiumCreateAmmV4
          | SolanaRaydiumCreateClmm
          | SolanaRaydiumCreateCpmm
          | SolanaOpenbookCreateMarket
          | SolanaManifestCreateMarket
          | SolanaPythFetchPrice
          | SolanaResolveAllDomainsTool
          | SolanaGetOwnedDomains
          | SolanaGetOwnedTldDomains
          | SolanaGetAllTlds
          | SolanaGetMainDomain
          | SolanaCreateGibworkTask
          | SolanaRockPaperScissorsTool
          | SolanaTipLinkTool
          | SolanaListNFTForSaleTool
          | SolanaCancelNFTListingTool
          | SolanaFetchTokenReportSummaryTool
          | SolanaFetchTokenDetailedReportTool
      )[]

    +createSolanaTools | solana-agent-kit

    Function createSolanaTools

    • Parameters

      Returns (
          | SolanaBalanceTool
          | SolanaBalanceOtherTool
          | SolanaTransferTool
          | SolanaDeployTokenTool
          | SolanaDeployCollectionTool
          | SolanaMintNFTTool
          | SolanaPerpCloseTradeTool
          | SolanaPerpOpenTradeTool
          | SolanaTradeTool
          | SolanaLimitOrderTool
          | SolanaBatchOrderTool
          | SolanaCancelAllOrdersTool
          | SolanaWithdrawAllTool
          | SolanaRequestFundsTool
          | SolanaRegisterDomainTool
          | SolanaResolveDomainTool
          | SolanaGetDomainTool
          | SolanaGetWalletAddressTool
          | SolanaPumpfunTokenLaunchTool
          | SolanaCreateImageTool
          | SolanaLendAssetTool
          | SolanaTPSCalculatorTool
          | SolanaStakeTool
          | SolanaRestakeTool
          | SolanaFetchPriceTool
          | SolanaTokenDataTool
          | SolanaTokenDataByTickerTool
          | SolanaCompressedAirdropTool
          | SolanaClosePosition
          | SolanaOrcaCreateCLMM
          | SolanaOrcaCreateSingleSideLiquidityPool
          | SolanaOrcaFetchPositions
          | SolanaOrcaOpenCenteredPosition
          | SolanaOrcaOpenSingleSidedPosition
          | SolanaRaydiumCreateAmmV4
          | SolanaRaydiumCreateClmm
          | SolanaRaydiumCreateCpmm
          | SolanaOpenbookCreateMarket
          | SolanaManifestCreateMarket
          | SolanaPythFetchPrice
          | SolanaResolveAllDomainsTool
          | SolanaGetOwnedDomains
          | SolanaGetOwnedTldDomains
          | SolanaGetAllTlds
          | SolanaGetMainDomain
          | SolanaCreateGibworkTask
          | SolanaRockPaperScissorsTool
          | SolanaTipLinkTool
          | SolanaListNFTForSaleTool
          | SolanaCancelNFTListingTool
          | SolanaFetchTokenReportSummaryTool
          | SolanaFetchTokenDetailedReportTool
      )[]

    diff --git a/docs/functions/createVercelAITools.html b/docs/functions/createVercelAITools.html index b14d924..12775cb 100644 --- a/docs/functions/createVercelAITools.html +++ b/docs/functions/createVercelAITools.html @@ -1 +1 @@ -createVercelAITools | solana-agent-kit

    Function createVercelAITools

    +createVercelAITools | solana-agent-kit

    Function createVercelAITools

    diff --git a/docs/functions/executeAction.html b/docs/functions/executeAction.html index 3cd61c6..ce82002 100644 --- a/docs/functions/executeAction.html +++ b/docs/functions/executeAction.html @@ -1,2 +1,2 @@ executeAction | solana-agent-kit

    Function executeAction

    • Execute an action with the given input

      -

      Parameters

      Returns Promise<Record<string, any>>

    +

    Parameters

    Returns Promise<Record<string, any>>

    diff --git a/docs/functions/findAction.html b/docs/functions/findAction.html index be090a6..3eba58f 100644 --- a/docs/functions/findAction.html +++ b/docs/functions/findAction.html @@ -1,2 +1,2 @@ findAction | solana-agent-kit

    Function findAction

    • Find an action by its name or one of its similes

      -

      Parameters

      • query: string

      Returns Action | undefined

    +

    Parameters

    • query: string

    Returns Action | undefined

    diff --git a/docs/functions/getActionExamples.html b/docs/functions/getActionExamples.html index c43549d..0b133b9 100644 --- a/docs/functions/getActionExamples.html +++ b/docs/functions/getActionExamples.html @@ -1,2 +1,2 @@ getActionExamples | solana-agent-kit

    Function getActionExamples

    • Get examples for an action

      -

      Parameters

      • action: Action

      Returns string

    +

    Parameters

    • action: Action

    Returns string

    diff --git a/docs/interfaces/Action.html b/docs/interfaces/Action.html index 1e9a535..00c6ccf 100644 --- a/docs/interfaces/Action.html +++ b/docs/interfaces/Action.html @@ -1,16 +1,16 @@ Action | solana-agent-kit

    Interface Action

    Main Action interface inspired by ELIZA This interface makes it easier to implement actions across different frameworks

    -
    interface Action {
        description: string;
        examples: ActionExample[][];
        handler: Handler;
        name: string;
        schema: ZodType;
        similes: string[];
    }

    Properties

    interface Action {
        description: string;
        examples: ActionExample[][];
        handler: Handler;
        name: string;
        schema: ZodType;
        similes: string[];
    }

    Properties

    description: string

    Detailed description of what the action does

    -
    examples: ActionExample[][]

    Array of example inputs and outputs for the action +

    examples: ActionExample[][]

    Array of example inputs and outputs for the action Each inner array represents a group of related examples

    -
    handler: Handler

    Function that executes the action

    -
    name: string

    Unique name of the action

    -
    schema: ZodType

    Zod schema for input validation

    -
    similes: string[]

    Alternative names/phrases that can trigger this action

    -
    +
    handler: Handler

    Function that executes the action

    +
    name: string

    Unique name of the action

    +
    schema: ZodType

    Zod schema for input validation

    +
    similes: string[]

    Alternative names/phrases that can trigger this action

    +
    diff --git a/docs/interfaces/ActionExample.html b/docs/interfaces/ActionExample.html index 25fb2e0..4af324b 100644 --- a/docs/interfaces/ActionExample.html +++ b/docs/interfaces/ActionExample.html @@ -1,5 +1,5 @@ ActionExample | solana-agent-kit

    Interface ActionExample

    Example of an action with input and output

    -
    interface ActionExample {
        explanation: string;
        input: Record<string, any>;
        output: Record<string, any>;
    }

    Properties

    interface ActionExample {
        explanation: string;
        input: Record<string, any>;
        output: Record<string, any>;
    }

    Properties

    explanation: string
    input: Record<string, any>
    output: Record<string, any>
    +

    Properties

    explanation: string
    input: Record<string, any>
    output: Record<string, any>
    diff --git a/docs/interfaces/CollectionDeployment.html b/docs/interfaces/CollectionDeployment.html index d89428c..60ae6f2 100644 --- a/docs/interfaces/CollectionDeployment.html +++ b/docs/interfaces/CollectionDeployment.html @@ -1,3 +1,3 @@ -CollectionDeployment | solana-agent-kit

    Interface CollectionDeployment

    interface CollectionDeployment {
        collectionAddress: PublicKey;
        signature: Uint8Array;
    }

    Properties

    collectionAddress +CollectionDeployment | solana-agent-kit

    Interface CollectionDeployment

    interface CollectionDeployment {
        collectionAddress: PublicKey;
        signature: Uint8Array;
    }

    Properties

    collectionAddress: PublicKey
    signature: Uint8Array
    +

    Properties

    collectionAddress: PublicKey
    signature: Uint8Array
    diff --git a/docs/interfaces/CollectionOptions.html b/docs/interfaces/CollectionOptions.html index 07b9e0d..6f5e64b 100644 --- a/docs/interfaces/CollectionOptions.html +++ b/docs/interfaces/CollectionOptions.html @@ -1,5 +1,5 @@ -CollectionOptions | solana-agent-kit

    Interface CollectionOptions

    interface CollectionOptions {
        creators?: Creator[];
        name: string;
        royaltyBasisPoints?: number;
        uri: string;
    }

    Properties

    creators? +CollectionOptions | solana-agent-kit

    Interface CollectionOptions

    interface CollectionOptions {
        creators?: Creator[];
        name: string;
        royaltyBasisPoints?: number;
        uri: string;
    }

    Properties

    creators?: Creator[]
    name: string
    royaltyBasisPoints?: number
    uri: string
    +

    Properties

    creators?: Creator[]
    name: string
    royaltyBasisPoints?: number
    uri: string
    diff --git a/docs/interfaces/Config.html b/docs/interfaces/Config.html index 7ee328a..94e8716 100644 --- a/docs/interfaces/Config.html +++ b/docs/interfaces/Config.html @@ -1,4 +1,4 @@ -Config | solana-agent-kit

    Interface Config

    interface Config {
        JUPITER_FEE_BPS?: number;
        JUPITER_REFERRAL_ACCOUNT?: string;
        OPENAI_API_KEY?: string;
    }

    Properties

    JUPITER_FEE_BPS? +Config | solana-agent-kit

    Interface Config

    interface Config {
        JUPITER_FEE_BPS?: number;
        JUPITER_REFERRAL_ACCOUNT?: string;
        OPENAI_API_KEY?: string;
    }

    Properties

    JUPITER_FEE_BPS?: number
    JUPITER_REFERRAL_ACCOUNT?: string
    OPENAI_API_KEY?: string
    +

    Properties

    JUPITER_FEE_BPS?: number
    JUPITER_REFERRAL_ACCOUNT?: string
    OPENAI_API_KEY?: string
    diff --git a/docs/interfaces/Creator.html b/docs/interfaces/Creator.html index 2e2a18a..8ff6cce 100644 --- a/docs/interfaces/Creator.html +++ b/docs/interfaces/Creator.html @@ -1,3 +1,3 @@ -Creator | solana-agent-kit

    Interface Creator

    interface Creator {
        address: string;
        percentage: number;
    }

    Properties

    address +Creator | solana-agent-kit

    Interface Creator

    interface Creator {
        address: string;
        percentage: number;
    }

    Properties

    Properties

    address: string
    percentage: number
    +

    Properties

    address: string
    percentage: number
    diff --git a/docs/interfaces/FetchPriceResponse.html b/docs/interfaces/FetchPriceResponse.html index 18869fa..1ba2522 100644 --- a/docs/interfaces/FetchPriceResponse.html +++ b/docs/interfaces/FetchPriceResponse.html @@ -1,6 +1,6 @@ -FetchPriceResponse | solana-agent-kit

    Interface FetchPriceResponse

    interface FetchPriceResponse {
        code?: string;
        message?: string;
        priceInUSDC?: string;
        status: "success" | "error";
        tokenId?: string;
    }

    Properties

    code? +FetchPriceResponse | solana-agent-kit

    Interface FetchPriceResponse

    interface FetchPriceResponse {
        code?: string;
        message?: string;
        priceInUSDC?: string;
        status: "success" | "error";
        tokenId?: string;
    }

    Properties

    code?: string
    message?: string
    priceInUSDC?: string
    status: "success" | "error"
    tokenId?: string
    +

    Properties

    code?: string
    message?: string
    priceInUSDC?: string
    status: "success" | "error"
    tokenId?: string
    diff --git a/docs/interfaces/GibworkCreateTaskReponse.html b/docs/interfaces/GibworkCreateTaskReponse.html index fd5ba86..9443f14 100644 --- a/docs/interfaces/GibworkCreateTaskReponse.html +++ b/docs/interfaces/GibworkCreateTaskReponse.html @@ -1,4 +1,4 @@ -GibworkCreateTaskReponse | solana-agent-kit

    Interface GibworkCreateTaskReponse

    interface GibworkCreateTaskReponse {
        signature?: string;
        status: "success" | "error";
        taskId?: string;
    }

    Properties

    signature? +GibworkCreateTaskReponse | solana-agent-kit

    Interface GibworkCreateTaskReponse

    interface GibworkCreateTaskReponse {
        signature?: string;
        status: "success" | "error";
        taskId?: string;
    }

    Properties

    signature?: string
    status: "success" | "error"
    taskId?: string
    +

    Properties

    signature?: string
    status: "success" | "error"
    taskId?: string
    diff --git a/docs/interfaces/JupiterTokenData.html b/docs/interfaces/JupiterTokenData.html index 28f3512..f2c23b6 100644 --- a/docs/interfaces/JupiterTokenData.html +++ b/docs/interfaces/JupiterTokenData.html @@ -1,4 +1,4 @@ -JupiterTokenData | solana-agent-kit

    Interface JupiterTokenData

    interface JupiterTokenData {
        address: string;
        daily_volume: number;
        decimals: number;
        extensions: { coingeckoId?: string };
        freeze_authority: null | string;
        logoURI: string;
        mint_authority: null | string;
        name: string;
        permanent_delegate: null | string;
        symbol: string;
        tags: string[];
    }

    Properties

    address +JupiterTokenData | solana-agent-kit

    Interface JupiterTokenData

    interface JupiterTokenData {
        address: string;
        daily_volume: number;
        decimals: number;
        extensions: { coingeckoId?: string };
        freeze_authority: null | string;
        logoURI: string;
        mint_authority: null | string;
        name: string;
        permanent_delegate: null | string;
        symbol: string;
        tags: string[];
    }

    Properties

    address: string
    daily_volume: number
    decimals: number
    extensions: { coingeckoId?: string }
    freeze_authority: null | string
    logoURI: string
    mint_authority: null | string
    name: string
    permanent_delegate: null | string
    symbol: string
    tags: string[]
    +

    Properties

    address: string
    daily_volume: number
    decimals: number
    extensions: { coingeckoId?: string }
    freeze_authority: null | string
    logoURI: string
    mint_authority: null | string
    name: string
    permanent_delegate: null | string
    symbol: string
    tags: string[]
    diff --git a/docs/interfaces/LuloAccountDetailsResponse.html b/docs/interfaces/LuloAccountDetailsResponse.html index 23d1d77..20d1ec5 100644 --- a/docs/interfaces/LuloAccountDetailsResponse.html +++ b/docs/interfaces/LuloAccountDetailsResponse.html @@ -1,6 +1,6 @@ LuloAccountDetailsResponse | solana-agent-kit

    Interface LuloAccountDetailsResponse

    Lulo Account Details response format

    -
    interface LuloAccountDetailsResponse {
        interestEarned: number;
        realtimeApy: number;
        settings: {
            allowedProtocols: null | string;
            homebase: null | string;
            minimumRate: string;
            owner: string;
        };
        totalValue: number;
    }

    Properties

    interface LuloAccountDetailsResponse {
        interestEarned: number;
        realtimeApy: number;
        settings: {
            allowedProtocols: null | string;
            homebase: null | string;
            minimumRate: string;
            owner: string;
        };
        totalValue: number;
    }

    Properties

    interestEarned: number
    realtimeApy: number
    settings: {
        allowedProtocols: null | string;
        homebase: null | string;
        minimumRate: string;
        owner: string;
    }
    totalValue: number
    +

    Properties

    interestEarned: number
    realtimeApy: number
    settings: {
        allowedProtocols: null | string;
        homebase: null | string;
        minimumRate: string;
        owner: string;
    }
    totalValue: number
    diff --git a/docs/interfaces/MintCollectionNFTResponse.html b/docs/interfaces/MintCollectionNFTResponse.html index 0c39ca7..0706240 100644 --- a/docs/interfaces/MintCollectionNFTResponse.html +++ b/docs/interfaces/MintCollectionNFTResponse.html @@ -1,3 +1,3 @@ -MintCollectionNFTResponse | solana-agent-kit

    Interface MintCollectionNFTResponse

    interface MintCollectionNFTResponse {
        metadata: PublicKey;
        mint: PublicKey;
    }

    Properties

    metadata +MintCollectionNFTResponse | solana-agent-kit

    Interface MintCollectionNFTResponse

    interface MintCollectionNFTResponse {
        metadata: PublicKey;
        mint: PublicKey;
    }

    Properties

    Properties

    metadata: PublicKey
    mint: PublicKey
    +

    Properties

    metadata: PublicKey
    mint: PublicKey
    diff --git a/docs/interfaces/PumpFunTokenOptions.html b/docs/interfaces/PumpFunTokenOptions.html index acb07b4..2abe435 100644 --- a/docs/interfaces/PumpFunTokenOptions.html +++ b/docs/interfaces/PumpFunTokenOptions.html @@ -1,7 +1,7 @@ -PumpFunTokenOptions | solana-agent-kit

    Interface PumpFunTokenOptions

    interface PumpFunTokenOptions {
        initialLiquiditySOL?: number;
        priorityFee?: number;
        slippageBps?: number;
        telegram?: string;
        twitter?: string;
        website?: string;
    }

    Properties

    initialLiquiditySOL? +PumpFunTokenOptions | solana-agent-kit

    Interface PumpFunTokenOptions

    interface PumpFunTokenOptions {
        initialLiquiditySOL?: number;
        priorityFee?: number;
        slippageBps?: number;
        telegram?: string;
        twitter?: string;
        website?: string;
    }

    Properties

    initialLiquiditySOL?: number
    priorityFee?: number
    slippageBps?: number
    telegram?: string
    twitter?: string
    website?: string
    +

    Properties

    initialLiquiditySOL?: number
    priorityFee?: number
    slippageBps?: number
    telegram?: string
    twitter?: string
    website?: string
    diff --git a/docs/interfaces/PumpfunLaunchResponse.html b/docs/interfaces/PumpfunLaunchResponse.html index fad18b9..67dc930 100644 --- a/docs/interfaces/PumpfunLaunchResponse.html +++ b/docs/interfaces/PumpfunLaunchResponse.html @@ -1,5 +1,5 @@ -PumpfunLaunchResponse | solana-agent-kit

    Interface PumpfunLaunchResponse

    interface PumpfunLaunchResponse {
        error?: string;
        metadataUri?: string;
        mint: string;
        signature: string;
    }

    Properties

    error? +PumpfunLaunchResponse | solana-agent-kit

    Interface PumpfunLaunchResponse

    interface PumpfunLaunchResponse {
        error?: string;
        metadataUri?: string;
        mint: string;
        signature: string;
    }

    Properties

    error?: string
    metadataUri?: string
    mint: string
    signature: string
    +

    Properties

    error?: string
    metadataUri?: string
    mint: string
    signature: string
    diff --git a/docs/interfaces/PythFetchPriceResponse.html b/docs/interfaces/PythFetchPriceResponse.html index 0ea9b6a..ff637f4 100644 --- a/docs/interfaces/PythFetchPriceResponse.html +++ b/docs/interfaces/PythFetchPriceResponse.html @@ -1,6 +1,6 @@ -PythFetchPriceResponse | solana-agent-kit

    Interface PythFetchPriceResponse

    interface PythFetchPriceResponse {
        code?: string;
        message?: string;
        price?: string;
        priceFeedID: string;
        status: "success" | "error";
    }

    Properties

    code? +PythFetchPriceResponse | solana-agent-kit

    Interface PythFetchPriceResponse

    interface PythFetchPriceResponse {
        code?: string;
        message?: string;
        price?: string;
        priceFeedID: string;
        status: "success" | "error";
    }

    Properties

    code?: string
    message?: string
    price?: string
    priceFeedID: string
    status: "success" | "error"
    +

    Properties

    code?: string
    message?: string
    price?: string
    priceFeedID: string
    status: "success" | "error"
    diff --git a/docs/interfaces/TokenCheck.html b/docs/interfaces/TokenCheck.html index 36f40af..ede4846 100644 --- a/docs/interfaces/TokenCheck.html +++ b/docs/interfaces/TokenCheck.html @@ -1,5 +1,5 @@ -TokenCheck | solana-agent-kit

    Interface TokenCheck

    interface TokenCheck {
        risks: {
            description: string;
            level: string;
            name: string;
            score: number;
        }[];
        score: number;
        tokenProgram: string;
        tokenType: string;
    }

    Properties

    risks +TokenCheck | solana-agent-kit

    Interface TokenCheck

    interface TokenCheck {
        risks: {
            description: string;
            level: string;
            name: string;
            score: number;
        }[];
        score: number;
        tokenProgram: string;
        tokenType: string;
    }

    Properties

    risks: { description: string; level: string; name: string; score: number }[]
    score: number
    tokenProgram: string
    tokenType: string
    +

    Properties

    risks: { description: string; level: string; name: string; score: number }[]
    score: number
    tokenProgram: string
    tokenType: string
    diff --git a/docs/types/Handler.html b/docs/types/Handler.html index 8c41fa6..687ab38 100644 --- a/docs/types/Handler.html +++ b/docs/types/Handler.html @@ -1,2 +1,2 @@ Handler | solana-agent-kit

    Type Alias Handler

    Handler: (
        agent: SolanaAgentKit,
        input: Record<string, any>,
    ) => Promise<Record<string, any>>

    Handler function type for executing the action

    -

    Type declaration

      • (
            agent: SolanaAgentKit,
            input: Record<string, any>,
        ): Promise<Record<string, any>>
      • Parameters

        Returns Promise<Record<string, any>>

    +

    Type declaration

      • (
            agent: SolanaAgentKit,
            input: Record<string, any>,
        ): Promise<Record<string, any>>
      • Parameters

        Returns Promise<Record<string, any>>

    diff --git a/docs/variables/actions.html b/docs/variables/actions.html index 7c4f00d..81c4e42 100644 --- a/docs/variables/actions.html +++ b/docs/variables/actions.html @@ -1 +1 @@ -ACTIONS | solana-agent-kit

    Variable ACTIONSConst

    ACTIONS: {
        BALANCE_ACTION: Action;
        CREATE_GIBWORK_TASK_ACTION: Action;
        CREATE_IMAGE_ACTION: Action;
        CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: Action;
        DEPLOY_COLLECTION_ACTION: Action;
        DEPLOY_TOKEN_ACTION: Action;
        FETCH_PRICE_ACTION: Action;
        GET_ALL_DOMAINS_TLDS_ACTION: Action;
        GET_ALL_REGISTERED_ALL_DOMAINS_ACTION: Action;
        GET_MAIN_ALL_DOMAINS_DOMAIN_ACTION: Action;
        GET_OWNED_ALL_DOMAINS_ACTION: Action;
        GET_OWNED_DOMAINS_FOR_TLD_ACTION: Action;
        GET_PRIMARY_DOMAIN_ACTION: Action;
        GET_TOKEN_DATA_ACTION: Action;
        GET_TPS_ACTION: Action;
        LAUNCH_PUMPFUN_TOKEN_ACTION: Action;
        LEND_ASSET_ACTION: Action;
        MINT_NFT_ACTION: Action;
        PYTH_FETCH_PRICE_ACTION: Action;
        RAYDIUM_CREATE_AMM_V4_ACTION: Action;
        RAYDIUM_CREATE_CPMM_ACTION: Action;
        REGISTER_DOMAIN_ACTION: Action;
        REQUEST_FUNDS_ACTION: Action;
        RESOLVE_DOMAIN_ACTION: Action;
        RESOLVE_SOL_DOMAIN_ACTION: Action;
        STAKE_WITH_JUP_ACTION: Action;
        STAKE_WITH_SOLAYER_ACTION: Action;
        TRADE_ACTION: Action;
        TRANSFER_ACTION: Action;
        WALLET_ADDRESS_ACTION: Action;
    } = ...

    Type declaration

    • BALANCE_ACTION: Action
    • CREATE_GIBWORK_TASK_ACTION: Action
    • CREATE_IMAGE_ACTION: Action
    • CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: Action
    • DEPLOY_COLLECTION_ACTION: Action
    • DEPLOY_TOKEN_ACTION: Action
    • FETCH_PRICE_ACTION: Action
    • GET_ALL_DOMAINS_TLDS_ACTION: Action
    • GET_ALL_REGISTERED_ALL_DOMAINS_ACTION: Action
    • GET_MAIN_ALL_DOMAINS_DOMAIN_ACTION: Action
    • GET_OWNED_ALL_DOMAINS_ACTION: Action
    • GET_OWNED_DOMAINS_FOR_TLD_ACTION: Action
    • GET_PRIMARY_DOMAIN_ACTION: Action
    • GET_TOKEN_DATA_ACTION: Action
    • GET_TPS_ACTION: Action
    • LAUNCH_PUMPFUN_TOKEN_ACTION: Action
    • LEND_ASSET_ACTION: Action
    • MINT_NFT_ACTION: Action
    • PYTH_FETCH_PRICE_ACTION: Action
    • RAYDIUM_CREATE_AMM_V4_ACTION: Action
    • RAYDIUM_CREATE_CPMM_ACTION: Action
    • REGISTER_DOMAIN_ACTION: Action
    • REQUEST_FUNDS_ACTION: Action
    • RESOLVE_DOMAIN_ACTION: Action
    • RESOLVE_SOL_DOMAIN_ACTION: Action
    • STAKE_WITH_JUP_ACTION: Action
    • STAKE_WITH_SOLAYER_ACTION: Action
    • TRADE_ACTION: Action
    • TRANSFER_ACTION: Action
    • WALLET_ADDRESS_ACTION: Action
    +ACTIONS | solana-agent-kit

    Variable ACTIONSConst

    ACTIONS: {
        BALANCE_ACTION: Action;
        CREATE_GIBWORK_TASK_ACTION: Action;
        CREATE_IMAGE_ACTION: Action;
        CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: Action;
        DEPLOY_COLLECTION_ACTION: Action;
        DEPLOY_TOKEN_ACTION: Action;
        FETCH_PRICE_ACTION: Action;
        GET_ALL_DOMAINS_TLDS_ACTION: Action;
        GET_ALL_REGISTERED_ALL_DOMAINS_ACTION: Action;
        GET_MAIN_ALL_DOMAINS_DOMAIN_ACTION: Action;
        GET_OWNED_ALL_DOMAINS_ACTION: Action;
        GET_OWNED_DOMAINS_FOR_TLD_ACTION: Action;
        GET_PRIMARY_DOMAIN_ACTION: Action;
        GET_TOKEN_DATA_ACTION: Action;
        GET_TPS_ACTION: Action;
        LAUNCH_PUMPFUN_TOKEN_ACTION: Action;
        LEND_ASSET_ACTION: Action;
        MINT_NFT_ACTION: Action;
        PYTH_FETCH_PRICE_ACTION: Action;
        RAYDIUM_CREATE_AMM_V4_ACTION: Action;
        RAYDIUM_CREATE_CPMM_ACTION: Action;
        REGISTER_DOMAIN_ACTION: Action;
        REQUEST_FUNDS_ACTION: Action;
        RESOLVE_DOMAIN_ACTION: Action;
        RESOLVE_SOL_DOMAIN_ACTION: Action;
        STAKE_WITH_JUP_ACTION: Action;
        STAKE_WITH_SOLAYER_ACTION: Action;
        TRADE_ACTION: Action;
        TRANSFER_ACTION: Action;
        WALLET_ADDRESS_ACTION: Action;
    } = ...

    Type declaration

    • BALANCE_ACTION: Action
    • CREATE_GIBWORK_TASK_ACTION: Action
    • CREATE_IMAGE_ACTION: Action
    • CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: Action
    • DEPLOY_COLLECTION_ACTION: Action
    • DEPLOY_TOKEN_ACTION: Action
    • FETCH_PRICE_ACTION: Action
    • GET_ALL_DOMAINS_TLDS_ACTION: Action
    • GET_ALL_REGISTERED_ALL_DOMAINS_ACTION: Action
    • GET_MAIN_ALL_DOMAINS_DOMAIN_ACTION: Action
    • GET_OWNED_ALL_DOMAINS_ACTION: Action
    • GET_OWNED_DOMAINS_FOR_TLD_ACTION: Action
    • GET_PRIMARY_DOMAIN_ACTION: Action
    • GET_TOKEN_DATA_ACTION: Action
    • GET_TPS_ACTION: Action
    • LAUNCH_PUMPFUN_TOKEN_ACTION: Action
    • LEND_ASSET_ACTION: Action
    • MINT_NFT_ACTION: Action
    • PYTH_FETCH_PRICE_ACTION: Action
    • RAYDIUM_CREATE_AMM_V4_ACTION: Action
    • RAYDIUM_CREATE_CPMM_ACTION: Action
    • REGISTER_DOMAIN_ACTION: Action
    • REQUEST_FUNDS_ACTION: Action
    • RESOLVE_DOMAIN_ACTION: Action
    • RESOLVE_SOL_DOMAIN_ACTION: Action
    • STAKE_WITH_JUP_ACTION: Action
    • STAKE_WITH_SOLAYER_ACTION: Action
    • TRADE_ACTION: Action
    • TRANSFER_ACTION: Action
    • WALLET_ADDRESS_ACTION: Action
    diff --git a/src/tools/flash_open_trade.ts b/src/tools/flash_open_trade.ts index 4c46e6b..b0a968f 100644 --- a/src/tools/flash_open_trade.ts +++ b/src/tools/flash_open_trade.ts @@ -1,4 +1,4 @@ -import { ComputeBudgetProgram } from "@solana/web3.js"; +import { PublicKey, ComputeBudgetProgram } from "@solana/web3.js"; import { PerpetualsClient, OraclePrice, From d90ee517d65e103e9f22419090119f621e544b4f Mon Sep 17 00:00:00 2001 From: UjjwalGupta49 Date: Sun, 5 Jan 2025 20:34:28 +0530 Subject: [PATCH 4/8] hermes client for flash price feed --- docs/assets/hierarchy.js | 2 +- docs/assets/navigation.js | 2 +- docs/assets/search.js | 2 +- docs/classes/SolanaAgentKit.html | 20 +- docs/functions/createSolanaTools.html | 2 +- docs/functions/createVercelAITools.html | 2 +- docs/functions/executeAction.html | 2 +- docs/functions/findAction.html | 2 +- docs/functions/getActionExamples.html | 2 +- docs/interfaces/Action.html | 14 +- docs/interfaces/ActionExample.html | 4 +- docs/interfaces/BatchOrderPattern.html | 4 +- docs/interfaces/CollectionDeployment.html | 4 +- docs/interfaces/CollectionOptions.html | 4 +- docs/interfaces/Config.html | 4 +- docs/interfaces/Creator.html | 4 +- docs/interfaces/FetchPriceResponse.html | 4 +- docs/interfaces/GibworkCreateTaskReponse.html | 4 +- docs/interfaces/JupiterTokenData.html | 4 +- .../LuloAccountDetailsResponse.html | 4 +- .../interfaces/MintCollectionNFTResponse.html | 4 +- docs/interfaces/OrderParams.html | 4 +- docs/interfaces/PumpFunTokenOptions.html | 4 +- docs/interfaces/PumpfunLaunchResponse.html | 4 +- docs/interfaces/PythFetchPriceResponse.html | 4 +- docs/interfaces/PythPriceFeedIDItem.html | 4 +- docs/interfaces/PythPriceItem.html | 4 +- docs/interfaces/TokenCheck.html | 4 +- docs/types/Handler.html | 2 +- docs/variables/actions.html | 2 +- package.json | 1 + pnpm-lock.yaml | 121 ++++ src/langchain/index.ts | 14 +- src/utils/flashUtils.ts | 590 +++++++++--------- 34 files changed, 472 insertions(+), 380 deletions(-) diff --git a/docs/assets/hierarchy.js b/docs/assets/hierarchy.js index fb85f0a..88636f0 100644 --- a/docs/assets/hierarchy.js +++ b/docs/assets/hierarchy.js @@ -1 +1 @@ -window.hierarchyData = "eJyrVirKzy8pVrKKjtVRKkpNy0lNLsnMzytWsqqurQUAmx4Kpg==" \ No newline at end of file +window.hierarchyData = "eJyrVirKzy8pVrKKjtVRKkpNy0lNLsnMzwMKVNfWAgCbHgqm" \ No newline at end of file diff --git a/docs/assets/navigation.js b/docs/assets/navigation.js index 4268dc8..3e76375 100644 --- a/docs/assets/navigation.js +++ b/docs/assets/navigation.js @@ -1 +1 @@ -window.navigationData = "eJyNlcFu2zAMQP9F52Bps7XdcsuSZU3XNUFr7DLswMp0LFiWDIneEgz79yFOUNuxTOfig/n4KEuU+fOvINyRmIoXq8HAbIuGvikSI1EApWIqpAbv0Y/b8Xcp5VqMRKZMLKbXk4//Rm+mmSRlTW1QhtAlINGPj6F28uTmtpP8ZQd5oZFxnAhO9RlIpmsXo9sAEbrwkjoUp5xbrbGqv8BC232OhoLWEHiZeF0cnn7AeqJ4pUnUtsdzCLHJDoGsC2cfY1z6EkmmG6ckPqMvrPHho+xinPSrev1jXVaVxwh89oz96j6YK/BQForQRTZDswCCoPgc4oSPpbYzKW1paIEESnt2O/pxrsh3ZahujKdlxNbopbkSp+vhIA/3ZSPOaTZlXiSleYTSyJRdZZAcUi9LU50Kd4MCHKvdU3phL4fRIXkFLxHj1WJFmPeaz7iLtMPCIVW1TfMUZRb01GFOcg8m1tj4ldC+QD8+vT7LvPp0d30zac6DebRaP73U2b/BKXjVh0FwDLUN75vJsrr9x8kVWasbPZGUproBftyB2sLbDx3hD3QS9Ww1oGxhjBR3KEvC87FZ61oAI0qUifstdZRRbJFa8zX4eR2oI/z1H/fI5D8=" \ No newline at end of file +window.navigationData = "eJyNlcFy2jAQQP/FZyZpSEmb3CiUlpYCA55eMj1sxII1liWPvG5gOv33CMPENpbXXHzQvn0ryyvv87+AcE/BU7A2CjQMd6jpp6SgF6RAkVsXCrIMs9t6/CaiRDkolnoTPN31P//vvZuGgqTRpUFqQrsF4SSnUD25P3hoJH/dQ5IqZBxnglN9ARLRwm7QLoFcun9LDYpTjoxSWNQfY6rMIXGn4bX6wOvEi/T4zDqsZ4pX6q3ctXiOITbZIpCx/uxTjEufoDvUpZUCV5ilbqP+T9nEOOk3+fJqbFyUxxCyeIXt6jaYK/AjT6UThCZGPQYCr/gS4oSzXJmhECbXNEYCqTL2ONpxrsgvZygbYz4J2RqtNFfifD0sJP6+rMQ5zTJP0m2uZ5BrEbG79JJd6kmui6/C3SAPx2oPFF3Zy360S17AE8TNdDwlTFrNF9xV2m5hl6o4plGEIvZ6yjAn+Q56o7DyK6FD6pLPyxeZHx4/3Q361XkwCqeL+brM/gtWwos6DoJTqG64ryaL4vafJldojKr0hOuu4gZktw2oLnz42BD+RitQDacdyhrGSHGPIie8HJulrgYwoq1bareUUUaxQ6rNV+/rNaCG8M8b98jkPw==" \ No newline at end of file diff --git a/docs/assets/search.js b/docs/assets/search.js index 86069d6..c1760b6 100644 --- a/docs/assets/search.js +++ b/docs/assets/search.js @@ -1 +1 @@ -window.searchData = "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"; \ No newline at end of file +window.searchData = "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"; \ No newline at end of file diff --git a/docs/classes/SolanaAgentKit.html b/docs/classes/SolanaAgentKit.html index 149719f..1c0e5e1 100644 --- a/docs/classes/SolanaAgentKit.html +++ b/docs/classes/SolanaAgentKit.html @@ -1,7 +1,7 @@ SolanaAgentKit | solana-agent-kit

    Class SolanaAgentKit

    Main class for interacting with Solana blockchain Provides a unified interface for token operations, NFT management, trading and more

    SolanaAgentKit

    -

    Constructors

    Constructors

    Properties

    config connection wallet @@ -17,6 +17,8 @@ Provides a unified interface for token operations, NFT management, trading and m fetchTokenDetailedReport fetchTokenPrice fetchTokenReportSummary +flashCloseTrade +flashOpenTrade getAllDomainsTLDs getAllRegisteredAllDomains getBalance @@ -65,8 +67,14 @@ Please use the new constructor with Config object instead:

    const agent = new SolanaAgentKit(privateKey, rpcUrl, {
    OPENAI_API_KEY: 'your-key'
    });
    -
  • Parameters

    • private_key: string
    • rpc_url: string
    • config: Config

    Returns SolanaAgentKit

  • Properties

    config: Config

    Configuration object

    -
    connection: Connection

    Solana RPC connection

    -
    wallet: Keypair

    Wallet keypair for signing transactions

    -
    wallet_address: PublicKey

    Public key of the wallet

    -

    Methods

    • Parameters

      • marketId: PublicKey

      Returns Promise<string>

    • Parameters

      • args: Omit<{ agent: SolanaAgentKit; price: number; tradeMint: PublicKey }, "agent">

      Returns Promise<string>

    • Parameters

      • args: Omit<{ agent: SolanaAgentKit; price: number; tradeMint: PublicKey }, "agent">

      Returns Promise<string>

    • Parameters

      • title: string
      • content: string
      • requirements: string
      • tags: string[]
      • tokenMintAddress: string
      • tokenAmount: number
      • Optionalpayer: string

      Returns Promise<GibworkCreateTaskReponse>

    • Parameters

      • amount: number
      • OptionalsplmintAddress: PublicKey

      Returns Promise<{ signature: string; url: string }>

    • Parameters

      • name: string
      • uri: string
      • symbol: string
      • decimals: number = DEFAULT_OPTIONS.TOKEN_DECIMALS
      • OptionalinitialSupply: number

      Returns Promise<{ mint: PublicKey }>

    • Parameters

      • mint: string

      Returns Promise<string>

    • Returns Promise<string[]>

    • Returns Promise<string[]>

    • Parameters

      • Optionaltoken_address: PublicKey

      Returns Promise<number>

    • Parameters

      • walletAddress: PublicKey
      • OptionaltokenAddress: PublicKey

      Returns Promise<number>

    • Parameters

      • owner: PublicKey

      Returns Promise<null | string>

    • Parameters

      • owner: PublicKey

      Returns Promise<string[]>

    • Parameters

      • tld: string

      Returns Promise<string[]>

    • Parameters

      • account: PublicKey

      Returns Promise<string>

    • Parameters

      • priceFeedID: string

      Returns Promise<string>

    • Parameters

      • tokenSymbol: string

      Returns Promise<string>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey
      • quantity: number
      • side: string
      • price: number

      Returns Promise<string>

    • Parameters

      • baseMint: PublicKey
      • quoteMint: PublicKey

      Returns Promise<string[]>

    • Parameters

      • collectionMint: PublicKey
      • metadata: {
            creators?: { address: string; share: number }[];
            name: string;
            sellerFeeBasisPoints?: number;
            uri: string;
        }
      • Optionalrecipient: PublicKey

      Returns Promise<MintCollectionNFTResponse>

    • Parameters

      • baseMint: PublicKey
      • quoteMint: PublicKey
      • lotSize: number = 1
      • tickSize: number = 0.01

      Returns Promise<string[]>

    • Parameters

      • args: Omit<
            {
                agent: SolanaAgentKit;
                collateralAmount: number;
                collateralMint?: PublicKey;
                leverage?: number;
                price: number;
                slippage?: number;
                tradeMint?: PublicKey;
            },
            "agent",
        >

      Returns Promise<string>

    • Parameters

      • args: Omit<
            {
                agent: SolanaAgentKit;
                collateralAmount: number;
                collateralMint?: PublicKey;
                leverage?: number;
                price: number;
                slippage?: number;
                tradeMint?: PublicKey;
            },
            "agent",
        >

      Returns Promise<string>

    • Parameters

      • positionMintAddress: PublicKey

      Returns Promise<string>

    • Parameters

      • mintDeploy: PublicKey
      • mintPair: PublicKey
      • initialPrice: Decimal
      • feeTier: 1 | 2 | 4 | 5 | 16 | 30 | 65 | 100 | 200

      Returns Promise<string>

    • Parameters

      • depositTokenAmount: number
      • depositTokenMint: PublicKey
      • otherTokenMint: PublicKey
      • initialPrice: Decimal
      • maxPrice: Decimal
      • feeTier: 1 | 2 | 4 | 5 | 16 | 30 | 65 | 100 | 200

      Returns Promise<string>

    • Parameters

      • whirlpoolAddress: PublicKey
      • priceOffsetBps: number
      • inputTokenMint: PublicKey
      • inputAmount: Decimal

      Returns Promise<string>

    • Parameters

      • whirlpoolAddress: PublicKey
      • distanceFromCurrentPriceBps: number
      • widthBps: number
      • inputTokenMint: PublicKey
      • inputAmount: Decimal

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey
      • baseAmount: BN
      • quoteAmount: BN
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • mint1: PublicKey
      • mint2: PublicKey
      • configId: PublicKey
      • initialPrice: Decimal
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • mint1: PublicKey
      • mint2: PublicKey
      • configId: PublicKey
      • mintAAmount: BN
      • mintBAmount: BN
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • name: string
      • OptionalspaceKB: number

      Returns Promise<string>

    • Parameters

      • domain: string

      Returns Promise<undefined | PublicKey>

    • Parameters

      • domain: string

      Returns Promise<PublicKey>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • amount: number
      • choice: "rock" | "paper" | "scissors"

      Returns Promise<string>

    • Parameters

      • mintAddress: string
      • amount: number
      • decimals: number
      • recipients: string[]
      • priorityFeeInLamports: number
      • shouldLog: boolean

      Returns Promise<string[]>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • nftMint: PublicKey

      Returns Promise<string>

    • Parameters

      • nftMint: PublicKey
      • price: number

      Returns Promise<string>

    • Parameters

      • outputMint: PublicKey
      • inputAmount: number
      • OptionalinputMint: PublicKey
      • slippageBps: number = DEFAULT_OPTIONS.SLIPPAGE_BPS

      Returns Promise<string>

    • Parameters

      • to: PublicKey
      • amount: number
      • Optionalmint: PublicKey

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey

      Returns Promise<string>

    +
  • Parameters

    • private_key: string
    • rpc_url: string
    • config: Config

    Returns SolanaAgentKit

  • Properties

    config: Config

    Configuration object

    +
    connection: Connection

    Solana RPC connection

    +
    wallet: Keypair

    Wallet keypair for signing transactions

    +
    wallet_address: PublicKey

    Public key of the wallet

    +

    Methods

    • Parameters

      • marketId: PublicKey

      Returns Promise<string>

    • Parameters

      • args: Omit<{ agent: SolanaAgentKit; price: number; tradeMint: PublicKey }, "agent">

      Returns Promise<string>

    • Parameters

      • args: Omit<{ agent: SolanaAgentKit; price: number; tradeMint: PublicKey }, "agent">

      Returns Promise<string>

    • Parameters

      • title: string
      • content: string
      • requirements: string
      • tags: string[]
      • tokenMintAddress: string
      • tokenAmount: number
      • Optionalpayer: string

      Returns Promise<GibworkCreateTaskReponse>

    • Parameters

      • amount: number
      • OptionalsplmintAddress: PublicKey

      Returns Promise<{ signature: string; url: string }>

    • Parameters

      • name: string
      • uri: string
      • symbol: string
      • decimals: number = DEFAULT_OPTIONS.TOKEN_DECIMALS
      • OptionalinitialSupply: number

      Returns Promise<{ mint: PublicKey }>

    • Parameters

      • mint: string

      Returns Promise<string>

    • Closes an existing trading position on Flash.Trade

      +

      Parameters

      • params: FlashCloseTradeParams

        Flash trade close parameters

        +

      Returns Promise<string>

      Transaction signature

      +
    • Opens a new trading position on Flash.Trade

      +

      Parameters

      • params: FlashTradeParams

        Flash trade parameters including market, side, collateral, leverage, and pool name

        +

      Returns Promise<string>

      Transaction signature

      +
    • Returns Promise<string[]>

    • Returns Promise<string[]>

    • Parameters

      • Optionaltoken_address: PublicKey

      Returns Promise<number>

    • Parameters

      • walletAddress: PublicKey
      • OptionaltokenAddress: PublicKey

      Returns Promise<number>

    • Parameters

      • owner: PublicKey

      Returns Promise<null | string>

    • Parameters

      • owner: PublicKey

      Returns Promise<string[]>

    • Parameters

      • tld: string

      Returns Promise<string[]>

    • Parameters

      • account: PublicKey

      Returns Promise<string>

    • Parameters

      • priceFeedID: string

      Returns Promise<string>

    • Parameters

      • tokenSymbol: string

      Returns Promise<string>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey
      • quantity: number
      • side: string
      • price: number

      Returns Promise<string>

    • Parameters

      • baseMint: PublicKey
      • quoteMint: PublicKey

      Returns Promise<string[]>

    • Parameters

      • collectionMint: PublicKey
      • metadata: {
            creators?: { address: string; share: number }[];
            name: string;
            sellerFeeBasisPoints?: number;
            uri: string;
        }
      • Optionalrecipient: PublicKey

      Returns Promise<MintCollectionNFTResponse>

    • Parameters

      • baseMint: PublicKey
      • quoteMint: PublicKey
      • lotSize: number = 1
      • tickSize: number = 0.01

      Returns Promise<string[]>

    • Parameters

      • args: Omit<
            {
                agent: SolanaAgentKit;
                collateralAmount: number;
                collateralMint?: PublicKey;
                leverage?: number;
                price: number;
                slippage?: number;
                tradeMint?: PublicKey;
            },
            "agent",
        >

      Returns Promise<string>

    • Parameters

      • args: Omit<
            {
                agent: SolanaAgentKit;
                collateralAmount: number;
                collateralMint?: PublicKey;
                leverage?: number;
                price: number;
                slippage?: number;
                tradeMint?: PublicKey;
            },
            "agent",
        >

      Returns Promise<string>

    • Parameters

      • positionMintAddress: PublicKey

      Returns Promise<string>

    • Parameters

      • mintDeploy: PublicKey
      • mintPair: PublicKey
      • initialPrice: Decimal
      • feeTier: 1 | 2 | 4 | 5 | 16 | 30 | 65 | 100 | 200

      Returns Promise<string>

    • Parameters

      • depositTokenAmount: number
      • depositTokenMint: PublicKey
      • otherTokenMint: PublicKey
      • initialPrice: Decimal
      • maxPrice: Decimal
      • feeTier: 1 | 2 | 4 | 5 | 16 | 30 | 65 | 100 | 200

      Returns Promise<string>

    • Parameters

      • whirlpoolAddress: PublicKey
      • priceOffsetBps: number
      • inputTokenMint: PublicKey
      • inputAmount: Decimal

      Returns Promise<string>

    • Parameters

      • whirlpoolAddress: PublicKey
      • distanceFromCurrentPriceBps: number
      • widthBps: number
      • inputTokenMint: PublicKey
      • inputAmount: Decimal

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey
      • baseAmount: BN
      • quoteAmount: BN
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • mint1: PublicKey
      • mint2: PublicKey
      • configId: PublicKey
      • initialPrice: Decimal
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • mint1: PublicKey
      • mint2: PublicKey
      • configId: PublicKey
      • mintAAmount: BN
      • mintBAmount: BN
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • name: string
      • OptionalspaceKB: number

      Returns Promise<string>

    • Parameters

      • domain: string

      Returns Promise<undefined | PublicKey>

    • Parameters

      • domain: string

      Returns Promise<PublicKey>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • amount: number
      • choice: "rock" | "paper" | "scissors"

      Returns Promise<string>

    • Parameters

      • mintAddress: string
      • amount: number
      • decimals: number
      • recipients: string[]
      • priorityFeeInLamports: number
      • shouldLog: boolean

      Returns Promise<string[]>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • nftMint: PublicKey

      Returns Promise<string>

    • Parameters

      • nftMint: PublicKey
      • price: number

      Returns Promise<string>

    • Parameters

      • outputMint: PublicKey
      • inputAmount: number
      • OptionalinputMint: PublicKey
      • slippageBps: number = DEFAULT_OPTIONS.SLIPPAGE_BPS

      Returns Promise<string>

    • Parameters

      • to: PublicKey
      • amount: number
      • Optionalmint: PublicKey

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey

      Returns Promise<string>

    diff --git a/docs/functions/createSolanaTools.html b/docs/functions/createSolanaTools.html index 62e32dc..86f1f2d 100644 --- a/docs/functions/createSolanaTools.html +++ b/docs/functions/createSolanaTools.html @@ -1 +1 @@ -createSolanaTools | solana-agent-kit

    Function createSolanaTools

    • Parameters

      Returns (
          | SolanaBalanceTool
          | SolanaBalanceOtherTool
          | SolanaTransferTool
          | SolanaDeployTokenTool
          | SolanaDeployCollectionTool
          | SolanaMintNFTTool
          | SolanaPerpCloseTradeTool
          | SolanaPerpOpenTradeTool
          | SolanaTradeTool
          | SolanaLimitOrderTool
          | SolanaBatchOrderTool
          | SolanaCancelAllOrdersTool
          | SolanaWithdrawAllTool
          | SolanaRequestFundsTool
          | SolanaRegisterDomainTool
          | SolanaResolveDomainTool
          | SolanaGetDomainTool
          | SolanaGetWalletAddressTool
          | SolanaPumpfunTokenLaunchTool
          | SolanaCreateImageTool
          | SolanaLendAssetTool
          | SolanaTPSCalculatorTool
          | SolanaStakeTool
          | SolanaRestakeTool
          | SolanaFetchPriceTool
          | SolanaTokenDataTool
          | SolanaTokenDataByTickerTool
          | SolanaCompressedAirdropTool
          | SolanaClosePosition
          | SolanaOrcaCreateCLMM
          | SolanaOrcaCreateSingleSideLiquidityPool
          | SolanaOrcaFetchPositions
          | SolanaOrcaOpenCenteredPosition
          | SolanaOrcaOpenSingleSidedPosition
          | SolanaRaydiumCreateAmmV4
          | SolanaRaydiumCreateClmm
          | SolanaRaydiumCreateCpmm
          | SolanaOpenbookCreateMarket
          | SolanaManifestCreateMarket
          | SolanaPythFetchPrice
          | SolanaResolveAllDomainsTool
          | SolanaGetOwnedDomains
          | SolanaGetOwnedTldDomains
          | SolanaGetAllTlds
          | SolanaGetMainDomain
          | SolanaCreateGibworkTask
          | SolanaRockPaperScissorsTool
          | SolanaTipLinkTool
          | SolanaListNFTForSaleTool
          | SolanaCancelNFTListingTool
          | SolanaFetchTokenReportSummaryTool
          | SolanaFetchTokenDetailedReportTool
      )[]

    +createSolanaTools | solana-agent-kit

    Function createSolanaTools

    • Parameters

      Returns (
          | SolanaBalanceTool
          | SolanaBalanceOtherTool
          | SolanaTransferTool
          | SolanaDeployTokenTool
          | SolanaDeployCollectionTool
          | SolanaMintNFTTool
          | SolanaPerpCloseTradeTool
          | SolanaPerpOpenTradeTool
          | SolanaTradeTool
          | SolanaLimitOrderTool
          | SolanaBatchOrderTool
          | SolanaCancelAllOrdersTool
          | SolanaWithdrawAllTool
          | SolanaRequestFundsTool
          | SolanaRegisterDomainTool
          | SolanaResolveDomainTool
          | SolanaGetDomainTool
          | SolanaGetWalletAddressTool
          | SolanaFlashOpenTrade
          | SolanaFlashCloseTrade
          | SolanaPumpfunTokenLaunchTool
          | SolanaCreateImageTool
          | SolanaLendAssetTool
          | SolanaTPSCalculatorTool
          | SolanaStakeTool
          | SolanaRestakeTool
          | SolanaFetchPriceTool
          | SolanaTokenDataTool
          | SolanaTokenDataByTickerTool
          | SolanaCompressedAirdropTool
          | SolanaClosePosition
          | SolanaOrcaCreateCLMM
          | SolanaOrcaCreateSingleSideLiquidityPool
          | SolanaOrcaFetchPositions
          | SolanaOrcaOpenCenteredPosition
          | SolanaOrcaOpenSingleSidedPosition
          | SolanaRaydiumCreateAmmV4
          | SolanaRaydiumCreateClmm
          | SolanaRaydiumCreateCpmm
          | SolanaOpenbookCreateMarket
          | SolanaManifestCreateMarket
          | SolanaPythFetchPrice
          | SolanaResolveAllDomainsTool
          | SolanaGetOwnedDomains
          | SolanaGetOwnedTldDomains
          | SolanaGetAllTlds
          | SolanaGetMainDomain
          | SolanaCreateGibworkTask
          | SolanaRockPaperScissorsTool
          | SolanaTipLinkTool
          | SolanaListNFTForSaleTool
          | SolanaCancelNFTListingTool
          | SolanaFetchTokenReportSummaryTool
          | SolanaFetchTokenDetailedReportTool
      )[]

    diff --git a/docs/functions/createVercelAITools.html b/docs/functions/createVercelAITools.html index 0a4cfc3..56fc5d3 100644 --- a/docs/functions/createVercelAITools.html +++ b/docs/functions/createVercelAITools.html @@ -1 +1 @@ -createVercelAITools | solana-agent-kit

    Function createVercelAITools

    +createVercelAITools | solana-agent-kit

    Function createVercelAITools

    diff --git a/docs/functions/executeAction.html b/docs/functions/executeAction.html index 97a7bdc..05914e1 100644 --- a/docs/functions/executeAction.html +++ b/docs/functions/executeAction.html @@ -1,2 +1,2 @@ executeAction | solana-agent-kit

    Function executeAction

    • Execute an action with the given input

      -

      Parameters

      Returns Promise<Record<string, any>>

    +

    Parameters

    Returns Promise<Record<string, any>>

    diff --git a/docs/functions/findAction.html b/docs/functions/findAction.html index 77ebfb5..b374d5c 100644 --- a/docs/functions/findAction.html +++ b/docs/functions/findAction.html @@ -1,2 +1,2 @@ findAction | solana-agent-kit

    Function findAction

    • Find an action by its name or one of its similes

      -

      Parameters

      • query: string

      Returns Action | undefined

    +

    Parameters

    • query: string

    Returns Action | undefined

    diff --git a/docs/functions/getActionExamples.html b/docs/functions/getActionExamples.html index 2e9477e..0900b3a 100644 --- a/docs/functions/getActionExamples.html +++ b/docs/functions/getActionExamples.html @@ -1,2 +1,2 @@ getActionExamples | solana-agent-kit

    Function getActionExamples

    • Get examples for an action

      -

      Parameters

      • action: Action

      Returns string

    +

    Parameters

    • action: Action

    Returns string

    diff --git a/docs/interfaces/Action.html b/docs/interfaces/Action.html index 5aabff3..e7bb267 100644 --- a/docs/interfaces/Action.html +++ b/docs/interfaces/Action.html @@ -1,16 +1,16 @@ Action | solana-agent-kit

    Interface Action

    Main Action interface inspired by ELIZA This interface makes it easier to implement actions across different frameworks

    -
    interface Action {
        description: string;
        examples: ActionExample[][];
        handler: Handler;
        name: string;
        schema: ZodType;
        similes: string[];
    }

    Properties

    interface Action {
        description: string;
        examples: ActionExample[][];
        handler: Handler;
        name: string;
        schema: ZodType;
        similes: string[];
    }

    Properties

    description: string

    Detailed description of what the action does

    -
    examples: ActionExample[][]

    Array of example inputs and outputs for the action +

    examples: ActionExample[][]

    Array of example inputs and outputs for the action Each inner array represents a group of related examples

    -
    handler: Handler

    Function that executes the action

    -
    name: string

    Unique name of the action

    -
    schema: ZodType

    Zod schema for input validation

    -
    similes: string[]

    Alternative names/phrases that can trigger this action

    -
    +
    handler: Handler

    Function that executes the action

    +
    name: string

    Unique name of the action

    +
    schema: ZodType

    Zod schema for input validation

    +
    similes: string[]

    Alternative names/phrases that can trigger this action

    +
    diff --git a/docs/interfaces/ActionExample.html b/docs/interfaces/ActionExample.html index f34c92f..d7bd2e4 100644 --- a/docs/interfaces/ActionExample.html +++ b/docs/interfaces/ActionExample.html @@ -1,5 +1,5 @@ ActionExample | solana-agent-kit

    Interface ActionExample

    Example of an action with input and output

    -
    interface ActionExample {
        explanation: string;
        input: Record<string, any>;
        output: Record<string, any>;
    }

    Properties

    interface ActionExample {
        explanation: string;
        input: Record<string, any>;
        output: Record<string, any>;
    }

    Properties

    explanation: string
    input: Record<string, any>
    output: Record<string, any>
    +

    Properties

    explanation: string
    input: Record<string, any>
    output: Record<string, any>
    diff --git a/docs/interfaces/BatchOrderPattern.html b/docs/interfaces/BatchOrderPattern.html index 5d5da73..c359c78 100644 --- a/docs/interfaces/BatchOrderPattern.html +++ b/docs/interfaces/BatchOrderPattern.html @@ -1,7 +1,7 @@ -BatchOrderPattern | solana-agent-kit

    Interface BatchOrderPattern

    interface BatchOrderPattern {
        individualQuantity?: number;
        numberOfOrders?: number;
        priceRange?: { max?: number; min?: number };
        side: string;
        spacing?: { type: "percentage" | "fixed"; value: number };
        totalQuantity?: number;
    }

    Properties

    individualQuantity? +BatchOrderPattern | solana-agent-kit

    Interface BatchOrderPattern

    interface BatchOrderPattern {
        individualQuantity?: number;
        numberOfOrders?: number;
        priceRange?: { max?: number; min?: number };
        side: string;
        spacing?: { type: "percentage" | "fixed"; value: number };
        totalQuantity?: number;
    }

    Properties

    individualQuantity?: number
    numberOfOrders?: number
    priceRange?: { max?: number; min?: number }
    side: string
    spacing?: { type: "percentage" | "fixed"; value: number }
    totalQuantity?: number
    +

    Properties

    individualQuantity?: number
    numberOfOrders?: number
    priceRange?: { max?: number; min?: number }
    side: string
    spacing?: { type: "percentage" | "fixed"; value: number }
    totalQuantity?: number
    diff --git a/docs/interfaces/CollectionDeployment.html b/docs/interfaces/CollectionDeployment.html index 6d63f5a..79dde67 100644 --- a/docs/interfaces/CollectionDeployment.html +++ b/docs/interfaces/CollectionDeployment.html @@ -1,3 +1,3 @@ -CollectionDeployment | solana-agent-kit

    Interface CollectionDeployment

    interface CollectionDeployment {
        collectionAddress: PublicKey;
        signature: Uint8Array;
    }

    Properties

    collectionAddress +CollectionDeployment | solana-agent-kit

    Interface CollectionDeployment

    interface CollectionDeployment {
        collectionAddress: PublicKey;
        signature: Uint8Array;
    }

    Properties

    collectionAddress: PublicKey
    signature: Uint8Array
    +

    Properties

    collectionAddress: PublicKey
    signature: Uint8Array
    diff --git a/docs/interfaces/CollectionOptions.html b/docs/interfaces/CollectionOptions.html index 1dd31ef..76285b3 100644 --- a/docs/interfaces/CollectionOptions.html +++ b/docs/interfaces/CollectionOptions.html @@ -1,5 +1,5 @@ -CollectionOptions | solana-agent-kit

    Interface CollectionOptions

    interface CollectionOptions {
        creators?: Creator[];
        name: string;
        royaltyBasisPoints?: number;
        uri: string;
    }

    Properties

    creators? +CollectionOptions | solana-agent-kit

    Interface CollectionOptions

    interface CollectionOptions {
        creators?: Creator[];
        name: string;
        royaltyBasisPoints?: number;
        uri: string;
    }

    Properties

    creators?: Creator[]
    name: string
    royaltyBasisPoints?: number
    uri: string
    +

    Properties

    creators?: Creator[]
    name: string
    royaltyBasisPoints?: number
    uri: string
    diff --git a/docs/interfaces/Config.html b/docs/interfaces/Config.html index e8ffb49..6ab645a 100644 --- a/docs/interfaces/Config.html +++ b/docs/interfaces/Config.html @@ -1,4 +1,4 @@ -Config | solana-agent-kit

    Interface Config

    interface Config {
        JUPITER_FEE_BPS?: number;
        JUPITER_REFERRAL_ACCOUNT?: string;
        OPENAI_API_KEY?: string;
    }

    Properties

    JUPITER_FEE_BPS? +Config | solana-agent-kit

    Interface Config

    interface Config {
        JUPITER_FEE_BPS?: number;
        JUPITER_REFERRAL_ACCOUNT?: string;
        OPENAI_API_KEY?: string;
    }

    Properties

    JUPITER_FEE_BPS?: number
    JUPITER_REFERRAL_ACCOUNT?: string
    OPENAI_API_KEY?: string
    +

    Properties

    JUPITER_FEE_BPS?: number
    JUPITER_REFERRAL_ACCOUNT?: string
    OPENAI_API_KEY?: string
    diff --git a/docs/interfaces/Creator.html b/docs/interfaces/Creator.html index 4ce2cdc..82a2fe5 100644 --- a/docs/interfaces/Creator.html +++ b/docs/interfaces/Creator.html @@ -1,3 +1,3 @@ -Creator | solana-agent-kit

    Interface Creator

    interface Creator {
        address: string;
        percentage: number;
    }

    Properties

    address +Creator | solana-agent-kit

    Interface Creator

    interface Creator {
        address: string;
        percentage: number;
    }

    Properties

    Properties

    address: string
    percentage: number
    +

    Properties

    address: string
    percentage: number
    diff --git a/docs/interfaces/FetchPriceResponse.html b/docs/interfaces/FetchPriceResponse.html index 56c062e..bfbc2bc 100644 --- a/docs/interfaces/FetchPriceResponse.html +++ b/docs/interfaces/FetchPriceResponse.html @@ -1,6 +1,6 @@ -FetchPriceResponse | solana-agent-kit

    Interface FetchPriceResponse

    interface FetchPriceResponse {
        code?: string;
        message?: string;
        priceInUSDC?: string;
        status: "success" | "error";
        tokenId?: string;
    }

    Properties

    code? +FetchPriceResponse | solana-agent-kit

    Interface FetchPriceResponse

    interface FetchPriceResponse {
        code?: string;
        message?: string;
        priceInUSDC?: string;
        status: "success" | "error";
        tokenId?: string;
    }

    Properties

    code?: string
    message?: string
    priceInUSDC?: string
    status: "success" | "error"
    tokenId?: string
    +

    Properties

    code?: string
    message?: string
    priceInUSDC?: string
    status: "success" | "error"
    tokenId?: string
    diff --git a/docs/interfaces/GibworkCreateTaskReponse.html b/docs/interfaces/GibworkCreateTaskReponse.html index f6970cd..2e13301 100644 --- a/docs/interfaces/GibworkCreateTaskReponse.html +++ b/docs/interfaces/GibworkCreateTaskReponse.html @@ -1,4 +1,4 @@ -GibworkCreateTaskReponse | solana-agent-kit

    Interface GibworkCreateTaskReponse

    interface GibworkCreateTaskReponse {
        signature?: string;
        status: "success" | "error";
        taskId?: string;
    }

    Properties

    signature? +GibworkCreateTaskReponse | solana-agent-kit

    Interface GibworkCreateTaskReponse

    interface GibworkCreateTaskReponse {
        signature?: string;
        status: "success" | "error";
        taskId?: string;
    }

    Properties

    signature?: string
    status: "success" | "error"
    taskId?: string
    +

    Properties

    signature?: string
    status: "success" | "error"
    taskId?: string
    diff --git a/docs/interfaces/JupiterTokenData.html b/docs/interfaces/JupiterTokenData.html index 5e81a93..0bd1b89 100644 --- a/docs/interfaces/JupiterTokenData.html +++ b/docs/interfaces/JupiterTokenData.html @@ -1,4 +1,4 @@ -JupiterTokenData | solana-agent-kit

    Interface JupiterTokenData

    interface JupiterTokenData {
        address: string;
        daily_volume: number;
        decimals: number;
        extensions: { coingeckoId?: string };
        freeze_authority: null | string;
        logoURI: string;
        mint_authority: null | string;
        name: string;
        permanent_delegate: null | string;
        symbol: string;
        tags: string[];
    }

    Properties

    address +JupiterTokenData | solana-agent-kit

    Interface JupiterTokenData

    interface JupiterTokenData {
        address: string;
        daily_volume: number;
        decimals: number;
        extensions: { coingeckoId?: string };
        freeze_authority: null | string;
        logoURI: string;
        mint_authority: null | string;
        name: string;
        permanent_delegate: null | string;
        symbol: string;
        tags: string[];
    }

    Properties

    address: string
    daily_volume: number
    decimals: number
    extensions: { coingeckoId?: string }
    freeze_authority: null | string
    logoURI: string
    mint_authority: null | string
    name: string
    permanent_delegate: null | string
    symbol: string
    tags: string[]
    +

    Properties

    address: string
    daily_volume: number
    decimals: number
    extensions: { coingeckoId?: string }
    freeze_authority: null | string
    logoURI: string
    mint_authority: null | string
    name: string
    permanent_delegate: null | string
    symbol: string
    tags: string[]
    diff --git a/docs/interfaces/LuloAccountDetailsResponse.html b/docs/interfaces/LuloAccountDetailsResponse.html index 4b755d0..655faa4 100644 --- a/docs/interfaces/LuloAccountDetailsResponse.html +++ b/docs/interfaces/LuloAccountDetailsResponse.html @@ -1,6 +1,6 @@ LuloAccountDetailsResponse | solana-agent-kit

    Interface LuloAccountDetailsResponse

    Lulo Account Details response format

    -
    interface LuloAccountDetailsResponse {
        interestEarned: number;
        realtimeApy: number;
        settings: {
            allowedProtocols: null | string;
            homebase: null | string;
            minimumRate: string;
            owner: string;
        };
        totalValue: number;
    }

    Properties

    interface LuloAccountDetailsResponse {
        interestEarned: number;
        realtimeApy: number;
        settings: {
            allowedProtocols: null | string;
            homebase: null | string;
            minimumRate: string;
            owner: string;
        };
        totalValue: number;
    }

    Properties

    interestEarned: number
    realtimeApy: number
    settings: {
        allowedProtocols: null | string;
        homebase: null | string;
        minimumRate: string;
        owner: string;
    }
    totalValue: number
    +

    Properties

    interestEarned: number
    realtimeApy: number
    settings: {
        allowedProtocols: null | string;
        homebase: null | string;
        minimumRate: string;
        owner: string;
    }
    totalValue: number
    diff --git a/docs/interfaces/MintCollectionNFTResponse.html b/docs/interfaces/MintCollectionNFTResponse.html index 1434d20..0aeceb9 100644 --- a/docs/interfaces/MintCollectionNFTResponse.html +++ b/docs/interfaces/MintCollectionNFTResponse.html @@ -1,3 +1,3 @@ -MintCollectionNFTResponse | solana-agent-kit

    Interface MintCollectionNFTResponse

    interface MintCollectionNFTResponse {
        metadata: PublicKey;
        mint: PublicKey;
    }

    Properties

    metadata +MintCollectionNFTResponse | solana-agent-kit

    Interface MintCollectionNFTResponse

    interface MintCollectionNFTResponse {
        metadata: PublicKey;
        mint: PublicKey;
    }

    Properties

    Properties

    metadata: PublicKey
    mint: PublicKey
    +

    Properties

    metadata: PublicKey
    mint: PublicKey
    diff --git a/docs/interfaces/OrderParams.html b/docs/interfaces/OrderParams.html index 37eb2da..e84bf9e 100644 --- a/docs/interfaces/OrderParams.html +++ b/docs/interfaces/OrderParams.html @@ -1,4 +1,4 @@ -OrderParams | solana-agent-kit

    Interface OrderParams

    interface OrderParams {
        price: number;
        quantity: number;
        side: string;
    }

    Properties

    price +OrderParams | solana-agent-kit

    Interface OrderParams

    interface OrderParams {
        price: number;
        quantity: number;
        side: string;
    }

    Properties

    Properties

    price: number
    quantity: number
    side: string
    +

    Properties

    price: number
    quantity: number
    side: string
    diff --git a/docs/interfaces/PumpFunTokenOptions.html b/docs/interfaces/PumpFunTokenOptions.html index 1ab198a..f136e80 100644 --- a/docs/interfaces/PumpFunTokenOptions.html +++ b/docs/interfaces/PumpFunTokenOptions.html @@ -1,7 +1,7 @@ -PumpFunTokenOptions | solana-agent-kit

    Interface PumpFunTokenOptions

    interface PumpFunTokenOptions {
        initialLiquiditySOL?: number;
        priorityFee?: number;
        slippageBps?: number;
        telegram?: string;
        twitter?: string;
        website?: string;
    }

    Properties

    initialLiquiditySOL? +PumpFunTokenOptions | solana-agent-kit

    Interface PumpFunTokenOptions

    interface PumpFunTokenOptions {
        initialLiquiditySOL?: number;
        priorityFee?: number;
        slippageBps?: number;
        telegram?: string;
        twitter?: string;
        website?: string;
    }

    Properties

    initialLiquiditySOL?: number
    priorityFee?: number
    slippageBps?: number
    telegram?: string
    twitter?: string
    website?: string
    +

    Properties

    initialLiquiditySOL?: number
    priorityFee?: number
    slippageBps?: number
    telegram?: string
    twitter?: string
    website?: string
    diff --git a/docs/interfaces/PumpfunLaunchResponse.html b/docs/interfaces/PumpfunLaunchResponse.html index a8b1ca2..6323ce2 100644 --- a/docs/interfaces/PumpfunLaunchResponse.html +++ b/docs/interfaces/PumpfunLaunchResponse.html @@ -1,5 +1,5 @@ -PumpfunLaunchResponse | solana-agent-kit

    Interface PumpfunLaunchResponse

    interface PumpfunLaunchResponse {
        error?: string;
        metadataUri?: string;
        mint: string;
        signature: string;
    }

    Properties

    error? +PumpfunLaunchResponse | solana-agent-kit

    Interface PumpfunLaunchResponse

    interface PumpfunLaunchResponse {
        error?: string;
        metadataUri?: string;
        mint: string;
        signature: string;
    }

    Properties

    error?: string
    metadataUri?: string
    mint: string
    signature: string
    +

    Properties

    error?: string
    metadataUri?: string
    mint: string
    signature: string
    diff --git a/docs/interfaces/PythFetchPriceResponse.html b/docs/interfaces/PythFetchPriceResponse.html index dd040f2..b529966 100644 --- a/docs/interfaces/PythFetchPriceResponse.html +++ b/docs/interfaces/PythFetchPriceResponse.html @@ -1,7 +1,7 @@ -PythFetchPriceResponse | solana-agent-kit

    Interface PythFetchPriceResponse

    interface PythFetchPriceResponse {
        code?: string;
        message?: string;
        price?: string;
        priceFeedID?: string;
        status: "success" | "error";
        tokenSymbol: string;
    }

    Properties

    code? +PythFetchPriceResponse | solana-agent-kit

    Interface PythFetchPriceResponse

    interface PythFetchPriceResponse {
        code?: string;
        message?: string;
        price?: string;
        priceFeedID?: string;
        status: "success" | "error";
        tokenSymbol: string;
    }

    Properties

    code?: string
    message?: string
    price?: string
    priceFeedID?: string
    status: "success" | "error"
    tokenSymbol: string
    +

    Properties

    code?: string
    message?: string
    price?: string
    priceFeedID?: string
    status: "success" | "error"
    tokenSymbol: string
    diff --git a/docs/interfaces/PythPriceFeedIDItem.html b/docs/interfaces/PythPriceFeedIDItem.html index a37f6df..38d24b1 100644 --- a/docs/interfaces/PythPriceFeedIDItem.html +++ b/docs/interfaces/PythPriceFeedIDItem.html @@ -1,3 +1,3 @@ -PythPriceFeedIDItem | solana-agent-kit

    Interface PythPriceFeedIDItem

    interface PythPriceFeedIDItem {
        attributes: { asset_type: string; base: string };
        id: string;
    }

    Properties

    attributes +PythPriceFeedIDItem | solana-agent-kit

    Interface PythPriceFeedIDItem

    interface PythPriceFeedIDItem {
        attributes: { asset_type: string; base: string };
        id: string;
    }

    Properties

    Properties

    attributes: { asset_type: string; base: string }
    id: string
    +

    Properties

    attributes: { asset_type: string; base: string }
    id: string
    diff --git a/docs/interfaces/PythPriceItem.html b/docs/interfaces/PythPriceItem.html index ea18d2c..89d6f9a 100644 --- a/docs/interfaces/PythPriceItem.html +++ b/docs/interfaces/PythPriceItem.html @@ -1,3 +1,3 @@ -PythPriceItem | solana-agent-kit

    Interface PythPriceItem

    interface PythPriceItem {
        binary: { data: string[]; encoding: string };
        parsed: [
            {
                ema_price: {
                    conf: string;
                    expo: number;
                    price: string;
                    publish_time: number;
                };
                id: string;
                metadata: {
                    prev_publish_time: number;
                    proof_available_time: number;
                    slot: number;
                };
                price: {
                    conf: string;
                    expo: number;
                    price: string;
                    publish_time: number;
                };
            }[],
        ];
    }

    Properties

    binary +PythPriceItem | solana-agent-kit

    Interface PythPriceItem

    interface PythPriceItem {
        binary: { data: string[]; encoding: string };
        parsed: [
            {
                ema_price: {
                    conf: string;
                    expo: number;
                    price: string;
                    publish_time: number;
                };
                id: string;
                metadata: {
                    prev_publish_time: number;
                    proof_available_time: number;
                    slot: number;
                };
                price: {
                    conf: string;
                    expo: number;
                    price: string;
                    publish_time: number;
                };
            }[],
        ];
    }

    Properties

    Properties

    binary: { data: string[]; encoding: string }
    parsed: [
        {
            ema_price: {
                conf: string;
                expo: number;
                price: string;
                publish_time: number;
            };
            id: string;
            metadata: {
                prev_publish_time: number;
                proof_available_time: number;
                slot: number;
            };
            price: { conf: string; expo: number; price: string; publish_time: number };
        }[],
    ]
    +

    Properties

    binary: { data: string[]; encoding: string }
    parsed: [
        {
            ema_price: {
                conf: string;
                expo: number;
                price: string;
                publish_time: number;
            };
            id: string;
            metadata: {
                prev_publish_time: number;
                proof_available_time: number;
                slot: number;
            };
            price: { conf: string; expo: number; price: string; publish_time: number };
        }[],
    ]
    diff --git a/docs/interfaces/TokenCheck.html b/docs/interfaces/TokenCheck.html index 93f9306..85972e3 100644 --- a/docs/interfaces/TokenCheck.html +++ b/docs/interfaces/TokenCheck.html @@ -1,5 +1,5 @@ -TokenCheck | solana-agent-kit

    Interface TokenCheck

    interface TokenCheck {
        risks: {
            description: string;
            level: string;
            name: string;
            score: number;
        }[];
        score: number;
        tokenProgram: string;
        tokenType: string;
    }

    Properties

    risks +TokenCheck | solana-agent-kit

    Interface TokenCheck

    interface TokenCheck {
        risks: {
            description: string;
            level: string;
            name: string;
            score: number;
        }[];
        score: number;
        tokenProgram: string;
        tokenType: string;
    }

    Properties

    risks: { description: string; level: string; name: string; score: number }[]
    score: number
    tokenProgram: string
    tokenType: string
    +

    Properties

    risks: { description: string; level: string; name: string; score: number }[]
    score: number
    tokenProgram: string
    tokenType: string
    diff --git a/docs/types/Handler.html b/docs/types/Handler.html index 6076f3e..516c690 100644 --- a/docs/types/Handler.html +++ b/docs/types/Handler.html @@ -1,2 +1,2 @@ Handler | solana-agent-kit

    Type Alias Handler

    Handler: (
        agent: SolanaAgentKit,
        input: Record<string, any>,
    ) => Promise<Record<string, any>>

    Handler function type for executing the action

    -

    Type declaration

      • (
            agent: SolanaAgentKit,
            input: Record<string, any>,
        ): Promise<Record<string, any>>
      • Parameters

        Returns Promise<Record<string, any>>

    +

    Type declaration

      • (
            agent: SolanaAgentKit,
            input: Record<string, any>,
        ): Promise<Record<string, any>>
      • Parameters

        Returns Promise<Record<string, any>>

    diff --git a/docs/variables/actions.html b/docs/variables/actions.html index 10cd80e..2397c2d 100644 --- a/docs/variables/actions.html +++ b/docs/variables/actions.html @@ -1 +1 @@ -ACTIONS | solana-agent-kit

    Variable ACTIONSConst

    ACTIONS: {
        BALANCE_ACTION: Action;
        CREATE_GIBWORK_TASK_ACTION: Action;
        CREATE_IMAGE_ACTION: Action;
        CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: Action;
        DEPLOY_COLLECTION_ACTION: Action;
        DEPLOY_TOKEN_ACTION: Action;
        FETCH_PRICE_ACTION: Action;
        GET_ALL_DOMAINS_TLDS_ACTION: Action;
        GET_ALL_REGISTERED_ALL_DOMAINS_ACTION: Action;
        GET_MAIN_ALL_DOMAINS_DOMAIN_ACTION: Action;
        GET_OWNED_ALL_DOMAINS_ACTION: Action;
        GET_OWNED_DOMAINS_FOR_TLD_ACTION: Action;
        GET_PRIMARY_DOMAIN_ACTION: Action;
        GET_TOKEN_DATA_ACTION: Action;
        GET_TPS_ACTION: Action;
        LAUNCH_PUMPFUN_TOKEN_ACTION: Action;
        LEND_ASSET_ACTION: Action;
        MINT_NFT_ACTION: Action;
        PYTH_FETCH_PRICE_ACTION: Action;
        RAYDIUM_CREATE_AMM_V4_ACTION: Action;
        RAYDIUM_CREATE_CPMM_ACTION: Action;
        REGISTER_DOMAIN_ACTION: Action;
        REQUEST_FUNDS_ACTION: Action;
        RESOLVE_DOMAIN_ACTION: Action;
        RESOLVE_SOL_DOMAIN_ACTION: Action;
        STAKE_WITH_JUP_ACTION: Action;
        STAKE_WITH_SOLAYER_ACTION: Action;
        TRADE_ACTION: Action;
        TRANSFER_ACTION: Action;
        WALLET_ADDRESS_ACTION: Action;
    } = ...

    Type declaration

    • BALANCE_ACTION: Action
    • CREATE_GIBWORK_TASK_ACTION: Action
    • CREATE_IMAGE_ACTION: Action
    • CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: Action
    • DEPLOY_COLLECTION_ACTION: Action
    • DEPLOY_TOKEN_ACTION: Action
    • FETCH_PRICE_ACTION: Action
    • GET_ALL_DOMAINS_TLDS_ACTION: Action
    • GET_ALL_REGISTERED_ALL_DOMAINS_ACTION: Action
    • GET_MAIN_ALL_DOMAINS_DOMAIN_ACTION: Action
    • GET_OWNED_ALL_DOMAINS_ACTION: Action
    • GET_OWNED_DOMAINS_FOR_TLD_ACTION: Action
    • GET_PRIMARY_DOMAIN_ACTION: Action
    • GET_TOKEN_DATA_ACTION: Action
    • GET_TPS_ACTION: Action
    • LAUNCH_PUMPFUN_TOKEN_ACTION: Action
    • LEND_ASSET_ACTION: Action
    • MINT_NFT_ACTION: Action
    • PYTH_FETCH_PRICE_ACTION: Action
    • RAYDIUM_CREATE_AMM_V4_ACTION: Action
    • RAYDIUM_CREATE_CPMM_ACTION: Action
    • REGISTER_DOMAIN_ACTION: Action
    • REQUEST_FUNDS_ACTION: Action
    • RESOLVE_DOMAIN_ACTION: Action
    • RESOLVE_SOL_DOMAIN_ACTION: Action
    • STAKE_WITH_JUP_ACTION: Action
    • STAKE_WITH_SOLAYER_ACTION: Action
    • TRADE_ACTION: Action
    • TRANSFER_ACTION: Action
    • WALLET_ADDRESS_ACTION: Action
    +ACTIONS | solana-agent-kit

    Variable ACTIONSConst

    ACTIONS: {
        BALANCE_ACTION: Action;
        CREATE_GIBWORK_TASK_ACTION: Action;
        CREATE_IMAGE_ACTION: Action;
        CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: Action;
        DEPLOY_COLLECTION_ACTION: Action;
        DEPLOY_TOKEN_ACTION: Action;
        FETCH_PRICE_ACTION: Action;
        GET_ALL_DOMAINS_TLDS_ACTION: Action;
        GET_ALL_REGISTERED_ALL_DOMAINS_ACTION: Action;
        GET_MAIN_ALL_DOMAINS_DOMAIN_ACTION: Action;
        GET_OWNED_ALL_DOMAINS_ACTION: Action;
        GET_OWNED_DOMAINS_FOR_TLD_ACTION: Action;
        GET_PRIMARY_DOMAIN_ACTION: Action;
        GET_TOKEN_DATA_ACTION: Action;
        GET_TPS_ACTION: Action;
        LAUNCH_PUMPFUN_TOKEN_ACTION: Action;
        LEND_ASSET_ACTION: Action;
        MINT_NFT_ACTION: Action;
        PYTH_FETCH_PRICE_ACTION: Action;
        RAYDIUM_CREATE_AMM_V4_ACTION: Action;
        RAYDIUM_CREATE_CPMM_ACTION: Action;
        REGISTER_DOMAIN_ACTION: Action;
        REQUEST_FUNDS_ACTION: Action;
        RESOLVE_DOMAIN_ACTION: Action;
        RESOLVE_SOL_DOMAIN_ACTION: Action;
        STAKE_WITH_JUP_ACTION: Action;
        STAKE_WITH_SOLAYER_ACTION: Action;
        TRADE_ACTION: Action;
        TRANSFER_ACTION: Action;
        WALLET_ADDRESS_ACTION: Action;
    } = ...

    Type declaration

    • BALANCE_ACTION: Action
    • CREATE_GIBWORK_TASK_ACTION: Action
    • CREATE_IMAGE_ACTION: Action
    • CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: Action
    • DEPLOY_COLLECTION_ACTION: Action
    • DEPLOY_TOKEN_ACTION: Action
    • FETCH_PRICE_ACTION: Action
    • GET_ALL_DOMAINS_TLDS_ACTION: Action
    • GET_ALL_REGISTERED_ALL_DOMAINS_ACTION: Action
    • GET_MAIN_ALL_DOMAINS_DOMAIN_ACTION: Action
    • GET_OWNED_ALL_DOMAINS_ACTION: Action
    • GET_OWNED_DOMAINS_FOR_TLD_ACTION: Action
    • GET_PRIMARY_DOMAIN_ACTION: Action
    • GET_TOKEN_DATA_ACTION: Action
    • GET_TPS_ACTION: Action
    • LAUNCH_PUMPFUN_TOKEN_ACTION: Action
    • LEND_ASSET_ACTION: Action
    • MINT_NFT_ACTION: Action
    • PYTH_FETCH_PRICE_ACTION: Action
    • RAYDIUM_CREATE_AMM_V4_ACTION: Action
    • RAYDIUM_CREATE_CPMM_ACTION: Action
    • REGISTER_DOMAIN_ACTION: Action
    • REQUEST_FUNDS_ACTION: Action
    • RESOLVE_DOMAIN_ACTION: Action
    • RESOLVE_SOL_DOMAIN_ACTION: Action
    • STAKE_WITH_JUP_ACTION: Action
    • STAKE_WITH_SOLAYER_ACTION: Action
    • TRADE_ACTION: Action
    • TRANSFER_ACTION: Action
    • WALLET_ADDRESS_ACTION: Action
    diff --git a/package.json b/package.json index 5118f5a..0f396d2 100644 --- a/package.json +++ b/package.json @@ -42,6 +42,7 @@ "@onsol/tldparser": "^0.6.7", "@orca-so/common-sdk": "0.6.4", "@orca-so/whirlpools-sdk": "^0.13.12", + "@pythnetwork/hermes-client": "^1.3.0", "@raydium-io/raydium-sdk-v2": "0.1.95-alpha", "@solana/spl-token": "^0.4.9", "@solana/web3.js": "^1.98.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index c33cd86..157d2bf 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -65,6 +65,9 @@ importers: '@orca-so/whirlpools-sdk': specifier: ^0.13.12 version: 0.13.13(@coral-xyz/anchor@0.29.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@orca-so/common-sdk@0.6.4(@solana/spl-token@0.4.9(@solana/web3.js@1.98.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.2)(utf-8-validate@5.0.10))(@solana/web3.js@1.98.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(decimal.js@10.4.3))(@solana/spl-token@0.4.9(@solana/web3.js@1.98.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.2)(utf-8-validate@5.0.10))(@solana/web3.js@1.98.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(decimal.js@10.4.3) + '@pythnetwork/hermes-client': + specifier: ^1.3.0 + version: 1.3.0(axios@1.7.9) '@raydium-io/raydium-sdk-v2': specifier: 0.1.95-alpha version: 0.1.95-alpha(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.2)(utf-8-validate@5.0.10) @@ -618,6 +621,21 @@ packages: resolution: {integrity: sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==} engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} + '@pythnetwork/client@2.22.0': + resolution: {integrity: sha512-Cyv23YqewKUL1pcm99jfmdetUa2aaUXjyRF9jvSeFcY895FddRu7uSWftYiaevsnx7vn4WbJgQR6ExxH+aONow==} + peerDependencies: + '@solana/web3.js': ^1.30.2 + + '@pythnetwork/hermes-client@1.3.0': + resolution: {integrity: sha512-SneB+LJSD6pNnG2JUuAgbHNi1qFDcnrIiMuU60FQxZMtIWP09YFMR64vxWxVawyqR93t0iQHcV5HT/hhfmqYOQ==} + + '@pythnetwork/price-service-client@1.9.0': + resolution: {integrity: sha512-SLm3IFcfmy9iMqHeT4Ih6qMNZhJEefY14T9yTlpsH2D/FE5+BaGGnfcexUifVlfH6M7mwRC4hEFdNvZ6ebZjJg==} + deprecated: This package is deprecated and is no longer maintained. Please use @pythnetwork/hermes-client instead. + + '@pythnetwork/price-service-sdk@1.8.0': + resolution: {integrity: sha512-tFZ1thj3Zja06DzPIX2dEWSi7kIfIyqreoywvw5NQ3Z1pl5OJHQGMEhxt6Li3UCGSp2ooYZS9wl8/8XfrfrNSA==} + '@raydium-io/raydium-sdk-v2@0.1.95-alpha': resolution: {integrity: sha512-+u7yxo/R1JDysTCzOuAlh90ioBe2DlM2Hbcz/tFsxP/YzmnYQzShvNjcmc0361a4zJhmlrEJfpFXW0J3kkX5vA==} @@ -1007,6 +1025,12 @@ packages: '@ungap/structured-clone@1.2.1': resolution: {integrity: sha512-fEzPV3hSkSMltkw152tJKNARhOupqbH96MZWyRjNaYZOMIzbrTeQDG+MTc6Mr2pgzFQzFxAfmhGDNP5QK++2ZA==} + '@zodios/core@10.9.6': + resolution: {integrity: sha512-aH4rOdb3AcezN7ws8vDgBfGboZMk2JGGzEq/DtW65MhnRxyTGRuLJRWVQ/2KxDgWvV2F5oTkAS+5pnjKbl0n+A==} + peerDependencies: + axios: ^0.x || ^1.0.0 + zod: ^3.x + JSONStream@1.3.5: resolution: {integrity: sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==} hasBin: true @@ -1102,6 +1126,9 @@ packages: resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} engines: {node: '>= 0.4'} + axios-retry@3.9.1: + resolution: {integrity: sha512-8PJDLJv7qTTMMwdnbMvrLYuvB47M81wRtxQmEdV5w4rgbTXTt+vtPkXwajOfOdSyv/wZICJOC+/UhXH4aQ/R+w==} + axios@0.28.1: resolution: {integrity: sha512-iUcGA5a7p0mVb4Gm/sy+FSECNkPFT4y7wt6OM/CDpO/OnNCvSs3PoMG8ibrC9jRoGYU0gUK5pXVC4NPXq6lHRQ==} @@ -1582,6 +1609,10 @@ packages: resolution: {integrity: sha512-T1C0XCUimhxVQzW4zFipdx0SficT651NnkR0ZSH3yQwh+mFMdLfgjABVi4YtMTtaL4s168593DaoaRLMqryavA==} engines: {node: '>=18.0.0'} + eventsource@2.0.2: + resolution: {integrity: sha512-IzUmBGPR3+oUG9dUeXynyNmf91/3zUSJg1lCktzKw47OXuhco54U3r9B7O4XX+Rb1Itm9OZ2b0RkTs10bICOxA==} + engines: {node: '>=12.0.0'} + execa@8.0.1: resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} engines: {node: '>=16.17'} @@ -1700,6 +1731,10 @@ packages: resolution: {integrity: sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ==} engines: {node: '>= 12.20'} + formdata-polyfill@4.0.10: + resolution: {integrity: sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==} + engines: {node: '>=12.20.0'} + forwarded@0.2.0: resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==} engines: {node: '>= 0.6'} @@ -1911,6 +1946,10 @@ packages: resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} engines: {node: '>= 0.4'} + is-retry-allowed@2.2.0: + resolution: {integrity: sha512-XVm7LOeLpTW4jV19QSH38vkswxoLud8sQ57YwJVTPWdiaI9I8keEhGFpBlslyVsgdQy4Opg8QOLb8YRgsyZiQg==} + engines: {node: '>=10'} + is-stream@3.0.0: resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -2777,6 +2816,9 @@ packages: peerDependencies: typescript: '>=4.2.0' + ts-log@2.2.7: + resolution: {integrity: sha512-320x5Ggei84AxzlXp91QkIGSw5wgaLT6GeAH0KsqDmRZdVWW2OiSeVvElVoatk3f7nicwXlElXsoFkARiGE2yg==} + ts-node@10.9.2: resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==} hasBin: true @@ -3780,6 +3822,43 @@ snapshots: '@pkgr/core@0.1.1': {} + '@pythnetwork/client@2.22.0(@solana/web3.js@1.95.8(bufferutil@4.0.9)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.29.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) + '@coral-xyz/borsh': 0.28.0(@solana/web3.js@1.95.8(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(utf-8-validate@5.0.10) + buffer: 6.0.3 + transitivePeerDependencies: + - bufferutil + - encoding + - utf-8-validate + + '@pythnetwork/hermes-client@1.3.0(axios@1.7.9)': + dependencies: + '@zodios/core': 10.9.6(axios@1.7.9)(zod@3.24.1) + eventsource: 2.0.2 + zod: 3.24.1 + transitivePeerDependencies: + - axios + + '@pythnetwork/price-service-client@1.9.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)': + dependencies: + '@pythnetwork/price-service-sdk': 1.8.0 + '@types/ws': 8.5.13 + axios: 1.7.9 + axios-retry: 3.9.1 + isomorphic-ws: 4.0.1(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + ts-log: 2.2.7 + ws: 8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - bufferutil + - debug + - utf-8-validate + + '@pythnetwork/price-service-sdk@1.8.0': + dependencies: + bn.js: 5.2.1 + '@raydium-io/raydium-sdk-v2@0.1.95-alpha(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.2)(utf-8-validate@5.0.10)': dependencies: '@solana/buffer-layout': 4.0.1 @@ -4598,6 +4677,11 @@ snapshots: '@ungap/structured-clone@1.2.1': {} + '@zodios/core@10.9.6(axios@1.7.9)(zod@3.24.1)': + dependencies: + axios: 1.7.9 + zod: 3.24.1 + JSONStream@1.3.5: dependencies: jsonparse: 1.3.1 @@ -4686,6 +4770,11 @@ snapshots: dependencies: possible-typed-array-names: 1.0.0 + axios-retry@3.9.1: + dependencies: + '@babel/runtime': 7.26.0 + is-retry-allowed: 2.2.0 + axios@0.28.1: dependencies: follow-redirects: 1.15.9 @@ -5180,6 +5269,8 @@ snapshots: eventsource-parser@3.0.0: {} + eventsource@2.0.2: {} + execa@8.0.1: dependencies: cross-spawn: 7.0.6 @@ -5380,6 +5471,10 @@ snapshots: node-domexception: 1.0.0 web-streams-polyfill: 4.0.0-beta.3 + formdata-polyfill@4.0.10: + dependencies: + fetch-blob: 3.2.0 + forwarded@0.2.0: {} fresh@0.5.2: {} @@ -5607,6 +5702,8 @@ snapshots: has-tostringtag: 1.0.2 hasown: 2.0.2 + is-retry-allowed@2.2.0: {} + is-stream@3.0.0: {} is-typed-array@1.1.15: @@ -5621,6 +5718,10 @@ snapshots: dependencies: ws: 7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10) + isomorphic-ws@4.0.1(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)): + dependencies: + ws: 8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) + jackspeak@3.4.3: dependencies: '@isaacs/cliui': 8.0.2 @@ -6460,6 +6561,26 @@ snapshots: dependencies: typescript: 5.7.2 + ts-log@2.2.7: {} + + ts-node@10.9.2(@types/node@20.17.11)(typescript@5.7.2): + dependencies: + '@cspotcode/source-map-support': 0.8.1 + '@tsconfig/node10': 1.0.11 + '@tsconfig/node12': 1.0.11 + '@tsconfig/node14': 1.0.3 + '@tsconfig/node16': 1.0.4 + '@types/node': 20.17.11 + acorn: 8.14.0 + acorn-walk: 8.3.4 + arg: 4.1.3 + create-require: 1.1.1 + diff: 4.0.2 + make-error: 1.3.6 + typescript: 5.7.2 + v8-compile-cache-lib: 3.0.1 + yn: 3.1.1 + ts-node@10.9.2(@types/node@22.10.5)(typescript@5.7.2): dependencies: '@cspotcode/source-map-support': 0.8.1 diff --git a/src/langchain/index.ts b/src/langchain/index.ts index 5201d2b..3e3c375 100644 --- a/src/langchain/index.ts +++ b/src/langchain/index.ts @@ -782,15 +782,7 @@ export class SolanaFlashOpenTrade extends Tool { token: string, one of ["SOL", "BTC", "ETH"] (required) side: string, either "long" or "short" (required) collateralUsd: number, amount in USD for collateral eg 10 (required) - leverage: number, eg 5 for 5x leverage (required) - - Example: - { - "token": "SOL", - "side": "long", - "collateralUsd": 10, - "leverage": 5 - }`; + leverage: number, eg 5 for 5 times the leverage on collateral amount (required)`; constructor(private solanaKit: SolanaAgentKit) { super(); @@ -817,6 +809,8 @@ export class SolanaFlashOpenTrade extends Tool { throw new Error("Leverage must be positive"); } + console.log(parsedInput); + const tx = await this.solanaKit.flashOpenTrade({ token: parsedInput.token, side: parsedInput.side, @@ -898,7 +892,6 @@ export class SolanaFlashCloseTrade extends Tool { } } - export class SolanaPumpfunTokenLaunchTool extends Tool { name = "solana_launch_pumpfun_token"; @@ -2308,4 +2301,3 @@ export function createSolanaTools(solanaKit: SolanaAgentKit) { new SolanaFlashCloseTrade(solanaKit), ]; } - diff --git a/src/utils/flashUtils.ts b/src/utils/flashUtils.ts index 0b1a2ef..87cda80 100644 --- a/src/utils/flashUtils.ts +++ b/src/utils/flashUtils.ts @@ -1,310 +1,280 @@ -import { PriceServiceConnection } from "@pythnetwork/price-service-client"; -import { OraclePrice } from "flash-sdk"; -import { AnchorProvider, BN, Wallet } from "@coral-xyz/anchor"; -import { PoolConfig, Token, Referral, PerpetualsClient } from "flash-sdk"; -import { Cluster, PublicKey, Connection, Keypair } from "@solana/web3.js"; -import { getAssociatedTokenAddressSync } from "@solana/spl-token"; - -const POOL_NAMES = [ - "Crypto.1", - "Virtual.1", - "Governance.1", - "Community.1", - "Community.2", - "Community.3", -]; - -const DEFAULT_CLUSTER: Cluster = "mainnet-beta"; -export const POOL_CONFIGS = POOL_NAMES.map((f) => - PoolConfig.fromIdsByName(f, DEFAULT_CLUSTER), -); - -const DUPLICATE_TOKENS = POOL_CONFIGS.map((f) => f.tokens).flat(); -const tokenMap = new Map(); -for (const token of DUPLICATE_TOKENS) { - tokenMap.set(token.symbol, token); -} -export const ALL_TOKENS: Token[] = Array.from(tokenMap.values()); -export const ALL_CUSTODIES = POOL_CONFIGS.map((f) => f.custodies).flat(); -const PROGRAM_ID = POOL_CONFIGS[0].programId; - -// CU for trade instructions -export const OPEN_POSITION_CU = 150_000; -export const CLOSE_POSITION_CU = 180_000; - -const HERMES_URL = "https://hermes.pyth.network"; // Replace with the actual Hermes URL if different - -// Create a map of symbol to Pyth price ID -const PRICE_FEED_IDS = ALL_TOKENS.reduce( - (acc, token) => { - acc[token.symbol] = token.pythPriceId; - return acc; - }, - {} as { [key: string]: string }, -); - -const priceServiceConnection = new PriceServiceConnection(HERMES_URL, { - priceFeedRequestConfig: { - binary: true, - }, -}); - -export interface PythPriceEntry { - price: OraclePrice; - emaPrice: OraclePrice; - isStale: boolean; - status: PriceStatus; -} - -export enum PriceStatus { - Trading, - Unknown, - Halted, - Auction, -} - -export const fetchOraclePrice = async ( - symbol: string, -): Promise => { - const priceFeedId = PRICE_FEED_IDS[symbol]; - if (!priceFeedId) { - throw new Error(`Price feed ID not found for symbol: ${symbol}`); - } - - try { - const priceFeed = await priceServiceConnection.getLatestPriceFeeds([ - priceFeedId, - ]); - - if (!priceFeed || priceFeed.length === 0) { - throw new Error(`No price feed received for ${symbol}`); - } - - const price = priceFeed[0].getPriceUnchecked(); - const emaPrice = priceFeed[0].getEmaPriceUnchecked(); - - const priceOracle = new OraclePrice({ - price: new BN(price.price), - exponent: new BN(price.expo), - confidence: new BN(price.conf), - timestamp: new BN(price.publishTime), - }); - - const emaPriceOracle = new OraclePrice({ - price: new BN(emaPrice.price), - exponent: new BN(emaPrice.expo), - confidence: new BN(emaPrice.conf), - timestamp: new BN(emaPrice.publishTime), - }); - - const token = ALL_TOKENS.find((t) => t.pythPriceId === priceFeedId); - if (!token) { - throw new Error(`Token not found for price feed ID: ${priceFeedId}`); - } - - const status = !token.isVirtual ? PriceStatus.Trading : PriceStatus.Unknown; - - const pythPriceEntry: PythPriceEntry = { - price: priceOracle, - emaPrice: emaPriceOracle, - isStale: false, - status: status, - }; - - return pythPriceEntry; - } catch (error) { - console.error(`Error in fetchOraclePrice for ${symbol}:`, error); - throw error; - } -}; - -// If you need to get all price IDs for subscription or other purposes -export const getAllPriceIds = () => ALL_TOKENS.map((t) => t.pythPriceId); - -export const subscribeToPriceFeeds = ( - callback: (symbol: string, priceEntry: PythPriceEntry) => void, -) => { - const priceIds = getAllPriceIds(); - priceServiceConnection.subscribePriceFeedUpdates(priceIds, (priceFeed) => { - const token = ALL_TOKENS.find((f) => f.pythPriceId === `0x${priceFeed.id}`); - if (token) { - const priceOracle = new OraclePrice({ - price: new BN(priceFeed.getPriceUnchecked().price), - exponent: new BN(priceFeed.getPriceUnchecked().expo), - confidence: new BN(priceFeed.getPriceUnchecked().conf), - timestamp: new BN(priceFeed.getPriceUnchecked().publishTime), - }); - const emaPriceOracle = new OraclePrice({ - price: new BN(priceFeed.getEmaPriceUnchecked().price), - exponent: new BN(priceFeed.getEmaPriceUnchecked().expo), - confidence: new BN(priceFeed.getEmaPriceUnchecked().conf), - timestamp: new BN(priceFeed.getEmaPriceUnchecked().publishTime), - }); - - const status = !token.isVirtual - ? PriceStatus.Trading - : PriceStatus.Unknown; - const priceEntry: PythPriceEntry = { - price: priceOracle, - emaPrice: emaPriceOracle, - isStale: false, - status: status, - }; - callback(token.symbol, priceEntry); - } - }); -}; - -export interface MarketInfo { - [key: string]: { - tokenPair: string; - token: string; - side: string; - pool: string; - }; -} - -const marketSdkInfo: MarketInfo = {}; - -// Loop through POOL_CONFIGS to process each market -POOL_CONFIGS.forEach((poolConfig) => { - poolConfig.markets.forEach((market) => { - const targetToken = ALL_TOKENS.find( - (token) => token.mintKey.toString() === market.targetMint.toString(), - ); - - // Find collateral token by matching mintKey - const collateralToken = ALL_TOKENS.find( - (token) => token.mintKey.toString() === market.collateralMint.toString(), - ); - - if (targetToken?.symbol && collateralToken?.symbol) { - marketSdkInfo[market.marketAccount.toString()] = { - tokenPair: `${targetToken.symbol}/${collateralToken.symbol}`, - token: targetToken.symbol, - side: Object.keys(market.side)[0], - pool: poolConfig.poolName, - }; - } - }); -}); - -export { marketSdkInfo }; - -export interface MarketTokenSides { - [token: string]: { - long?: { marketID: string }; - short?: { marketID: string }; - }; -} - -const marketTokenMap: MarketTokenSides = {}; - -// Convert marketSdkInfo into marketTokenMap -Object.entries(marketSdkInfo).forEach(([marketID, info]) => { - if (!marketTokenMap[info.token]) { - marketTokenMap[info.token] = {}; - } - - marketTokenMap[info.token][info.side.toLowerCase() as 'long' | 'short'] = { - marketID - }; -}); - -export { marketTokenMap }; - -interface TradingAccountResult { - nftReferralAccountPK: PublicKey | null; - nftTradingAccountPk: PublicKey | null; - nftOwnerRebateTokenAccountPk: PublicKey | null; -} - -export async function getNftTradingAccountInfo( - userPublicKey: PublicKey, - perpClient: PerpetualsClient, - poolConfig: PoolConfig, - collateralCustodySymbol: string, -): Promise { - const getNFTReferralAccountPK = (publicKey: PublicKey) => { - return PublicKey.findProgramAddressSync( - [Buffer.from("referral"), publicKey.toBuffer()], - PROGRAM_ID, - )[0]; - }; - const nftReferralAccountPK = getNFTReferralAccountPK(userPublicKey); - const nftReferralAccountInfo = - await perpClient.provider.connection.getAccountInfo(nftReferralAccountPK); - - let nftTradingAccountPk: PublicKey | null = null; - let nftOwnerRebateTokenAccountPk: PublicKey | null = null; - - if (nftReferralAccountInfo) { - const nftReferralAccountData = perpClient.program.coder.accounts.decode( - "referral", - nftReferralAccountInfo.data, - ) as Referral; - - nftTradingAccountPk = nftReferralAccountData.refererTradingAccount; - - if (nftTradingAccountPk) { - const nftTradingAccountInfo = - await perpClient.provider.connection.getAccountInfo( - nftTradingAccountPk, - ); - if (nftTradingAccountInfo) { - const nftTradingAccount = perpClient.program.coder.accounts.decode( - "trading", - nftTradingAccountInfo.data, - ) as { owner: PublicKey }; - - nftOwnerRebateTokenAccountPk = getAssociatedTokenAddressSync( - poolConfig.getTokenFromSymbol(collateralCustodySymbol).mintKey, - nftTradingAccount.owner, - ); - // Check if the account exists - const accountExists = - await perpClient.provider.connection.getAccountInfo( - nftOwnerRebateTokenAccountPk, - ); - if (!accountExists) { - console.log( - "NFT owner rebate token account does not exist and may need to be created", - ); - } - } - } - } - - return { - nftReferralAccountPK, - nftTradingAccountPk, - nftOwnerRebateTokenAccountPk, - }; -} - -/** - * Creates a new PerpetualsClient instance with the given connection and wallet - * @param connection Solana connection - * @param wallet Solana wallet - * @returns PerpetualsClient instance - */ -export function createPerpClient(connection: Connection, wallet: Keypair): PerpetualsClient { - const provider = new AnchorProvider( - connection, - new Wallet(wallet), - { - commitment: 'confirmed', - preflightCommitment: 'confirmed', - skipPreflight: true - } - ); - - return new PerpetualsClient( - provider, - POOL_CONFIGS[0].programId, - POOL_CONFIGS[0].perpComposibilityProgramId, - POOL_CONFIGS[0].fbNftRewardProgramId, - POOL_CONFIGS[0].rewardDistributionProgram.programId, - {} - ); -} \ No newline at end of file +import { HermesClient } from "@pythnetwork/hermes-client"; +import { OraclePrice } from "flash-sdk"; +import { AnchorProvider, BN, Wallet } from "@coral-xyz/anchor"; +import { PoolConfig, Token, Referral, PerpetualsClient } from "flash-sdk"; +import { Cluster, PublicKey, Connection, Keypair } from "@solana/web3.js"; +import { getAssociatedTokenAddressSync } from "@solana/spl-token"; + +const POOL_NAMES = [ + "Crypto.1", + "Virtual.1", + "Governance.1", + "Community.1", + "Community.2", + "Community.3", +]; + +const DEFAULT_CLUSTER: Cluster = "mainnet-beta"; +export const POOL_CONFIGS = POOL_NAMES.map((f) => + PoolConfig.fromIdsByName(f, DEFAULT_CLUSTER), +); + +const DUPLICATE_TOKENS = POOL_CONFIGS.map((f) => f.tokens).flat(); +const tokenMap = new Map(); +for (const token of DUPLICATE_TOKENS) { + tokenMap.set(token.symbol, token); +} +export const ALL_TOKENS: Token[] = Array.from(tokenMap.values()); +export const ALL_CUSTODIES = POOL_CONFIGS.map((f) => f.custodies).flat(); +const PROGRAM_ID = POOL_CONFIGS[0].programId; + +// CU for trade instructions +export const OPEN_POSITION_CU = 150_000; +export const CLOSE_POSITION_CU = 180_000; + +const HERMES_URL = "https://hermes.pyth.network"; // Replace with the actual Hermes URL if different + +// Create a map of symbol to Pyth price ID +const PRICE_FEED_IDS = ALL_TOKENS.reduce( + (acc, token) => { + acc[token.symbol] = token.pythPriceId; + return acc; + }, + {} as { [key: string]: string }, +); + +const hermesClient = new HermesClient(HERMES_URL, {}); + +export interface PythPriceEntry { + price: OraclePrice; + emaPrice: OraclePrice; + isStale: boolean; + status: PriceStatus; +} + +export enum PriceStatus { + Trading, + Unknown, + Halted, + Auction, +} + +export const fetchOraclePrice = async ( + symbol: string, +): Promise => { + const priceFeedId = PRICE_FEED_IDS[symbol]; + if (!priceFeedId) { + throw new Error(`Price feed ID not found for symbol: ${symbol}`); + } + + try { + const hermesPriceFeed = await hermesClient.getPriceFeeds({ + query: symbol, + filter: "crypto", + }); + + if (!hermesPriceFeed || hermesPriceFeed.length === 0) { + throw new Error(`No price feed received for ${symbol}`); + } + + const hemrmesPriceUdpate = await hermesClient.getLatestPriceUpdates( + [priceFeedId], + { + encoding: "hex", + parsed: true, + }, + ); + + if (!hemrmesPriceUdpate.parsed) { + throw new Error(`No price feed received for ${symbol}`); + } + const hermesEma = hemrmesPriceUdpate.parsed[0].ema_price; + const hermesPrice = hemrmesPriceUdpate.parsed[0].price; + + const hermesPriceOracle = new OraclePrice({ + price: new BN(hermesPrice.price), + exponent: new BN(hermesPrice.expo), + confidence: new BN(hermesPrice.conf), + timestamp: new BN(hermesPrice.publish_time), + }); + + const hermesEmaOracle = new OraclePrice({ + price: new BN(hermesEma.price), + exponent: new BN(hermesEma.expo), + confidence: new BN(hermesEma.conf), + timestamp: new BN(hermesEma.publish_time), + }); + + const token = ALL_TOKENS.find((t) => t.pythPriceId === priceFeedId); + if (!token) { + throw new Error(`Token not found for price feed ID: ${priceFeedId}`); + } + + const status = !token.isVirtual ? PriceStatus.Trading : PriceStatus.Unknown; + + const pythPriceEntry: PythPriceEntry = { + price: hermesPriceOracle, + emaPrice: hermesEmaOracle, + isStale: false, + status: status, + }; + + return pythPriceEntry; + } catch (error) { + console.error(`Error in fetchOraclePrice for ${symbol}:`, error); + throw error; + } +}; + +export interface MarketInfo { + [key: string]: { + tokenPair: string; + token: string; + side: string; + pool: string; + }; +} + +const marketSdkInfo: MarketInfo = {}; + +// Loop through POOL_CONFIGS to process each market +POOL_CONFIGS.forEach((poolConfig) => { + poolConfig.markets.forEach((market) => { + const targetToken = ALL_TOKENS.find( + (token) => token.mintKey.toString() === market.targetMint.toString(), + ); + + // Find collateral token by matching mintKey + const collateralToken = ALL_TOKENS.find( + (token) => token.mintKey.toString() === market.collateralMint.toString(), + ); + + if (targetToken?.symbol && collateralToken?.symbol) { + marketSdkInfo[market.marketAccount.toString()] = { + tokenPair: `${targetToken.symbol}/${collateralToken.symbol}`, + token: targetToken.symbol, + side: Object.keys(market.side)[0], + pool: poolConfig.poolName, + }; + } + }); +}); + +export { marketSdkInfo }; + +export interface MarketTokenSides { + [token: string]: { + long?: { marketID: string }; + short?: { marketID: string }; + }; +} + +const marketTokenMap: MarketTokenSides = {}; + +// Convert marketSdkInfo into marketTokenMap +Object.entries(marketSdkInfo).forEach(([marketID, info]) => { + if (!marketTokenMap[info.token]) { + marketTokenMap[info.token] = {}; + } + + marketTokenMap[info.token][info.side.toLowerCase() as "long" | "short"] = { + marketID, + }; +}); + +export { marketTokenMap }; + +interface TradingAccountResult { + nftReferralAccountPK: PublicKey | null; + nftTradingAccountPk: PublicKey | null; + nftOwnerRebateTokenAccountPk: PublicKey | null; +} + +export async function getNftTradingAccountInfo( + userPublicKey: PublicKey, + perpClient: PerpetualsClient, + poolConfig: PoolConfig, + collateralCustodySymbol: string, +): Promise { + const getNFTReferralAccountPK = (publicKey: PublicKey) => { + return PublicKey.findProgramAddressSync( + [Buffer.from("referral"), publicKey.toBuffer()], + PROGRAM_ID, + )[0]; + }; + const nftReferralAccountPK = getNFTReferralAccountPK(userPublicKey); + const nftReferralAccountInfo = + await perpClient.provider.connection.getAccountInfo(nftReferralAccountPK); + + let nftTradingAccountPk: PublicKey | null = null; + let nftOwnerRebateTokenAccountPk: PublicKey | null = null; + + if (nftReferralAccountInfo) { + const nftReferralAccountData = perpClient.program.coder.accounts.decode( + "referral", + nftReferralAccountInfo.data, + ) as Referral; + + nftTradingAccountPk = nftReferralAccountData.refererTradingAccount; + + if (nftTradingAccountPk) { + const nftTradingAccountInfo = + await perpClient.provider.connection.getAccountInfo( + nftTradingAccountPk, + ); + if (nftTradingAccountInfo) { + const nftTradingAccount = perpClient.program.coder.accounts.decode( + "trading", + nftTradingAccountInfo.data, + ) as { owner: PublicKey }; + + nftOwnerRebateTokenAccountPk = getAssociatedTokenAddressSync( + poolConfig.getTokenFromSymbol(collateralCustodySymbol).mintKey, + nftTradingAccount.owner, + ); + // Check if the account exists + const accountExists = + await perpClient.provider.connection.getAccountInfo( + nftOwnerRebateTokenAccountPk, + ); + if (!accountExists) { + console.log( + "NFT owner rebate token account does not exist and may need to be created", + ); + } + } + } + } + + return { + nftReferralAccountPK, + nftTradingAccountPk, + nftOwnerRebateTokenAccountPk, + }; +} + +/** + * Creates a new PerpetualsClient instance with the given connection and wallet + * @param connection Solana connection + * @param wallet Solana wallet + * @returns PerpetualsClient instance + */ +export function createPerpClient( + connection: Connection, + wallet: Keypair, +): PerpetualsClient { + const provider = new AnchorProvider(connection, new Wallet(wallet), { + commitment: "confirmed", + preflightCommitment: "confirmed", + skipPreflight: true, + }); + + return new PerpetualsClient( + provider, + POOL_CONFIGS[0].programId, + POOL_CONFIGS[0].perpComposibilityProgramId, + POOL_CONFIGS[0].fbNftRewardProgramId, + POOL_CONFIGS[0].rewardDistributionProgram.programId, + {}, + ); +} From 6f85cbddcde18aa12ec85616d125554144158b9a Mon Sep 17 00:00:00 2001 From: UjjwalGupta49 Date: Mon, 6 Jan 2025 10:07:58 +0530 Subject: [PATCH 5/8] flash open and close position --- docs/classes/SolanaAgentKit.html | 16 ++--- docs/functions/createSolanaTools.html | 2 +- docs/functions/createVercelAITools.html | 2 +- docs/functions/executeAction.html | 2 +- docs/functions/findAction.html | 2 +- docs/functions/getActionExamples.html | 2 +- docs/interfaces/Action.html | 14 ++-- docs/interfaces/ActionExample.html | 4 +- docs/interfaces/BatchOrderPattern.html | 4 +- docs/interfaces/CollectionDeployment.html | 4 +- docs/interfaces/CollectionOptions.html | 4 +- docs/interfaces/Config.html | 4 +- docs/interfaces/Creator.html | 4 +- docs/interfaces/FetchPriceResponse.html | 4 +- docs/interfaces/GibworkCreateTaskReponse.html | 4 +- docs/interfaces/JupiterTokenData.html | 4 +- .../LuloAccountDetailsResponse.html | 4 +- .../interfaces/MintCollectionNFTResponse.html | 4 +- docs/interfaces/OrderParams.html | 4 +- docs/interfaces/PumpFunTokenOptions.html | 4 +- docs/interfaces/PumpfunLaunchResponse.html | 4 +- docs/interfaces/PythFetchPriceResponse.html | 4 +- docs/interfaces/PythPriceFeedIDItem.html | 4 +- docs/interfaces/PythPriceItem.html | 4 +- docs/interfaces/TokenCheck.html | 4 +- docs/types/Handler.html | 2 +- docs/variables/actions.html | 2 +- src/langchain/index.ts | 69 +++++++++++-------- 28 files changed, 97 insertions(+), 88 deletions(-) diff --git a/docs/classes/SolanaAgentKit.html b/docs/classes/SolanaAgentKit.html index 1c0e5e1..b197b99 100644 --- a/docs/classes/SolanaAgentKit.html +++ b/docs/classes/SolanaAgentKit.html @@ -1,7 +1,7 @@ SolanaAgentKit | solana-agent-kit

    Class SolanaAgentKit

    Main class for interacting with Solana blockchain Provides a unified interface for token operations, NFT management, trading and more

    SolanaAgentKit

    -

    Constructors

    Constructors

    Properties

    config connection wallet @@ -67,14 +67,14 @@ Please use the new constructor with Config object instead:

    const agent = new SolanaAgentKit(privateKey, rpcUrl, {
    OPENAI_API_KEY: 'your-key'
    });
    -
  • Parameters

    • private_key: string
    • rpc_url: string
    • config: Config

    Returns SolanaAgentKit

  • Properties

    config: Config

    Configuration object

    -
    connection: Connection

    Solana RPC connection

    -
    wallet: Keypair

    Wallet keypair for signing transactions

    -
    wallet_address: PublicKey

    Public key of the wallet

    -

    Methods

    • Parameters

      • marketId: PublicKey

      Returns Promise<string>

    • Parameters

      • args: Omit<{ agent: SolanaAgentKit; price: number; tradeMint: PublicKey }, "agent">

      Returns Promise<string>

    • Parameters

      • args: Omit<{ agent: SolanaAgentKit; price: number; tradeMint: PublicKey }, "agent">

      Returns Promise<string>

    • Parameters

      • title: string
      • content: string
      • requirements: string
      • tags: string[]
      • tokenMintAddress: string
      • tokenAmount: number
      • Optionalpayer: string

      Returns Promise<GibworkCreateTaskReponse>

    • Parameters

      • amount: number
      • OptionalsplmintAddress: PublicKey

      Returns Promise<{ signature: string; url: string }>

    • Parameters

      • name: string
      • uri: string
      • symbol: string
      • decimals: number = DEFAULT_OPTIONS.TOKEN_DECIMALS
      • OptionalinitialSupply: number

      Returns Promise<{ mint: PublicKey }>

    • Parameters

      • mint: string

      Returns Promise<string>

    • Closes an existing trading position on Flash.Trade

      +
  • Parameters

    • private_key: string
    • rpc_url: string
    • config: Config

    Returns SolanaAgentKit

  • Properties

    config: Config

    Configuration object

    +
    connection: Connection

    Solana RPC connection

    +
    wallet: Keypair

    Wallet keypair for signing transactions

    +
    wallet_address: PublicKey

    Public key of the wallet

    +

    Methods

    • Parameters

      • marketId: PublicKey

      Returns Promise<string>

    • Parameters

      • args: Omit<{ agent: SolanaAgentKit; price: number; tradeMint: PublicKey }, "agent">

      Returns Promise<string>

    • Parameters

      • args: Omit<{ agent: SolanaAgentKit; price: number; tradeMint: PublicKey }, "agent">

      Returns Promise<string>

    • Parameters

      • title: string
      • content: string
      • requirements: string
      • tags: string[]
      • tokenMintAddress: string
      • tokenAmount: number
      • Optionalpayer: string

      Returns Promise<GibworkCreateTaskReponse>

    • Parameters

      • amount: number
      • OptionalsplmintAddress: PublicKey

      Returns Promise<{ signature: string; url: string }>

    • Parameters

      • name: string
      • uri: string
      • symbol: string
      • decimals: number = DEFAULT_OPTIONS.TOKEN_DECIMALS
      • OptionalinitialSupply: number

      Returns Promise<{ mint: PublicKey }>

    • Parameters

      • mint: string

      Returns Promise<string>

    • Closes an existing trading position on Flash.Trade

      Parameters

      • params: FlashCloseTradeParams

        Flash trade close parameters

      Returns Promise<string>

      Transaction signature

      -
    • Opens a new trading position on Flash.Trade

      +
    • Opens a new trading position on Flash.Trade

      Parameters

      • params: FlashTradeParams

        Flash trade parameters including market, side, collateral, leverage, and pool name

      Returns Promise<string>

      Transaction signature

      -
    • Returns Promise<string[]>

    • Returns Promise<string[]>

    • Parameters

      • Optionaltoken_address: PublicKey

      Returns Promise<number>

    • Parameters

      • walletAddress: PublicKey
      • OptionaltokenAddress: PublicKey

      Returns Promise<number>

    • Parameters

      • owner: PublicKey

      Returns Promise<null | string>

    • Parameters

      • owner: PublicKey

      Returns Promise<string[]>

    • Parameters

      • tld: string

      Returns Promise<string[]>

    • Parameters

      • account: PublicKey

      Returns Promise<string>

    • Parameters

      • priceFeedID: string

      Returns Promise<string>

    • Parameters

      • tokenSymbol: string

      Returns Promise<string>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey
      • quantity: number
      • side: string
      • price: number

      Returns Promise<string>

    • Parameters

      • baseMint: PublicKey
      • quoteMint: PublicKey

      Returns Promise<string[]>

    • Parameters

      • collectionMint: PublicKey
      • metadata: {
            creators?: { address: string; share: number }[];
            name: string;
            sellerFeeBasisPoints?: number;
            uri: string;
        }
      • Optionalrecipient: PublicKey

      Returns Promise<MintCollectionNFTResponse>

    • Parameters

      • baseMint: PublicKey
      • quoteMint: PublicKey
      • lotSize: number = 1
      • tickSize: number = 0.01

      Returns Promise<string[]>

    • Parameters

      • args: Omit<
            {
                agent: SolanaAgentKit;
                collateralAmount: number;
                collateralMint?: PublicKey;
                leverage?: number;
                price: number;
                slippage?: number;
                tradeMint?: PublicKey;
            },
            "agent",
        >

      Returns Promise<string>

    • Parameters

      • args: Omit<
            {
                agent: SolanaAgentKit;
                collateralAmount: number;
                collateralMint?: PublicKey;
                leverage?: number;
                price: number;
                slippage?: number;
                tradeMint?: PublicKey;
            },
            "agent",
        >

      Returns Promise<string>

    • Parameters

      • positionMintAddress: PublicKey

      Returns Promise<string>

    • Parameters

      • mintDeploy: PublicKey
      • mintPair: PublicKey
      • initialPrice: Decimal
      • feeTier: 1 | 2 | 4 | 5 | 16 | 30 | 65 | 100 | 200

      Returns Promise<string>

    • Parameters

      • depositTokenAmount: number
      • depositTokenMint: PublicKey
      • otherTokenMint: PublicKey
      • initialPrice: Decimal
      • maxPrice: Decimal
      • feeTier: 1 | 2 | 4 | 5 | 16 | 30 | 65 | 100 | 200

      Returns Promise<string>

    • Parameters

      • whirlpoolAddress: PublicKey
      • priceOffsetBps: number
      • inputTokenMint: PublicKey
      • inputAmount: Decimal

      Returns Promise<string>

    • Parameters

      • whirlpoolAddress: PublicKey
      • distanceFromCurrentPriceBps: number
      • widthBps: number
      • inputTokenMint: PublicKey
      • inputAmount: Decimal

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey
      • baseAmount: BN
      • quoteAmount: BN
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • mint1: PublicKey
      • mint2: PublicKey
      • configId: PublicKey
      • initialPrice: Decimal
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • mint1: PublicKey
      • mint2: PublicKey
      • configId: PublicKey
      • mintAAmount: BN
      • mintBAmount: BN
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • name: string
      • OptionalspaceKB: number

      Returns Promise<string>

    • Parameters

      • domain: string

      Returns Promise<undefined | PublicKey>

    • Parameters

      • domain: string

      Returns Promise<PublicKey>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • amount: number
      • choice: "rock" | "paper" | "scissors"

      Returns Promise<string>

    • Parameters

      • mintAddress: string
      • amount: number
      • decimals: number
      • recipients: string[]
      • priorityFeeInLamports: number
      • shouldLog: boolean

      Returns Promise<string[]>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • nftMint: PublicKey

      Returns Promise<string>

    • Parameters

      • nftMint: PublicKey
      • price: number

      Returns Promise<string>

    • Parameters

      • outputMint: PublicKey
      • inputAmount: number
      • OptionalinputMint: PublicKey
      • slippageBps: number = DEFAULT_OPTIONS.SLIPPAGE_BPS

      Returns Promise<string>

    • Parameters

      • to: PublicKey
      • amount: number
      • Optionalmint: PublicKey

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey

      Returns Promise<string>

    +
    • Returns Promise<string[]>

    • Returns Promise<string[]>

    • Parameters

      • Optionaltoken_address: PublicKey

      Returns Promise<number>

    • Parameters

      • walletAddress: PublicKey
      • OptionaltokenAddress: PublicKey

      Returns Promise<number>

    • Parameters

      • owner: PublicKey

      Returns Promise<null | string>

    • Parameters

      • owner: PublicKey

      Returns Promise<string[]>

    • Parameters

      • tld: string

      Returns Promise<string[]>

    • Parameters

      • account: PublicKey

      Returns Promise<string>

    • Parameters

      • priceFeedID: string

      Returns Promise<string>

    • Parameters

      • tokenSymbol: string

      Returns Promise<string>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey
      • quantity: number
      • side: string
      • price: number

      Returns Promise<string>

    • Parameters

      • baseMint: PublicKey
      • quoteMint: PublicKey

      Returns Promise<string[]>

    • Parameters

      • collectionMint: PublicKey
      • metadata: {
            creators?: { address: string; share: number }[];
            name: string;
            sellerFeeBasisPoints?: number;
            uri: string;
        }
      • Optionalrecipient: PublicKey

      Returns Promise<MintCollectionNFTResponse>

    • Parameters

      • baseMint: PublicKey
      • quoteMint: PublicKey
      • lotSize: number = 1
      • tickSize: number = 0.01

      Returns Promise<string[]>

    • Parameters

      • args: Omit<
            {
                agent: SolanaAgentKit;
                collateralAmount: number;
                collateralMint?: PublicKey;
                leverage?: number;
                price: number;
                slippage?: number;
                tradeMint?: PublicKey;
            },
            "agent",
        >

      Returns Promise<string>

    • Parameters

      • args: Omit<
            {
                agent: SolanaAgentKit;
                collateralAmount: number;
                collateralMint?: PublicKey;
                leverage?: number;
                price: number;
                slippage?: number;
                tradeMint?: PublicKey;
            },
            "agent",
        >

      Returns Promise<string>

    • Parameters

      • positionMintAddress: PublicKey

      Returns Promise<string>

    • Parameters

      • mintDeploy: PublicKey
      • mintPair: PublicKey
      • initialPrice: Decimal
      • feeTier: 1 | 2 | 4 | 5 | 16 | 30 | 65 | 100 | 200

      Returns Promise<string>

    • Parameters

      • depositTokenAmount: number
      • depositTokenMint: PublicKey
      • otherTokenMint: PublicKey
      • initialPrice: Decimal
      • maxPrice: Decimal
      • feeTier: 1 | 2 | 4 | 5 | 16 | 30 | 65 | 100 | 200

      Returns Promise<string>

    • Parameters

      • whirlpoolAddress: PublicKey
      • priceOffsetBps: number
      • inputTokenMint: PublicKey
      • inputAmount: Decimal

      Returns Promise<string>

    • Parameters

      • whirlpoolAddress: PublicKey
      • distanceFromCurrentPriceBps: number
      • widthBps: number
      • inputTokenMint: PublicKey
      • inputAmount: Decimal

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey
      • baseAmount: BN
      • quoteAmount: BN
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • mint1: PublicKey
      • mint2: PublicKey
      • configId: PublicKey
      • initialPrice: Decimal
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • mint1: PublicKey
      • mint2: PublicKey
      • configId: PublicKey
      • mintAAmount: BN
      • mintBAmount: BN
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • name: string
      • OptionalspaceKB: number

      Returns Promise<string>

    • Parameters

      • domain: string

      Returns Promise<undefined | PublicKey>

    • Parameters

      • domain: string

      Returns Promise<PublicKey>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • amount: number
      • choice: "rock" | "paper" | "scissors"

      Returns Promise<string>

    • Parameters

      • mintAddress: string
      • amount: number
      • decimals: number
      • recipients: string[]
      • priorityFeeInLamports: number
      • shouldLog: boolean

      Returns Promise<string[]>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • nftMint: PublicKey

      Returns Promise<string>

    • Parameters

      • nftMint: PublicKey
      • price: number

      Returns Promise<string>

    • Parameters

      • outputMint: PublicKey
      • inputAmount: number
      • OptionalinputMint: PublicKey
      • slippageBps: number = DEFAULT_OPTIONS.SLIPPAGE_BPS

      Returns Promise<string>

    • Parameters

      • to: PublicKey
      • amount: number
      • Optionalmint: PublicKey

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey

      Returns Promise<string>

    diff --git a/docs/functions/createSolanaTools.html b/docs/functions/createSolanaTools.html index 86f1f2d..d7b0810 100644 --- a/docs/functions/createSolanaTools.html +++ b/docs/functions/createSolanaTools.html @@ -1 +1 @@ -createSolanaTools | solana-agent-kit

    Function createSolanaTools

    • Parameters

      Returns (
          | SolanaBalanceTool
          | SolanaBalanceOtherTool
          | SolanaTransferTool
          | SolanaDeployTokenTool
          | SolanaDeployCollectionTool
          | SolanaMintNFTTool
          | SolanaPerpCloseTradeTool
          | SolanaPerpOpenTradeTool
          | SolanaTradeTool
          | SolanaLimitOrderTool
          | SolanaBatchOrderTool
          | SolanaCancelAllOrdersTool
          | SolanaWithdrawAllTool
          | SolanaRequestFundsTool
          | SolanaRegisterDomainTool
          | SolanaResolveDomainTool
          | SolanaGetDomainTool
          | SolanaGetWalletAddressTool
          | SolanaFlashOpenTrade
          | SolanaFlashCloseTrade
          | SolanaPumpfunTokenLaunchTool
          | SolanaCreateImageTool
          | SolanaLendAssetTool
          | SolanaTPSCalculatorTool
          | SolanaStakeTool
          | SolanaRestakeTool
          | SolanaFetchPriceTool
          | SolanaTokenDataTool
          | SolanaTokenDataByTickerTool
          | SolanaCompressedAirdropTool
          | SolanaClosePosition
          | SolanaOrcaCreateCLMM
          | SolanaOrcaCreateSingleSideLiquidityPool
          | SolanaOrcaFetchPositions
          | SolanaOrcaOpenCenteredPosition
          | SolanaOrcaOpenSingleSidedPosition
          | SolanaRaydiumCreateAmmV4
          | SolanaRaydiumCreateClmm
          | SolanaRaydiumCreateCpmm
          | SolanaOpenbookCreateMarket
          | SolanaManifestCreateMarket
          | SolanaPythFetchPrice
          | SolanaResolveAllDomainsTool
          | SolanaGetOwnedDomains
          | SolanaGetOwnedTldDomains
          | SolanaGetAllTlds
          | SolanaGetMainDomain
          | SolanaCreateGibworkTask
          | SolanaRockPaperScissorsTool
          | SolanaTipLinkTool
          | SolanaListNFTForSaleTool
          | SolanaCancelNFTListingTool
          | SolanaFetchTokenReportSummaryTool
          | SolanaFetchTokenDetailedReportTool
      )[]

    +createSolanaTools | solana-agent-kit

    Function createSolanaTools

    • Parameters

      Returns (
          | SolanaBalanceTool
          | SolanaBalanceOtherTool
          | SolanaTransferTool
          | SolanaDeployTokenTool
          | SolanaDeployCollectionTool
          | SolanaMintNFTTool
          | SolanaPerpCloseTradeTool
          | SolanaPerpOpenTradeTool
          | SolanaTradeTool
          | SolanaLimitOrderTool
          | SolanaBatchOrderTool
          | SolanaCancelAllOrdersTool
          | SolanaWithdrawAllTool
          | SolanaRequestFundsTool
          | SolanaRegisterDomainTool
          | SolanaResolveDomainTool
          | SolanaGetDomainTool
          | SolanaGetWalletAddressTool
          | SolanaFlashOpenTrade
          | SolanaFlashCloseTrade
          | SolanaPumpfunTokenLaunchTool
          | SolanaCreateImageTool
          | SolanaLendAssetTool
          | SolanaTPSCalculatorTool
          | SolanaStakeTool
          | SolanaRestakeTool
          | SolanaFetchPriceTool
          | SolanaTokenDataTool
          | SolanaTokenDataByTickerTool
          | SolanaCompressedAirdropTool
          | SolanaClosePosition
          | SolanaOrcaCreateCLMM
          | SolanaOrcaCreateSingleSideLiquidityPool
          | SolanaOrcaFetchPositions
          | SolanaOrcaOpenCenteredPosition
          | SolanaOrcaOpenSingleSidedPosition
          | SolanaRaydiumCreateAmmV4
          | SolanaRaydiumCreateClmm
          | SolanaRaydiumCreateCpmm
          | SolanaOpenbookCreateMarket
          | SolanaManifestCreateMarket
          | SolanaPythFetchPrice
          | SolanaResolveAllDomainsTool
          | SolanaGetOwnedDomains
          | SolanaGetOwnedTldDomains
          | SolanaGetAllTlds
          | SolanaGetMainDomain
          | SolanaCreateGibworkTask
          | SolanaRockPaperScissorsTool
          | SolanaTipLinkTool
          | SolanaListNFTForSaleTool
          | SolanaCancelNFTListingTool
          | SolanaFetchTokenReportSummaryTool
          | SolanaFetchTokenDetailedReportTool
      )[]

    diff --git a/docs/functions/createVercelAITools.html b/docs/functions/createVercelAITools.html index 56fc5d3..52ea314 100644 --- a/docs/functions/createVercelAITools.html +++ b/docs/functions/createVercelAITools.html @@ -1 +1 @@ -createVercelAITools | solana-agent-kit

    Function createVercelAITools

    +createVercelAITools | solana-agent-kit

    Function createVercelAITools

    diff --git a/docs/functions/executeAction.html b/docs/functions/executeAction.html index 05914e1..1667fa0 100644 --- a/docs/functions/executeAction.html +++ b/docs/functions/executeAction.html @@ -1,2 +1,2 @@ executeAction | solana-agent-kit

    Function executeAction

    • Execute an action with the given input

      -

      Parameters

      Returns Promise<Record<string, any>>

    +

    Parameters

    Returns Promise<Record<string, any>>

    diff --git a/docs/functions/findAction.html b/docs/functions/findAction.html index b374d5c..90b280e 100644 --- a/docs/functions/findAction.html +++ b/docs/functions/findAction.html @@ -1,2 +1,2 @@ findAction | solana-agent-kit

    Function findAction

    • Find an action by its name or one of its similes

      -

      Parameters

      • query: string

      Returns Action | undefined

    +

    Parameters

    • query: string

    Returns Action | undefined

    diff --git a/docs/functions/getActionExamples.html b/docs/functions/getActionExamples.html index 0900b3a..d8b9d1c 100644 --- a/docs/functions/getActionExamples.html +++ b/docs/functions/getActionExamples.html @@ -1,2 +1,2 @@ getActionExamples | solana-agent-kit

    Function getActionExamples

    • Get examples for an action

      -

      Parameters

      • action: Action

      Returns string

    +

    Parameters

    • action: Action

    Returns string

    diff --git a/docs/interfaces/Action.html b/docs/interfaces/Action.html index e7bb267..2acfea9 100644 --- a/docs/interfaces/Action.html +++ b/docs/interfaces/Action.html @@ -1,16 +1,16 @@ Action | solana-agent-kit

    Interface Action

    Main Action interface inspired by ELIZA This interface makes it easier to implement actions across different frameworks

    -
    interface Action {
        description: string;
        examples: ActionExample[][];
        handler: Handler;
        name: string;
        schema: ZodType;
        similes: string[];
    }

    Properties

    interface Action {
        description: string;
        examples: ActionExample[][];
        handler: Handler;
        name: string;
        schema: ZodType;
        similes: string[];
    }

    Properties

    description: string

    Detailed description of what the action does

    -
    examples: ActionExample[][]

    Array of example inputs and outputs for the action +

    examples: ActionExample[][]

    Array of example inputs and outputs for the action Each inner array represents a group of related examples

    -
    handler: Handler

    Function that executes the action

    -
    name: string

    Unique name of the action

    -
    schema: ZodType

    Zod schema for input validation

    -
    similes: string[]

    Alternative names/phrases that can trigger this action

    -
    +
    handler: Handler

    Function that executes the action

    +
    name: string

    Unique name of the action

    +
    schema: ZodType

    Zod schema for input validation

    +
    similes: string[]

    Alternative names/phrases that can trigger this action

    +
    diff --git a/docs/interfaces/ActionExample.html b/docs/interfaces/ActionExample.html index d7bd2e4..de5901b 100644 --- a/docs/interfaces/ActionExample.html +++ b/docs/interfaces/ActionExample.html @@ -1,5 +1,5 @@ ActionExample | solana-agent-kit

    Interface ActionExample

    Example of an action with input and output

    -
    interface ActionExample {
        explanation: string;
        input: Record<string, any>;
        output: Record<string, any>;
    }

    Properties

    interface ActionExample {
        explanation: string;
        input: Record<string, any>;
        output: Record<string, any>;
    }

    Properties

    explanation: string
    input: Record<string, any>
    output: Record<string, any>
    +

    Properties

    explanation: string
    input: Record<string, any>
    output: Record<string, any>
    diff --git a/docs/interfaces/BatchOrderPattern.html b/docs/interfaces/BatchOrderPattern.html index c359c78..e878ad4 100644 --- a/docs/interfaces/BatchOrderPattern.html +++ b/docs/interfaces/BatchOrderPattern.html @@ -1,7 +1,7 @@ -BatchOrderPattern | solana-agent-kit

    Interface BatchOrderPattern

    interface BatchOrderPattern {
        individualQuantity?: number;
        numberOfOrders?: number;
        priceRange?: { max?: number; min?: number };
        side: string;
        spacing?: { type: "percentage" | "fixed"; value: number };
        totalQuantity?: number;
    }

    Properties

    individualQuantity? +BatchOrderPattern | solana-agent-kit

    Interface BatchOrderPattern

    interface BatchOrderPattern {
        individualQuantity?: number;
        numberOfOrders?: number;
        priceRange?: { max?: number; min?: number };
        side: string;
        spacing?: { type: "percentage" | "fixed"; value: number };
        totalQuantity?: number;
    }

    Properties

    individualQuantity?: number
    numberOfOrders?: number
    priceRange?: { max?: number; min?: number }
    side: string
    spacing?: { type: "percentage" | "fixed"; value: number }
    totalQuantity?: number
    +

    Properties

    individualQuantity?: number
    numberOfOrders?: number
    priceRange?: { max?: number; min?: number }
    side: string
    spacing?: { type: "percentage" | "fixed"; value: number }
    totalQuantity?: number
    diff --git a/docs/interfaces/CollectionDeployment.html b/docs/interfaces/CollectionDeployment.html index 79dde67..aad01cf 100644 --- a/docs/interfaces/CollectionDeployment.html +++ b/docs/interfaces/CollectionDeployment.html @@ -1,3 +1,3 @@ -CollectionDeployment | solana-agent-kit

    Interface CollectionDeployment

    interface CollectionDeployment {
        collectionAddress: PublicKey;
        signature: Uint8Array;
    }

    Properties

    collectionAddress +CollectionDeployment | solana-agent-kit

    Interface CollectionDeployment

    interface CollectionDeployment {
        collectionAddress: PublicKey;
        signature: Uint8Array;
    }

    Properties

    collectionAddress: PublicKey
    signature: Uint8Array
    +

    Properties

    collectionAddress: PublicKey
    signature: Uint8Array
    diff --git a/docs/interfaces/CollectionOptions.html b/docs/interfaces/CollectionOptions.html index 76285b3..691cad1 100644 --- a/docs/interfaces/CollectionOptions.html +++ b/docs/interfaces/CollectionOptions.html @@ -1,5 +1,5 @@ -CollectionOptions | solana-agent-kit

    Interface CollectionOptions

    interface CollectionOptions {
        creators?: Creator[];
        name: string;
        royaltyBasisPoints?: number;
        uri: string;
    }

    Properties

    creators? +CollectionOptions | solana-agent-kit

    Interface CollectionOptions

    interface CollectionOptions {
        creators?: Creator[];
        name: string;
        royaltyBasisPoints?: number;
        uri: string;
    }

    Properties

    creators?: Creator[]
    name: string
    royaltyBasisPoints?: number
    uri: string
    +

    Properties

    creators?: Creator[]
    name: string
    royaltyBasisPoints?: number
    uri: string
    diff --git a/docs/interfaces/Config.html b/docs/interfaces/Config.html index 6ab645a..de0cf1d 100644 --- a/docs/interfaces/Config.html +++ b/docs/interfaces/Config.html @@ -1,4 +1,4 @@ -Config | solana-agent-kit

    Interface Config

    interface Config {
        JUPITER_FEE_BPS?: number;
        JUPITER_REFERRAL_ACCOUNT?: string;
        OPENAI_API_KEY?: string;
    }

    Properties

    JUPITER_FEE_BPS? +Config | solana-agent-kit

    Interface Config

    interface Config {
        JUPITER_FEE_BPS?: number;
        JUPITER_REFERRAL_ACCOUNT?: string;
        OPENAI_API_KEY?: string;
    }

    Properties

    JUPITER_FEE_BPS?: number
    JUPITER_REFERRAL_ACCOUNT?: string
    OPENAI_API_KEY?: string
    +

    Properties

    JUPITER_FEE_BPS?: number
    JUPITER_REFERRAL_ACCOUNT?: string
    OPENAI_API_KEY?: string
    diff --git a/docs/interfaces/Creator.html b/docs/interfaces/Creator.html index 82a2fe5..5ba7578 100644 --- a/docs/interfaces/Creator.html +++ b/docs/interfaces/Creator.html @@ -1,3 +1,3 @@ -Creator | solana-agent-kit

    Interface Creator

    interface Creator {
        address: string;
        percentage: number;
    }

    Properties

    address +Creator | solana-agent-kit

    Interface Creator

    interface Creator {
        address: string;
        percentage: number;
    }

    Properties

    Properties

    address: string
    percentage: number
    +

    Properties

    address: string
    percentage: number
    diff --git a/docs/interfaces/FetchPriceResponse.html b/docs/interfaces/FetchPriceResponse.html index bfbc2bc..dc5f168 100644 --- a/docs/interfaces/FetchPriceResponse.html +++ b/docs/interfaces/FetchPriceResponse.html @@ -1,6 +1,6 @@ -FetchPriceResponse | solana-agent-kit

    Interface FetchPriceResponse

    interface FetchPriceResponse {
        code?: string;
        message?: string;
        priceInUSDC?: string;
        status: "success" | "error";
        tokenId?: string;
    }

    Properties

    code? +FetchPriceResponse | solana-agent-kit

    Interface FetchPriceResponse

    interface FetchPriceResponse {
        code?: string;
        message?: string;
        priceInUSDC?: string;
        status: "success" | "error";
        tokenId?: string;
    }

    Properties

    code?: string
    message?: string
    priceInUSDC?: string
    status: "success" | "error"
    tokenId?: string
    +

    Properties

    code?: string
    message?: string
    priceInUSDC?: string
    status: "success" | "error"
    tokenId?: string
    diff --git a/docs/interfaces/GibworkCreateTaskReponse.html b/docs/interfaces/GibworkCreateTaskReponse.html index 2e13301..6ee732f 100644 --- a/docs/interfaces/GibworkCreateTaskReponse.html +++ b/docs/interfaces/GibworkCreateTaskReponse.html @@ -1,4 +1,4 @@ -GibworkCreateTaskReponse | solana-agent-kit

    Interface GibworkCreateTaskReponse

    interface GibworkCreateTaskReponse {
        signature?: string;
        status: "success" | "error";
        taskId?: string;
    }

    Properties

    signature? +GibworkCreateTaskReponse | solana-agent-kit

    Interface GibworkCreateTaskReponse

    interface GibworkCreateTaskReponse {
        signature?: string;
        status: "success" | "error";
        taskId?: string;
    }

    Properties

    signature?: string
    status: "success" | "error"
    taskId?: string
    +

    Properties

    signature?: string
    status: "success" | "error"
    taskId?: string
    diff --git a/docs/interfaces/JupiterTokenData.html b/docs/interfaces/JupiterTokenData.html index 0bd1b89..904e265 100644 --- a/docs/interfaces/JupiterTokenData.html +++ b/docs/interfaces/JupiterTokenData.html @@ -1,4 +1,4 @@ -JupiterTokenData | solana-agent-kit

    Interface JupiterTokenData

    interface JupiterTokenData {
        address: string;
        daily_volume: number;
        decimals: number;
        extensions: { coingeckoId?: string };
        freeze_authority: null | string;
        logoURI: string;
        mint_authority: null | string;
        name: string;
        permanent_delegate: null | string;
        symbol: string;
        tags: string[];
    }

    Properties

    address +JupiterTokenData | solana-agent-kit

    Interface JupiterTokenData

    interface JupiterTokenData {
        address: string;
        daily_volume: number;
        decimals: number;
        extensions: { coingeckoId?: string };
        freeze_authority: null | string;
        logoURI: string;
        mint_authority: null | string;
        name: string;
        permanent_delegate: null | string;
        symbol: string;
        tags: string[];
    }

    Properties

    address: string
    daily_volume: number
    decimals: number
    extensions: { coingeckoId?: string }
    freeze_authority: null | string
    logoURI: string
    mint_authority: null | string
    name: string
    permanent_delegate: null | string
    symbol: string
    tags: string[]
    +

    Properties

    address: string
    daily_volume: number
    decimals: number
    extensions: { coingeckoId?: string }
    freeze_authority: null | string
    logoURI: string
    mint_authority: null | string
    name: string
    permanent_delegate: null | string
    symbol: string
    tags: string[]
    diff --git a/docs/interfaces/LuloAccountDetailsResponse.html b/docs/interfaces/LuloAccountDetailsResponse.html index 655faa4..c7d0ea0 100644 --- a/docs/interfaces/LuloAccountDetailsResponse.html +++ b/docs/interfaces/LuloAccountDetailsResponse.html @@ -1,6 +1,6 @@ LuloAccountDetailsResponse | solana-agent-kit

    Interface LuloAccountDetailsResponse

    Lulo Account Details response format

    -
    interface LuloAccountDetailsResponse {
        interestEarned: number;
        realtimeApy: number;
        settings: {
            allowedProtocols: null | string;
            homebase: null | string;
            minimumRate: string;
            owner: string;
        };
        totalValue: number;
    }

    Properties

    interface LuloAccountDetailsResponse {
        interestEarned: number;
        realtimeApy: number;
        settings: {
            allowedProtocols: null | string;
            homebase: null | string;
            minimumRate: string;
            owner: string;
        };
        totalValue: number;
    }

    Properties

    interestEarned: number
    realtimeApy: number
    settings: {
        allowedProtocols: null | string;
        homebase: null | string;
        minimumRate: string;
        owner: string;
    }
    totalValue: number
    +

    Properties

    interestEarned: number
    realtimeApy: number
    settings: {
        allowedProtocols: null | string;
        homebase: null | string;
        minimumRate: string;
        owner: string;
    }
    totalValue: number
    diff --git a/docs/interfaces/MintCollectionNFTResponse.html b/docs/interfaces/MintCollectionNFTResponse.html index 0aeceb9..c08a446 100644 --- a/docs/interfaces/MintCollectionNFTResponse.html +++ b/docs/interfaces/MintCollectionNFTResponse.html @@ -1,3 +1,3 @@ -MintCollectionNFTResponse | solana-agent-kit

    Interface MintCollectionNFTResponse

    interface MintCollectionNFTResponse {
        metadata: PublicKey;
        mint: PublicKey;
    }

    Properties

    metadata +MintCollectionNFTResponse | solana-agent-kit

    Interface MintCollectionNFTResponse

    interface MintCollectionNFTResponse {
        metadata: PublicKey;
        mint: PublicKey;
    }

    Properties

    Properties

    metadata: PublicKey
    mint: PublicKey
    +

    Properties

    metadata: PublicKey
    mint: PublicKey
    diff --git a/docs/interfaces/OrderParams.html b/docs/interfaces/OrderParams.html index e84bf9e..215537b 100644 --- a/docs/interfaces/OrderParams.html +++ b/docs/interfaces/OrderParams.html @@ -1,4 +1,4 @@ -OrderParams | solana-agent-kit

    Interface OrderParams

    interface OrderParams {
        price: number;
        quantity: number;
        side: string;
    }

    Properties

    price +OrderParams | solana-agent-kit

    Interface OrderParams

    interface OrderParams {
        price: number;
        quantity: number;
        side: string;
    }

    Properties

    Properties

    price: number
    quantity: number
    side: string
    +

    Properties

    price: number
    quantity: number
    side: string
    diff --git a/docs/interfaces/PumpFunTokenOptions.html b/docs/interfaces/PumpFunTokenOptions.html index f136e80..085151e 100644 --- a/docs/interfaces/PumpFunTokenOptions.html +++ b/docs/interfaces/PumpFunTokenOptions.html @@ -1,7 +1,7 @@ -PumpFunTokenOptions | solana-agent-kit

    Interface PumpFunTokenOptions

    interface PumpFunTokenOptions {
        initialLiquiditySOL?: number;
        priorityFee?: number;
        slippageBps?: number;
        telegram?: string;
        twitter?: string;
        website?: string;
    }

    Properties

    initialLiquiditySOL? +PumpFunTokenOptions | solana-agent-kit

    Interface PumpFunTokenOptions

    interface PumpFunTokenOptions {
        initialLiquiditySOL?: number;
        priorityFee?: number;
        slippageBps?: number;
        telegram?: string;
        twitter?: string;
        website?: string;
    }

    Properties

    initialLiquiditySOL?: number
    priorityFee?: number
    slippageBps?: number
    telegram?: string
    twitter?: string
    website?: string
    +

    Properties

    initialLiquiditySOL?: number
    priorityFee?: number
    slippageBps?: number
    telegram?: string
    twitter?: string
    website?: string
    diff --git a/docs/interfaces/PumpfunLaunchResponse.html b/docs/interfaces/PumpfunLaunchResponse.html index 6323ce2..cb76516 100644 --- a/docs/interfaces/PumpfunLaunchResponse.html +++ b/docs/interfaces/PumpfunLaunchResponse.html @@ -1,5 +1,5 @@ -PumpfunLaunchResponse | solana-agent-kit

    Interface PumpfunLaunchResponse

    interface PumpfunLaunchResponse {
        error?: string;
        metadataUri?: string;
        mint: string;
        signature: string;
    }

    Properties

    error? +PumpfunLaunchResponse | solana-agent-kit

    Interface PumpfunLaunchResponse

    interface PumpfunLaunchResponse {
        error?: string;
        metadataUri?: string;
        mint: string;
        signature: string;
    }

    Properties

    error?: string
    metadataUri?: string
    mint: string
    signature: string
    +

    Properties

    error?: string
    metadataUri?: string
    mint: string
    signature: string
    diff --git a/docs/interfaces/PythFetchPriceResponse.html b/docs/interfaces/PythFetchPriceResponse.html index b529966..ec9c7f5 100644 --- a/docs/interfaces/PythFetchPriceResponse.html +++ b/docs/interfaces/PythFetchPriceResponse.html @@ -1,7 +1,7 @@ -PythFetchPriceResponse | solana-agent-kit

    Interface PythFetchPriceResponse

    interface PythFetchPriceResponse {
        code?: string;
        message?: string;
        price?: string;
        priceFeedID?: string;
        status: "success" | "error";
        tokenSymbol: string;
    }

    Properties

    code? +PythFetchPriceResponse | solana-agent-kit

    Interface PythFetchPriceResponse

    interface PythFetchPriceResponse {
        code?: string;
        message?: string;
        price?: string;
        priceFeedID?: string;
        status: "success" | "error";
        tokenSymbol: string;
    }

    Properties

    code?: string
    message?: string
    price?: string
    priceFeedID?: string
    status: "success" | "error"
    tokenSymbol: string
    +

    Properties

    code?: string
    message?: string
    price?: string
    priceFeedID?: string
    status: "success" | "error"
    tokenSymbol: string
    diff --git a/docs/interfaces/PythPriceFeedIDItem.html b/docs/interfaces/PythPriceFeedIDItem.html index 38d24b1..8fe5270 100644 --- a/docs/interfaces/PythPriceFeedIDItem.html +++ b/docs/interfaces/PythPriceFeedIDItem.html @@ -1,3 +1,3 @@ -PythPriceFeedIDItem | solana-agent-kit

    Interface PythPriceFeedIDItem

    interface PythPriceFeedIDItem {
        attributes: { asset_type: string; base: string };
        id: string;
    }

    Properties

    attributes +PythPriceFeedIDItem | solana-agent-kit

    Interface PythPriceFeedIDItem

    interface PythPriceFeedIDItem {
        attributes: { asset_type: string; base: string };
        id: string;
    }

    Properties

    Properties

    attributes: { asset_type: string; base: string }
    id: string
    +

    Properties

    attributes: { asset_type: string; base: string }
    id: string
    diff --git a/docs/interfaces/PythPriceItem.html b/docs/interfaces/PythPriceItem.html index 89d6f9a..9591b0b 100644 --- a/docs/interfaces/PythPriceItem.html +++ b/docs/interfaces/PythPriceItem.html @@ -1,3 +1,3 @@ -PythPriceItem | solana-agent-kit

    Interface PythPriceItem

    interface PythPriceItem {
        binary: { data: string[]; encoding: string };
        parsed: [
            {
                ema_price: {
                    conf: string;
                    expo: number;
                    price: string;
                    publish_time: number;
                };
                id: string;
                metadata: {
                    prev_publish_time: number;
                    proof_available_time: number;
                    slot: number;
                };
                price: {
                    conf: string;
                    expo: number;
                    price: string;
                    publish_time: number;
                };
            }[],
        ];
    }

    Properties

    binary +PythPriceItem | solana-agent-kit

    Interface PythPriceItem

    interface PythPriceItem {
        binary: { data: string[]; encoding: string };
        parsed: [
            {
                ema_price: {
                    conf: string;
                    expo: number;
                    price: string;
                    publish_time: number;
                };
                id: string;
                metadata: {
                    prev_publish_time: number;
                    proof_available_time: number;
                    slot: number;
                };
                price: {
                    conf: string;
                    expo: number;
                    price: string;
                    publish_time: number;
                };
            }[],
        ];
    }

    Properties

    Properties

    binary: { data: string[]; encoding: string }
    parsed: [
        {
            ema_price: {
                conf: string;
                expo: number;
                price: string;
                publish_time: number;
            };
            id: string;
            metadata: {
                prev_publish_time: number;
                proof_available_time: number;
                slot: number;
            };
            price: { conf: string; expo: number; price: string; publish_time: number };
        }[],
    ]
    +

    Properties

    binary: { data: string[]; encoding: string }
    parsed: [
        {
            ema_price: {
                conf: string;
                expo: number;
                price: string;
                publish_time: number;
            };
            id: string;
            metadata: {
                prev_publish_time: number;
                proof_available_time: number;
                slot: number;
            };
            price: { conf: string; expo: number; price: string; publish_time: number };
        }[],
    ]
    diff --git a/docs/interfaces/TokenCheck.html b/docs/interfaces/TokenCheck.html index 85972e3..5c3520f 100644 --- a/docs/interfaces/TokenCheck.html +++ b/docs/interfaces/TokenCheck.html @@ -1,5 +1,5 @@ -TokenCheck | solana-agent-kit

    Interface TokenCheck

    interface TokenCheck {
        risks: {
            description: string;
            level: string;
            name: string;
            score: number;
        }[];
        score: number;
        tokenProgram: string;
        tokenType: string;
    }

    Properties

    risks +TokenCheck | solana-agent-kit

    Interface TokenCheck

    interface TokenCheck {
        risks: {
            description: string;
            level: string;
            name: string;
            score: number;
        }[];
        score: number;
        tokenProgram: string;
        tokenType: string;
    }

    Properties

    risks: { description: string; level: string; name: string; score: number }[]
    score: number
    tokenProgram: string
    tokenType: string
    +

    Properties

    risks: { description: string; level: string; name: string; score: number }[]
    score: number
    tokenProgram: string
    tokenType: string
    diff --git a/docs/types/Handler.html b/docs/types/Handler.html index 516c690..dcfcf14 100644 --- a/docs/types/Handler.html +++ b/docs/types/Handler.html @@ -1,2 +1,2 @@ Handler | solana-agent-kit

    Type Alias Handler

    Handler: (
        agent: SolanaAgentKit,
        input: Record<string, any>,
    ) => Promise<Record<string, any>>

    Handler function type for executing the action

    -

    Type declaration

      • (
            agent: SolanaAgentKit,
            input: Record<string, any>,
        ): Promise<Record<string, any>>
      • Parameters

        Returns Promise<Record<string, any>>

    +

    Type declaration

      • (
            agent: SolanaAgentKit,
            input: Record<string, any>,
        ): Promise<Record<string, any>>
      • Parameters

        Returns Promise<Record<string, any>>

    diff --git a/docs/variables/actions.html b/docs/variables/actions.html index 2397c2d..b9c85c6 100644 --- a/docs/variables/actions.html +++ b/docs/variables/actions.html @@ -1 +1 @@ -ACTIONS | solana-agent-kit

    Variable ACTIONSConst

    ACTIONS: {
        BALANCE_ACTION: Action;
        CREATE_GIBWORK_TASK_ACTION: Action;
        CREATE_IMAGE_ACTION: Action;
        CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: Action;
        DEPLOY_COLLECTION_ACTION: Action;
        DEPLOY_TOKEN_ACTION: Action;
        FETCH_PRICE_ACTION: Action;
        GET_ALL_DOMAINS_TLDS_ACTION: Action;
        GET_ALL_REGISTERED_ALL_DOMAINS_ACTION: Action;
        GET_MAIN_ALL_DOMAINS_DOMAIN_ACTION: Action;
        GET_OWNED_ALL_DOMAINS_ACTION: Action;
        GET_OWNED_DOMAINS_FOR_TLD_ACTION: Action;
        GET_PRIMARY_DOMAIN_ACTION: Action;
        GET_TOKEN_DATA_ACTION: Action;
        GET_TPS_ACTION: Action;
        LAUNCH_PUMPFUN_TOKEN_ACTION: Action;
        LEND_ASSET_ACTION: Action;
        MINT_NFT_ACTION: Action;
        PYTH_FETCH_PRICE_ACTION: Action;
        RAYDIUM_CREATE_AMM_V4_ACTION: Action;
        RAYDIUM_CREATE_CPMM_ACTION: Action;
        REGISTER_DOMAIN_ACTION: Action;
        REQUEST_FUNDS_ACTION: Action;
        RESOLVE_DOMAIN_ACTION: Action;
        RESOLVE_SOL_DOMAIN_ACTION: Action;
        STAKE_WITH_JUP_ACTION: Action;
        STAKE_WITH_SOLAYER_ACTION: Action;
        TRADE_ACTION: Action;
        TRANSFER_ACTION: Action;
        WALLET_ADDRESS_ACTION: Action;
    } = ...

    Type declaration

    • BALANCE_ACTION: Action
    • CREATE_GIBWORK_TASK_ACTION: Action
    • CREATE_IMAGE_ACTION: Action
    • CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: Action
    • DEPLOY_COLLECTION_ACTION: Action
    • DEPLOY_TOKEN_ACTION: Action
    • FETCH_PRICE_ACTION: Action
    • GET_ALL_DOMAINS_TLDS_ACTION: Action
    • GET_ALL_REGISTERED_ALL_DOMAINS_ACTION: Action
    • GET_MAIN_ALL_DOMAINS_DOMAIN_ACTION: Action
    • GET_OWNED_ALL_DOMAINS_ACTION: Action
    • GET_OWNED_DOMAINS_FOR_TLD_ACTION: Action
    • GET_PRIMARY_DOMAIN_ACTION: Action
    • GET_TOKEN_DATA_ACTION: Action
    • GET_TPS_ACTION: Action
    • LAUNCH_PUMPFUN_TOKEN_ACTION: Action
    • LEND_ASSET_ACTION: Action
    • MINT_NFT_ACTION: Action
    • PYTH_FETCH_PRICE_ACTION: Action
    • RAYDIUM_CREATE_AMM_V4_ACTION: Action
    • RAYDIUM_CREATE_CPMM_ACTION: Action
    • REGISTER_DOMAIN_ACTION: Action
    • REQUEST_FUNDS_ACTION: Action
    • RESOLVE_DOMAIN_ACTION: Action
    • RESOLVE_SOL_DOMAIN_ACTION: Action
    • STAKE_WITH_JUP_ACTION: Action
    • STAKE_WITH_SOLAYER_ACTION: Action
    • TRADE_ACTION: Action
    • TRANSFER_ACTION: Action
    • WALLET_ADDRESS_ACTION: Action
    +ACTIONS | solana-agent-kit

    Variable ACTIONSConst

    ACTIONS: {
        BALANCE_ACTION: Action;
        CREATE_GIBWORK_TASK_ACTION: Action;
        CREATE_IMAGE_ACTION: Action;
        CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: Action;
        DEPLOY_COLLECTION_ACTION: Action;
        DEPLOY_TOKEN_ACTION: Action;
        FETCH_PRICE_ACTION: Action;
        GET_ALL_DOMAINS_TLDS_ACTION: Action;
        GET_ALL_REGISTERED_ALL_DOMAINS_ACTION: Action;
        GET_MAIN_ALL_DOMAINS_DOMAIN_ACTION: Action;
        GET_OWNED_ALL_DOMAINS_ACTION: Action;
        GET_OWNED_DOMAINS_FOR_TLD_ACTION: Action;
        GET_PRIMARY_DOMAIN_ACTION: Action;
        GET_TOKEN_DATA_ACTION: Action;
        GET_TPS_ACTION: Action;
        LAUNCH_PUMPFUN_TOKEN_ACTION: Action;
        LEND_ASSET_ACTION: Action;
        MINT_NFT_ACTION: Action;
        PYTH_FETCH_PRICE_ACTION: Action;
        RAYDIUM_CREATE_AMM_V4_ACTION: Action;
        RAYDIUM_CREATE_CPMM_ACTION: Action;
        REGISTER_DOMAIN_ACTION: Action;
        REQUEST_FUNDS_ACTION: Action;
        RESOLVE_DOMAIN_ACTION: Action;
        RESOLVE_SOL_DOMAIN_ACTION: Action;
        STAKE_WITH_JUP_ACTION: Action;
        STAKE_WITH_SOLAYER_ACTION: Action;
        TRADE_ACTION: Action;
        TRANSFER_ACTION: Action;
        WALLET_ADDRESS_ACTION: Action;
    } = ...

    Type declaration

    • BALANCE_ACTION: Action
    • CREATE_GIBWORK_TASK_ACTION: Action
    • CREATE_IMAGE_ACTION: Action
    • CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: Action
    • DEPLOY_COLLECTION_ACTION: Action
    • DEPLOY_TOKEN_ACTION: Action
    • FETCH_PRICE_ACTION: Action
    • GET_ALL_DOMAINS_TLDS_ACTION: Action
    • GET_ALL_REGISTERED_ALL_DOMAINS_ACTION: Action
    • GET_MAIN_ALL_DOMAINS_DOMAIN_ACTION: Action
    • GET_OWNED_ALL_DOMAINS_ACTION: Action
    • GET_OWNED_DOMAINS_FOR_TLD_ACTION: Action
    • GET_PRIMARY_DOMAIN_ACTION: Action
    • GET_TOKEN_DATA_ACTION: Action
    • GET_TPS_ACTION: Action
    • LAUNCH_PUMPFUN_TOKEN_ACTION: Action
    • LEND_ASSET_ACTION: Action
    • MINT_NFT_ACTION: Action
    • PYTH_FETCH_PRICE_ACTION: Action
    • RAYDIUM_CREATE_AMM_V4_ACTION: Action
    • RAYDIUM_CREATE_CPMM_ACTION: Action
    • REGISTER_DOMAIN_ACTION: Action
    • REQUEST_FUNDS_ACTION: Action
    • RESOLVE_DOMAIN_ACTION: Action
    • RESOLVE_SOL_DOMAIN_ACTION: Action
    • STAKE_WITH_JUP_ACTION: Action
    • STAKE_WITH_SOLAYER_ACTION: Action
    • TRADE_ACTION: Action
    • TRANSFER_ACTION: Action
    • WALLET_ADDRESS_ACTION: Action
    diff --git a/src/langchain/index.ts b/src/langchain/index.ts index 3e3c375..bcb824d 100644 --- a/src/langchain/index.ts +++ b/src/langchain/index.ts @@ -776,13 +776,15 @@ export class SolanaGetWalletAddressTool extends Tool { export class SolanaFlashOpenTrade extends Tool { name = "solana_flash_open_trade"; - description = `Opens a new leveraged trading position on Flash.Trade exchange. + description = `This tool can be used to open a new leveraged trading position on Flash.Trade exchange. - Inputs (input is a JSON string): - token: string, one of ["SOL", "BTC", "ETH"] (required) - side: string, either "long" or "short" (required) - collateralUsd: number, amount in USD for collateral eg 10 (required) - leverage: number, eg 5 for 5 times the leverage on collateral amount (required)`; + Inputs ( input is a JSON string ): + token: string, eg "SOL", "BTC", "ETH" (required) + type: string, eg "long", "short" (required) + collateral: number, eg 10, 100, 1000 (required) + leverage: number, eg 5, 10, 20 (required) + + Example prompt is Open a 20x leveraged trade for SOL on long side using flash trade with 500 USD as collateral`; constructor(private solanaKit: SolanaAgentKit) { super(); @@ -792,29 +794,40 @@ export class SolanaFlashOpenTrade extends Tool { try { const parsedInput = JSON.parse(input); + console.log(parsedInput); + // Validate input parameters if (!parsedInput.token) { - throw new Error("Token is required"); + throw new Error("Token is required, received: " + parsedInput.token); } - if (!["SOL", "BTC", "ETH"].includes(parsedInput.token)) { - throw new Error('Token must be one of ["SOL", "BTC", "ETH"]'); + if (!["SOL", "BTC", "ETH", "USDC"].includes(parsedInput.token)) { + throw new Error( + 'Token must be one of ["SOL", "BTC", "ETH", "USDC"], received: ' + + parsedInput.token, + ); } - if (!["long", "short"].includes(parsedInput.side)) { - throw new Error('Side must be either "long" or "short"'); + if (!["long", "short"].includes(parsedInput.type)) { + throw new Error( + 'Type must be either "long" or "short", received: ' + + parsedInput.type, + ); } - if (!parsedInput.collateralUsd || parsedInput.collateralUsd <= 0) { - throw new Error("Collateral USD amount must be positive"); + if (!parsedInput.collateral || parsedInput.collateral <= 0) { + throw new Error( + "Collateral amount must be positive, received: " + + parsedInput.collateral, + ); } if (!parsedInput.leverage || parsedInput.leverage <= 0) { - throw new Error("Leverage must be positive"); + throw new Error( + "Leverage must be positive, received: " + parsedInput.leverage, + ); } - console.log(parsedInput); - const tx = await this.solanaKit.flashOpenTrade({ token: parsedInput.token, - side: parsedInput.side, - collateralUsd: parsedInput.collateralUsd, + side: parsedInput.type, + collateralUsd: parsedInput.collateral, leverage: parsedInput.leverage, }); @@ -823,8 +836,8 @@ export class SolanaFlashOpenTrade extends Tool { message: "Flash trade position opened successfully", transaction: tx, token: parsedInput.token, - side: parsedInput.side, - collateralUsd: parsedInput.collateralUsd, + side: parsedInput.type, + collateral: parsedInput.collateral, leverage: parsedInput.leverage, }); } catch (error: any) { @@ -839,17 +852,13 @@ export class SolanaFlashOpenTrade extends Tool { export class SolanaFlashCloseTrade extends Tool { name = "solana_flash_close_trade"; - description = `Closes an existing leveraged trading position on Flash.Trade exchange. + description = `Close an existing leveraged trading position on Flash.Trade exchange. - Inputs (input is a JSON string): - token: string, one of ["SOL", "BTC", "ETH"] (required) - side: string, either "long" or "short" (required) - - Example: - { - "token": "SOL", - "side": "long" - }`; + Inputs ( input is a JSON string ): + token: string, eg "SOL", "BTC", "ETH" (required) + side: string, eg "long", "short" (required) + + Example prompt is Close a 20x leveraged trade for SOL on long side`; constructor(private solanaKit: SolanaAgentKit) { super(); From 224d7ff5b3f42a777d5ea7f78b54e7a2fae873b2 Mon Sep 17 00:00:00 2001 From: UjjwalGupta49 Date: Mon, 6 Jan 2025 10:10:48 +0530 Subject: [PATCH 6/8] flash docs --- docs/classes/SolanaAgentKit.html | 16 ++++++++-------- docs/functions/createSolanaTools.html | 2 +- docs/functions/createVercelAITools.html | 2 +- docs/functions/executeAction.html | 2 +- docs/functions/findAction.html | 2 +- docs/functions/getActionExamples.html | 2 +- docs/interfaces/Action.html | 14 +++++++------- docs/interfaces/ActionExample.html | 4 ++-- docs/interfaces/BatchOrderPattern.html | 4 ++-- docs/interfaces/CollectionDeployment.html | 4 ++-- docs/interfaces/CollectionOptions.html | 4 ++-- docs/interfaces/Config.html | 4 ++-- docs/interfaces/Creator.html | 4 ++-- docs/interfaces/FetchPriceResponse.html | 4 ++-- docs/interfaces/GibworkCreateTaskReponse.html | 4 ++-- docs/interfaces/JupiterTokenData.html | 4 ++-- docs/interfaces/LuloAccountDetailsResponse.html | 4 ++-- docs/interfaces/MintCollectionNFTResponse.html | 4 ++-- docs/interfaces/OrderParams.html | 4 ++-- docs/interfaces/PumpFunTokenOptions.html | 4 ++-- docs/interfaces/PumpfunLaunchResponse.html | 4 ++-- docs/interfaces/PythFetchPriceResponse.html | 4 ++-- docs/interfaces/PythPriceFeedIDItem.html | 4 ++-- docs/interfaces/PythPriceItem.html | 4 ++-- docs/interfaces/TokenCheck.html | 4 ++-- docs/types/Handler.html | 2 +- docs/variables/actions.html | 2 +- 27 files changed, 58 insertions(+), 58 deletions(-) diff --git a/docs/classes/SolanaAgentKit.html b/docs/classes/SolanaAgentKit.html index b197b99..313b7e5 100644 --- a/docs/classes/SolanaAgentKit.html +++ b/docs/classes/SolanaAgentKit.html @@ -1,7 +1,7 @@ SolanaAgentKit | solana-agent-kit

    Class SolanaAgentKit

    Main class for interacting with Solana blockchain Provides a unified interface for token operations, NFT management, trading and more

    SolanaAgentKit

    -

    Constructors

    Constructors

    Properties

    config connection wallet @@ -67,14 +67,14 @@ Please use the new constructor with Config object instead:

    const agent = new SolanaAgentKit(privateKey, rpcUrl, {
    OPENAI_API_KEY: 'your-key'
    });
    -
  • Parameters

    • private_key: string
    • rpc_url: string
    • config: Config

    Returns SolanaAgentKit

  • Properties

    config: Config

    Configuration object

    -
    connection: Connection

    Solana RPC connection

    -
    wallet: Keypair

    Wallet keypair for signing transactions

    -
    wallet_address: PublicKey

    Public key of the wallet

    -

    Methods

    • Parameters

      • marketId: PublicKey

      Returns Promise<string>

    • Parameters

      • args: Omit<{ agent: SolanaAgentKit; price: number; tradeMint: PublicKey }, "agent">

      Returns Promise<string>

    • Parameters

      • args: Omit<{ agent: SolanaAgentKit; price: number; tradeMint: PublicKey }, "agent">

      Returns Promise<string>

    • Parameters

      • title: string
      • content: string
      • requirements: string
      • tags: string[]
      • tokenMintAddress: string
      • tokenAmount: number
      • Optionalpayer: string

      Returns Promise<GibworkCreateTaskReponse>

    • Parameters

      • amount: number
      • OptionalsplmintAddress: PublicKey

      Returns Promise<{ signature: string; url: string }>

    • Parameters

      • name: string
      • uri: string
      • symbol: string
      • decimals: number = DEFAULT_OPTIONS.TOKEN_DECIMALS
      • OptionalinitialSupply: number

      Returns Promise<{ mint: PublicKey }>

    • Parameters

      • mint: string

      Returns Promise<string>

    • Closes an existing trading position on Flash.Trade

      +
  • Parameters

    • private_key: string
    • rpc_url: string
    • config: Config

    Returns SolanaAgentKit

  • Properties

    config: Config

    Configuration object

    +
    connection: Connection

    Solana RPC connection

    +
    wallet: Keypair

    Wallet keypair for signing transactions

    +
    wallet_address: PublicKey

    Public key of the wallet

    +

    Methods

    • Parameters

      • marketId: PublicKey

      Returns Promise<string>

    • Parameters

      • args: Omit<{ agent: SolanaAgentKit; price: number; tradeMint: PublicKey }, "agent">

      Returns Promise<string>

    • Parameters

      • args: Omit<{ agent: SolanaAgentKit; price: number; tradeMint: PublicKey }, "agent">

      Returns Promise<string>

    • Parameters

      • title: string
      • content: string
      • requirements: string
      • tags: string[]
      • tokenMintAddress: string
      • tokenAmount: number
      • Optionalpayer: string

      Returns Promise<GibworkCreateTaskReponse>

    • Parameters

      • amount: number
      • OptionalsplmintAddress: PublicKey

      Returns Promise<{ signature: string; url: string }>

    • Parameters

      • name: string
      • uri: string
      • symbol: string
      • decimals: number = DEFAULT_OPTIONS.TOKEN_DECIMALS
      • OptionalinitialSupply: number

      Returns Promise<{ mint: PublicKey }>

    • Parameters

      • mint: string

      Returns Promise<string>

    • Closes an existing trading position on Flash.Trade

      Parameters

      • params: FlashCloseTradeParams

        Flash trade close parameters

      Returns Promise<string>

      Transaction signature

      -
    • Opens a new trading position on Flash.Trade

      +
    • Opens a new trading position on Flash.Trade

      Parameters

      • params: FlashTradeParams

        Flash trade parameters including market, side, collateral, leverage, and pool name

      Returns Promise<string>

      Transaction signature

      -
    • Returns Promise<string[]>

    • Returns Promise<string[]>

    • Parameters

      • Optionaltoken_address: PublicKey

      Returns Promise<number>

    • Parameters

      • walletAddress: PublicKey
      • OptionaltokenAddress: PublicKey

      Returns Promise<number>

    • Parameters

      • owner: PublicKey

      Returns Promise<null | string>

    • Parameters

      • owner: PublicKey

      Returns Promise<string[]>

    • Parameters

      • tld: string

      Returns Promise<string[]>

    • Parameters

      • account: PublicKey

      Returns Promise<string>

    • Parameters

      • priceFeedID: string

      Returns Promise<string>

    • Parameters

      • tokenSymbol: string

      Returns Promise<string>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey
      • quantity: number
      • side: string
      • price: number

      Returns Promise<string>

    • Parameters

      • baseMint: PublicKey
      • quoteMint: PublicKey

      Returns Promise<string[]>

    • Parameters

      • collectionMint: PublicKey
      • metadata: {
            creators?: { address: string; share: number }[];
            name: string;
            sellerFeeBasisPoints?: number;
            uri: string;
        }
      • Optionalrecipient: PublicKey

      Returns Promise<MintCollectionNFTResponse>

    • Parameters

      • baseMint: PublicKey
      • quoteMint: PublicKey
      • lotSize: number = 1
      • tickSize: number = 0.01

      Returns Promise<string[]>

    • Parameters

      • args: Omit<
            {
                agent: SolanaAgentKit;
                collateralAmount: number;
                collateralMint?: PublicKey;
                leverage?: number;
                price: number;
                slippage?: number;
                tradeMint?: PublicKey;
            },
            "agent",
        >

      Returns Promise<string>

    • Parameters

      • args: Omit<
            {
                agent: SolanaAgentKit;
                collateralAmount: number;
                collateralMint?: PublicKey;
                leverage?: number;
                price: number;
                slippage?: number;
                tradeMint?: PublicKey;
            },
            "agent",
        >

      Returns Promise<string>

    • Parameters

      • positionMintAddress: PublicKey

      Returns Promise<string>

    • Parameters

      • mintDeploy: PublicKey
      • mintPair: PublicKey
      • initialPrice: Decimal
      • feeTier: 1 | 2 | 4 | 5 | 16 | 30 | 65 | 100 | 200

      Returns Promise<string>

    • Parameters

      • depositTokenAmount: number
      • depositTokenMint: PublicKey
      • otherTokenMint: PublicKey
      • initialPrice: Decimal
      • maxPrice: Decimal
      • feeTier: 1 | 2 | 4 | 5 | 16 | 30 | 65 | 100 | 200

      Returns Promise<string>

    • Parameters

      • whirlpoolAddress: PublicKey
      • priceOffsetBps: number
      • inputTokenMint: PublicKey
      • inputAmount: Decimal

      Returns Promise<string>

    • Parameters

      • whirlpoolAddress: PublicKey
      • distanceFromCurrentPriceBps: number
      • widthBps: number
      • inputTokenMint: PublicKey
      • inputAmount: Decimal

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey
      • baseAmount: BN
      • quoteAmount: BN
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • mint1: PublicKey
      • mint2: PublicKey
      • configId: PublicKey
      • initialPrice: Decimal
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • mint1: PublicKey
      • mint2: PublicKey
      • configId: PublicKey
      • mintAAmount: BN
      • mintBAmount: BN
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • name: string
      • OptionalspaceKB: number

      Returns Promise<string>

    • Parameters

      • domain: string

      Returns Promise<undefined | PublicKey>

    • Parameters

      • domain: string

      Returns Promise<PublicKey>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • amount: number
      • choice: "rock" | "paper" | "scissors"

      Returns Promise<string>

    • Parameters

      • mintAddress: string
      • amount: number
      • decimals: number
      • recipients: string[]
      • priorityFeeInLamports: number
      • shouldLog: boolean

      Returns Promise<string[]>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • nftMint: PublicKey

      Returns Promise<string>

    • Parameters

      • nftMint: PublicKey
      • price: number

      Returns Promise<string>

    • Parameters

      • outputMint: PublicKey
      • inputAmount: number
      • OptionalinputMint: PublicKey
      • slippageBps: number = DEFAULT_OPTIONS.SLIPPAGE_BPS

      Returns Promise<string>

    • Parameters

      • to: PublicKey
      • amount: number
      • Optionalmint: PublicKey

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey

      Returns Promise<string>

    +
    • Returns Promise<string[]>

    • Returns Promise<string[]>

    • Parameters

      • Optionaltoken_address: PublicKey

      Returns Promise<number>

    • Parameters

      • walletAddress: PublicKey
      • OptionaltokenAddress: PublicKey

      Returns Promise<number>

    • Parameters

      • owner: PublicKey

      Returns Promise<null | string>

    • Parameters

      • owner: PublicKey

      Returns Promise<string[]>

    • Parameters

      • tld: string

      Returns Promise<string[]>

    • Parameters

      • account: PublicKey

      Returns Promise<string>

    • Parameters

      • priceFeedID: string

      Returns Promise<string>

    • Parameters

      • tokenSymbol: string

      Returns Promise<string>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey
      • quantity: number
      • side: string
      • price: number

      Returns Promise<string>

    • Parameters

      • baseMint: PublicKey
      • quoteMint: PublicKey

      Returns Promise<string[]>

    • Parameters

      • collectionMint: PublicKey
      • metadata: {
            creators?: { address: string; share: number }[];
            name: string;
            sellerFeeBasisPoints?: number;
            uri: string;
        }
      • Optionalrecipient: PublicKey

      Returns Promise<MintCollectionNFTResponse>

    • Parameters

      • baseMint: PublicKey
      • quoteMint: PublicKey
      • lotSize: number = 1
      • tickSize: number = 0.01

      Returns Promise<string[]>

    • Parameters

      • args: Omit<
            {
                agent: SolanaAgentKit;
                collateralAmount: number;
                collateralMint?: PublicKey;
                leverage?: number;
                price: number;
                slippage?: number;
                tradeMint?: PublicKey;
            },
            "agent",
        >

      Returns Promise<string>

    • Parameters

      • args: Omit<
            {
                agent: SolanaAgentKit;
                collateralAmount: number;
                collateralMint?: PublicKey;
                leverage?: number;
                price: number;
                slippage?: number;
                tradeMint?: PublicKey;
            },
            "agent",
        >

      Returns Promise<string>

    • Parameters

      • positionMintAddress: PublicKey

      Returns Promise<string>

    • Parameters

      • mintDeploy: PublicKey
      • mintPair: PublicKey
      • initialPrice: Decimal
      • feeTier: 1 | 2 | 4 | 5 | 16 | 30 | 65 | 100 | 200

      Returns Promise<string>

    • Parameters

      • depositTokenAmount: number
      • depositTokenMint: PublicKey
      • otherTokenMint: PublicKey
      • initialPrice: Decimal
      • maxPrice: Decimal
      • feeTier: 1 | 2 | 4 | 5 | 16 | 30 | 65 | 100 | 200

      Returns Promise<string>

    • Parameters

      • whirlpoolAddress: PublicKey
      • priceOffsetBps: number
      • inputTokenMint: PublicKey
      • inputAmount: Decimal

      Returns Promise<string>

    • Parameters

      • whirlpoolAddress: PublicKey
      • distanceFromCurrentPriceBps: number
      • widthBps: number
      • inputTokenMint: PublicKey
      • inputAmount: Decimal

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey
      • baseAmount: BN
      • quoteAmount: BN
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • mint1: PublicKey
      • mint2: PublicKey
      • configId: PublicKey
      • initialPrice: Decimal
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • mint1: PublicKey
      • mint2: PublicKey
      • configId: PublicKey
      • mintAAmount: BN
      • mintBAmount: BN
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • name: string
      • OptionalspaceKB: number

      Returns Promise<string>

    • Parameters

      • domain: string

      Returns Promise<undefined | PublicKey>

    • Parameters

      • domain: string

      Returns Promise<PublicKey>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • amount: number
      • choice: "rock" | "paper" | "scissors"

      Returns Promise<string>

    • Parameters

      • mintAddress: string
      • amount: number
      • decimals: number
      • recipients: string[]
      • priorityFeeInLamports: number
      • shouldLog: boolean

      Returns Promise<string[]>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • nftMint: PublicKey

      Returns Promise<string>

    • Parameters

      • nftMint: PublicKey
      • price: number

      Returns Promise<string>

    • Parameters

      • outputMint: PublicKey
      • inputAmount: number
      • OptionalinputMint: PublicKey
      • slippageBps: number = DEFAULT_OPTIONS.SLIPPAGE_BPS

      Returns Promise<string>

    • Parameters

      • to: PublicKey
      • amount: number
      • Optionalmint: PublicKey

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey

      Returns Promise<string>

    diff --git a/docs/functions/createSolanaTools.html b/docs/functions/createSolanaTools.html index d7b0810..bdf4e85 100644 --- a/docs/functions/createSolanaTools.html +++ b/docs/functions/createSolanaTools.html @@ -1 +1 @@ -createSolanaTools | solana-agent-kit

    Function createSolanaTools

    • Parameters

      Returns (
          | SolanaBalanceTool
          | SolanaBalanceOtherTool
          | SolanaTransferTool
          | SolanaDeployTokenTool
          | SolanaDeployCollectionTool
          | SolanaMintNFTTool
          | SolanaPerpCloseTradeTool
          | SolanaPerpOpenTradeTool
          | SolanaTradeTool
          | SolanaLimitOrderTool
          | SolanaBatchOrderTool
          | SolanaCancelAllOrdersTool
          | SolanaWithdrawAllTool
          | SolanaRequestFundsTool
          | SolanaRegisterDomainTool
          | SolanaResolveDomainTool
          | SolanaGetDomainTool
          | SolanaGetWalletAddressTool
          | SolanaFlashOpenTrade
          | SolanaFlashCloseTrade
          | SolanaPumpfunTokenLaunchTool
          | SolanaCreateImageTool
          | SolanaLendAssetTool
          | SolanaTPSCalculatorTool
          | SolanaStakeTool
          | SolanaRestakeTool
          | SolanaFetchPriceTool
          | SolanaTokenDataTool
          | SolanaTokenDataByTickerTool
          | SolanaCompressedAirdropTool
          | SolanaClosePosition
          | SolanaOrcaCreateCLMM
          | SolanaOrcaCreateSingleSideLiquidityPool
          | SolanaOrcaFetchPositions
          | SolanaOrcaOpenCenteredPosition
          | SolanaOrcaOpenSingleSidedPosition
          | SolanaRaydiumCreateAmmV4
          | SolanaRaydiumCreateClmm
          | SolanaRaydiumCreateCpmm
          | SolanaOpenbookCreateMarket
          | SolanaManifestCreateMarket
          | SolanaPythFetchPrice
          | SolanaResolveAllDomainsTool
          | SolanaGetOwnedDomains
          | SolanaGetOwnedTldDomains
          | SolanaGetAllTlds
          | SolanaGetMainDomain
          | SolanaCreateGibworkTask
          | SolanaRockPaperScissorsTool
          | SolanaTipLinkTool
          | SolanaListNFTForSaleTool
          | SolanaCancelNFTListingTool
          | SolanaFetchTokenReportSummaryTool
          | SolanaFetchTokenDetailedReportTool
      )[]

    +createSolanaTools | solana-agent-kit

    Function createSolanaTools

    • Parameters

      Returns (
          | SolanaBalanceTool
          | SolanaBalanceOtherTool
          | SolanaTransferTool
          | SolanaDeployTokenTool
          | SolanaDeployCollectionTool
          | SolanaMintNFTTool
          | SolanaPerpCloseTradeTool
          | SolanaPerpOpenTradeTool
          | SolanaTradeTool
          | SolanaLimitOrderTool
          | SolanaBatchOrderTool
          | SolanaCancelAllOrdersTool
          | SolanaWithdrawAllTool
          | SolanaRequestFundsTool
          | SolanaRegisterDomainTool
          | SolanaResolveDomainTool
          | SolanaGetDomainTool
          | SolanaGetWalletAddressTool
          | SolanaFlashOpenTrade
          | SolanaFlashCloseTrade
          | SolanaPumpfunTokenLaunchTool
          | SolanaCreateImageTool
          | SolanaLendAssetTool
          | SolanaTPSCalculatorTool
          | SolanaStakeTool
          | SolanaRestakeTool
          | SolanaFetchPriceTool
          | SolanaTokenDataTool
          | SolanaTokenDataByTickerTool
          | SolanaCompressedAirdropTool
          | SolanaClosePosition
          | SolanaOrcaCreateCLMM
          | SolanaOrcaCreateSingleSideLiquidityPool
          | SolanaOrcaFetchPositions
          | SolanaOrcaOpenCenteredPosition
          | SolanaOrcaOpenSingleSidedPosition
          | SolanaRaydiumCreateAmmV4
          | SolanaRaydiumCreateClmm
          | SolanaRaydiumCreateCpmm
          | SolanaOpenbookCreateMarket
          | SolanaManifestCreateMarket
          | SolanaPythFetchPrice
          | SolanaResolveAllDomainsTool
          | SolanaGetOwnedDomains
          | SolanaGetOwnedTldDomains
          | SolanaGetAllTlds
          | SolanaGetMainDomain
          | SolanaCreateGibworkTask
          | SolanaRockPaperScissorsTool
          | SolanaTipLinkTool
          | SolanaListNFTForSaleTool
          | SolanaCancelNFTListingTool
          | SolanaFetchTokenReportSummaryTool
          | SolanaFetchTokenDetailedReportTool
      )[]

    diff --git a/docs/functions/createVercelAITools.html b/docs/functions/createVercelAITools.html index 52ea314..4c35c1c 100644 --- a/docs/functions/createVercelAITools.html +++ b/docs/functions/createVercelAITools.html @@ -1 +1 @@ -createVercelAITools | solana-agent-kit

    Function createVercelAITools

    +createVercelAITools | solana-agent-kit

    Function createVercelAITools

    diff --git a/docs/functions/executeAction.html b/docs/functions/executeAction.html index 1667fa0..59e086c 100644 --- a/docs/functions/executeAction.html +++ b/docs/functions/executeAction.html @@ -1,2 +1,2 @@ executeAction | solana-agent-kit

    Function executeAction

    • Execute an action with the given input

      -

      Parameters

      Returns Promise<Record<string, any>>

    +

    Parameters

    Returns Promise<Record<string, any>>

    diff --git a/docs/functions/findAction.html b/docs/functions/findAction.html index 90b280e..9797012 100644 --- a/docs/functions/findAction.html +++ b/docs/functions/findAction.html @@ -1,2 +1,2 @@ findAction | solana-agent-kit

    Function findAction

    • Find an action by its name or one of its similes

      -

      Parameters

      • query: string

      Returns Action | undefined

    +

    Parameters

    • query: string

    Returns Action | undefined

    diff --git a/docs/functions/getActionExamples.html b/docs/functions/getActionExamples.html index d8b9d1c..46d7eec 100644 --- a/docs/functions/getActionExamples.html +++ b/docs/functions/getActionExamples.html @@ -1,2 +1,2 @@ getActionExamples | solana-agent-kit

    Function getActionExamples

    • Get examples for an action

      -

      Parameters

      • action: Action

      Returns string

    +

    Parameters

    • action: Action

    Returns string

    diff --git a/docs/interfaces/Action.html b/docs/interfaces/Action.html index 2acfea9..aeb60a1 100644 --- a/docs/interfaces/Action.html +++ b/docs/interfaces/Action.html @@ -1,16 +1,16 @@ Action | solana-agent-kit

    Interface Action

    Main Action interface inspired by ELIZA This interface makes it easier to implement actions across different frameworks

    -
    interface Action {
        description: string;
        examples: ActionExample[][];
        handler: Handler;
        name: string;
        schema: ZodType;
        similes: string[];
    }

    Properties

    interface Action {
        description: string;
        examples: ActionExample[][];
        handler: Handler;
        name: string;
        schema: ZodType;
        similes: string[];
    }

    Properties

    description: string

    Detailed description of what the action does

    -
    examples: ActionExample[][]

    Array of example inputs and outputs for the action +

    examples: ActionExample[][]

    Array of example inputs and outputs for the action Each inner array represents a group of related examples

    -
    handler: Handler

    Function that executes the action

    -
    name: string

    Unique name of the action

    -
    schema: ZodType

    Zod schema for input validation

    -
    similes: string[]

    Alternative names/phrases that can trigger this action

    -
    +
    handler: Handler

    Function that executes the action

    +
    name: string

    Unique name of the action

    +
    schema: ZodType

    Zod schema for input validation

    +
    similes: string[]

    Alternative names/phrases that can trigger this action

    +
    diff --git a/docs/interfaces/ActionExample.html b/docs/interfaces/ActionExample.html index de5901b..f3bf81b 100644 --- a/docs/interfaces/ActionExample.html +++ b/docs/interfaces/ActionExample.html @@ -1,5 +1,5 @@ ActionExample | solana-agent-kit

    Interface ActionExample

    Example of an action with input and output

    -
    interface ActionExample {
        explanation: string;
        input: Record<string, any>;
        output: Record<string, any>;
    }

    Properties

    interface ActionExample {
        explanation: string;
        input: Record<string, any>;
        output: Record<string, any>;
    }

    Properties

    explanation: string
    input: Record<string, any>
    output: Record<string, any>
    +

    Properties

    explanation: string
    input: Record<string, any>
    output: Record<string, any>
    diff --git a/docs/interfaces/BatchOrderPattern.html b/docs/interfaces/BatchOrderPattern.html index e878ad4..946021a 100644 --- a/docs/interfaces/BatchOrderPattern.html +++ b/docs/interfaces/BatchOrderPattern.html @@ -1,7 +1,7 @@ -BatchOrderPattern | solana-agent-kit

    Interface BatchOrderPattern

    interface BatchOrderPattern {
        individualQuantity?: number;
        numberOfOrders?: number;
        priceRange?: { max?: number; min?: number };
        side: string;
        spacing?: { type: "percentage" | "fixed"; value: number };
        totalQuantity?: number;
    }

    Properties

    individualQuantity? +BatchOrderPattern | solana-agent-kit

    Interface BatchOrderPattern

    interface BatchOrderPattern {
        individualQuantity?: number;
        numberOfOrders?: number;
        priceRange?: { max?: number; min?: number };
        side: string;
        spacing?: { type: "percentage" | "fixed"; value: number };
        totalQuantity?: number;
    }

    Properties

    individualQuantity?: number
    numberOfOrders?: number
    priceRange?: { max?: number; min?: number }
    side: string
    spacing?: { type: "percentage" | "fixed"; value: number }
    totalQuantity?: number
    +

    Properties

    individualQuantity?: number
    numberOfOrders?: number
    priceRange?: { max?: number; min?: number }
    side: string
    spacing?: { type: "percentage" | "fixed"; value: number }
    totalQuantity?: number
    diff --git a/docs/interfaces/CollectionDeployment.html b/docs/interfaces/CollectionDeployment.html index aad01cf..a392a7d 100644 --- a/docs/interfaces/CollectionDeployment.html +++ b/docs/interfaces/CollectionDeployment.html @@ -1,3 +1,3 @@ -CollectionDeployment | solana-agent-kit

    Interface CollectionDeployment

    interface CollectionDeployment {
        collectionAddress: PublicKey;
        signature: Uint8Array;
    }

    Properties

    collectionAddress +CollectionDeployment | solana-agent-kit

    Interface CollectionDeployment

    interface CollectionDeployment {
        collectionAddress: PublicKey;
        signature: Uint8Array;
    }

    Properties

    collectionAddress: PublicKey
    signature: Uint8Array
    +

    Properties

    collectionAddress: PublicKey
    signature: Uint8Array
    diff --git a/docs/interfaces/CollectionOptions.html b/docs/interfaces/CollectionOptions.html index 691cad1..4cb12ab 100644 --- a/docs/interfaces/CollectionOptions.html +++ b/docs/interfaces/CollectionOptions.html @@ -1,5 +1,5 @@ -CollectionOptions | solana-agent-kit

    Interface CollectionOptions

    interface CollectionOptions {
        creators?: Creator[];
        name: string;
        royaltyBasisPoints?: number;
        uri: string;
    }

    Properties

    creators? +CollectionOptions | solana-agent-kit

    Interface CollectionOptions

    interface CollectionOptions {
        creators?: Creator[];
        name: string;
        royaltyBasisPoints?: number;
        uri: string;
    }

    Properties

    creators?: Creator[]
    name: string
    royaltyBasisPoints?: number
    uri: string
    +

    Properties

    creators?: Creator[]
    name: string
    royaltyBasisPoints?: number
    uri: string
    diff --git a/docs/interfaces/Config.html b/docs/interfaces/Config.html index de0cf1d..ba902c0 100644 --- a/docs/interfaces/Config.html +++ b/docs/interfaces/Config.html @@ -1,4 +1,4 @@ -Config | solana-agent-kit

    Interface Config

    interface Config {
        JUPITER_FEE_BPS?: number;
        JUPITER_REFERRAL_ACCOUNT?: string;
        OPENAI_API_KEY?: string;
    }

    Properties

    JUPITER_FEE_BPS? +Config | solana-agent-kit

    Interface Config

    interface Config {
        JUPITER_FEE_BPS?: number;
        JUPITER_REFERRAL_ACCOUNT?: string;
        OPENAI_API_KEY?: string;
    }

    Properties

    JUPITER_FEE_BPS?: number
    JUPITER_REFERRAL_ACCOUNT?: string
    OPENAI_API_KEY?: string
    +

    Properties

    JUPITER_FEE_BPS?: number
    JUPITER_REFERRAL_ACCOUNT?: string
    OPENAI_API_KEY?: string
    diff --git a/docs/interfaces/Creator.html b/docs/interfaces/Creator.html index 5ba7578..5ef3e97 100644 --- a/docs/interfaces/Creator.html +++ b/docs/interfaces/Creator.html @@ -1,3 +1,3 @@ -Creator | solana-agent-kit

    Interface Creator

    interface Creator {
        address: string;
        percentage: number;
    }

    Properties

    address +Creator | solana-agent-kit

    Interface Creator

    interface Creator {
        address: string;
        percentage: number;
    }

    Properties

    Properties

    address: string
    percentage: number
    +

    Properties

    address: string
    percentage: number
    diff --git a/docs/interfaces/FetchPriceResponse.html b/docs/interfaces/FetchPriceResponse.html index dc5f168..f2a0b9e 100644 --- a/docs/interfaces/FetchPriceResponse.html +++ b/docs/interfaces/FetchPriceResponse.html @@ -1,6 +1,6 @@ -FetchPriceResponse | solana-agent-kit

    Interface FetchPriceResponse

    interface FetchPriceResponse {
        code?: string;
        message?: string;
        priceInUSDC?: string;
        status: "success" | "error";
        tokenId?: string;
    }

    Properties

    code? +FetchPriceResponse | solana-agent-kit

    Interface FetchPriceResponse

    interface FetchPriceResponse {
        code?: string;
        message?: string;
        priceInUSDC?: string;
        status: "success" | "error";
        tokenId?: string;
    }

    Properties

    code?: string
    message?: string
    priceInUSDC?: string
    status: "success" | "error"
    tokenId?: string
    +

    Properties

    code?: string
    message?: string
    priceInUSDC?: string
    status: "success" | "error"
    tokenId?: string
    diff --git a/docs/interfaces/GibworkCreateTaskReponse.html b/docs/interfaces/GibworkCreateTaskReponse.html index 6ee732f..5689ddc 100644 --- a/docs/interfaces/GibworkCreateTaskReponse.html +++ b/docs/interfaces/GibworkCreateTaskReponse.html @@ -1,4 +1,4 @@ -GibworkCreateTaskReponse | solana-agent-kit

    Interface GibworkCreateTaskReponse

    interface GibworkCreateTaskReponse {
        signature?: string;
        status: "success" | "error";
        taskId?: string;
    }

    Properties

    signature? +GibworkCreateTaskReponse | solana-agent-kit

    Interface GibworkCreateTaskReponse

    interface GibworkCreateTaskReponse {
        signature?: string;
        status: "success" | "error";
        taskId?: string;
    }

    Properties

    signature?: string
    status: "success" | "error"
    taskId?: string
    +

    Properties

    signature?: string
    status: "success" | "error"
    taskId?: string
    diff --git a/docs/interfaces/JupiterTokenData.html b/docs/interfaces/JupiterTokenData.html index 904e265..c7d497b 100644 --- a/docs/interfaces/JupiterTokenData.html +++ b/docs/interfaces/JupiterTokenData.html @@ -1,4 +1,4 @@ -JupiterTokenData | solana-agent-kit

    Interface JupiterTokenData

    interface JupiterTokenData {
        address: string;
        daily_volume: number;
        decimals: number;
        extensions: { coingeckoId?: string };
        freeze_authority: null | string;
        logoURI: string;
        mint_authority: null | string;
        name: string;
        permanent_delegate: null | string;
        symbol: string;
        tags: string[];
    }

    Properties

    address +JupiterTokenData | solana-agent-kit

    Interface JupiterTokenData

    interface JupiterTokenData {
        address: string;
        daily_volume: number;
        decimals: number;
        extensions: { coingeckoId?: string };
        freeze_authority: null | string;
        logoURI: string;
        mint_authority: null | string;
        name: string;
        permanent_delegate: null | string;
        symbol: string;
        tags: string[];
    }

    Properties

    address: string
    daily_volume: number
    decimals: number
    extensions: { coingeckoId?: string }
    freeze_authority: null | string
    logoURI: string
    mint_authority: null | string
    name: string
    permanent_delegate: null | string
    symbol: string
    tags: string[]
    +

    Properties

    address: string
    daily_volume: number
    decimals: number
    extensions: { coingeckoId?: string }
    freeze_authority: null | string
    logoURI: string
    mint_authority: null | string
    name: string
    permanent_delegate: null | string
    symbol: string
    tags: string[]
    diff --git a/docs/interfaces/LuloAccountDetailsResponse.html b/docs/interfaces/LuloAccountDetailsResponse.html index c7d0ea0..8e5b319 100644 --- a/docs/interfaces/LuloAccountDetailsResponse.html +++ b/docs/interfaces/LuloAccountDetailsResponse.html @@ -1,6 +1,6 @@ LuloAccountDetailsResponse | solana-agent-kit

    Interface LuloAccountDetailsResponse

    Lulo Account Details response format

    -
    interface LuloAccountDetailsResponse {
        interestEarned: number;
        realtimeApy: number;
        settings: {
            allowedProtocols: null | string;
            homebase: null | string;
            minimumRate: string;
            owner: string;
        };
        totalValue: number;
    }

    Properties

    interface LuloAccountDetailsResponse {
        interestEarned: number;
        realtimeApy: number;
        settings: {
            allowedProtocols: null | string;
            homebase: null | string;
            minimumRate: string;
            owner: string;
        };
        totalValue: number;
    }

    Properties

    interestEarned: number
    realtimeApy: number
    settings: {
        allowedProtocols: null | string;
        homebase: null | string;
        minimumRate: string;
        owner: string;
    }
    totalValue: number
    +

    Properties

    interestEarned: number
    realtimeApy: number
    settings: {
        allowedProtocols: null | string;
        homebase: null | string;
        minimumRate: string;
        owner: string;
    }
    totalValue: number
    diff --git a/docs/interfaces/MintCollectionNFTResponse.html b/docs/interfaces/MintCollectionNFTResponse.html index c08a446..e34b942 100644 --- a/docs/interfaces/MintCollectionNFTResponse.html +++ b/docs/interfaces/MintCollectionNFTResponse.html @@ -1,3 +1,3 @@ -MintCollectionNFTResponse | solana-agent-kit

    Interface MintCollectionNFTResponse

    interface MintCollectionNFTResponse {
        metadata: PublicKey;
        mint: PublicKey;
    }

    Properties

    metadata +MintCollectionNFTResponse | solana-agent-kit

    Interface MintCollectionNFTResponse

    interface MintCollectionNFTResponse {
        metadata: PublicKey;
        mint: PublicKey;
    }

    Properties

    Properties

    metadata: PublicKey
    mint: PublicKey
    +

    Properties

    metadata: PublicKey
    mint: PublicKey
    diff --git a/docs/interfaces/OrderParams.html b/docs/interfaces/OrderParams.html index 215537b..edfca61 100644 --- a/docs/interfaces/OrderParams.html +++ b/docs/interfaces/OrderParams.html @@ -1,4 +1,4 @@ -OrderParams | solana-agent-kit

    Interface OrderParams

    interface OrderParams {
        price: number;
        quantity: number;
        side: string;
    }

    Properties

    price +OrderParams | solana-agent-kit

    Interface OrderParams

    interface OrderParams {
        price: number;
        quantity: number;
        side: string;
    }

    Properties

    Properties

    price: number
    quantity: number
    side: string
    +

    Properties

    price: number
    quantity: number
    side: string
    diff --git a/docs/interfaces/PumpFunTokenOptions.html b/docs/interfaces/PumpFunTokenOptions.html index 085151e..a6f761f 100644 --- a/docs/interfaces/PumpFunTokenOptions.html +++ b/docs/interfaces/PumpFunTokenOptions.html @@ -1,7 +1,7 @@ -PumpFunTokenOptions | solana-agent-kit

    Interface PumpFunTokenOptions

    interface PumpFunTokenOptions {
        initialLiquiditySOL?: number;
        priorityFee?: number;
        slippageBps?: number;
        telegram?: string;
        twitter?: string;
        website?: string;
    }

    Properties

    initialLiquiditySOL? +PumpFunTokenOptions | solana-agent-kit

    Interface PumpFunTokenOptions

    interface PumpFunTokenOptions {
        initialLiquiditySOL?: number;
        priorityFee?: number;
        slippageBps?: number;
        telegram?: string;
        twitter?: string;
        website?: string;
    }

    Properties

    initialLiquiditySOL?: number
    priorityFee?: number
    slippageBps?: number
    telegram?: string
    twitter?: string
    website?: string
    +

    Properties

    initialLiquiditySOL?: number
    priorityFee?: number
    slippageBps?: number
    telegram?: string
    twitter?: string
    website?: string
    diff --git a/docs/interfaces/PumpfunLaunchResponse.html b/docs/interfaces/PumpfunLaunchResponse.html index cb76516..de81320 100644 --- a/docs/interfaces/PumpfunLaunchResponse.html +++ b/docs/interfaces/PumpfunLaunchResponse.html @@ -1,5 +1,5 @@ -PumpfunLaunchResponse | solana-agent-kit

    Interface PumpfunLaunchResponse

    interface PumpfunLaunchResponse {
        error?: string;
        metadataUri?: string;
        mint: string;
        signature: string;
    }

    Properties

    error? +PumpfunLaunchResponse | solana-agent-kit

    Interface PumpfunLaunchResponse

    interface PumpfunLaunchResponse {
        error?: string;
        metadataUri?: string;
        mint: string;
        signature: string;
    }

    Properties

    error?: string
    metadataUri?: string
    mint: string
    signature: string
    +

    Properties

    error?: string
    metadataUri?: string
    mint: string
    signature: string
    diff --git a/docs/interfaces/PythFetchPriceResponse.html b/docs/interfaces/PythFetchPriceResponse.html index ec9c7f5..68a3a4d 100644 --- a/docs/interfaces/PythFetchPriceResponse.html +++ b/docs/interfaces/PythFetchPriceResponse.html @@ -1,7 +1,7 @@ -PythFetchPriceResponse | solana-agent-kit

    Interface PythFetchPriceResponse

    interface PythFetchPriceResponse {
        code?: string;
        message?: string;
        price?: string;
        priceFeedID?: string;
        status: "success" | "error";
        tokenSymbol: string;
    }

    Properties

    code? +PythFetchPriceResponse | solana-agent-kit

    Interface PythFetchPriceResponse

    interface PythFetchPriceResponse {
        code?: string;
        message?: string;
        price?: string;
        priceFeedID?: string;
        status: "success" | "error";
        tokenSymbol: string;
    }

    Properties

    code?: string
    message?: string
    price?: string
    priceFeedID?: string
    status: "success" | "error"
    tokenSymbol: string
    +

    Properties

    code?: string
    message?: string
    price?: string
    priceFeedID?: string
    status: "success" | "error"
    tokenSymbol: string
    diff --git a/docs/interfaces/PythPriceFeedIDItem.html b/docs/interfaces/PythPriceFeedIDItem.html index 8fe5270..9bf6726 100644 --- a/docs/interfaces/PythPriceFeedIDItem.html +++ b/docs/interfaces/PythPriceFeedIDItem.html @@ -1,3 +1,3 @@ -PythPriceFeedIDItem | solana-agent-kit

    Interface PythPriceFeedIDItem

    interface PythPriceFeedIDItem {
        attributes: { asset_type: string; base: string };
        id: string;
    }

    Properties

    attributes +PythPriceFeedIDItem | solana-agent-kit

    Interface PythPriceFeedIDItem

    interface PythPriceFeedIDItem {
        attributes: { asset_type: string; base: string };
        id: string;
    }

    Properties

    Properties

    attributes: { asset_type: string; base: string }
    id: string
    +

    Properties

    attributes: { asset_type: string; base: string }
    id: string
    diff --git a/docs/interfaces/PythPriceItem.html b/docs/interfaces/PythPriceItem.html index 9591b0b..c18784d 100644 --- a/docs/interfaces/PythPriceItem.html +++ b/docs/interfaces/PythPriceItem.html @@ -1,3 +1,3 @@ -PythPriceItem | solana-agent-kit

    Interface PythPriceItem

    interface PythPriceItem {
        binary: { data: string[]; encoding: string };
        parsed: [
            {
                ema_price: {
                    conf: string;
                    expo: number;
                    price: string;
                    publish_time: number;
                };
                id: string;
                metadata: {
                    prev_publish_time: number;
                    proof_available_time: number;
                    slot: number;
                };
                price: {
                    conf: string;
                    expo: number;
                    price: string;
                    publish_time: number;
                };
            }[],
        ];
    }

    Properties

    binary +PythPriceItem | solana-agent-kit

    Interface PythPriceItem

    interface PythPriceItem {
        binary: { data: string[]; encoding: string };
        parsed: [
            {
                ema_price: {
                    conf: string;
                    expo: number;
                    price: string;
                    publish_time: number;
                };
                id: string;
                metadata: {
                    prev_publish_time: number;
                    proof_available_time: number;
                    slot: number;
                };
                price: {
                    conf: string;
                    expo: number;
                    price: string;
                    publish_time: number;
                };
            }[],
        ];
    }

    Properties

    Properties

    binary: { data: string[]; encoding: string }
    parsed: [
        {
            ema_price: {
                conf: string;
                expo: number;
                price: string;
                publish_time: number;
            };
            id: string;
            metadata: {
                prev_publish_time: number;
                proof_available_time: number;
                slot: number;
            };
            price: { conf: string; expo: number; price: string; publish_time: number };
        }[],
    ]
    +

    Properties

    binary: { data: string[]; encoding: string }
    parsed: [
        {
            ema_price: {
                conf: string;
                expo: number;
                price: string;
                publish_time: number;
            };
            id: string;
            metadata: {
                prev_publish_time: number;
                proof_available_time: number;
                slot: number;
            };
            price: { conf: string; expo: number; price: string; publish_time: number };
        }[],
    ]
    diff --git a/docs/interfaces/TokenCheck.html b/docs/interfaces/TokenCheck.html index 5c3520f..109c5d1 100644 --- a/docs/interfaces/TokenCheck.html +++ b/docs/interfaces/TokenCheck.html @@ -1,5 +1,5 @@ -TokenCheck | solana-agent-kit

    Interface TokenCheck

    interface TokenCheck {
        risks: {
            description: string;
            level: string;
            name: string;
            score: number;
        }[];
        score: number;
        tokenProgram: string;
        tokenType: string;
    }

    Properties

    risks +TokenCheck | solana-agent-kit

    Interface TokenCheck

    interface TokenCheck {
        risks: {
            description: string;
            level: string;
            name: string;
            score: number;
        }[];
        score: number;
        tokenProgram: string;
        tokenType: string;
    }

    Properties

    risks: { description: string; level: string; name: string; score: number }[]
    score: number
    tokenProgram: string
    tokenType: string
    +

    Properties

    risks: { description: string; level: string; name: string; score: number }[]
    score: number
    tokenProgram: string
    tokenType: string
    diff --git a/docs/types/Handler.html b/docs/types/Handler.html index dcfcf14..116b609 100644 --- a/docs/types/Handler.html +++ b/docs/types/Handler.html @@ -1,2 +1,2 @@ Handler | solana-agent-kit

    Type Alias Handler

    Handler: (
        agent: SolanaAgentKit,
        input: Record<string, any>,
    ) => Promise<Record<string, any>>

    Handler function type for executing the action

    -

    Type declaration

      • (
            agent: SolanaAgentKit,
            input: Record<string, any>,
        ): Promise<Record<string, any>>
      • Parameters

        Returns Promise<Record<string, any>>

    +

    Type declaration

      • (
            agent: SolanaAgentKit,
            input: Record<string, any>,
        ): Promise<Record<string, any>>
      • Parameters

        Returns Promise<Record<string, any>>

    diff --git a/docs/variables/actions.html b/docs/variables/actions.html index b9c85c6..0b64780 100644 --- a/docs/variables/actions.html +++ b/docs/variables/actions.html @@ -1 +1 @@ -ACTIONS | solana-agent-kit

    Variable ACTIONSConst

    ACTIONS: {
        BALANCE_ACTION: Action;
        CREATE_GIBWORK_TASK_ACTION: Action;
        CREATE_IMAGE_ACTION: Action;
        CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: Action;
        DEPLOY_COLLECTION_ACTION: Action;
        DEPLOY_TOKEN_ACTION: Action;
        FETCH_PRICE_ACTION: Action;
        GET_ALL_DOMAINS_TLDS_ACTION: Action;
        GET_ALL_REGISTERED_ALL_DOMAINS_ACTION: Action;
        GET_MAIN_ALL_DOMAINS_DOMAIN_ACTION: Action;
        GET_OWNED_ALL_DOMAINS_ACTION: Action;
        GET_OWNED_DOMAINS_FOR_TLD_ACTION: Action;
        GET_PRIMARY_DOMAIN_ACTION: Action;
        GET_TOKEN_DATA_ACTION: Action;
        GET_TPS_ACTION: Action;
        LAUNCH_PUMPFUN_TOKEN_ACTION: Action;
        LEND_ASSET_ACTION: Action;
        MINT_NFT_ACTION: Action;
        PYTH_FETCH_PRICE_ACTION: Action;
        RAYDIUM_CREATE_AMM_V4_ACTION: Action;
        RAYDIUM_CREATE_CPMM_ACTION: Action;
        REGISTER_DOMAIN_ACTION: Action;
        REQUEST_FUNDS_ACTION: Action;
        RESOLVE_DOMAIN_ACTION: Action;
        RESOLVE_SOL_DOMAIN_ACTION: Action;
        STAKE_WITH_JUP_ACTION: Action;
        STAKE_WITH_SOLAYER_ACTION: Action;
        TRADE_ACTION: Action;
        TRANSFER_ACTION: Action;
        WALLET_ADDRESS_ACTION: Action;
    } = ...

    Type declaration

    • BALANCE_ACTION: Action
    • CREATE_GIBWORK_TASK_ACTION: Action
    • CREATE_IMAGE_ACTION: Action
    • CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: Action
    • DEPLOY_COLLECTION_ACTION: Action
    • DEPLOY_TOKEN_ACTION: Action
    • FETCH_PRICE_ACTION: Action
    • GET_ALL_DOMAINS_TLDS_ACTION: Action
    • GET_ALL_REGISTERED_ALL_DOMAINS_ACTION: Action
    • GET_MAIN_ALL_DOMAINS_DOMAIN_ACTION: Action
    • GET_OWNED_ALL_DOMAINS_ACTION: Action
    • GET_OWNED_DOMAINS_FOR_TLD_ACTION: Action
    • GET_PRIMARY_DOMAIN_ACTION: Action
    • GET_TOKEN_DATA_ACTION: Action
    • GET_TPS_ACTION: Action
    • LAUNCH_PUMPFUN_TOKEN_ACTION: Action
    • LEND_ASSET_ACTION: Action
    • MINT_NFT_ACTION: Action
    • PYTH_FETCH_PRICE_ACTION: Action
    • RAYDIUM_CREATE_AMM_V4_ACTION: Action
    • RAYDIUM_CREATE_CPMM_ACTION: Action
    • REGISTER_DOMAIN_ACTION: Action
    • REQUEST_FUNDS_ACTION: Action
    • RESOLVE_DOMAIN_ACTION: Action
    • RESOLVE_SOL_DOMAIN_ACTION: Action
    • STAKE_WITH_JUP_ACTION: Action
    • STAKE_WITH_SOLAYER_ACTION: Action
    • TRADE_ACTION: Action
    • TRANSFER_ACTION: Action
    • WALLET_ADDRESS_ACTION: Action
    +ACTIONS | solana-agent-kit

    Variable ACTIONSConst

    ACTIONS: {
        BALANCE_ACTION: Action;
        CREATE_GIBWORK_TASK_ACTION: Action;
        CREATE_IMAGE_ACTION: Action;
        CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: Action;
        DEPLOY_COLLECTION_ACTION: Action;
        DEPLOY_TOKEN_ACTION: Action;
        FETCH_PRICE_ACTION: Action;
        GET_ALL_DOMAINS_TLDS_ACTION: Action;
        GET_ALL_REGISTERED_ALL_DOMAINS_ACTION: Action;
        GET_MAIN_ALL_DOMAINS_DOMAIN_ACTION: Action;
        GET_OWNED_ALL_DOMAINS_ACTION: Action;
        GET_OWNED_DOMAINS_FOR_TLD_ACTION: Action;
        GET_PRIMARY_DOMAIN_ACTION: Action;
        GET_TOKEN_DATA_ACTION: Action;
        GET_TPS_ACTION: Action;
        LAUNCH_PUMPFUN_TOKEN_ACTION: Action;
        LEND_ASSET_ACTION: Action;
        MINT_NFT_ACTION: Action;
        PYTH_FETCH_PRICE_ACTION: Action;
        RAYDIUM_CREATE_AMM_V4_ACTION: Action;
        RAYDIUM_CREATE_CPMM_ACTION: Action;
        REGISTER_DOMAIN_ACTION: Action;
        REQUEST_FUNDS_ACTION: Action;
        RESOLVE_DOMAIN_ACTION: Action;
        RESOLVE_SOL_DOMAIN_ACTION: Action;
        STAKE_WITH_JUP_ACTION: Action;
        STAKE_WITH_SOLAYER_ACTION: Action;
        TRADE_ACTION: Action;
        TRANSFER_ACTION: Action;
        WALLET_ADDRESS_ACTION: Action;
    } = ...

    Type declaration

    • BALANCE_ACTION: Action
    • CREATE_GIBWORK_TASK_ACTION: Action
    • CREATE_IMAGE_ACTION: Action
    • CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: Action
    • DEPLOY_COLLECTION_ACTION: Action
    • DEPLOY_TOKEN_ACTION: Action
    • FETCH_PRICE_ACTION: Action
    • GET_ALL_DOMAINS_TLDS_ACTION: Action
    • GET_ALL_REGISTERED_ALL_DOMAINS_ACTION: Action
    • GET_MAIN_ALL_DOMAINS_DOMAIN_ACTION: Action
    • GET_OWNED_ALL_DOMAINS_ACTION: Action
    • GET_OWNED_DOMAINS_FOR_TLD_ACTION: Action
    • GET_PRIMARY_DOMAIN_ACTION: Action
    • GET_TOKEN_DATA_ACTION: Action
    • GET_TPS_ACTION: Action
    • LAUNCH_PUMPFUN_TOKEN_ACTION: Action
    • LEND_ASSET_ACTION: Action
    • MINT_NFT_ACTION: Action
    • PYTH_FETCH_PRICE_ACTION: Action
    • RAYDIUM_CREATE_AMM_V4_ACTION: Action
    • RAYDIUM_CREATE_CPMM_ACTION: Action
    • REGISTER_DOMAIN_ACTION: Action
    • REQUEST_FUNDS_ACTION: Action
    • RESOLVE_DOMAIN_ACTION: Action
    • RESOLVE_SOL_DOMAIN_ACTION: Action
    • STAKE_WITH_JUP_ACTION: Action
    • STAKE_WITH_SOLAYER_ACTION: Action
    • TRADE_ACTION: Action
    • TRANSFER_ACTION: Action
    • WALLET_ADDRESS_ACTION: Action
    From de4e72436564572dcc816019b3681a1e30a7aae6 Mon Sep 17 00:00:00 2001 From: UjjwalGupta49 Date: Mon, 6 Jan 2025 17:50:39 +0530 Subject: [PATCH 7/8] move types and created actions --- docs/assets/navigation.js | 2 +- docs/assets/search.js | 2 +- docs/classes/SolanaAgentKit.html | 20 ++--- docs/functions/createSolanaTools.html | 2 +- docs/functions/createVercelAITools.html | 2 +- docs/functions/executeAction.html | 2 +- docs/functions/findAction.html | 2 +- docs/functions/getActionExamples.html | 2 +- docs/interfaces/Action.html | 14 ++-- docs/interfaces/ActionExample.html | 4 +- docs/interfaces/BatchOrderPattern.html | 4 +- docs/interfaces/CollectionDeployment.html | 4 +- docs/interfaces/CollectionOptions.html | 4 +- docs/interfaces/Config.html | 4 +- docs/interfaces/Creator.html | 4 +- docs/interfaces/FetchPriceResponse.html | 4 +- docs/interfaces/FlashCloseTradeParams.html | 3 + docs/interfaces/FlashTradeParams.html | 5 ++ docs/interfaces/GibworkCreateTaskReponse.html | 4 +- docs/interfaces/JupiterTokenData.html | 4 +- .../LuloAccountDetailsResponse.html | 4 +- .../interfaces/MintCollectionNFTResponse.html | 4 +- docs/interfaces/OrderParams.html | 4 +- docs/interfaces/PumpFunTokenOptions.html | 4 +- docs/interfaces/PumpfunLaunchResponse.html | 4 +- docs/interfaces/PythFetchPriceResponse.html | 4 +- docs/interfaces/PythPriceFeedIDItem.html | 4 +- docs/interfaces/PythPriceItem.html | 4 +- docs/interfaces/TokenCheck.html | 4 +- docs/modules.html | 2 +- docs/types/Handler.html | 2 +- docs/variables/actions.html | 2 +- src/actions/flashCloseTrade.ts | 68 ++++++++++++++++ src/actions/flashOpenTrade.ts | 78 +++++++++++++++++++ src/agent/index.ts | 4 +- src/tools/flash_close_trade.ts | 11 ++- src/tools/flash_open_trade.ts | 13 ++-- src/types/index.ts | 12 +++ 38 files changed, 241 insertions(+), 79 deletions(-) create mode 100644 docs/interfaces/FlashCloseTradeParams.html create mode 100644 docs/interfaces/FlashTradeParams.html create mode 100644 src/actions/flashCloseTrade.ts create mode 100644 src/actions/flashOpenTrade.ts diff --git a/docs/assets/navigation.js b/docs/assets/navigation.js index 3e76375..2f5fc3c 100644 --- a/docs/assets/navigation.js +++ b/docs/assets/navigation.js @@ -1 +1 @@ -window.navigationData = "eJyNlcFy2jAQQP/FZyZpSEmb3CiUlpYCA55eMj1sxII1liWPvG5gOv33CMPENpbXXHzQvn0ryyvv87+AcE/BU7A2CjQMd6jpp6SgF6RAkVsXCrIMs9t6/CaiRDkolnoTPN31P//vvZuGgqTRpUFqQrsF4SSnUD25P3hoJH/dQ5IqZBxnglN9ARLRwm7QLoFcun9LDYpTjoxSWNQfY6rMIXGn4bX6wOvEi/T4zDqsZ4pX6q3ctXiOITbZIpCx/uxTjEufoDvUpZUCV5ilbqP+T9nEOOk3+fJqbFyUxxCyeIXt6jaYK/AjT6UThCZGPQYCr/gS4oSzXJmhECbXNEYCqTL2ONpxrsgvZygbYz4J2RqtNFfifD0sJP6+rMQ5zTJP0m2uZ5BrEbG79JJd6kmui6/C3SAPx2oPFF3Zy360S17AE8TNdDwlTFrNF9xV2m5hl6o4plGEIvZ6yjAn+Q56o7DyK6FD6pLPyxeZHx4/3Q361XkwCqeL+brM/gtWwos6DoJTqG64ryaL4vafJldojKr0hOuu4gZktw2oLnz42BD+RitQDacdyhrGSHGPIie8HJulrgYwoq1bareUUUaxQ6rNV+/rNaCG8M8b98jkPw==" \ No newline at end of file +window.navigationData = "eJyNlsFy0zAQQP/F5w6lKS3QW0gIBEqTaT1cOhy28ibWWJY80hqSYfh3FCdT27G89iUH7du3ykob5flvRLij6C56Mgo0TLeo6buk6CIqgFK/LhQ4h+6yHX+TUq48lEmdRHdXkw//Ll5NU0HS6NogNaHdgPCSY6idPLm57SR/3kFeKGQcJ4JTfQIS6comaNdAPj28pQ7FKWdGKazqz7FQZp/7bgStIXCceFUcPt2A9UTxSr2R2x7PIcQmWwQyNpx9jHHpC/RNXVsp8BFd4TcaPsouxkr9TUxnyjiMLSS4Bgt5uE9BclA9yjpS+EW+/DE2q1qFMbjsEfvb0AdzBb6VhfSC2GSo50AQFJ9DnPC+VGYqhCk1zZFAKsceXT/OFfnhDfUlfljEbI1emitxGuXeU2zEOc26zItNqe+h1CJldxkkh9SLUlenwk17gGO1e0pHzl0YHZJX8AIxWc6XhHmv+YwbpR0WDqmqNs1SFFnQU4c5yVfQicLGzx7tC598Wj7LfPvx/dXNpPl2zeLl6uGpzv4NVsKLOjxax1DbcN1MFtX0H1/Z2BjVuBP+dlUT4C47UFt4+64j/IlWoJouB5QtjJHiDkVJeP7E17oWwIg2fqnfUkcZxRap9V8g+PU6UEf46z+zhSAU" \ No newline at end of file diff --git a/docs/assets/search.js b/docs/assets/search.js index c1760b6..ff746f8 100644 --- a/docs/assets/search.js +++ b/docs/assets/search.js @@ -1 +1 @@ -window.searchData = "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"; \ No newline at end of file +window.searchData = "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"; \ No newline at end of file diff --git a/docs/classes/SolanaAgentKit.html b/docs/classes/SolanaAgentKit.html index 313b7e5..34dc73f 100644 --- a/docs/classes/SolanaAgentKit.html +++ b/docs/classes/SolanaAgentKit.html @@ -1,7 +1,7 @@ SolanaAgentKit | solana-agent-kit

    Class SolanaAgentKit

    Main class for interacting with Solana blockchain Provides a unified interface for token operations, NFT management, trading and more

    SolanaAgentKit

    -

    Constructors

    Constructors

    Properties

    config connection wallet @@ -67,14 +67,14 @@ Please use the new constructor with Config object instead:

    const agent = new SolanaAgentKit(privateKey, rpcUrl, {
    OPENAI_API_KEY: 'your-key'
    });
    -
  • Parameters

    • private_key: string
    • rpc_url: string
    • config: Config

    Returns SolanaAgentKit

  • Properties

    config: Config

    Configuration object

    -
    connection: Connection

    Solana RPC connection

    -
    wallet: Keypair

    Wallet keypair for signing transactions

    -
    wallet_address: PublicKey

    Public key of the wallet

    -

    Methods

    • Parameters

      • marketId: PublicKey

      Returns Promise<string>

    • Parameters

      • args: Omit<{ agent: SolanaAgentKit; price: number; tradeMint: PublicKey }, "agent">

      Returns Promise<string>

    • Parameters

      • args: Omit<{ agent: SolanaAgentKit; price: number; tradeMint: PublicKey }, "agent">

      Returns Promise<string>

    • Parameters

      • title: string
      • content: string
      • requirements: string
      • tags: string[]
      • tokenMintAddress: string
      • tokenAmount: number
      • Optionalpayer: string

      Returns Promise<GibworkCreateTaskReponse>

    • Parameters

      • amount: number
      • OptionalsplmintAddress: PublicKey

      Returns Promise<{ signature: string; url: string }>

    • Parameters

      • name: string
      • uri: string
      • symbol: string
      • decimals: number = DEFAULT_OPTIONS.TOKEN_DECIMALS
      • OptionalinitialSupply: number

      Returns Promise<{ mint: PublicKey }>

    • Parameters

      • mint: string

      Returns Promise<string>

    • Closes an existing trading position on Flash.Trade

      -

      Parameters

      • params: FlashCloseTradeParams

        Flash trade close parameters

        +
    • Parameters

      • private_key: string
      • rpc_url: string
      • config: Config

      Returns SolanaAgentKit

    Properties

    config: Config

    Configuration object

    +
    connection: Connection

    Solana RPC connection

    +
    wallet: Keypair

    Wallet keypair for signing transactions

    +
    wallet_address: PublicKey

    Public key of the wallet

    +

    Methods

    • Parameters

      • marketId: PublicKey

      Returns Promise<string>

    • Parameters

      • args: Omit<{ agent: SolanaAgentKit; price: number; tradeMint: PublicKey }, "agent">

      Returns Promise<string>

    • Parameters

      • args: Omit<{ agent: SolanaAgentKit; price: number; tradeMint: PublicKey }, "agent">

      Returns Promise<string>

    • Parameters

      • title: string
      • content: string
      • requirements: string
      • tags: string[]
      • tokenMintAddress: string
      • tokenAmount: number
      • Optionalpayer: string

      Returns Promise<GibworkCreateTaskReponse>

    • Parameters

      • amount: number
      • OptionalsplmintAddress: PublicKey

      Returns Promise<{ signature: string; url: string }>

    • Parameters

      • name: string
      • uri: string
      • symbol: string
      • decimals: number = DEFAULT_OPTIONS.TOKEN_DECIMALS
      • OptionalinitialSupply: number

      Returns Promise<{ mint: PublicKey }>

    • Parameters

      • mint: string

      Returns Promise<string>

    • Opens a new trading position on Flash.Trade

      -

      Parameters

      • params: FlashTradeParams

        Flash trade parameters including market, side, collateral, leverage, and pool name

        +
    • Opens a new trading position on Flash.Trade

      +

      Parameters

      • params: FlashTradeParams

        Flash trade parameters including market, side, collateral, leverage, and pool name

      Returns Promise<string>

      Transaction signature

      -
    • Returns Promise<string[]>

    • Returns Promise<string[]>

    • Parameters

      • Optionaltoken_address: PublicKey

      Returns Promise<number>

    • Parameters

      • walletAddress: PublicKey
      • OptionaltokenAddress: PublicKey

      Returns Promise<number>

    • Parameters

      • owner: PublicKey

      Returns Promise<null | string>

    • Parameters

      • owner: PublicKey

      Returns Promise<string[]>

    • Parameters

      • tld: string

      Returns Promise<string[]>

    • Parameters

      • account: PublicKey

      Returns Promise<string>

    • Parameters

      • priceFeedID: string

      Returns Promise<string>

    • Parameters

      • tokenSymbol: string

      Returns Promise<string>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey
      • quantity: number
      • side: string
      • price: number

      Returns Promise<string>

    • Parameters

      • baseMint: PublicKey
      • quoteMint: PublicKey

      Returns Promise<string[]>

    • Parameters

      • collectionMint: PublicKey
      • metadata: {
            creators?: { address: string; share: number }[];
            name: string;
            sellerFeeBasisPoints?: number;
            uri: string;
        }
      • Optionalrecipient: PublicKey

      Returns Promise<MintCollectionNFTResponse>

    • Parameters

      • baseMint: PublicKey
      • quoteMint: PublicKey
      • lotSize: number = 1
      • tickSize: number = 0.01

      Returns Promise<string[]>

    • Parameters

      • args: Omit<
            {
                agent: SolanaAgentKit;
                collateralAmount: number;
                collateralMint?: PublicKey;
                leverage?: number;
                price: number;
                slippage?: number;
                tradeMint?: PublicKey;
            },
            "agent",
        >

      Returns Promise<string>

    • Parameters

      • args: Omit<
            {
                agent: SolanaAgentKit;
                collateralAmount: number;
                collateralMint?: PublicKey;
                leverage?: number;
                price: number;
                slippage?: number;
                tradeMint?: PublicKey;
            },
            "agent",
        >

      Returns Promise<string>

    • Parameters

      • positionMintAddress: PublicKey

      Returns Promise<string>

    • Parameters

      • mintDeploy: PublicKey
      • mintPair: PublicKey
      • initialPrice: Decimal
      • feeTier: 1 | 2 | 4 | 5 | 16 | 30 | 65 | 100 | 200

      Returns Promise<string>

    • Parameters

      • depositTokenAmount: number
      • depositTokenMint: PublicKey
      • otherTokenMint: PublicKey
      • initialPrice: Decimal
      • maxPrice: Decimal
      • feeTier: 1 | 2 | 4 | 5 | 16 | 30 | 65 | 100 | 200

      Returns Promise<string>

    • Parameters

      • whirlpoolAddress: PublicKey
      • priceOffsetBps: number
      • inputTokenMint: PublicKey
      • inputAmount: Decimal

      Returns Promise<string>

    • Parameters

      • whirlpoolAddress: PublicKey
      • distanceFromCurrentPriceBps: number
      • widthBps: number
      • inputTokenMint: PublicKey
      • inputAmount: Decimal

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey
      • baseAmount: BN
      • quoteAmount: BN
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • mint1: PublicKey
      • mint2: PublicKey
      • configId: PublicKey
      • initialPrice: Decimal
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • mint1: PublicKey
      • mint2: PublicKey
      • configId: PublicKey
      • mintAAmount: BN
      • mintBAmount: BN
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • name: string
      • OptionalspaceKB: number

      Returns Promise<string>

    • Parameters

      • domain: string

      Returns Promise<undefined | PublicKey>

    • Parameters

      • domain: string

      Returns Promise<PublicKey>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • amount: number
      • choice: "rock" | "paper" | "scissors"

      Returns Promise<string>

    • Parameters

      • mintAddress: string
      • amount: number
      • decimals: number
      • recipients: string[]
      • priorityFeeInLamports: number
      • shouldLog: boolean

      Returns Promise<string[]>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • nftMint: PublicKey

      Returns Promise<string>

    • Parameters

      • nftMint: PublicKey
      • price: number

      Returns Promise<string>

    • Parameters

      • outputMint: PublicKey
      • inputAmount: number
      • OptionalinputMint: PublicKey
      • slippageBps: number = DEFAULT_OPTIONS.SLIPPAGE_BPS

      Returns Promise<string>

    • Parameters

      • to: PublicKey
      • amount: number
      • Optionalmint: PublicKey

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey

      Returns Promise<string>

    +
    • Returns Promise<string[]>

    • Returns Promise<string[]>

    • Parameters

      • Optionaltoken_address: PublicKey

      Returns Promise<number>

    • Parameters

      • walletAddress: PublicKey
      • OptionaltokenAddress: PublicKey

      Returns Promise<number>

    • Parameters

      • owner: PublicKey

      Returns Promise<null | string>

    • Parameters

      • owner: PublicKey

      Returns Promise<string[]>

    • Parameters

      • tld: string

      Returns Promise<string[]>

    • Parameters

      • account: PublicKey

      Returns Promise<string>

    • Parameters

      • priceFeedID: string

      Returns Promise<string>

    • Parameters

      • tokenSymbol: string

      Returns Promise<string>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey
      • quantity: number
      • side: string
      • price: number

      Returns Promise<string>

    • Parameters

      • baseMint: PublicKey
      • quoteMint: PublicKey

      Returns Promise<string[]>

    • Parameters

      • collectionMint: PublicKey
      • metadata: {
            creators?: { address: string; share: number }[];
            name: string;
            sellerFeeBasisPoints?: number;
            uri: string;
        }
      • Optionalrecipient: PublicKey

      Returns Promise<MintCollectionNFTResponse>

    • Parameters

      • baseMint: PublicKey
      • quoteMint: PublicKey
      • lotSize: number = 1
      • tickSize: number = 0.01

      Returns Promise<string[]>

    • Parameters

      • args: Omit<
            {
                agent: SolanaAgentKit;
                collateralAmount: number;
                collateralMint?: PublicKey;
                leverage?: number;
                price: number;
                slippage?: number;
                tradeMint?: PublicKey;
            },
            "agent",
        >

      Returns Promise<string>

    • Parameters

      • args: Omit<
            {
                agent: SolanaAgentKit;
                collateralAmount: number;
                collateralMint?: PublicKey;
                leverage?: number;
                price: number;
                slippage?: number;
                tradeMint?: PublicKey;
            },
            "agent",
        >

      Returns Promise<string>

    • Parameters

      • positionMintAddress: PublicKey

      Returns Promise<string>

    • Parameters

      • mintDeploy: PublicKey
      • mintPair: PublicKey
      • initialPrice: Decimal
      • feeTier: 1 | 2 | 4 | 5 | 16 | 30 | 65 | 100 | 200

      Returns Promise<string>

    • Parameters

      • depositTokenAmount: number
      • depositTokenMint: PublicKey
      • otherTokenMint: PublicKey
      • initialPrice: Decimal
      • maxPrice: Decimal
      • feeTier: 1 | 2 | 4 | 5 | 16 | 30 | 65 | 100 | 200

      Returns Promise<string>

    • Parameters

      • whirlpoolAddress: PublicKey
      • priceOffsetBps: number
      • inputTokenMint: PublicKey
      • inputAmount: Decimal

      Returns Promise<string>

    • Parameters

      • whirlpoolAddress: PublicKey
      • distanceFromCurrentPriceBps: number
      • widthBps: number
      • inputTokenMint: PublicKey
      • inputAmount: Decimal

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey
      • baseAmount: BN
      • quoteAmount: BN
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • mint1: PublicKey
      • mint2: PublicKey
      • configId: PublicKey
      • initialPrice: Decimal
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • mint1: PublicKey
      • mint2: PublicKey
      • configId: PublicKey
      • mintAAmount: BN
      • mintBAmount: BN
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • name: string
      • OptionalspaceKB: number

      Returns Promise<string>

    • Parameters

      • domain: string

      Returns Promise<undefined | PublicKey>

    • Parameters

      • domain: string

      Returns Promise<PublicKey>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • amount: number
      • choice: "rock" | "paper" | "scissors"

      Returns Promise<string>

    • Parameters

      • mintAddress: string
      • amount: number
      • decimals: number
      • recipients: string[]
      • priorityFeeInLamports: number
      • shouldLog: boolean

      Returns Promise<string[]>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • nftMint: PublicKey

      Returns Promise<string>

    • Parameters

      • nftMint: PublicKey
      • price: number

      Returns Promise<string>

    • Parameters

      • outputMint: PublicKey
      • inputAmount: number
      • OptionalinputMint: PublicKey
      • slippageBps: number = DEFAULT_OPTIONS.SLIPPAGE_BPS

      Returns Promise<string>

    • Parameters

      • to: PublicKey
      • amount: number
      • Optionalmint: PublicKey

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey

      Returns Promise<string>

    diff --git a/docs/functions/createSolanaTools.html b/docs/functions/createSolanaTools.html index bdf4e85..9ca150b 100644 --- a/docs/functions/createSolanaTools.html +++ b/docs/functions/createSolanaTools.html @@ -1 +1 @@ -createSolanaTools | solana-agent-kit

    Function createSolanaTools

    • Parameters

      Returns (
          | SolanaBalanceTool
          | SolanaBalanceOtherTool
          | SolanaTransferTool
          | SolanaDeployTokenTool
          | SolanaDeployCollectionTool
          | SolanaMintNFTTool
          | SolanaPerpCloseTradeTool
          | SolanaPerpOpenTradeTool
          | SolanaTradeTool
          | SolanaLimitOrderTool
          | SolanaBatchOrderTool
          | SolanaCancelAllOrdersTool
          | SolanaWithdrawAllTool
          | SolanaRequestFundsTool
          | SolanaRegisterDomainTool
          | SolanaResolveDomainTool
          | SolanaGetDomainTool
          | SolanaGetWalletAddressTool
          | SolanaFlashOpenTrade
          | SolanaFlashCloseTrade
          | SolanaPumpfunTokenLaunchTool
          | SolanaCreateImageTool
          | SolanaLendAssetTool
          | SolanaTPSCalculatorTool
          | SolanaStakeTool
          | SolanaRestakeTool
          | SolanaFetchPriceTool
          | SolanaTokenDataTool
          | SolanaTokenDataByTickerTool
          | SolanaCompressedAirdropTool
          | SolanaClosePosition
          | SolanaOrcaCreateCLMM
          | SolanaOrcaCreateSingleSideLiquidityPool
          | SolanaOrcaFetchPositions
          | SolanaOrcaOpenCenteredPosition
          | SolanaOrcaOpenSingleSidedPosition
          | SolanaRaydiumCreateAmmV4
          | SolanaRaydiumCreateClmm
          | SolanaRaydiumCreateCpmm
          | SolanaOpenbookCreateMarket
          | SolanaManifestCreateMarket
          | SolanaPythFetchPrice
          | SolanaResolveAllDomainsTool
          | SolanaGetOwnedDomains
          | SolanaGetOwnedTldDomains
          | SolanaGetAllTlds
          | SolanaGetMainDomain
          | SolanaCreateGibworkTask
          | SolanaRockPaperScissorsTool
          | SolanaTipLinkTool
          | SolanaListNFTForSaleTool
          | SolanaCancelNFTListingTool
          | SolanaFetchTokenReportSummaryTool
          | SolanaFetchTokenDetailedReportTool
      )[]

    +createSolanaTools | solana-agent-kit

    Function createSolanaTools

    • Parameters

      Returns (
          | SolanaBalanceTool
          | SolanaBalanceOtherTool
          | SolanaTransferTool
          | SolanaDeployTokenTool
          | SolanaDeployCollectionTool
          | SolanaMintNFTTool
          | SolanaPerpCloseTradeTool
          | SolanaPerpOpenTradeTool
          | SolanaTradeTool
          | SolanaLimitOrderTool
          | SolanaBatchOrderTool
          | SolanaCancelAllOrdersTool
          | SolanaWithdrawAllTool
          | SolanaRequestFundsTool
          | SolanaRegisterDomainTool
          | SolanaResolveDomainTool
          | SolanaGetDomainTool
          | SolanaGetWalletAddressTool
          | SolanaFlashOpenTrade
          | SolanaFlashCloseTrade
          | SolanaPumpfunTokenLaunchTool
          | SolanaCreateImageTool
          | SolanaLendAssetTool
          | SolanaTPSCalculatorTool
          | SolanaStakeTool
          | SolanaRestakeTool
          | SolanaFetchPriceTool
          | SolanaTokenDataTool
          | SolanaTokenDataByTickerTool
          | SolanaCompressedAirdropTool
          | SolanaClosePosition
          | SolanaOrcaCreateCLMM
          | SolanaOrcaCreateSingleSideLiquidityPool
          | SolanaOrcaFetchPositions
          | SolanaOrcaOpenCenteredPosition
          | SolanaOrcaOpenSingleSidedPosition
          | SolanaRaydiumCreateAmmV4
          | SolanaRaydiumCreateClmm
          | SolanaRaydiumCreateCpmm
          | SolanaOpenbookCreateMarket
          | SolanaManifestCreateMarket
          | SolanaPythFetchPrice
          | SolanaResolveAllDomainsTool
          | SolanaGetOwnedDomains
          | SolanaGetOwnedTldDomains
          | SolanaGetAllTlds
          | SolanaGetMainDomain
          | SolanaCreateGibworkTask
          | SolanaRockPaperScissorsTool
          | SolanaTipLinkTool
          | SolanaListNFTForSaleTool
          | SolanaCancelNFTListingTool
          | SolanaFetchTokenReportSummaryTool
          | SolanaFetchTokenDetailedReportTool
      )[]

    diff --git a/docs/functions/createVercelAITools.html b/docs/functions/createVercelAITools.html index 4c35c1c..d0a0c48 100644 --- a/docs/functions/createVercelAITools.html +++ b/docs/functions/createVercelAITools.html @@ -1 +1 @@ -createVercelAITools | solana-agent-kit

    Function createVercelAITools

    +createVercelAITools | solana-agent-kit

    Function createVercelAITools

    diff --git a/docs/functions/executeAction.html b/docs/functions/executeAction.html index 59e086c..468063f 100644 --- a/docs/functions/executeAction.html +++ b/docs/functions/executeAction.html @@ -1,2 +1,2 @@ executeAction | solana-agent-kit

    Function executeAction

    • Execute an action with the given input

      -

      Parameters

      Returns Promise<Record<string, any>>

    +

    Parameters

    Returns Promise<Record<string, any>>

    diff --git a/docs/functions/findAction.html b/docs/functions/findAction.html index 9797012..632de8f 100644 --- a/docs/functions/findAction.html +++ b/docs/functions/findAction.html @@ -1,2 +1,2 @@ findAction | solana-agent-kit

    Function findAction

    • Find an action by its name or one of its similes

      -

      Parameters

      • query: string

      Returns Action | undefined

    +

    Parameters

    • query: string

    Returns Action | undefined

    diff --git a/docs/functions/getActionExamples.html b/docs/functions/getActionExamples.html index 46d7eec..38ac5e1 100644 --- a/docs/functions/getActionExamples.html +++ b/docs/functions/getActionExamples.html @@ -1,2 +1,2 @@ getActionExamples | solana-agent-kit

    Function getActionExamples

    • Get examples for an action

      -

      Parameters

      • action: Action

      Returns string

    +

    Parameters

    • action: Action

    Returns string

    diff --git a/docs/interfaces/Action.html b/docs/interfaces/Action.html index aeb60a1..fec1876 100644 --- a/docs/interfaces/Action.html +++ b/docs/interfaces/Action.html @@ -1,16 +1,16 @@ Action | solana-agent-kit

    Interface Action

    Main Action interface inspired by ELIZA This interface makes it easier to implement actions across different frameworks

    -
    interface Action {
        description: string;
        examples: ActionExample[][];
        handler: Handler;
        name: string;
        schema: ZodType;
        similes: string[];
    }

    Properties

    interface Action {
        description: string;
        examples: ActionExample[][];
        handler: Handler;
        name: string;
        schema: ZodType;
        similes: string[];
    }

    Properties

    description: string

    Detailed description of what the action does

    -
    examples: ActionExample[][]

    Array of example inputs and outputs for the action +

    examples: ActionExample[][]

    Array of example inputs and outputs for the action Each inner array represents a group of related examples

    -
    handler: Handler

    Function that executes the action

    -
    name: string

    Unique name of the action

    -
    schema: ZodType

    Zod schema for input validation

    -
    similes: string[]

    Alternative names/phrases that can trigger this action

    -
    +
    handler: Handler

    Function that executes the action

    +
    name: string

    Unique name of the action

    +
    schema: ZodType

    Zod schema for input validation

    +
    similes: string[]

    Alternative names/phrases that can trigger this action

    +
    diff --git a/docs/interfaces/ActionExample.html b/docs/interfaces/ActionExample.html index f3bf81b..82ad1be 100644 --- a/docs/interfaces/ActionExample.html +++ b/docs/interfaces/ActionExample.html @@ -1,5 +1,5 @@ ActionExample | solana-agent-kit

    Interface ActionExample

    Example of an action with input and output

    -
    interface ActionExample {
        explanation: string;
        input: Record<string, any>;
        output: Record<string, any>;
    }

    Properties

    interface ActionExample {
        explanation: string;
        input: Record<string, any>;
        output: Record<string, any>;
    }

    Properties

    explanation: string
    input: Record<string, any>
    output: Record<string, any>
    +

    Properties

    explanation: string
    input: Record<string, any>
    output: Record<string, any>
    diff --git a/docs/interfaces/BatchOrderPattern.html b/docs/interfaces/BatchOrderPattern.html index 946021a..47fafa0 100644 --- a/docs/interfaces/BatchOrderPattern.html +++ b/docs/interfaces/BatchOrderPattern.html @@ -1,7 +1,7 @@ -BatchOrderPattern | solana-agent-kit

    Interface BatchOrderPattern

    interface BatchOrderPattern {
        individualQuantity?: number;
        numberOfOrders?: number;
        priceRange?: { max?: number; min?: number };
        side: string;
        spacing?: { type: "percentage" | "fixed"; value: number };
        totalQuantity?: number;
    }

    Properties

    individualQuantity? +BatchOrderPattern | solana-agent-kit

    Interface BatchOrderPattern

    interface BatchOrderPattern {
        individualQuantity?: number;
        numberOfOrders?: number;
        priceRange?: { max?: number; min?: number };
        side: string;
        spacing?: { type: "percentage" | "fixed"; value: number };
        totalQuantity?: number;
    }

    Properties

    individualQuantity?: number
    numberOfOrders?: number
    priceRange?: { max?: number; min?: number }
    side: string
    spacing?: { type: "percentage" | "fixed"; value: number }
    totalQuantity?: number
    +

    Properties

    individualQuantity?: number
    numberOfOrders?: number
    priceRange?: { max?: number; min?: number }
    side: string
    spacing?: { type: "percentage" | "fixed"; value: number }
    totalQuantity?: number
    diff --git a/docs/interfaces/CollectionDeployment.html b/docs/interfaces/CollectionDeployment.html index a392a7d..90de288 100644 --- a/docs/interfaces/CollectionDeployment.html +++ b/docs/interfaces/CollectionDeployment.html @@ -1,3 +1,3 @@ -CollectionDeployment | solana-agent-kit

    Interface CollectionDeployment

    interface CollectionDeployment {
        collectionAddress: PublicKey;
        signature: Uint8Array;
    }

    Properties

    collectionAddress +CollectionDeployment | solana-agent-kit

    Interface CollectionDeployment

    interface CollectionDeployment {
        collectionAddress: PublicKey;
        signature: Uint8Array;
    }

    Properties

    collectionAddress: PublicKey
    signature: Uint8Array
    +

    Properties

    collectionAddress: PublicKey
    signature: Uint8Array
    diff --git a/docs/interfaces/CollectionOptions.html b/docs/interfaces/CollectionOptions.html index 4cb12ab..6a1c4c2 100644 --- a/docs/interfaces/CollectionOptions.html +++ b/docs/interfaces/CollectionOptions.html @@ -1,5 +1,5 @@ -CollectionOptions | solana-agent-kit

    Interface CollectionOptions

    interface CollectionOptions {
        creators?: Creator[];
        name: string;
        royaltyBasisPoints?: number;
        uri: string;
    }

    Properties

    creators? +CollectionOptions | solana-agent-kit

    Interface CollectionOptions

    interface CollectionOptions {
        creators?: Creator[];
        name: string;
        royaltyBasisPoints?: number;
        uri: string;
    }

    Properties

    creators?: Creator[]
    name: string
    royaltyBasisPoints?: number
    uri: string
    +

    Properties

    creators?: Creator[]
    name: string
    royaltyBasisPoints?: number
    uri: string
    diff --git a/docs/interfaces/Config.html b/docs/interfaces/Config.html index ba902c0..f397ec4 100644 --- a/docs/interfaces/Config.html +++ b/docs/interfaces/Config.html @@ -1,4 +1,4 @@ -Config | solana-agent-kit

    Interface Config

    interface Config {
        JUPITER_FEE_BPS?: number;
        JUPITER_REFERRAL_ACCOUNT?: string;
        OPENAI_API_KEY?: string;
    }

    Properties

    JUPITER_FEE_BPS? +Config | solana-agent-kit

    Interface Config

    interface Config {
        JUPITER_FEE_BPS?: number;
        JUPITER_REFERRAL_ACCOUNT?: string;
        OPENAI_API_KEY?: string;
    }

    Properties

    JUPITER_FEE_BPS?: number
    JUPITER_REFERRAL_ACCOUNT?: string
    OPENAI_API_KEY?: string
    +

    Properties

    JUPITER_FEE_BPS?: number
    JUPITER_REFERRAL_ACCOUNT?: string
    OPENAI_API_KEY?: string
    diff --git a/docs/interfaces/Creator.html b/docs/interfaces/Creator.html index 5ef3e97..d0d8b44 100644 --- a/docs/interfaces/Creator.html +++ b/docs/interfaces/Creator.html @@ -1,3 +1,3 @@ -Creator | solana-agent-kit

    Interface Creator

    interface Creator {
        address: string;
        percentage: number;
    }

    Properties

    address +Creator | solana-agent-kit

    Interface Creator

    interface Creator {
        address: string;
        percentage: number;
    }

    Properties

    Properties

    address: string
    percentage: number
    +

    Properties

    address: string
    percentage: number
    diff --git a/docs/interfaces/FetchPriceResponse.html b/docs/interfaces/FetchPriceResponse.html index f2a0b9e..98412df 100644 --- a/docs/interfaces/FetchPriceResponse.html +++ b/docs/interfaces/FetchPriceResponse.html @@ -1,6 +1,6 @@ -FetchPriceResponse | solana-agent-kit

    Interface FetchPriceResponse

    interface FetchPriceResponse {
        code?: string;
        message?: string;
        priceInUSDC?: string;
        status: "success" | "error";
        tokenId?: string;
    }

    Properties

    code? +FetchPriceResponse | solana-agent-kit

    Interface FetchPriceResponse

    interface FetchPriceResponse {
        code?: string;
        message?: string;
        priceInUSDC?: string;
        status: "success" | "error";
        tokenId?: string;
    }

    Properties

    code?: string
    message?: string
    priceInUSDC?: string
    status: "success" | "error"
    tokenId?: string
    +

    Properties

    code?: string
    message?: string
    priceInUSDC?: string
    status: "success" | "error"
    tokenId?: string
    diff --git a/docs/interfaces/FlashCloseTradeParams.html b/docs/interfaces/FlashCloseTradeParams.html new file mode 100644 index 0000000..7c19a68 --- /dev/null +++ b/docs/interfaces/FlashCloseTradeParams.html @@ -0,0 +1,3 @@ +FlashCloseTradeParams | solana-agent-kit

    Interface FlashCloseTradeParams

    interface FlashCloseTradeParams {
        side: "long" | "short";
        token: string;
    }

    Properties

    Properties

    side: "long" | "short"
    token: string
    diff --git a/docs/interfaces/FlashTradeParams.html b/docs/interfaces/FlashTradeParams.html new file mode 100644 index 0000000..3d75b25 --- /dev/null +++ b/docs/interfaces/FlashTradeParams.html @@ -0,0 +1,5 @@ +FlashTradeParams | solana-agent-kit

    Interface FlashTradeParams

    interface FlashTradeParams {
        collateralUsd: number;
        leverage: number;
        side: "long" | "short";
        token: string;
    }

    Properties

    collateralUsd: number
    leverage: number
    side: "long" | "short"
    token: string
    diff --git a/docs/interfaces/GibworkCreateTaskReponse.html b/docs/interfaces/GibworkCreateTaskReponse.html index 5689ddc..f1ff5db 100644 --- a/docs/interfaces/GibworkCreateTaskReponse.html +++ b/docs/interfaces/GibworkCreateTaskReponse.html @@ -1,4 +1,4 @@ -GibworkCreateTaskReponse | solana-agent-kit

    Interface GibworkCreateTaskReponse

    interface GibworkCreateTaskReponse {
        signature?: string;
        status: "success" | "error";
        taskId?: string;
    }

    Properties

    signature? +GibworkCreateTaskReponse | solana-agent-kit

    Interface GibworkCreateTaskReponse

    interface GibworkCreateTaskReponse {
        signature?: string;
        status: "success" | "error";
        taskId?: string;
    }

    Properties

    signature?: string
    status: "success" | "error"
    taskId?: string
    +

    Properties

    signature?: string
    status: "success" | "error"
    taskId?: string
    diff --git a/docs/interfaces/JupiterTokenData.html b/docs/interfaces/JupiterTokenData.html index c7d497b..fd7d98b 100644 --- a/docs/interfaces/JupiterTokenData.html +++ b/docs/interfaces/JupiterTokenData.html @@ -1,4 +1,4 @@ -JupiterTokenData | solana-agent-kit

    Interface JupiterTokenData

    interface JupiterTokenData {
        address: string;
        daily_volume: number;
        decimals: number;
        extensions: { coingeckoId?: string };
        freeze_authority: null | string;
        logoURI: string;
        mint_authority: null | string;
        name: string;
        permanent_delegate: null | string;
        symbol: string;
        tags: string[];
    }

    Properties

    address +JupiterTokenData | solana-agent-kit

    Interface JupiterTokenData

    interface JupiterTokenData {
        address: string;
        daily_volume: number;
        decimals: number;
        extensions: { coingeckoId?: string };
        freeze_authority: null | string;
        logoURI: string;
        mint_authority: null | string;
        name: string;
        permanent_delegate: null | string;
        symbol: string;
        tags: string[];
    }

    Properties

    address: string
    daily_volume: number
    decimals: number
    extensions: { coingeckoId?: string }
    freeze_authority: null | string
    logoURI: string
    mint_authority: null | string
    name: string
    permanent_delegate: null | string
    symbol: string
    tags: string[]
    +

    Properties

    address: string
    daily_volume: number
    decimals: number
    extensions: { coingeckoId?: string }
    freeze_authority: null | string
    logoURI: string
    mint_authority: null | string
    name: string
    permanent_delegate: null | string
    symbol: string
    tags: string[]
    diff --git a/docs/interfaces/LuloAccountDetailsResponse.html b/docs/interfaces/LuloAccountDetailsResponse.html index 8e5b319..6fab022 100644 --- a/docs/interfaces/LuloAccountDetailsResponse.html +++ b/docs/interfaces/LuloAccountDetailsResponse.html @@ -1,6 +1,6 @@ LuloAccountDetailsResponse | solana-agent-kit

    Interface LuloAccountDetailsResponse

    Lulo Account Details response format

    -
    interface LuloAccountDetailsResponse {
        interestEarned: number;
        realtimeApy: number;
        settings: {
            allowedProtocols: null | string;
            homebase: null | string;
            minimumRate: string;
            owner: string;
        };
        totalValue: number;
    }

    Properties

    interface LuloAccountDetailsResponse {
        interestEarned: number;
        realtimeApy: number;
        settings: {
            allowedProtocols: null | string;
            homebase: null | string;
            minimumRate: string;
            owner: string;
        };
        totalValue: number;
    }

    Properties

    interestEarned: number
    realtimeApy: number
    settings: {
        allowedProtocols: null | string;
        homebase: null | string;
        minimumRate: string;
        owner: string;
    }
    totalValue: number
    +

    Properties

    interestEarned: number
    realtimeApy: number
    settings: {
        allowedProtocols: null | string;
        homebase: null | string;
        minimumRate: string;
        owner: string;
    }
    totalValue: number
    diff --git a/docs/interfaces/MintCollectionNFTResponse.html b/docs/interfaces/MintCollectionNFTResponse.html index e34b942..5816d06 100644 --- a/docs/interfaces/MintCollectionNFTResponse.html +++ b/docs/interfaces/MintCollectionNFTResponse.html @@ -1,3 +1,3 @@ -MintCollectionNFTResponse | solana-agent-kit

    Interface MintCollectionNFTResponse

    interface MintCollectionNFTResponse {
        metadata: PublicKey;
        mint: PublicKey;
    }

    Properties

    metadata +MintCollectionNFTResponse | solana-agent-kit

    Interface MintCollectionNFTResponse

    interface MintCollectionNFTResponse {
        metadata: PublicKey;
        mint: PublicKey;
    }

    Properties

    Properties

    metadata: PublicKey
    mint: PublicKey
    +

    Properties

    metadata: PublicKey
    mint: PublicKey
    diff --git a/docs/interfaces/OrderParams.html b/docs/interfaces/OrderParams.html index edfca61..b862c18 100644 --- a/docs/interfaces/OrderParams.html +++ b/docs/interfaces/OrderParams.html @@ -1,4 +1,4 @@ -OrderParams | solana-agent-kit

    Interface OrderParams

    interface OrderParams {
        price: number;
        quantity: number;
        side: string;
    }

    Properties

    price +OrderParams | solana-agent-kit

    Interface OrderParams

    interface OrderParams {
        price: number;
        quantity: number;
        side: string;
    }

    Properties

    Properties

    price: number
    quantity: number
    side: string
    +

    Properties

    price: number
    quantity: number
    side: string
    diff --git a/docs/interfaces/PumpFunTokenOptions.html b/docs/interfaces/PumpFunTokenOptions.html index a6f761f..a5c2bff 100644 --- a/docs/interfaces/PumpFunTokenOptions.html +++ b/docs/interfaces/PumpFunTokenOptions.html @@ -1,7 +1,7 @@ -PumpFunTokenOptions | solana-agent-kit

    Interface PumpFunTokenOptions

    interface PumpFunTokenOptions {
        initialLiquiditySOL?: number;
        priorityFee?: number;
        slippageBps?: number;
        telegram?: string;
        twitter?: string;
        website?: string;
    }

    Properties

    initialLiquiditySOL? +PumpFunTokenOptions | solana-agent-kit

    Interface PumpFunTokenOptions

    interface PumpFunTokenOptions {
        initialLiquiditySOL?: number;
        priorityFee?: number;
        slippageBps?: number;
        telegram?: string;
        twitter?: string;
        website?: string;
    }

    Properties

    initialLiquiditySOL?: number
    priorityFee?: number
    slippageBps?: number
    telegram?: string
    twitter?: string
    website?: string
    +

    Properties

    initialLiquiditySOL?: number
    priorityFee?: number
    slippageBps?: number
    telegram?: string
    twitter?: string
    website?: string
    diff --git a/docs/interfaces/PumpfunLaunchResponse.html b/docs/interfaces/PumpfunLaunchResponse.html index de81320..cb329fe 100644 --- a/docs/interfaces/PumpfunLaunchResponse.html +++ b/docs/interfaces/PumpfunLaunchResponse.html @@ -1,5 +1,5 @@ -PumpfunLaunchResponse | solana-agent-kit

    Interface PumpfunLaunchResponse

    interface PumpfunLaunchResponse {
        error?: string;
        metadataUri?: string;
        mint: string;
        signature: string;
    }

    Properties

    error? +PumpfunLaunchResponse | solana-agent-kit

    Interface PumpfunLaunchResponse

    interface PumpfunLaunchResponse {
        error?: string;
        metadataUri?: string;
        mint: string;
        signature: string;
    }

    Properties

    error?: string
    metadataUri?: string
    mint: string
    signature: string
    +

    Properties

    error?: string
    metadataUri?: string
    mint: string
    signature: string
    diff --git a/docs/interfaces/PythFetchPriceResponse.html b/docs/interfaces/PythFetchPriceResponse.html index 68a3a4d..c39ecd9 100644 --- a/docs/interfaces/PythFetchPriceResponse.html +++ b/docs/interfaces/PythFetchPriceResponse.html @@ -1,7 +1,7 @@ -PythFetchPriceResponse | solana-agent-kit

    Interface PythFetchPriceResponse

    interface PythFetchPriceResponse {
        code?: string;
        message?: string;
        price?: string;
        priceFeedID?: string;
        status: "success" | "error";
        tokenSymbol: string;
    }

    Properties

    code? +PythFetchPriceResponse | solana-agent-kit

    Interface PythFetchPriceResponse

    interface PythFetchPriceResponse {
        code?: string;
        message?: string;
        price?: string;
        priceFeedID?: string;
        status: "success" | "error";
        tokenSymbol: string;
    }

    Properties

    code?: string
    message?: string
    price?: string
    priceFeedID?: string
    status: "success" | "error"
    tokenSymbol: string
    +

    Properties

    code?: string
    message?: string
    price?: string
    priceFeedID?: string
    status: "success" | "error"
    tokenSymbol: string
    diff --git a/docs/interfaces/PythPriceFeedIDItem.html b/docs/interfaces/PythPriceFeedIDItem.html index 9bf6726..d48c8ab 100644 --- a/docs/interfaces/PythPriceFeedIDItem.html +++ b/docs/interfaces/PythPriceFeedIDItem.html @@ -1,3 +1,3 @@ -PythPriceFeedIDItem | solana-agent-kit

    Interface PythPriceFeedIDItem

    interface PythPriceFeedIDItem {
        attributes: { asset_type: string; base: string };
        id: string;
    }

    Properties

    attributes +PythPriceFeedIDItem | solana-agent-kit

    Interface PythPriceFeedIDItem

    interface PythPriceFeedIDItem {
        attributes: { asset_type: string; base: string };
        id: string;
    }

    Properties

    Properties

    attributes: { asset_type: string; base: string }
    id: string
    +

    Properties

    attributes: { asset_type: string; base: string }
    id: string
    diff --git a/docs/interfaces/PythPriceItem.html b/docs/interfaces/PythPriceItem.html index c18784d..879d29d 100644 --- a/docs/interfaces/PythPriceItem.html +++ b/docs/interfaces/PythPriceItem.html @@ -1,3 +1,3 @@ -PythPriceItem | solana-agent-kit

    Interface PythPriceItem

    interface PythPriceItem {
        binary: { data: string[]; encoding: string };
        parsed: [
            {
                ema_price: {
                    conf: string;
                    expo: number;
                    price: string;
                    publish_time: number;
                };
                id: string;
                metadata: {
                    prev_publish_time: number;
                    proof_available_time: number;
                    slot: number;
                };
                price: {
                    conf: string;
                    expo: number;
                    price: string;
                    publish_time: number;
                };
            }[],
        ];
    }

    Properties

    binary +PythPriceItem | solana-agent-kit

    Interface PythPriceItem

    interface PythPriceItem {
        binary: { data: string[]; encoding: string };
        parsed: [
            {
                ema_price: {
                    conf: string;
                    expo: number;
                    price: string;
                    publish_time: number;
                };
                id: string;
                metadata: {
                    prev_publish_time: number;
                    proof_available_time: number;
                    slot: number;
                };
                price: {
                    conf: string;
                    expo: number;
                    price: string;
                    publish_time: number;
                };
            }[],
        ];
    }

    Properties

    Properties

    binary: { data: string[]; encoding: string }
    parsed: [
        {
            ema_price: {
                conf: string;
                expo: number;
                price: string;
                publish_time: number;
            };
            id: string;
            metadata: {
                prev_publish_time: number;
                proof_available_time: number;
                slot: number;
            };
            price: { conf: string; expo: number; price: string; publish_time: number };
        }[],
    ]
    +

    Properties

    binary: { data: string[]; encoding: string }
    parsed: [
        {
            ema_price: {
                conf: string;
                expo: number;
                price: string;
                publish_time: number;
            };
            id: string;
            metadata: {
                prev_publish_time: number;
                proof_available_time: number;
                slot: number;
            };
            price: { conf: string; expo: number; price: string; publish_time: number };
        }[],
    ]
    diff --git a/docs/interfaces/TokenCheck.html b/docs/interfaces/TokenCheck.html index 109c5d1..4bb5936 100644 --- a/docs/interfaces/TokenCheck.html +++ b/docs/interfaces/TokenCheck.html @@ -1,5 +1,5 @@ -TokenCheck | solana-agent-kit

    Interface TokenCheck

    interface TokenCheck {
        risks: {
            description: string;
            level: string;
            name: string;
            score: number;
        }[];
        score: number;
        tokenProgram: string;
        tokenType: string;
    }

    Properties

    risks +TokenCheck | solana-agent-kit

    Interface TokenCheck

    interface TokenCheck {
        risks: {
            description: string;
            level: string;
            name: string;
            score: number;
        }[];
        score: number;
        tokenProgram: string;
        tokenType: string;
    }

    Properties

    risks: { description: string; level: string; name: string; score: number }[]
    score: number
    tokenProgram: string
    tokenType: string
    +

    Properties

    risks: { description: string; level: string; name: string; score: number }[]
    score: number
    tokenProgram: string
    tokenType: string
    diff --git a/docs/modules.html b/docs/modules.html index b8e5d93..0a03fbb 100644 --- a/docs/modules.html +++ b/docs/modules.html @@ -1 +1 @@ -solana-agent-kit
    +solana-agent-kit
    diff --git a/docs/types/Handler.html b/docs/types/Handler.html index 116b609..674da9a 100644 --- a/docs/types/Handler.html +++ b/docs/types/Handler.html @@ -1,2 +1,2 @@ Handler | solana-agent-kit

    Type Alias Handler

    Handler: (
        agent: SolanaAgentKit,
        input: Record<string, any>,
    ) => Promise<Record<string, any>>

    Handler function type for executing the action

    -

    Type declaration

      • (
            agent: SolanaAgentKit,
            input: Record<string, any>,
        ): Promise<Record<string, any>>
      • Parameters

        Returns Promise<Record<string, any>>

    +

    Type declaration

      • (
            agent: SolanaAgentKit,
            input: Record<string, any>,
        ): Promise<Record<string, any>>
      • Parameters

        Returns Promise<Record<string, any>>

    diff --git a/docs/variables/actions.html b/docs/variables/actions.html index 0b64780..ad45b82 100644 --- a/docs/variables/actions.html +++ b/docs/variables/actions.html @@ -1 +1 @@ -ACTIONS | solana-agent-kit

    Variable ACTIONSConst

    ACTIONS: {
        BALANCE_ACTION: Action;
        CREATE_GIBWORK_TASK_ACTION: Action;
        CREATE_IMAGE_ACTION: Action;
        CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: Action;
        DEPLOY_COLLECTION_ACTION: Action;
        DEPLOY_TOKEN_ACTION: Action;
        FETCH_PRICE_ACTION: Action;
        GET_ALL_DOMAINS_TLDS_ACTION: Action;
        GET_ALL_REGISTERED_ALL_DOMAINS_ACTION: Action;
        GET_MAIN_ALL_DOMAINS_DOMAIN_ACTION: Action;
        GET_OWNED_ALL_DOMAINS_ACTION: Action;
        GET_OWNED_DOMAINS_FOR_TLD_ACTION: Action;
        GET_PRIMARY_DOMAIN_ACTION: Action;
        GET_TOKEN_DATA_ACTION: Action;
        GET_TPS_ACTION: Action;
        LAUNCH_PUMPFUN_TOKEN_ACTION: Action;
        LEND_ASSET_ACTION: Action;
        MINT_NFT_ACTION: Action;
        PYTH_FETCH_PRICE_ACTION: Action;
        RAYDIUM_CREATE_AMM_V4_ACTION: Action;
        RAYDIUM_CREATE_CPMM_ACTION: Action;
        REGISTER_DOMAIN_ACTION: Action;
        REQUEST_FUNDS_ACTION: Action;
        RESOLVE_DOMAIN_ACTION: Action;
        RESOLVE_SOL_DOMAIN_ACTION: Action;
        STAKE_WITH_JUP_ACTION: Action;
        STAKE_WITH_SOLAYER_ACTION: Action;
        TRADE_ACTION: Action;
        TRANSFER_ACTION: Action;
        WALLET_ADDRESS_ACTION: Action;
    } = ...

    Type declaration

    • BALANCE_ACTION: Action
    • CREATE_GIBWORK_TASK_ACTION: Action
    • CREATE_IMAGE_ACTION: Action
    • CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: Action
    • DEPLOY_COLLECTION_ACTION: Action
    • DEPLOY_TOKEN_ACTION: Action
    • FETCH_PRICE_ACTION: Action
    • GET_ALL_DOMAINS_TLDS_ACTION: Action
    • GET_ALL_REGISTERED_ALL_DOMAINS_ACTION: Action
    • GET_MAIN_ALL_DOMAINS_DOMAIN_ACTION: Action
    • GET_OWNED_ALL_DOMAINS_ACTION: Action
    • GET_OWNED_DOMAINS_FOR_TLD_ACTION: Action
    • GET_PRIMARY_DOMAIN_ACTION: Action
    • GET_TOKEN_DATA_ACTION: Action
    • GET_TPS_ACTION: Action
    • LAUNCH_PUMPFUN_TOKEN_ACTION: Action
    • LEND_ASSET_ACTION: Action
    • MINT_NFT_ACTION: Action
    • PYTH_FETCH_PRICE_ACTION: Action
    • RAYDIUM_CREATE_AMM_V4_ACTION: Action
    • RAYDIUM_CREATE_CPMM_ACTION: Action
    • REGISTER_DOMAIN_ACTION: Action
    • REQUEST_FUNDS_ACTION: Action
    • RESOLVE_DOMAIN_ACTION: Action
    • RESOLVE_SOL_DOMAIN_ACTION: Action
    • STAKE_WITH_JUP_ACTION: Action
    • STAKE_WITH_SOLAYER_ACTION: Action
    • TRADE_ACTION: Action
    • TRANSFER_ACTION: Action
    • WALLET_ADDRESS_ACTION: Action
    +ACTIONS | solana-agent-kit

    Variable ACTIONSConst

    ACTIONS: {
        BALANCE_ACTION: Action;
        CREATE_GIBWORK_TASK_ACTION: Action;
        CREATE_IMAGE_ACTION: Action;
        CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: Action;
        DEPLOY_COLLECTION_ACTION: Action;
        DEPLOY_TOKEN_ACTION: Action;
        FETCH_PRICE_ACTION: Action;
        GET_ALL_DOMAINS_TLDS_ACTION: Action;
        GET_ALL_REGISTERED_ALL_DOMAINS_ACTION: Action;
        GET_MAIN_ALL_DOMAINS_DOMAIN_ACTION: Action;
        GET_OWNED_ALL_DOMAINS_ACTION: Action;
        GET_OWNED_DOMAINS_FOR_TLD_ACTION: Action;
        GET_PRIMARY_DOMAIN_ACTION: Action;
        GET_TOKEN_DATA_ACTION: Action;
        GET_TPS_ACTION: Action;
        LAUNCH_PUMPFUN_TOKEN_ACTION: Action;
        LEND_ASSET_ACTION: Action;
        MINT_NFT_ACTION: Action;
        PYTH_FETCH_PRICE_ACTION: Action;
        RAYDIUM_CREATE_AMM_V4_ACTION: Action;
        RAYDIUM_CREATE_CPMM_ACTION: Action;
        REGISTER_DOMAIN_ACTION: Action;
        REQUEST_FUNDS_ACTION: Action;
        RESOLVE_DOMAIN_ACTION: Action;
        RESOLVE_SOL_DOMAIN_ACTION: Action;
        STAKE_WITH_JUP_ACTION: Action;
        STAKE_WITH_SOLAYER_ACTION: Action;
        TRADE_ACTION: Action;
        TRANSFER_ACTION: Action;
        WALLET_ADDRESS_ACTION: Action;
    } = ...

    Type declaration

    • BALANCE_ACTION: Action
    • CREATE_GIBWORK_TASK_ACTION: Action
    • CREATE_IMAGE_ACTION: Action
    • CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: Action
    • DEPLOY_COLLECTION_ACTION: Action
    • DEPLOY_TOKEN_ACTION: Action
    • FETCH_PRICE_ACTION: Action
    • GET_ALL_DOMAINS_TLDS_ACTION: Action
    • GET_ALL_REGISTERED_ALL_DOMAINS_ACTION: Action
    • GET_MAIN_ALL_DOMAINS_DOMAIN_ACTION: Action
    • GET_OWNED_ALL_DOMAINS_ACTION: Action
    • GET_OWNED_DOMAINS_FOR_TLD_ACTION: Action
    • GET_PRIMARY_DOMAIN_ACTION: Action
    • GET_TOKEN_DATA_ACTION: Action
    • GET_TPS_ACTION: Action
    • LAUNCH_PUMPFUN_TOKEN_ACTION: Action
    • LEND_ASSET_ACTION: Action
    • MINT_NFT_ACTION: Action
    • PYTH_FETCH_PRICE_ACTION: Action
    • RAYDIUM_CREATE_AMM_V4_ACTION: Action
    • RAYDIUM_CREATE_CPMM_ACTION: Action
    • REGISTER_DOMAIN_ACTION: Action
    • REQUEST_FUNDS_ACTION: Action
    • RESOLVE_DOMAIN_ACTION: Action
    • RESOLVE_SOL_DOMAIN_ACTION: Action
    • STAKE_WITH_JUP_ACTION: Action
    • STAKE_WITH_SOLAYER_ACTION: Action
    • TRADE_ACTION: Action
    • TRANSFER_ACTION: Action
    • WALLET_ADDRESS_ACTION: Action
    diff --git a/src/actions/flashCloseTrade.ts b/src/actions/flashCloseTrade.ts new file mode 100644 index 0000000..3781d83 --- /dev/null +++ b/src/actions/flashCloseTrade.ts @@ -0,0 +1,68 @@ +import { Action } from "../types/action"; +import { SolanaAgentKit } from "../agent"; +import { z } from "zod"; +import { flashCloseTrade } from "../tools"; + +const flashCloseTradeAction: Action = { + name: "FLASH_CLOSE_TRADE", + similes: [ + "close trade", + "close leveraged trade", + "exit position", + "close position", + "exit trade", + "close long", + "close short", + "take profit", + "stop loss", + ], + description: + "Close an existing leveraged trading position on Flash.Trade protocol", + examples: [ + [ + { + input: { + token: "SOL", + side: "long", + }, + output: { + status: "success", + signature: "4xKpN2...", + message: "Successfully closed long position on SOL", + }, + explanation: "Close an existing long position on SOL", + }, + ], + ], + schema: z.object({ + token: z + .string() + .describe("Token symbol of the position to close (e.g. SOL, ETH)"), + side: z + .enum(["long", "short"]) + .describe("Position side to close - long or short"), + }), + handler: async (agent: SolanaAgentKit, input: Record) => { + try { + const params = { + token: input.token as string, + side: input.side as "long" | "short", + }; + + const response = await flashCloseTrade(agent, params); + + return { + status: "success", + signature: response, + message: `Successfully closed ${params.side} position on ${params.token}`, + }; + } catch (error: any) { + return { + status: "error", + message: `Flash trade close failed: ${error.message}`, + }; + } + }, +}; + +export default flashCloseTradeAction; diff --git a/src/actions/flashOpenTrade.ts b/src/actions/flashOpenTrade.ts new file mode 100644 index 0000000..790bdef --- /dev/null +++ b/src/actions/flashOpenTrade.ts @@ -0,0 +1,78 @@ +import { Action } from "../types/action"; +import { SolanaAgentKit } from "../agent"; +import { z } from "zod"; +import { flashOpenTrade } from "../tools"; + +const flashOpenTradeAction: Action = { + name: "FLASH_OPEN_TRADE", + similes: [ + "open trade", + "open leveraged trade", + "start trading position", + "open position", + "long position", + "short position", + "leverage trade", + "margin trade", + ], + description: "Open a leveraged trading position on Flash.Trade protocol", + examples: [ + [ + { + input: { + token: "SOL", + side: "long", + collateralUsd: 100, + leverage: 5, + }, + output: { + status: "success", + signature: "4xKpN2...", + message: + "Successfully opened 5x long position on SOL with $100 collateral", + }, + explanation: + "Open a 5x leveraged long position on SOL using $100 as collateral", + }, + ], + ], + schema: z.object({ + token: z.string().describe("Token symbol to trade (e.g. SOL, ETH)"), + side: z + .enum(["long", "short"]) + .describe("Trading direction - long or short"), + collateralUsd: z + .number() + .positive() + .describe("Amount of collateral in USD"), + leverage: z + .number() + .positive() + .describe("Leverage multiplier for the trade"), + }), + handler: async (agent: SolanaAgentKit, input: Record) => { + try { + const params = { + token: input.token as string, + side: input.side as "long" | "short", + collateralUsd: input.collateralUsd as number, + leverage: input.leverage as number, + }; + + const response = await flashOpenTrade(agent, params); + + return { + status: "success", + signature: response, + message: `Successfully opened ${params.leverage}x ${params.side} position on ${params.token} with $${params.collateralUsd} collateral`, + }; + } catch (error: any) { + return { + status: "error", + message: `Flash trade failed: ${error.message}`, + }; + } + }, +}; + +export default flashOpenTradeAction; diff --git a/src/agent/index.ts b/src/agent/index.ts index 4d51856..0468224 100644 --- a/src/agent/index.ts +++ b/src/agent/index.ts @@ -60,8 +60,6 @@ import { fetchTokenDetailedReport, fetchPythPrice, fetchPythPriceFeedID, - FlashTradeParams, - FlashCloseTradeParams, flashOpenTrade, flashCloseTrade, } from "../tools"; @@ -74,6 +72,8 @@ import { PumpfunLaunchResponse, PumpFunTokenOptions, OrderParams, + FlashTradeParams, + FlashCloseTradeParams, } from "../types"; /** diff --git a/src/tools/flash_close_trade.ts b/src/tools/flash_close_trade.ts index 2ad248f..318eb8d 100644 --- a/src/tools/flash_close_trade.ts +++ b/src/tools/flash_close_trade.ts @@ -16,11 +16,7 @@ import { fetchOraclePrice, createPerpClient, } from "../utils/flashUtils"; - -export interface FlashCloseTradeParams { - token: string; - side: "long" | "short"; -} +import { FlashCloseTradeParams } from "../types"; /** * Closes an existing position on Flash.Trade @@ -64,7 +60,10 @@ export async function flashCloseTrade( ]); // Initialize pool configuration and perpClient - const poolConfig = PoolConfig.fromIdsByName(marketData.pool, "mainnet-beta"); + const poolConfig = PoolConfig.fromIdsByName( + marketData.pool, + "mainnet-beta", + ); const perpClient = createPerpClient(agent.connection, agent.wallet); // Calculate price after slippage diff --git a/src/tools/flash_open_trade.ts b/src/tools/flash_open_trade.ts index b0a968f..148e373 100644 --- a/src/tools/flash_open_trade.ts +++ b/src/tools/flash_open_trade.ts @@ -19,13 +19,7 @@ import { fetchOraclePrice, createPerpClient, } from "../utils/flashUtils"; - -export interface FlashTradeParams { - token: string; - side: "long" | "short"; - collateralUsd: number; - leverage: number; -} +import { FlashTradeParams } from "../types"; /** * Opens a new position on Flash.Trade @@ -77,7 +71,10 @@ export async function flashOpenTrade( ]); // Initialize pool configuration and perpClient - const poolConfig = PoolConfig.fromIdsByName(marketData.pool, "mainnet-beta"); + const poolConfig = PoolConfig.fromIdsByName( + marketData.pool, + "mainnet-beta", + ); const perpClient = createPerpClient(agent.connection, agent.wallet); // Calculate position parameters diff --git a/src/types/index.ts b/src/types/index.ts index ad88ec8..71dab5d 100644 --- a/src/types/index.ts +++ b/src/types/index.ts @@ -224,3 +224,15 @@ export interface BatchOrderPattern { numberOfOrders?: number; individualQuantity?: number; } + +export interface FlashTradeParams { + token: string; + side: "long" | "short"; + collateralUsd: number; + leverage: number; +} + +export interface FlashCloseTradeParams { + token: string; + side: "long" | "short"; +} From 9adc80ee32c1049acbef4f7c6eefc4bf488c7963 Mon Sep 17 00:00:00 2001 From: UjjwalGupta49 Date: Mon, 6 Jan 2025 17:56:13 +0530 Subject: [PATCH 8/8] export actions --- docs/assets/search.js | 2 +- docs/classes/SolanaAgentKit.html | 16 ++++++++-------- docs/functions/createSolanaTools.html | 2 +- docs/functions/createVercelAITools.html | 2 +- docs/functions/executeAction.html | 2 +- docs/functions/findAction.html | 2 +- docs/functions/getActionExamples.html | 2 +- docs/interfaces/Action.html | 14 +++++++------- docs/interfaces/ActionExample.html | 4 ++-- docs/interfaces/BatchOrderPattern.html | 4 ++-- docs/interfaces/CollectionDeployment.html | 4 ++-- docs/interfaces/CollectionOptions.html | 4 ++-- docs/interfaces/Config.html | 4 ++-- docs/interfaces/Creator.html | 4 ++-- docs/interfaces/FetchPriceResponse.html | 4 ++-- docs/interfaces/FlashCloseTradeParams.html | 4 ++-- docs/interfaces/FlashTradeParams.html | 4 ++-- docs/interfaces/GibworkCreateTaskReponse.html | 4 ++-- docs/interfaces/JupiterTokenData.html | 4 ++-- docs/interfaces/LuloAccountDetailsResponse.html | 4 ++-- docs/interfaces/MintCollectionNFTResponse.html | 4 ++-- docs/interfaces/OrderParams.html | 4 ++-- docs/interfaces/PumpFunTokenOptions.html | 4 ++-- docs/interfaces/PumpfunLaunchResponse.html | 4 ++-- docs/interfaces/PythFetchPriceResponse.html | 4 ++-- docs/interfaces/PythPriceFeedIDItem.html | 4 ++-- docs/interfaces/PythPriceItem.html | 4 ++-- docs/interfaces/TokenCheck.html | 4 ++-- docs/types/Handler.html | 2 +- docs/variables/actions.html | 2 +- src/actions/index.ts | 4 ++++ 31 files changed, 67 insertions(+), 63 deletions(-) diff --git a/docs/assets/search.js b/docs/assets/search.js index ff746f8..adec9f3 100644 --- a/docs/assets/search.js +++ b/docs/assets/search.js @@ -1 +1 @@ -window.searchData = "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"; \ No newline at end of file +window.searchData = "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"; \ No newline at end of file diff --git a/docs/classes/SolanaAgentKit.html b/docs/classes/SolanaAgentKit.html index 34dc73f..d4a65d6 100644 --- a/docs/classes/SolanaAgentKit.html +++ b/docs/classes/SolanaAgentKit.html @@ -1,7 +1,7 @@ SolanaAgentKit | solana-agent-kit

    Class SolanaAgentKit

    Main class for interacting with Solana blockchain Provides a unified interface for token operations, NFT management, trading and more

    SolanaAgentKit

    -

    Constructors

    Constructors

    Properties

    config connection wallet @@ -67,14 +67,14 @@ Please use the new constructor with Config object instead:

    const agent = new SolanaAgentKit(privateKey, rpcUrl, {
    OPENAI_API_KEY: 'your-key'
    });
    -
  • Parameters

    • private_key: string
    • rpc_url: string
    • config: Config

    Returns SolanaAgentKit

  • Properties

    config: Config

    Configuration object

    -
    connection: Connection

    Solana RPC connection

    -
    wallet: Keypair

    Wallet keypair for signing transactions

    -
    wallet_address: PublicKey

    Public key of the wallet

    -

    Methods

    • Parameters

      • marketId: PublicKey

      Returns Promise<string>

    • Parameters

      • args: Omit<{ agent: SolanaAgentKit; price: number; tradeMint: PublicKey }, "agent">

      Returns Promise<string>

    • Parameters

      • args: Omit<{ agent: SolanaAgentKit; price: number; tradeMint: PublicKey }, "agent">

      Returns Promise<string>

    • Parameters

      • title: string
      • content: string
      • requirements: string
      • tags: string[]
      • tokenMintAddress: string
      • tokenAmount: number
      • Optionalpayer: string

      Returns Promise<GibworkCreateTaskReponse>

    • Parameters

      • amount: number
      • OptionalsplmintAddress: PublicKey

      Returns Promise<{ signature: string; url: string }>

    • Parameters

      • name: string
      • uri: string
      • symbol: string
      • decimals: number = DEFAULT_OPTIONS.TOKEN_DECIMALS
      • OptionalinitialSupply: number

      Returns Promise<{ mint: PublicKey }>

    • Parameters

      • mint: string

      Returns Promise<string>

    • Closes an existing trading position on Flash.Trade

      +
  • Parameters

    • private_key: string
    • rpc_url: string
    • config: Config

    Returns SolanaAgentKit

  • Properties

    config: Config

    Configuration object

    +
    connection: Connection

    Solana RPC connection

    +
    wallet: Keypair

    Wallet keypair for signing transactions

    +
    wallet_address: PublicKey

    Public key of the wallet

    +

    Methods

    • Parameters

      • marketId: PublicKey

      Returns Promise<string>

    • Parameters

      • args: Omit<{ agent: SolanaAgentKit; price: number; tradeMint: PublicKey }, "agent">

      Returns Promise<string>

    • Parameters

      • args: Omit<{ agent: SolanaAgentKit; price: number; tradeMint: PublicKey }, "agent">

      Returns Promise<string>

    • Parameters

      • title: string
      • content: string
      • requirements: string
      • tags: string[]
      • tokenMintAddress: string
      • tokenAmount: number
      • Optionalpayer: string

      Returns Promise<GibworkCreateTaskReponse>

    • Parameters

      • amount: number
      • OptionalsplmintAddress: PublicKey

      Returns Promise<{ signature: string; url: string }>

    • Parameters

      • name: string
      • uri: string
      • symbol: string
      • decimals: number = DEFAULT_OPTIONS.TOKEN_DECIMALS
      • OptionalinitialSupply: number

      Returns Promise<{ mint: PublicKey }>

    • Parameters

      • mint: string

      Returns Promise<string>

    • Opens a new trading position on Flash.Trade

      Parameters

      • params: FlashTradeParams

        Flash trade parameters including market, side, collateral, leverage, and pool name

      Returns Promise<string>

      Transaction signature

      -
    • Returns Promise<string[]>

    • Returns Promise<string[]>

    • Parameters

      • Optionaltoken_address: PublicKey

      Returns Promise<number>

    • Parameters

      • walletAddress: PublicKey
      • OptionaltokenAddress: PublicKey

      Returns Promise<number>

    • Parameters

      • owner: PublicKey

      Returns Promise<null | string>

    • Parameters

      • owner: PublicKey

      Returns Promise<string[]>

    • Parameters

      • tld: string

      Returns Promise<string[]>

    • Parameters

      • account: PublicKey

      Returns Promise<string>

    • Parameters

      • priceFeedID: string

      Returns Promise<string>

    • Parameters

      • tokenSymbol: string

      Returns Promise<string>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey
      • quantity: number
      • side: string
      • price: number

      Returns Promise<string>

    • Parameters

      • baseMint: PublicKey
      • quoteMint: PublicKey

      Returns Promise<string[]>

    • Parameters

      • collectionMint: PublicKey
      • metadata: {
            creators?: { address: string; share: number }[];
            name: string;
            sellerFeeBasisPoints?: number;
            uri: string;
        }
      • Optionalrecipient: PublicKey

      Returns Promise<MintCollectionNFTResponse>

    • Parameters

      • baseMint: PublicKey
      • quoteMint: PublicKey
      • lotSize: number = 1
      • tickSize: number = 0.01

      Returns Promise<string[]>

    • Parameters

      • args: Omit<
            {
                agent: SolanaAgentKit;
                collateralAmount: number;
                collateralMint?: PublicKey;
                leverage?: number;
                price: number;
                slippage?: number;
                tradeMint?: PublicKey;
            },
            "agent",
        >

      Returns Promise<string>

    • Parameters

      • args: Omit<
            {
                agent: SolanaAgentKit;
                collateralAmount: number;
                collateralMint?: PublicKey;
                leverage?: number;
                price: number;
                slippage?: number;
                tradeMint?: PublicKey;
            },
            "agent",
        >

      Returns Promise<string>

    • Parameters

      • positionMintAddress: PublicKey

      Returns Promise<string>

    • Parameters

      • mintDeploy: PublicKey
      • mintPair: PublicKey
      • initialPrice: Decimal
      • feeTier: 1 | 2 | 4 | 5 | 16 | 30 | 65 | 100 | 200

      Returns Promise<string>

    • Parameters

      • depositTokenAmount: number
      • depositTokenMint: PublicKey
      • otherTokenMint: PublicKey
      • initialPrice: Decimal
      • maxPrice: Decimal
      • feeTier: 1 | 2 | 4 | 5 | 16 | 30 | 65 | 100 | 200

      Returns Promise<string>

    • Parameters

      • whirlpoolAddress: PublicKey
      • priceOffsetBps: number
      • inputTokenMint: PublicKey
      • inputAmount: Decimal

      Returns Promise<string>

    • Parameters

      • whirlpoolAddress: PublicKey
      • distanceFromCurrentPriceBps: number
      • widthBps: number
      • inputTokenMint: PublicKey
      • inputAmount: Decimal

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey
      • baseAmount: BN
      • quoteAmount: BN
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • mint1: PublicKey
      • mint2: PublicKey
      • configId: PublicKey
      • initialPrice: Decimal
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • mint1: PublicKey
      • mint2: PublicKey
      • configId: PublicKey
      • mintAAmount: BN
      • mintBAmount: BN
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • name: string
      • OptionalspaceKB: number

      Returns Promise<string>

    • Parameters

      • domain: string

      Returns Promise<undefined | PublicKey>

    • Parameters

      • domain: string

      Returns Promise<PublicKey>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • amount: number
      • choice: "rock" | "paper" | "scissors"

      Returns Promise<string>

    • Parameters

      • mintAddress: string
      • amount: number
      • decimals: number
      • recipients: string[]
      • priorityFeeInLamports: number
      • shouldLog: boolean

      Returns Promise<string[]>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • nftMint: PublicKey

      Returns Promise<string>

    • Parameters

      • nftMint: PublicKey
      • price: number

      Returns Promise<string>

    • Parameters

      • outputMint: PublicKey
      • inputAmount: number
      • OptionalinputMint: PublicKey
      • slippageBps: number = DEFAULT_OPTIONS.SLIPPAGE_BPS

      Returns Promise<string>

    • Parameters

      • to: PublicKey
      • amount: number
      • Optionalmint: PublicKey

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey

      Returns Promise<string>

    +
    • Returns Promise<string[]>

    • Returns Promise<string[]>

    • Parameters

      • Optionaltoken_address: PublicKey

      Returns Promise<number>

    • Parameters

      • walletAddress: PublicKey
      • OptionaltokenAddress: PublicKey

      Returns Promise<number>

    • Parameters

      • owner: PublicKey

      Returns Promise<null | string>

    • Parameters

      • owner: PublicKey

      Returns Promise<string[]>

    • Parameters

      • tld: string

      Returns Promise<string[]>

    • Parameters

      • account: PublicKey

      Returns Promise<string>

    • Parameters

      • priceFeedID: string

      Returns Promise<string>

    • Parameters

      • tokenSymbol: string

      Returns Promise<string>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey
      • quantity: number
      • side: string
      • price: number

      Returns Promise<string>

    • Parameters

      • baseMint: PublicKey
      • quoteMint: PublicKey

      Returns Promise<string[]>

    • Parameters

      • collectionMint: PublicKey
      • metadata: {
            creators?: { address: string; share: number }[];
            name: string;
            sellerFeeBasisPoints?: number;
            uri: string;
        }
      • Optionalrecipient: PublicKey

      Returns Promise<MintCollectionNFTResponse>

    • Parameters

      • baseMint: PublicKey
      • quoteMint: PublicKey
      • lotSize: number = 1
      • tickSize: number = 0.01

      Returns Promise<string[]>

    • Parameters

      • args: Omit<
            {
                agent: SolanaAgentKit;
                collateralAmount: number;
                collateralMint?: PublicKey;
                leverage?: number;
                price: number;
                slippage?: number;
                tradeMint?: PublicKey;
            },
            "agent",
        >

      Returns Promise<string>

    • Parameters

      • args: Omit<
            {
                agent: SolanaAgentKit;
                collateralAmount: number;
                collateralMint?: PublicKey;
                leverage?: number;
                price: number;
                slippage?: number;
                tradeMint?: PublicKey;
            },
            "agent",
        >

      Returns Promise<string>

    • Parameters

      • positionMintAddress: PublicKey

      Returns Promise<string>

    • Parameters

      • mintDeploy: PublicKey
      • mintPair: PublicKey
      • initialPrice: Decimal
      • feeTier: 1 | 2 | 4 | 5 | 16 | 30 | 65 | 100 | 200

      Returns Promise<string>

    • Parameters

      • depositTokenAmount: number
      • depositTokenMint: PublicKey
      • otherTokenMint: PublicKey
      • initialPrice: Decimal
      • maxPrice: Decimal
      • feeTier: 1 | 2 | 4 | 5 | 16 | 30 | 65 | 100 | 200

      Returns Promise<string>

    • Parameters

      • whirlpoolAddress: PublicKey
      • priceOffsetBps: number
      • inputTokenMint: PublicKey
      • inputAmount: Decimal

      Returns Promise<string>

    • Parameters

      • whirlpoolAddress: PublicKey
      • distanceFromCurrentPriceBps: number
      • widthBps: number
      • inputTokenMint: PublicKey
      • inputAmount: Decimal

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey
      • baseAmount: BN
      • quoteAmount: BN
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • mint1: PublicKey
      • mint2: PublicKey
      • configId: PublicKey
      • initialPrice: Decimal
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • mint1: PublicKey
      • mint2: PublicKey
      • configId: PublicKey
      • mintAAmount: BN
      • mintBAmount: BN
      • startTime: BN

      Returns Promise<string>

    • Parameters

      • name: string
      • OptionalspaceKB: number

      Returns Promise<string>

    • Parameters

      • domain: string

      Returns Promise<undefined | PublicKey>

    • Parameters

      • domain: string

      Returns Promise<PublicKey>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • amount: number
      • choice: "rock" | "paper" | "scissors"

      Returns Promise<string>

    • Parameters

      • mintAddress: string
      • amount: number
      • decimals: number
      • recipients: string[]
      • priorityFeeInLamports: number
      • shouldLog: boolean

      Returns Promise<string[]>

    • Parameters

      • amount: number

      Returns Promise<string>

    • Parameters

      • nftMint: PublicKey

      Returns Promise<string>

    • Parameters

      • nftMint: PublicKey
      • price: number

      Returns Promise<string>

    • Parameters

      • outputMint: PublicKey
      • inputAmount: number
      • OptionalinputMint: PublicKey
      • slippageBps: number = DEFAULT_OPTIONS.SLIPPAGE_BPS

      Returns Promise<string>

    • Parameters

      • to: PublicKey
      • amount: number
      • Optionalmint: PublicKey

      Returns Promise<string>

    • Parameters

      • marketId: PublicKey

      Returns Promise<string>

    diff --git a/docs/functions/createSolanaTools.html b/docs/functions/createSolanaTools.html index 9ca150b..fdb8fa1 100644 --- a/docs/functions/createSolanaTools.html +++ b/docs/functions/createSolanaTools.html @@ -1 +1 @@ -createSolanaTools | solana-agent-kit

    Function createSolanaTools

    • Parameters

      Returns (
          | SolanaBalanceTool
          | SolanaBalanceOtherTool
          | SolanaTransferTool
          | SolanaDeployTokenTool
          | SolanaDeployCollectionTool
          | SolanaMintNFTTool
          | SolanaPerpCloseTradeTool
          | SolanaPerpOpenTradeTool
          | SolanaTradeTool
          | SolanaLimitOrderTool
          | SolanaBatchOrderTool
          | SolanaCancelAllOrdersTool
          | SolanaWithdrawAllTool
          | SolanaRequestFundsTool
          | SolanaRegisterDomainTool
          | SolanaResolveDomainTool
          | SolanaGetDomainTool
          | SolanaGetWalletAddressTool
          | SolanaFlashOpenTrade
          | SolanaFlashCloseTrade
          | SolanaPumpfunTokenLaunchTool
          | SolanaCreateImageTool
          | SolanaLendAssetTool
          | SolanaTPSCalculatorTool
          | SolanaStakeTool
          | SolanaRestakeTool
          | SolanaFetchPriceTool
          | SolanaTokenDataTool
          | SolanaTokenDataByTickerTool
          | SolanaCompressedAirdropTool
          | SolanaClosePosition
          | SolanaOrcaCreateCLMM
          | SolanaOrcaCreateSingleSideLiquidityPool
          | SolanaOrcaFetchPositions
          | SolanaOrcaOpenCenteredPosition
          | SolanaOrcaOpenSingleSidedPosition
          | SolanaRaydiumCreateAmmV4
          | SolanaRaydiumCreateClmm
          | SolanaRaydiumCreateCpmm
          | SolanaOpenbookCreateMarket
          | SolanaManifestCreateMarket
          | SolanaPythFetchPrice
          | SolanaResolveAllDomainsTool
          | SolanaGetOwnedDomains
          | SolanaGetOwnedTldDomains
          | SolanaGetAllTlds
          | SolanaGetMainDomain
          | SolanaCreateGibworkTask
          | SolanaRockPaperScissorsTool
          | SolanaTipLinkTool
          | SolanaListNFTForSaleTool
          | SolanaCancelNFTListingTool
          | SolanaFetchTokenReportSummaryTool
          | SolanaFetchTokenDetailedReportTool
      )[]

    +createSolanaTools | solana-agent-kit

    Function createSolanaTools

    • Parameters

      Returns (
          | SolanaBalanceTool
          | SolanaBalanceOtherTool
          | SolanaTransferTool
          | SolanaDeployTokenTool
          | SolanaDeployCollectionTool
          | SolanaMintNFTTool
          | SolanaPerpCloseTradeTool
          | SolanaPerpOpenTradeTool
          | SolanaTradeTool
          | SolanaLimitOrderTool
          | SolanaBatchOrderTool
          | SolanaCancelAllOrdersTool
          | SolanaWithdrawAllTool
          | SolanaRequestFundsTool
          | SolanaRegisterDomainTool
          | SolanaResolveDomainTool
          | SolanaGetDomainTool
          | SolanaGetWalletAddressTool
          | SolanaFlashOpenTrade
          | SolanaFlashCloseTrade
          | SolanaPumpfunTokenLaunchTool
          | SolanaCreateImageTool
          | SolanaLendAssetTool
          | SolanaTPSCalculatorTool
          | SolanaStakeTool
          | SolanaRestakeTool
          | SolanaFetchPriceTool
          | SolanaTokenDataTool
          | SolanaTokenDataByTickerTool
          | SolanaCompressedAirdropTool
          | SolanaClosePosition
          | SolanaOrcaCreateCLMM
          | SolanaOrcaCreateSingleSideLiquidityPool
          | SolanaOrcaFetchPositions
          | SolanaOrcaOpenCenteredPosition
          | SolanaOrcaOpenSingleSidedPosition
          | SolanaRaydiumCreateAmmV4
          | SolanaRaydiumCreateClmm
          | SolanaRaydiumCreateCpmm
          | SolanaOpenbookCreateMarket
          | SolanaManifestCreateMarket
          | SolanaPythFetchPrice
          | SolanaResolveAllDomainsTool
          | SolanaGetOwnedDomains
          | SolanaGetOwnedTldDomains
          | SolanaGetAllTlds
          | SolanaGetMainDomain
          | SolanaCreateGibworkTask
          | SolanaRockPaperScissorsTool
          | SolanaTipLinkTool
          | SolanaListNFTForSaleTool
          | SolanaCancelNFTListingTool
          | SolanaFetchTokenReportSummaryTool
          | SolanaFetchTokenDetailedReportTool
      )[]

    diff --git a/docs/functions/createVercelAITools.html b/docs/functions/createVercelAITools.html index d0a0c48..91f3317 100644 --- a/docs/functions/createVercelAITools.html +++ b/docs/functions/createVercelAITools.html @@ -1 +1 @@ -createVercelAITools | solana-agent-kit

    Function createVercelAITools

    +createVercelAITools | solana-agent-kit

    Function createVercelAITools

    diff --git a/docs/functions/executeAction.html b/docs/functions/executeAction.html index 468063f..9f4968c 100644 --- a/docs/functions/executeAction.html +++ b/docs/functions/executeAction.html @@ -1,2 +1,2 @@ executeAction | solana-agent-kit

    Function executeAction

    • Execute an action with the given input

      -

      Parameters

      Returns Promise<Record<string, any>>

    +

    Parameters

    Returns Promise<Record<string, any>>

    diff --git a/docs/functions/findAction.html b/docs/functions/findAction.html index 632de8f..06169a6 100644 --- a/docs/functions/findAction.html +++ b/docs/functions/findAction.html @@ -1,2 +1,2 @@ findAction | solana-agent-kit

    Function findAction

    • Find an action by its name or one of its similes

      -

      Parameters

      • query: string

      Returns Action | undefined

    +

    Parameters

    • query: string

    Returns Action | undefined

    diff --git a/docs/functions/getActionExamples.html b/docs/functions/getActionExamples.html index 38ac5e1..7fd27af 100644 --- a/docs/functions/getActionExamples.html +++ b/docs/functions/getActionExamples.html @@ -1,2 +1,2 @@ getActionExamples | solana-agent-kit

    Function getActionExamples

    • Get examples for an action

      -

      Parameters

      • action: Action

      Returns string

    +

    Parameters

    • action: Action

    Returns string

    diff --git a/docs/interfaces/Action.html b/docs/interfaces/Action.html index fec1876..dcc5035 100644 --- a/docs/interfaces/Action.html +++ b/docs/interfaces/Action.html @@ -1,16 +1,16 @@ Action | solana-agent-kit

    Interface Action

    Main Action interface inspired by ELIZA This interface makes it easier to implement actions across different frameworks

    -
    interface Action {
        description: string;
        examples: ActionExample[][];
        handler: Handler;
        name: string;
        schema: ZodType;
        similes: string[];
    }

    Properties

    interface Action {
        description: string;
        examples: ActionExample[][];
        handler: Handler;
        name: string;
        schema: ZodType;
        similes: string[];
    }

    Properties

    description: string

    Detailed description of what the action does

    -
    examples: ActionExample[][]

    Array of example inputs and outputs for the action +

    examples: ActionExample[][]

    Array of example inputs and outputs for the action Each inner array represents a group of related examples

    -
    handler: Handler

    Function that executes the action

    -
    name: string

    Unique name of the action

    -
    schema: ZodType

    Zod schema for input validation

    -
    similes: string[]

    Alternative names/phrases that can trigger this action

    -
    +
    handler: Handler

    Function that executes the action

    +
    name: string

    Unique name of the action

    +
    schema: ZodType

    Zod schema for input validation

    +
    similes: string[]

    Alternative names/phrases that can trigger this action

    +
    diff --git a/docs/interfaces/ActionExample.html b/docs/interfaces/ActionExample.html index 82ad1be..97eb0d5 100644 --- a/docs/interfaces/ActionExample.html +++ b/docs/interfaces/ActionExample.html @@ -1,5 +1,5 @@ ActionExample | solana-agent-kit

    Interface ActionExample

    Example of an action with input and output

    -
    interface ActionExample {
        explanation: string;
        input: Record<string, any>;
        output: Record<string, any>;
    }

    Properties

    interface ActionExample {
        explanation: string;
        input: Record<string, any>;
        output: Record<string, any>;
    }

    Properties

    explanation: string
    input: Record<string, any>
    output: Record<string, any>
    +

    Properties

    explanation: string
    input: Record<string, any>
    output: Record<string, any>
    diff --git a/docs/interfaces/BatchOrderPattern.html b/docs/interfaces/BatchOrderPattern.html index 47fafa0..372e5cd 100644 --- a/docs/interfaces/BatchOrderPattern.html +++ b/docs/interfaces/BatchOrderPattern.html @@ -1,7 +1,7 @@ -BatchOrderPattern | solana-agent-kit

    Interface BatchOrderPattern

    interface BatchOrderPattern {
        individualQuantity?: number;
        numberOfOrders?: number;
        priceRange?: { max?: number; min?: number };
        side: string;
        spacing?: { type: "percentage" | "fixed"; value: number };
        totalQuantity?: number;
    }

    Properties

    individualQuantity? +BatchOrderPattern | solana-agent-kit

    Interface BatchOrderPattern

    interface BatchOrderPattern {
        individualQuantity?: number;
        numberOfOrders?: number;
        priceRange?: { max?: number; min?: number };
        side: string;
        spacing?: { type: "percentage" | "fixed"; value: number };
        totalQuantity?: number;
    }

    Properties

    individualQuantity?: number
    numberOfOrders?: number
    priceRange?: { max?: number; min?: number }
    side: string
    spacing?: { type: "percentage" | "fixed"; value: number }
    totalQuantity?: number
    +

    Properties

    individualQuantity?: number
    numberOfOrders?: number
    priceRange?: { max?: number; min?: number }
    side: string
    spacing?: { type: "percentage" | "fixed"; value: number }
    totalQuantity?: number
    diff --git a/docs/interfaces/CollectionDeployment.html b/docs/interfaces/CollectionDeployment.html index 90de288..20eae8d 100644 --- a/docs/interfaces/CollectionDeployment.html +++ b/docs/interfaces/CollectionDeployment.html @@ -1,3 +1,3 @@ -CollectionDeployment | solana-agent-kit

    Interface CollectionDeployment

    interface CollectionDeployment {
        collectionAddress: PublicKey;
        signature: Uint8Array;
    }

    Properties

    collectionAddress +CollectionDeployment | solana-agent-kit

    Interface CollectionDeployment

    interface CollectionDeployment {
        collectionAddress: PublicKey;
        signature: Uint8Array;
    }

    Properties

    collectionAddress: PublicKey
    signature: Uint8Array
    +

    Properties

    collectionAddress: PublicKey
    signature: Uint8Array
    diff --git a/docs/interfaces/CollectionOptions.html b/docs/interfaces/CollectionOptions.html index 6a1c4c2..a69188f 100644 --- a/docs/interfaces/CollectionOptions.html +++ b/docs/interfaces/CollectionOptions.html @@ -1,5 +1,5 @@ -CollectionOptions | solana-agent-kit

    Interface CollectionOptions

    interface CollectionOptions {
        creators?: Creator[];
        name: string;
        royaltyBasisPoints?: number;
        uri: string;
    }

    Properties

    creators? +CollectionOptions | solana-agent-kit

    Interface CollectionOptions

    interface CollectionOptions {
        creators?: Creator[];
        name: string;
        royaltyBasisPoints?: number;
        uri: string;
    }

    Properties

    creators?: Creator[]
    name: string
    royaltyBasisPoints?: number
    uri: string
    +

    Properties

    creators?: Creator[]
    name: string
    royaltyBasisPoints?: number
    uri: string
    diff --git a/docs/interfaces/Config.html b/docs/interfaces/Config.html index f397ec4..73b2590 100644 --- a/docs/interfaces/Config.html +++ b/docs/interfaces/Config.html @@ -1,4 +1,4 @@ -Config | solana-agent-kit

    Interface Config

    interface Config {
        JUPITER_FEE_BPS?: number;
        JUPITER_REFERRAL_ACCOUNT?: string;
        OPENAI_API_KEY?: string;
    }

    Properties

    JUPITER_FEE_BPS? +Config | solana-agent-kit

    Interface Config

    interface Config {
        JUPITER_FEE_BPS?: number;
        JUPITER_REFERRAL_ACCOUNT?: string;
        OPENAI_API_KEY?: string;
    }

    Properties

    JUPITER_FEE_BPS?: number
    JUPITER_REFERRAL_ACCOUNT?: string
    OPENAI_API_KEY?: string
    +

    Properties

    JUPITER_FEE_BPS?: number
    JUPITER_REFERRAL_ACCOUNT?: string
    OPENAI_API_KEY?: string
    diff --git a/docs/interfaces/Creator.html b/docs/interfaces/Creator.html index d0d8b44..1759c05 100644 --- a/docs/interfaces/Creator.html +++ b/docs/interfaces/Creator.html @@ -1,3 +1,3 @@ -Creator | solana-agent-kit

    Interface Creator

    interface Creator {
        address: string;
        percentage: number;
    }

    Properties

    address +Creator | solana-agent-kit

    Interface Creator

    interface Creator {
        address: string;
        percentage: number;
    }

    Properties

    Properties

    address: string
    percentage: number
    +

    Properties

    address: string
    percentage: number
    diff --git a/docs/interfaces/FetchPriceResponse.html b/docs/interfaces/FetchPriceResponse.html index 98412df..cfcd122 100644 --- a/docs/interfaces/FetchPriceResponse.html +++ b/docs/interfaces/FetchPriceResponse.html @@ -1,6 +1,6 @@ -FetchPriceResponse | solana-agent-kit

    Interface FetchPriceResponse

    interface FetchPriceResponse {
        code?: string;
        message?: string;
        priceInUSDC?: string;
        status: "success" | "error";
        tokenId?: string;
    }

    Properties

    code? +FetchPriceResponse | solana-agent-kit

    Interface FetchPriceResponse

    interface FetchPriceResponse {
        code?: string;
        message?: string;
        priceInUSDC?: string;
        status: "success" | "error";
        tokenId?: string;
    }

    Properties

    code?: string
    message?: string
    priceInUSDC?: string
    status: "success" | "error"
    tokenId?: string
    +

    Properties

    code?: string
    message?: string
    priceInUSDC?: string
    status: "success" | "error"
    tokenId?: string
    diff --git a/docs/interfaces/FlashCloseTradeParams.html b/docs/interfaces/FlashCloseTradeParams.html index 7c19a68..4bfb26b 100644 --- a/docs/interfaces/FlashCloseTradeParams.html +++ b/docs/interfaces/FlashCloseTradeParams.html @@ -1,3 +1,3 @@ -FlashCloseTradeParams | solana-agent-kit

    Interface FlashCloseTradeParams

    interface FlashCloseTradeParams {
        side: "long" | "short";
        token: string;
    }

    Properties

    side +FlashCloseTradeParams | solana-agent-kit

    Interface FlashCloseTradeParams

    interface FlashCloseTradeParams {
        side: "long" | "short";
        token: string;
    }

    Properties

    Properties

    side: "long" | "short"
    token: string
    +

    Properties

    side: "long" | "short"
    token: string
    diff --git a/docs/interfaces/FlashTradeParams.html b/docs/interfaces/FlashTradeParams.html index 3d75b25..2ce50f7 100644 --- a/docs/interfaces/FlashTradeParams.html +++ b/docs/interfaces/FlashTradeParams.html @@ -1,5 +1,5 @@ -FlashTradeParams | solana-agent-kit

    Interface FlashTradeParams

    interface FlashTradeParams {
        collateralUsd: number;
        leverage: number;
        side: "long" | "short";
        token: string;
    }

    Properties

    collateralUsd +FlashTradeParams | solana-agent-kit

    Interface FlashTradeParams

    interface FlashTradeParams {
        collateralUsd: number;
        leverage: number;
        side: "long" | "short";
        token: string;
    }

    Properties

    collateralUsd: number
    leverage: number
    side: "long" | "short"
    token: string
    +

    Properties

    collateralUsd: number
    leverage: number
    side: "long" | "short"
    token: string
    diff --git a/docs/interfaces/GibworkCreateTaskReponse.html b/docs/interfaces/GibworkCreateTaskReponse.html index f1ff5db..e03f1e9 100644 --- a/docs/interfaces/GibworkCreateTaskReponse.html +++ b/docs/interfaces/GibworkCreateTaskReponse.html @@ -1,4 +1,4 @@ -GibworkCreateTaskReponse | solana-agent-kit

    Interface GibworkCreateTaskReponse

    interface GibworkCreateTaskReponse {
        signature?: string;
        status: "success" | "error";
        taskId?: string;
    }

    Properties

    signature? +GibworkCreateTaskReponse | solana-agent-kit

    Interface GibworkCreateTaskReponse

    interface GibworkCreateTaskReponse {
        signature?: string;
        status: "success" | "error";
        taskId?: string;
    }

    Properties

    signature?: string
    status: "success" | "error"
    taskId?: string
    +

    Properties

    signature?: string
    status: "success" | "error"
    taskId?: string
    diff --git a/docs/interfaces/JupiterTokenData.html b/docs/interfaces/JupiterTokenData.html index fd7d98b..205f490 100644 --- a/docs/interfaces/JupiterTokenData.html +++ b/docs/interfaces/JupiterTokenData.html @@ -1,4 +1,4 @@ -JupiterTokenData | solana-agent-kit

    Interface JupiterTokenData

    interface JupiterTokenData {
        address: string;
        daily_volume: number;
        decimals: number;
        extensions: { coingeckoId?: string };
        freeze_authority: null | string;
        logoURI: string;
        mint_authority: null | string;
        name: string;
        permanent_delegate: null | string;
        symbol: string;
        tags: string[];
    }

    Properties

    address +JupiterTokenData | solana-agent-kit

    Interface JupiterTokenData

    interface JupiterTokenData {
        address: string;
        daily_volume: number;
        decimals: number;
        extensions: { coingeckoId?: string };
        freeze_authority: null | string;
        logoURI: string;
        mint_authority: null | string;
        name: string;
        permanent_delegate: null | string;
        symbol: string;
        tags: string[];
    }

    Properties

    address: string
    daily_volume: number
    decimals: number
    extensions: { coingeckoId?: string }
    freeze_authority: null | string
    logoURI: string
    mint_authority: null | string
    name: string
    permanent_delegate: null | string
    symbol: string
    tags: string[]
    +

    Properties

    address: string
    daily_volume: number
    decimals: number
    extensions: { coingeckoId?: string }
    freeze_authority: null | string
    logoURI: string
    mint_authority: null | string
    name: string
    permanent_delegate: null | string
    symbol: string
    tags: string[]
    diff --git a/docs/interfaces/LuloAccountDetailsResponse.html b/docs/interfaces/LuloAccountDetailsResponse.html index 6fab022..3f3ef38 100644 --- a/docs/interfaces/LuloAccountDetailsResponse.html +++ b/docs/interfaces/LuloAccountDetailsResponse.html @@ -1,6 +1,6 @@ LuloAccountDetailsResponse | solana-agent-kit

    Interface LuloAccountDetailsResponse

    Lulo Account Details response format

    -
    interface LuloAccountDetailsResponse {
        interestEarned: number;
        realtimeApy: number;
        settings: {
            allowedProtocols: null | string;
            homebase: null | string;
            minimumRate: string;
            owner: string;
        };
        totalValue: number;
    }

    Properties

    interface LuloAccountDetailsResponse {
        interestEarned: number;
        realtimeApy: number;
        settings: {
            allowedProtocols: null | string;
            homebase: null | string;
            minimumRate: string;
            owner: string;
        };
        totalValue: number;
    }

    Properties

    interestEarned: number
    realtimeApy: number
    settings: {
        allowedProtocols: null | string;
        homebase: null | string;
        minimumRate: string;
        owner: string;
    }
    totalValue: number
    +

    Properties

    interestEarned: number
    realtimeApy: number
    settings: {
        allowedProtocols: null | string;
        homebase: null | string;
        minimumRate: string;
        owner: string;
    }
    totalValue: number
    diff --git a/docs/interfaces/MintCollectionNFTResponse.html b/docs/interfaces/MintCollectionNFTResponse.html index 5816d06..9e9fbd0 100644 --- a/docs/interfaces/MintCollectionNFTResponse.html +++ b/docs/interfaces/MintCollectionNFTResponse.html @@ -1,3 +1,3 @@ -MintCollectionNFTResponse | solana-agent-kit

    Interface MintCollectionNFTResponse

    interface MintCollectionNFTResponse {
        metadata: PublicKey;
        mint: PublicKey;
    }

    Properties

    metadata +MintCollectionNFTResponse | solana-agent-kit

    Interface MintCollectionNFTResponse

    interface MintCollectionNFTResponse {
        metadata: PublicKey;
        mint: PublicKey;
    }

    Properties

    Properties

    metadata: PublicKey
    mint: PublicKey
    +

    Properties

    metadata: PublicKey
    mint: PublicKey
    diff --git a/docs/interfaces/OrderParams.html b/docs/interfaces/OrderParams.html index b862c18..0812eba 100644 --- a/docs/interfaces/OrderParams.html +++ b/docs/interfaces/OrderParams.html @@ -1,4 +1,4 @@ -OrderParams | solana-agent-kit

    Interface OrderParams

    interface OrderParams {
        price: number;
        quantity: number;
        side: string;
    }

    Properties

    price +OrderParams | solana-agent-kit

    Interface OrderParams

    interface OrderParams {
        price: number;
        quantity: number;
        side: string;
    }

    Properties

    Properties

    price: number
    quantity: number
    side: string
    +

    Properties

    price: number
    quantity: number
    side: string
    diff --git a/docs/interfaces/PumpFunTokenOptions.html b/docs/interfaces/PumpFunTokenOptions.html index a5c2bff..81dd58e 100644 --- a/docs/interfaces/PumpFunTokenOptions.html +++ b/docs/interfaces/PumpFunTokenOptions.html @@ -1,7 +1,7 @@ -PumpFunTokenOptions | solana-agent-kit

    Interface PumpFunTokenOptions

    interface PumpFunTokenOptions {
        initialLiquiditySOL?: number;
        priorityFee?: number;
        slippageBps?: number;
        telegram?: string;
        twitter?: string;
        website?: string;
    }

    Properties

    initialLiquiditySOL? +PumpFunTokenOptions | solana-agent-kit

    Interface PumpFunTokenOptions

    interface PumpFunTokenOptions {
        initialLiquiditySOL?: number;
        priorityFee?: number;
        slippageBps?: number;
        telegram?: string;
        twitter?: string;
        website?: string;
    }

    Properties

    initialLiquiditySOL?: number
    priorityFee?: number
    slippageBps?: number
    telegram?: string
    twitter?: string
    website?: string
    +

    Properties

    initialLiquiditySOL?: number
    priorityFee?: number
    slippageBps?: number
    telegram?: string
    twitter?: string
    website?: string
    diff --git a/docs/interfaces/PumpfunLaunchResponse.html b/docs/interfaces/PumpfunLaunchResponse.html index cb329fe..f318deb 100644 --- a/docs/interfaces/PumpfunLaunchResponse.html +++ b/docs/interfaces/PumpfunLaunchResponse.html @@ -1,5 +1,5 @@ -PumpfunLaunchResponse | solana-agent-kit

    Interface PumpfunLaunchResponse

    interface PumpfunLaunchResponse {
        error?: string;
        metadataUri?: string;
        mint: string;
        signature: string;
    }

    Properties

    error? +PumpfunLaunchResponse | solana-agent-kit

    Interface PumpfunLaunchResponse

    interface PumpfunLaunchResponse {
        error?: string;
        metadataUri?: string;
        mint: string;
        signature: string;
    }

    Properties

    error?: string
    metadataUri?: string
    mint: string
    signature: string
    +

    Properties

    error?: string
    metadataUri?: string
    mint: string
    signature: string
    diff --git a/docs/interfaces/PythFetchPriceResponse.html b/docs/interfaces/PythFetchPriceResponse.html index c39ecd9..6e62690 100644 --- a/docs/interfaces/PythFetchPriceResponse.html +++ b/docs/interfaces/PythFetchPriceResponse.html @@ -1,7 +1,7 @@ -PythFetchPriceResponse | solana-agent-kit

    Interface PythFetchPriceResponse

    interface PythFetchPriceResponse {
        code?: string;
        message?: string;
        price?: string;
        priceFeedID?: string;
        status: "success" | "error";
        tokenSymbol: string;
    }

    Properties

    code? +PythFetchPriceResponse | solana-agent-kit

    Interface PythFetchPriceResponse

    interface PythFetchPriceResponse {
        code?: string;
        message?: string;
        price?: string;
        priceFeedID?: string;
        status: "success" | "error";
        tokenSymbol: string;
    }

    Properties

    code?: string
    message?: string
    price?: string
    priceFeedID?: string
    status: "success" | "error"
    tokenSymbol: string
    +

    Properties

    code?: string
    message?: string
    price?: string
    priceFeedID?: string
    status: "success" | "error"
    tokenSymbol: string
    diff --git a/docs/interfaces/PythPriceFeedIDItem.html b/docs/interfaces/PythPriceFeedIDItem.html index d48c8ab..5582a9b 100644 --- a/docs/interfaces/PythPriceFeedIDItem.html +++ b/docs/interfaces/PythPriceFeedIDItem.html @@ -1,3 +1,3 @@ -PythPriceFeedIDItem | solana-agent-kit

    Interface PythPriceFeedIDItem

    interface PythPriceFeedIDItem {
        attributes: { asset_type: string; base: string };
        id: string;
    }

    Properties

    attributes +PythPriceFeedIDItem | solana-agent-kit

    Interface PythPriceFeedIDItem

    interface PythPriceFeedIDItem {
        attributes: { asset_type: string; base: string };
        id: string;
    }

    Properties

    Properties

    attributes: { asset_type: string; base: string }
    id: string
    +

    Properties

    attributes: { asset_type: string; base: string }
    id: string
    diff --git a/docs/interfaces/PythPriceItem.html b/docs/interfaces/PythPriceItem.html index 879d29d..3963783 100644 --- a/docs/interfaces/PythPriceItem.html +++ b/docs/interfaces/PythPriceItem.html @@ -1,3 +1,3 @@ -PythPriceItem | solana-agent-kit

    Interface PythPriceItem

    interface PythPriceItem {
        binary: { data: string[]; encoding: string };
        parsed: [
            {
                ema_price: {
                    conf: string;
                    expo: number;
                    price: string;
                    publish_time: number;
                };
                id: string;
                metadata: {
                    prev_publish_time: number;
                    proof_available_time: number;
                    slot: number;
                };
                price: {
                    conf: string;
                    expo: number;
                    price: string;
                    publish_time: number;
                };
            }[],
        ];
    }

    Properties

    binary +PythPriceItem | solana-agent-kit

    Interface PythPriceItem

    interface PythPriceItem {
        binary: { data: string[]; encoding: string };
        parsed: [
            {
                ema_price: {
                    conf: string;
                    expo: number;
                    price: string;
                    publish_time: number;
                };
                id: string;
                metadata: {
                    prev_publish_time: number;
                    proof_available_time: number;
                    slot: number;
                };
                price: {
                    conf: string;
                    expo: number;
                    price: string;
                    publish_time: number;
                };
            }[],
        ];
    }

    Properties

    Properties

    binary: { data: string[]; encoding: string }
    parsed: [
        {
            ema_price: {
                conf: string;
                expo: number;
                price: string;
                publish_time: number;
            };
            id: string;
            metadata: {
                prev_publish_time: number;
                proof_available_time: number;
                slot: number;
            };
            price: { conf: string; expo: number; price: string; publish_time: number };
        }[],
    ]
    +

    Properties

    binary: { data: string[]; encoding: string }
    parsed: [
        {
            ema_price: {
                conf: string;
                expo: number;
                price: string;
                publish_time: number;
            };
            id: string;
            metadata: {
                prev_publish_time: number;
                proof_available_time: number;
                slot: number;
            };
            price: { conf: string; expo: number; price: string; publish_time: number };
        }[],
    ]
    diff --git a/docs/interfaces/TokenCheck.html b/docs/interfaces/TokenCheck.html index 4bb5936..14a52b3 100644 --- a/docs/interfaces/TokenCheck.html +++ b/docs/interfaces/TokenCheck.html @@ -1,5 +1,5 @@ -TokenCheck | solana-agent-kit

    Interface TokenCheck

    interface TokenCheck {
        risks: {
            description: string;
            level: string;
            name: string;
            score: number;
        }[];
        score: number;
        tokenProgram: string;
        tokenType: string;
    }

    Properties

    risks +TokenCheck | solana-agent-kit

    Interface TokenCheck

    interface TokenCheck {
        risks: {
            description: string;
            level: string;
            name: string;
            score: number;
        }[];
        score: number;
        tokenProgram: string;
        tokenType: string;
    }

    Properties

    risks: { description: string; level: string; name: string; score: number }[]
    score: number
    tokenProgram: string
    tokenType: string
    +

    Properties

    risks: { description: string; level: string; name: string; score: number }[]
    score: number
    tokenProgram: string
    tokenType: string
    diff --git a/docs/types/Handler.html b/docs/types/Handler.html index 674da9a..0f2e40c 100644 --- a/docs/types/Handler.html +++ b/docs/types/Handler.html @@ -1,2 +1,2 @@ Handler | solana-agent-kit

    Type Alias Handler

    Handler: (
        agent: SolanaAgentKit,
        input: Record<string, any>,
    ) => Promise<Record<string, any>>

    Handler function type for executing the action

    -

    Type declaration

      • (
            agent: SolanaAgentKit,
            input: Record<string, any>,
        ): Promise<Record<string, any>>
      • Parameters

        Returns Promise<Record<string, any>>

    +

    Type declaration

      • (
            agent: SolanaAgentKit,
            input: Record<string, any>,
        ): Promise<Record<string, any>>
      • Parameters

        Returns Promise<Record<string, any>>

    diff --git a/docs/variables/actions.html b/docs/variables/actions.html index ad45b82..e986d86 100644 --- a/docs/variables/actions.html +++ b/docs/variables/actions.html @@ -1 +1 @@ -ACTIONS | solana-agent-kit

    Variable ACTIONSConst

    ACTIONS: {
        BALANCE_ACTION: Action;
        CREATE_GIBWORK_TASK_ACTION: Action;
        CREATE_IMAGE_ACTION: Action;
        CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: Action;
        DEPLOY_COLLECTION_ACTION: Action;
        DEPLOY_TOKEN_ACTION: Action;
        FETCH_PRICE_ACTION: Action;
        GET_ALL_DOMAINS_TLDS_ACTION: Action;
        GET_ALL_REGISTERED_ALL_DOMAINS_ACTION: Action;
        GET_MAIN_ALL_DOMAINS_DOMAIN_ACTION: Action;
        GET_OWNED_ALL_DOMAINS_ACTION: Action;
        GET_OWNED_DOMAINS_FOR_TLD_ACTION: Action;
        GET_PRIMARY_DOMAIN_ACTION: Action;
        GET_TOKEN_DATA_ACTION: Action;
        GET_TPS_ACTION: Action;
        LAUNCH_PUMPFUN_TOKEN_ACTION: Action;
        LEND_ASSET_ACTION: Action;
        MINT_NFT_ACTION: Action;
        PYTH_FETCH_PRICE_ACTION: Action;
        RAYDIUM_CREATE_AMM_V4_ACTION: Action;
        RAYDIUM_CREATE_CPMM_ACTION: Action;
        REGISTER_DOMAIN_ACTION: Action;
        REQUEST_FUNDS_ACTION: Action;
        RESOLVE_DOMAIN_ACTION: Action;
        RESOLVE_SOL_DOMAIN_ACTION: Action;
        STAKE_WITH_JUP_ACTION: Action;
        STAKE_WITH_SOLAYER_ACTION: Action;
        TRADE_ACTION: Action;
        TRANSFER_ACTION: Action;
        WALLET_ADDRESS_ACTION: Action;
    } = ...

    Type declaration

    • BALANCE_ACTION: Action
    • CREATE_GIBWORK_TASK_ACTION: Action
    • CREATE_IMAGE_ACTION: Action
    • CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: Action
    • DEPLOY_COLLECTION_ACTION: Action
    • DEPLOY_TOKEN_ACTION: Action
    • FETCH_PRICE_ACTION: Action
    • GET_ALL_DOMAINS_TLDS_ACTION: Action
    • GET_ALL_REGISTERED_ALL_DOMAINS_ACTION: Action
    • GET_MAIN_ALL_DOMAINS_DOMAIN_ACTION: Action
    • GET_OWNED_ALL_DOMAINS_ACTION: Action
    • GET_OWNED_DOMAINS_FOR_TLD_ACTION: Action
    • GET_PRIMARY_DOMAIN_ACTION: Action
    • GET_TOKEN_DATA_ACTION: Action
    • GET_TPS_ACTION: Action
    • LAUNCH_PUMPFUN_TOKEN_ACTION: Action
    • LEND_ASSET_ACTION: Action
    • MINT_NFT_ACTION: Action
    • PYTH_FETCH_PRICE_ACTION: Action
    • RAYDIUM_CREATE_AMM_V4_ACTION: Action
    • RAYDIUM_CREATE_CPMM_ACTION: Action
    • REGISTER_DOMAIN_ACTION: Action
    • REQUEST_FUNDS_ACTION: Action
    • RESOLVE_DOMAIN_ACTION: Action
    • RESOLVE_SOL_DOMAIN_ACTION: Action
    • STAKE_WITH_JUP_ACTION: Action
    • STAKE_WITH_SOLAYER_ACTION: Action
    • TRADE_ACTION: Action
    • TRANSFER_ACTION: Action
    • WALLET_ADDRESS_ACTION: Action
    +ACTIONS | solana-agent-kit

    Variable ACTIONSConst

    ACTIONS: {
        BALANCE_ACTION: Action;
        CREATE_GIBWORK_TASK_ACTION: Action;
        CREATE_IMAGE_ACTION: Action;
        CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: Action;
        DEPLOY_COLLECTION_ACTION: Action;
        DEPLOY_TOKEN_ACTION: Action;
        FETCH_PRICE_ACTION: Action;
        FLASH_CLOSE_TRADE_ACTION: Action;
        FLASH_OPEN_TRADE_ACTION: Action;
        GET_ALL_DOMAINS_TLDS_ACTION: Action;
        GET_ALL_REGISTERED_ALL_DOMAINS_ACTION: Action;
        GET_MAIN_ALL_DOMAINS_DOMAIN_ACTION: Action;
        GET_OWNED_ALL_DOMAINS_ACTION: Action;
        GET_OWNED_DOMAINS_FOR_TLD_ACTION: Action;
        GET_PRIMARY_DOMAIN_ACTION: Action;
        GET_TOKEN_DATA_ACTION: Action;
        GET_TPS_ACTION: Action;
        LAUNCH_PUMPFUN_TOKEN_ACTION: Action;
        LEND_ASSET_ACTION: Action;
        MINT_NFT_ACTION: Action;
        PYTH_FETCH_PRICE_ACTION: Action;
        RAYDIUM_CREATE_AMM_V4_ACTION: Action;
        RAYDIUM_CREATE_CPMM_ACTION: Action;
        REGISTER_DOMAIN_ACTION: Action;
        REQUEST_FUNDS_ACTION: Action;
        RESOLVE_DOMAIN_ACTION: Action;
        RESOLVE_SOL_DOMAIN_ACTION: Action;
        STAKE_WITH_JUP_ACTION: Action;
        STAKE_WITH_SOLAYER_ACTION: Action;
        TRADE_ACTION: Action;
        TRANSFER_ACTION: Action;
        WALLET_ADDRESS_ACTION: Action;
    } = ...

    Type declaration

    • BALANCE_ACTION: Action
    • CREATE_GIBWORK_TASK_ACTION: Action
    • CREATE_IMAGE_ACTION: Action
    • CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: Action
    • DEPLOY_COLLECTION_ACTION: Action
    • DEPLOY_TOKEN_ACTION: Action
    • FETCH_PRICE_ACTION: Action
    • FLASH_CLOSE_TRADE_ACTION: Action
    • FLASH_OPEN_TRADE_ACTION: Action
    • GET_ALL_DOMAINS_TLDS_ACTION: Action
    • GET_ALL_REGISTERED_ALL_DOMAINS_ACTION: Action
    • GET_MAIN_ALL_DOMAINS_DOMAIN_ACTION: Action
    • GET_OWNED_ALL_DOMAINS_ACTION: Action
    • GET_OWNED_DOMAINS_FOR_TLD_ACTION: Action
    • GET_PRIMARY_DOMAIN_ACTION: Action
    • GET_TOKEN_DATA_ACTION: Action
    • GET_TPS_ACTION: Action
    • LAUNCH_PUMPFUN_TOKEN_ACTION: Action
    • LEND_ASSET_ACTION: Action
    • MINT_NFT_ACTION: Action
    • PYTH_FETCH_PRICE_ACTION: Action
    • RAYDIUM_CREATE_AMM_V4_ACTION: Action
    • RAYDIUM_CREATE_CPMM_ACTION: Action
    • REGISTER_DOMAIN_ACTION: Action
    • REQUEST_FUNDS_ACTION: Action
    • RESOLVE_DOMAIN_ACTION: Action
    • RESOLVE_SOL_DOMAIN_ACTION: Action
    • STAKE_WITH_JUP_ACTION: Action
    • STAKE_WITH_SOLAYER_ACTION: Action
    • TRADE_ACTION: Action
    • TRANSFER_ACTION: Action
    • WALLET_ADDRESS_ACTION: Action
    diff --git a/src/actions/index.ts b/src/actions/index.ts index 60e7df4..c974209 100644 --- a/src/actions/index.ts +++ b/src/actions/index.ts @@ -28,6 +28,8 @@ import raydiumCreateAmmV4Action from "./raydiumCreateAmmV4"; import createOrcaSingleSidedWhirlpoolAction from "./createOrcaSingleSidedWhirlpool"; import launchPumpfunTokenAction from "./launchPumpfunToken"; import getWalletAddressAction from "./getWalletAddress"; +import flashOpenTradeAction from "./flashOpenTrade"; +import flashCloseTradeAction from "./flashCloseTrade"; export const ACTIONS = { WALLET_ADDRESS_ACTION: getWalletAddressAction, @@ -61,6 +63,8 @@ export const ACTIONS = { CREATE_ORCA_SINGLE_SIDED_WHIRLPOOL_ACTION: createOrcaSingleSidedWhirlpoolAction, LAUNCH_PUMPFUN_TOKEN_ACTION: launchPumpfunTokenAction, + FLASH_OPEN_TRADE_ACTION: flashOpenTradeAction, + FLASH_CLOSE_TRADE_ACTION: flashCloseTradeAction, }; export type { Action, ActionExample, Handler } from "../types/action";