@pocketagent/paw 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (88) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +307 -0
  3. package/dist/cli/commands/address.d.ts +3 -0
  4. package/dist/cli/commands/address.d.ts.map +1 -0
  5. package/dist/cli/commands/address.js +32 -0
  6. package/dist/cli/commands/address.js.map +1 -0
  7. package/dist/cli/commands/balance.d.ts +3 -0
  8. package/dist/cli/commands/balance.d.ts.map +1 -0
  9. package/dist/cli/commands/balance.js +76 -0
  10. package/dist/cli/commands/balance.js.map +1 -0
  11. package/dist/cli/commands/config.d.ts +3 -0
  12. package/dist/cli/commands/config.d.ts.map +1 -0
  13. package/dist/cli/commands/config.js +90 -0
  14. package/dist/cli/commands/config.js.map +1 -0
  15. package/dist/cli/commands/dashboard.d.ts +3 -0
  16. package/dist/cli/commands/dashboard.d.ts.map +1 -0
  17. package/dist/cli/commands/dashboard.js +224 -0
  18. package/dist/cli/commands/dashboard.js.map +1 -0
  19. package/dist/cli/commands/history.d.ts +3 -0
  20. package/dist/cli/commands/history.d.ts.map +1 -0
  21. package/dist/cli/commands/history.js +103 -0
  22. package/dist/cli/commands/history.js.map +1 -0
  23. package/dist/cli/commands/init.d.ts +3 -0
  24. package/dist/cli/commands/init.d.ts.map +1 -0
  25. package/dist/cli/commands/init.js +62 -0
  26. package/dist/cli/commands/init.js.map +1 -0
  27. package/dist/cli/commands/send.d.ts +3 -0
  28. package/dist/cli/commands/send.d.ts.map +1 -0
  29. package/dist/cli/commands/send.js +65 -0
  30. package/dist/cli/commands/send.js.map +1 -0
  31. package/dist/cli/commands/swap.d.ts +3 -0
  32. package/dist/cli/commands/swap.d.ts.map +1 -0
  33. package/dist/cli/commands/swap.js +123 -0
  34. package/dist/cli/commands/swap.js.map +1 -0
  35. package/dist/cli/commands/tokens.d.ts +3 -0
  36. package/dist/cli/commands/tokens.d.ts.map +1 -0
  37. package/dist/cli/commands/tokens.js +97 -0
  38. package/dist/cli/commands/tokens.js.map +1 -0
  39. package/dist/cli/index.d.ts +3 -0
  40. package/dist/cli/index.d.ts.map +1 -0
  41. package/dist/cli/index.js +31 -0
  42. package/dist/cli/index.js.map +1 -0
  43. package/dist/core/crypto/machine-identity.d.ts +26 -0
  44. package/dist/core/crypto/machine-identity.d.ts.map +1 -0
  45. package/dist/core/crypto/machine-identity.js +87 -0
  46. package/dist/core/crypto/machine-identity.js.map +1 -0
  47. package/dist/core/signer/engine.d.ts +17 -0
  48. package/dist/core/signer/engine.d.ts.map +1 -0
  49. package/dist/core/signer/engine.js +81 -0
  50. package/dist/core/signer/engine.js.map +1 -0
  51. package/dist/core/storage/encryption.d.ts +23 -0
  52. package/dist/core/storage/encryption.d.ts.map +1 -0
  53. package/dist/core/storage/encryption.js +79 -0
  54. package/dist/core/storage/encryption.js.map +1 -0
  55. package/dist/core/storage/filesystem.d.ts +68 -0
  56. package/dist/core/storage/filesystem.d.ts.map +1 -0
  57. package/dist/core/storage/filesystem.js +189 -0
  58. package/dist/core/storage/filesystem.js.map +1 -0
  59. package/dist/core/wallet/manager.d.ts +30 -0
  60. package/dist/core/wallet/manager.d.ts.map +1 -0
  61. package/dist/core/wallet/manager.js +98 -0
  62. package/dist/core/wallet/manager.js.map +1 -0
  63. package/dist/index.d.ts +10 -0
  64. package/dist/index.d.ts.map +1 -0
  65. package/dist/index.js +19 -0
  66. package/dist/index.js.map +1 -0
  67. package/dist/integrations/jupiter/client.d.ts +62 -0
  68. package/dist/integrations/jupiter/client.d.ts.map +1 -0
  69. package/dist/integrations/jupiter/client.js +143 -0
  70. package/dist/integrations/jupiter/client.js.map +1 -0
  71. package/dist/types/transaction.d.ts +23 -0
  72. package/dist/types/transaction.d.ts.map +1 -0
  73. package/dist/types/transaction.js +3 -0
  74. package/dist/types/transaction.js.map +1 -0
  75. package/dist/types/wallet.d.ts +31 -0
  76. package/dist/types/wallet.d.ts.map +1 -0
  77. package/dist/types/wallet.js +3 -0
  78. package/dist/types/wallet.js.map +1 -0
  79. package/dist/utils/price.d.ts +12 -0
  80. package/dist/utils/price.d.ts.map +1 -0
  81. package/dist/utils/price.js +45 -0
  82. package/dist/utils/price.js.map +1 -0
  83. package/dist/utils/solana.d.ts +22 -0
  84. package/dist/utils/solana.d.ts.map +1 -0
  85. package/dist/utils/solana.js +85 -0
  86. package/dist/utils/solana.js.map +1 -0
  87. package/package.json +80 -0
  88. package/skills/SKILLS.md +393 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/integrations/jupiter/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ export interface SwapParams {
2
+ from: string;
3
+ to: string;
4
+ amount: number;
5
+ slippage?: number;
6
+ }
7
+ export interface SwapResult {
8
+ signature: string;
9
+ inputAmount: number;
10
+ outputAmount: number;
11
+ from: string;
12
+ to: string;
13
+ }
14
+ export interface SendParams {
15
+ to: string;
16
+ amount: number;
17
+ }
18
+ export interface SendResult {
19
+ signature: string;
20
+ amount: number;
21
+ recipient: string;
22
+ }
23
+ //# sourceMappingURL=transaction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../src/types/transaction.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=transaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../src/types/transaction.ts"],"names":[],"mappings":""}
@@ -0,0 +1,31 @@
1
+ import { PublicKey } from '@solana/web3.js';
2
+ export interface WalletConfig {
3
+ agentId: string;
4
+ passphrase?: string;
5
+ network?: 'devnet' | 'mainnet-beta' | 'testnet';
6
+ defaultSlippage?: number;
7
+ defaultPriorityFee?: number;
8
+ }
9
+ export interface WalletInfo {
10
+ agentId: string;
11
+ publicKey: PublicKey;
12
+ address: string;
13
+ createdAt: Date;
14
+ }
15
+ export interface Balance {
16
+ sol: number;
17
+ tokens: TokenBalance[];
18
+ }
19
+ export interface TokenBalance {
20
+ mint: string;
21
+ symbol: string;
22
+ amount: number;
23
+ decimals: number;
24
+ }
25
+ export interface EncryptedKeypair {
26
+ salt: Buffer;
27
+ iv: Buffer;
28
+ encrypted: Buffer;
29
+ authTag: Buffer;
30
+ }
31
+ //# sourceMappingURL=wallet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../src/types/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,QAAQ,GAAG,cAAc,GAAG,SAAS,CAAC;IAChD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,SAAS,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,OAAO;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,YAAY,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACjB"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=wallet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../src/types/wallet.ts"],"names":[],"mappings":""}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Price fetching utilities
3
+ */
4
+ export declare class PriceService {
5
+ private static SOL_PRICE_CACHE;
6
+ private static CACHE_DURATION;
7
+ /**
8
+ * Fetch current SOL price from CoinGecko
9
+ */
10
+ static getSolPrice(): Promise<number>;
11
+ }
12
+ //# sourceMappingURL=price.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"price.d.ts","sourceRoot":"","sources":["../../src/utils/price.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAC,eAAe,CAAqD;IACnF,OAAO,CAAC,MAAM,CAAC,cAAc,CAAS;IAEtC;;OAEG;WACU,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;CAuC5C"}
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ /**
3
+ * Price fetching utilities
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.PriceService = void 0;
7
+ class PriceService {
8
+ /**
9
+ * Fetch current SOL price from CoinGecko
10
+ */
11
+ static async getSolPrice() {
12
+ try {
13
+ // Check cache first
14
+ if (this.SOL_PRICE_CACHE &&
15
+ Date.now() - this.SOL_PRICE_CACHE.timestamp < this.CACHE_DURATION) {
16
+ return this.SOL_PRICE_CACHE.price;
17
+ }
18
+ // Fetch from CoinGecko (free API, no key needed)
19
+ const response = await fetch('https://api.coingecko.com/api/v3/simple/price?ids=solana&vs_currencies=usd');
20
+ if (!response.ok) {
21
+ throw new Error('Failed to fetch SOL price');
22
+ }
23
+ const data = await response.json();
24
+ const price = data.solana?.usd;
25
+ if (!price) {
26
+ throw new Error('Invalid price data');
27
+ }
28
+ // Update cache
29
+ this.SOL_PRICE_CACHE = {
30
+ price,
31
+ timestamp: Date.now(),
32
+ };
33
+ return price;
34
+ }
35
+ catch (error) {
36
+ // Fallback to approximate price if API fails
37
+ console.warn('⚠️ Could not fetch live SOL price, using fallback');
38
+ return 100; // Fallback price
39
+ }
40
+ }
41
+ }
42
+ exports.PriceService = PriceService;
43
+ PriceService.SOL_PRICE_CACHE = null;
44
+ PriceService.CACHE_DURATION = 60000; // 1 minute cache
45
+ //# sourceMappingURL=price.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"price.js","sourceRoot":"","sources":["../../src/utils/price.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,MAAa,YAAY;IAIvB;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,WAAW;QACtB,IAAI,CAAC;YACH,oBAAoB;YACpB,IACE,IAAI,CAAC,eAAe;gBACpB,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,cAAc,EACjE,CAAC;gBACD,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;YACpC,CAAC;YAED,iDAAiD;YACjD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAC1B,4EAA4E,CAC7E,CAAC;YAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;YAC/C,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAmC,CAAC;YACpE,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC;YAE/B,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;YACxC,CAAC;YAED,eAAe;YACf,IAAI,CAAC,eAAe,GAAG;gBACrB,KAAK;gBACL,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;aACtB,CAAC;YAEF,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,6CAA6C;YAC7C,OAAO,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;YACnE,OAAO,GAAG,CAAC,CAAC,iBAAiB;QAC/B,CAAC;IACH,CAAC;;AA7CH,oCA8CC;AA7CgB,4BAAe,GAAgD,IAAI,CAAC;AACpE,2BAAc,GAAG,KAAK,CAAC,CAAC,iBAAiB"}
@@ -0,0 +1,22 @@
1
+ import { Connection, Cluster } from '@solana/web3.js';
2
+ export declare class SolanaClient {
3
+ private static connections;
4
+ private static HELIUS_API_KEY;
5
+ /**
6
+ * Get RPC endpoint with Helius as primary and fallback to default
7
+ */
8
+ private static getEndpoint;
9
+ /**
10
+ * Get or create a connection to Solana
11
+ */
12
+ static getConnection(network?: Cluster): Connection;
13
+ /**
14
+ * Clear cached connections (useful for switching RPC providers)
15
+ */
16
+ static clearConnections(): void;
17
+ /**
18
+ * Get SOL balance for an address
19
+ */
20
+ static getBalance(address: string, network?: Cluster): Promise<number>;
21
+ }
22
+ //# sourceMappingURL=solana.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"solana.d.ts","sourceRoot":"","sources":["../../src/utils/solana.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAiB,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAErE,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAC,WAAW,CAAsC;IAChE,OAAO,CAAC,MAAM,CAAC,cAAc,CAA0C;IAEvE;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,WAAW;IAc1B;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,OAAO,GAAE,OAAwB,GAAG,UAAU;IAUnE;;OAEG;IACH,MAAM,CAAC,gBAAgB,IAAI,IAAI;IAI/B;;OAEG;WACU,UAAU,CACrB,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,OAAwB,GAChC,OAAO,CAAC,MAAM,CAAC;CAQnB"}
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.SolanaClient = void 0;
37
+ const web3_js_1 = require("@solana/web3.js");
38
+ class SolanaClient {
39
+ /**
40
+ * Get RPC endpoint with Helius as primary and fallback to default
41
+ */
42
+ static getEndpoint(network) {
43
+ // Try Helius first for better performance and reliability
44
+ if (this.HELIUS_API_KEY) {
45
+ if (network === 'mainnet-beta') {
46
+ return `https://mainnet.helius-rpc.com/?api-key=${this.HELIUS_API_KEY}`;
47
+ }
48
+ else if (network === 'devnet') {
49
+ return `https://devnet.helius-rpc.com/?api-key=${this.HELIUS_API_KEY}`;
50
+ }
51
+ }
52
+ // Fallback to default Solana RPC
53
+ return (0, web3_js_1.clusterApiUrl)(network);
54
+ }
55
+ /**
56
+ * Get or create a connection to Solana
57
+ */
58
+ static getConnection(network = 'mainnet-beta') {
59
+ if (!SolanaClient.connections.has(network)) {
60
+ const endpoint = this.getEndpoint(network);
61
+ const connection = new web3_js_1.Connection(endpoint, 'confirmed');
62
+ SolanaClient.connections.set(network, connection);
63
+ }
64
+ return SolanaClient.connections.get(network);
65
+ }
66
+ /**
67
+ * Clear cached connections (useful for switching RPC providers)
68
+ */
69
+ static clearConnections() {
70
+ SolanaClient.connections.clear();
71
+ }
72
+ /**
73
+ * Get SOL balance for an address
74
+ */
75
+ static async getBalance(address, network = 'mainnet-beta') {
76
+ const connection = SolanaClient.getConnection(network);
77
+ const publicKey = new (await Promise.resolve().then(() => __importStar(require('@solana/web3.js')))).PublicKey(address);
78
+ const balance = await connection.getBalance(publicKey);
79
+ return balance / 1e9; // Convert lamports to SOL
80
+ }
81
+ }
82
+ exports.SolanaClient = SolanaClient;
83
+ SolanaClient.connections = new Map();
84
+ SolanaClient.HELIUS_API_KEY = '2452c60f-ab21-4a80-b486-30f0aca63d2f';
85
+ //# sourceMappingURL=solana.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"solana.js","sourceRoot":"","sources":["../../src/utils/solana.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAAqE;AAErE,MAAa,YAAY;IAIvB;;OAEG;IACK,MAAM,CAAC,WAAW,CAAC,OAAgB;QACzC,0DAA0D;QAC1D,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,IAAI,OAAO,KAAK,cAAc,EAAE,CAAC;gBAC/B,OAAO,2CAA2C,IAAI,CAAC,cAAc,EAAE,CAAC;YAC1E,CAAC;iBAAM,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;gBAChC,OAAO,0CAA0C,IAAI,CAAC,cAAc,EAAE,CAAC;YACzE,CAAC;QACH,CAAC;QAED,iCAAiC;QACjC,OAAO,IAAA,uBAAa,EAAC,OAAO,CAAC,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,UAAmB,cAAc;QACpD,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAC3C,MAAM,UAAU,GAAG,IAAI,oBAAU,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;YACzD,YAAY,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QACpD,CAAC;QAED,OAAO,YAAY,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAE,CAAC;IAChD,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,gBAAgB;QACrB,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,UAAU,CACrB,OAAe,EACf,UAAmB,cAAc;QAEjC,MAAM,UAAU,GAAG,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QACvD,MAAM,SAAS,GAAG,IAAI,CAAC,wDAAa,iBAAiB,GAAC,CAAC,CAAC,SAAS,CAC/D,OAAO,CACR,CAAC;QACF,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACvD,OAAO,OAAO,GAAG,GAAG,CAAC,CAAC,0BAA0B;IAClD,CAAC;;AAtDH,oCAuDC;AAtDgB,wBAAW,GAA4B,IAAI,GAAG,EAAE,CAAC;AACjD,2BAAc,GAAG,sCAAsC,CAAC"}
package/package.json ADDED
@@ -0,0 +1,80 @@
1
+ {
2
+ "name": "@pocketagent/paw",
3
+ "version": "1.0.0",
4
+ "description": "PocketAgent Wallet - Lightning-fast agentic wallet for AI agents on Solana 📟",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "bin": "dist/cli/index.js",
8
+ "files": [
9
+ "dist",
10
+ "README.md",
11
+ "LICENSE",
12
+ "skills/SKILLS.md"
13
+ ],
14
+ "scripts": {
15
+ "build": "tsc",
16
+ "dev": "tsc --watch",
17
+ "start": "node dist/cli/index.js",
18
+ "prepublishOnly": "yarn build",
19
+ "test": "jest",
20
+ "test:core": "jest --testPathIgnorePatterns=jupiter.test.ts integration.test.ts",
21
+ "test:all": "jest",
22
+ "test:watch": "jest --watch",
23
+ "test:coverage": "jest --coverage",
24
+ "lint": "eslint src --ext .ts",
25
+ "format": "prettier --write \"src/**/*.ts\""
26
+ },
27
+ "keywords": [
28
+ "solana",
29
+ "wallet",
30
+ "ai-agent",
31
+ "agentic-wallet",
32
+ "defi",
33
+ "agentic",
34
+ "autonomous",
35
+ "crypto",
36
+ "jupiter",
37
+ "dex",
38
+ "trading-bot",
39
+ "meme-trading",
40
+ "cli-wallet",
41
+ "blockchain"
42
+ ],
43
+ "author": "PocketAgent Team",
44
+ "license": "MIT",
45
+ "repository": {
46
+ "type": "git",
47
+ "url": "https://github.com/thejamesnick/agentic-wallet.git"
48
+ },
49
+ "bugs": {
50
+ "url": "https://github.com/thejamesnick/agentic-wallet/issues"
51
+ },
52
+ "homepage": "https://github.com/thejamesnick/agentic-wallet#readme",
53
+ "engines": {
54
+ "node": ">=18.0.0"
55
+ },
56
+ "packageManager": "yarn@4.5.2",
57
+ "dependencies": {
58
+ "@jup-ag/referral-sdk": "^0.3.0",
59
+ "@solana/web3.js": "^1.98.4",
60
+ "blessed": "^0.1.81",
61
+ "blessed-contrib": "^4.11.0",
62
+ "bs58": "^6.0.0",
63
+ "chalk": "^5.6.2",
64
+ "cli-table3": "^0.6.5",
65
+ "commander": "^14.0.3"
66
+ },
67
+ "devDependencies": {
68
+ "@types/blessed": "^0",
69
+ "@types/jest": "^30.0.0",
70
+ "@types/node": "^25.3.0",
71
+ "@typescript-eslint/eslint-plugin": "^8.56.0",
72
+ "@typescript-eslint/parser": "^8.56.0",
73
+ "eslint": "^10.0.0",
74
+ "jest": "^30.2.0",
75
+ "prettier": "^3.8.1",
76
+ "ts-jest": "^29.4.6",
77
+ "ts-node": "^10.9.2",
78
+ "typescript": "^5.9.3"
79
+ }
80
+ }