@andrewkimjoseph/celina-sdk 0.15.2 → 0.15.3

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.
package/build/index.d.ts CHANGED
@@ -48,7 +48,7 @@ export interface CelinaClient {
48
48
  staking: StakingService;
49
49
  /** ERC-721 / ERC-1155 NFT reads. */
50
50
  nft: NftService;
51
- /** Generic read-only contract calls and gas estimates. */
51
+ /** Generic contract reads, gas estimates, and write prepares. */
52
52
  contract: ContractService;
53
53
  /** Self Agent ID on Celo mainnet (ai.self.xyz + on-chain registry). */
54
54
  self: SelfService;
@@ -84,7 +84,7 @@ export type { MentoFxParams } from "./services/mento-fx.service.js";
84
84
  export type { UniswapSwapParams } from "./services/uniswap.service.js";
85
85
  /** Pagination and metadata options for governance proposal lists. */
86
86
  export type { GovernanceProposalsOptions } from "./services/governance.service.js";
87
- /** Parameters for generic read-only contract calls. */
87
+ /** Parameters for generic contract reads, estimates, and write prepares. */
88
88
  export type { ContractCallParams } from "./services/contract.service.js";
89
89
  /** Aave V3 Celo pool address and supported asset symbols. */
90
90
  export { AAVE_POOL, AAVE_SUPPORTED_SYMBOLS, resolveAaveAsset, } from "./config/aave.js";
@@ -1,9 +1,10 @@
1
1
  /**
2
- * Generic contract reads and gas estimates — caller supplies the ABI.
2
+ * Generic contract reads, gas estimates, and write prepares — caller supplies the ABI.
3
3
  */
4
4
  import { type Abi } from "viem";
5
5
  import type { CeloClientFactory } from "../clients/celo-client.js";
6
- /** Parameters for a read-only or gas-estimated contract call on Celo mainnet. */
6
+ import { type SerializedPreparedFlow } from "../types/prepared.js";
7
+ /** Parameters for a contract call on Celo mainnet (read, estimate, or prepare write). */
7
8
  export interface ContractCallParams {
8
9
  /** Target contract address. */
9
10
  contractAddress: `0x${string}`;
@@ -18,9 +19,10 @@ export interface ContractCallParams {
18
19
  /** Wei value as decimal string for payable calls (default `"0"`). */
19
20
  value?: string;
20
21
  }
21
- /** Read-only and gas-estimation helpers for arbitrary contracts. */
22
+ /** Read, gas-estimate, and prepare helpers for arbitrary contracts. */
22
23
  export declare class ContractService {
23
24
  private readonly clientFactory;
25
+ private readonly attributionTags?;
24
26
  constructor(clientFactory: CeloClientFactory);
25
27
  /**
26
28
  * Simulate a read-only contract call (`eth_call`).
@@ -68,6 +70,14 @@ export declare class ContractService {
68
70
  success: boolean;
69
71
  error: string;
70
72
  }>;
73
+ /**
74
+ * Build an unsigned single-step flow for a contract write (caller ABI).
75
+ * Calldata includes the CELINA attribution suffix. Rejects `view`/`pure` ABI entries.
76
+ * @param from - Sender wallet address (must match connected wallet when signing)
77
+ * @param params - Contract address, ABI, function name, optional args and wei `value`
78
+ * @returns Single-step `SerializedPreparedFlow` for wagmi or MCP `executePreparedFlow`
79
+ */
80
+ prepareFunction(from: `0x${string}`, params: ContractCallParams): Promise<SerializedPreparedFlow>;
71
81
  }
72
82
  /**
73
83
  * Decode raw calldata result bytes using a single ABI function entry.
@@ -1,8 +1,11 @@
1
1
  /**
2
- * Generic contract reads and gas estimates — caller supplies the ABI.
2
+ * Generic contract reads, gas estimates, and write prepares — caller supplies the ABI.
3
3
  */
4
4
  import { decodeFunctionResult, encodeFunctionData, } from "viem";
5
+ import { CHAIN } from "../config/chains.js";
6
+ import { appendCelinaCalldataTag } from "../config/celina-tag.js";
5
7
  import { normalizeAddress } from "../utils/normalize-address.js";
8
+ import { serializePreparedFlow, } from "../types/prepared.js";
6
9
  function findAbiFunction(abi, functionName) {
7
10
  const fn = abi.find((item) => item.type === "function" && item.name === functionName);
8
11
  if (!fn) {
@@ -10,11 +13,19 @@ function findAbiFunction(abi, functionName) {
10
13
  }
11
14
  return fn;
12
15
  }
13
- /** Read-only and gas-estimation helpers for arbitrary contracts. */
16
+ function assertWritableFunction(fn, functionName) {
17
+ const mutability = fn.stateMutability;
18
+ if (mutability === "view" || mutability === "pure") {
19
+ throw new Error(`Function "${functionName}" is ${mutability}; use call_contract_function for reads`);
20
+ }
21
+ }
22
+ /** Read, gas-estimate, and prepare helpers for arbitrary contracts. */
14
23
  export class ContractService {
15
24
  clientFactory;
25
+ attributionTags;
16
26
  constructor(clientFactory) {
17
27
  this.clientFactory = clientFactory;
28
+ this.attributionTags = clientFactory.getConfig().attributionTags;
18
29
  }
19
30
  /**
20
31
  * Simulate a read-only contract call (`eth_call`).
@@ -103,6 +114,41 @@ export class ContractService {
103
114
  };
104
115
  }
105
116
  }
117
+ /**
118
+ * Build an unsigned single-step flow for a contract write (caller ABI).
119
+ * Calldata includes the CELINA attribution suffix. Rejects `view`/`pure` ABI entries.
120
+ * @param from - Sender wallet address (must match connected wallet when signing)
121
+ * @param params - Contract address, ABI, function name, optional args and wei `value`
122
+ * @returns Single-step `SerializedPreparedFlow` for wagmi or MCP `executePreparedFlow`
123
+ */
124
+ async prepareFunction(from, params) {
125
+ const contractAddress = normalizeAddress(params.contractAddress, "contract address");
126
+ const sender = normalizeAddress(from, "from address");
127
+ const fn = findAbiFunction(params.abi, params.functionName);
128
+ assertWritableFunction(fn, params.functionName);
129
+ const args = params.functionArgs ?? [];
130
+ const value = params.value ?? "0";
131
+ const data = appendCelinaCalldataTag(encodeFunctionData({
132
+ abi: params.abi,
133
+ functionName: params.functionName,
134
+ args: args,
135
+ }), this.attributionTags);
136
+ const flow = {
137
+ chainId: CHAIN.id,
138
+ from: sender,
139
+ summary: `Call ${params.functionName} on ${contractAddress}`,
140
+ steps: [
141
+ {
142
+ kind: "contract",
143
+ to: contractAddress,
144
+ data,
145
+ value,
146
+ description: `Call ${params.functionName}`,
147
+ },
148
+ ],
149
+ };
150
+ return serializePreparedFlow(flow);
151
+ }
106
152
  }
107
153
  /**
108
154
  * Decode raw calldata result bytes using a single ABI function entry.
@@ -1 +1 @@
1
- {"version":3,"file":"contract.service.js","sourceRoot":"","sources":["../../src/services/contract.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contract.service.js","sourceRoot":"","sources":["../../src/services/contract.service.ts"],"names":[],"mappings":"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"}
@@ -48,7 +48,7 @@ export interface CelinaClient {
48
48
  staking: StakingService;
49
49
  /** ERC-721 / ERC-1155 NFT reads. */
50
50
  nft: NftService;
51
- /** Generic read-only contract calls and gas estimates. */
51
+ /** Generic contract reads, gas estimates, and write prepares. */
52
52
  contract: ContractService;
53
53
  /** Self Agent ID on Celo mainnet (ai.self.xyz + on-chain registry). */
54
54
  self: SelfService;
@@ -84,7 +84,7 @@ export type { MentoFxParams } from "./services/mento-fx.service.js";
84
84
  export type { UniswapSwapParams } from "./services/uniswap.service.js";
85
85
  /** Pagination and metadata options for governance proposal lists. */
86
86
  export type { GovernanceProposalsOptions } from "./services/governance.service.js";
87
- /** Parameters for generic read-only contract calls. */
87
+ /** Parameters for generic contract reads, estimates, and write prepares. */
88
88
  export type { ContractCallParams } from "./services/contract.service.js";
89
89
  /** Aave V3 Celo pool address and supported asset symbols. */
90
90
  export { AAVE_POOL, AAVE_SUPPORTED_SYMBOLS, resolveAaveAsset, } from "./config/aave.js";
@@ -1,9 +1,10 @@
1
1
  /**
2
- * Generic contract reads and gas estimates — caller supplies the ABI.
2
+ * Generic contract reads, gas estimates, and write prepares — caller supplies the ABI.
3
3
  */
4
4
  import { type Abi } from "viem";
5
5
  import type { CeloClientFactory } from "../clients/celo-client.js";
6
- /** Parameters for a read-only or gas-estimated contract call on Celo mainnet. */
6
+ import { type SerializedPreparedFlow } from "../types/prepared.js";
7
+ /** Parameters for a contract call on Celo mainnet (read, estimate, or prepare write). */
7
8
  export interface ContractCallParams {
8
9
  /** Target contract address. */
9
10
  contractAddress: `0x${string}`;
@@ -18,9 +19,10 @@ export interface ContractCallParams {
18
19
  /** Wei value as decimal string for payable calls (default `"0"`). */
19
20
  value?: string;
20
21
  }
21
- /** Read-only and gas-estimation helpers for arbitrary contracts. */
22
+ /** Read, gas-estimate, and prepare helpers for arbitrary contracts. */
22
23
  export declare class ContractService {
23
24
  private readonly clientFactory;
25
+ private readonly attributionTags?;
24
26
  constructor(clientFactory: CeloClientFactory);
25
27
  /**
26
28
  * Simulate a read-only contract call (`eth_call`).
@@ -68,6 +70,14 @@ export declare class ContractService {
68
70
  success: boolean;
69
71
  error: string;
70
72
  }>;
73
+ /**
74
+ * Build an unsigned single-step flow for a contract write (caller ABI).
75
+ * Calldata includes the CELINA attribution suffix. Rejects `view`/`pure` ABI entries.
76
+ * @param from - Sender wallet address (must match connected wallet when signing)
77
+ * @param params - Contract address, ABI, function name, optional args and wei `value`
78
+ * @returns Single-step `SerializedPreparedFlow` for wagmi or MCP `executePreparedFlow`
79
+ */
80
+ prepareFunction(from: `0x${string}`, params: ContractCallParams): Promise<SerializedPreparedFlow>;
71
81
  }
72
82
  /**
73
83
  * Decode raw calldata result bytes using a single ABI function entry.
@@ -1,8 +1,11 @@
1
1
  /**
2
- * Generic contract reads and gas estimates — caller supplies the ABI.
2
+ * Generic contract reads, gas estimates, and write prepares — caller supplies the ABI.
3
3
  */
4
4
  import { decodeFunctionResult, encodeFunctionData, } from "viem";
5
+ import { CHAIN } from "../config/chains.js";
6
+ import { appendCelinaCalldataTag } from "../config/celina-tag.js";
5
7
  import { normalizeAddress } from "../utils/normalize-address.js";
8
+ import { serializePreparedFlow, } from "../types/prepared.js";
6
9
  function findAbiFunction(abi, functionName) {
7
10
  const fn = abi.find((item) => item.type === "function" && item.name === functionName);
8
11
  if (!fn) {
@@ -10,11 +13,19 @@ function findAbiFunction(abi, functionName) {
10
13
  }
11
14
  return fn;
12
15
  }
13
- /** Read-only and gas-estimation helpers for arbitrary contracts. */
16
+ function assertWritableFunction(fn, functionName) {
17
+ const mutability = fn.stateMutability;
18
+ if (mutability === "view" || mutability === "pure") {
19
+ throw new Error(`Function "${functionName}" is ${mutability}; use call_contract_function for reads`);
20
+ }
21
+ }
22
+ /** Read, gas-estimate, and prepare helpers for arbitrary contracts. */
14
23
  export class ContractService {
15
24
  clientFactory;
25
+ attributionTags;
16
26
  constructor(clientFactory) {
17
27
  this.clientFactory = clientFactory;
28
+ this.attributionTags = clientFactory.getConfig().attributionTags;
18
29
  }
19
30
  /**
20
31
  * Simulate a read-only contract call (`eth_call`).
@@ -103,6 +114,41 @@ export class ContractService {
103
114
  };
104
115
  }
105
116
  }
117
+ /**
118
+ * Build an unsigned single-step flow for a contract write (caller ABI).
119
+ * Calldata includes the CELINA attribution suffix. Rejects `view`/`pure` ABI entries.
120
+ * @param from - Sender wallet address (must match connected wallet when signing)
121
+ * @param params - Contract address, ABI, function name, optional args and wei `value`
122
+ * @returns Single-step `SerializedPreparedFlow` for wagmi or MCP `executePreparedFlow`
123
+ */
124
+ async prepareFunction(from, params) {
125
+ const contractAddress = normalizeAddress(params.contractAddress, "contract address");
126
+ const sender = normalizeAddress(from, "from address");
127
+ const fn = findAbiFunction(params.abi, params.functionName);
128
+ assertWritableFunction(fn, params.functionName);
129
+ const args = params.functionArgs ?? [];
130
+ const value = params.value ?? "0";
131
+ const data = appendCelinaCalldataTag(encodeFunctionData({
132
+ abi: params.abi,
133
+ functionName: params.functionName,
134
+ args: args,
135
+ }), this.attributionTags);
136
+ const flow = {
137
+ chainId: CHAIN.id,
138
+ from: sender,
139
+ summary: `Call ${params.functionName} on ${contractAddress}`,
140
+ steps: [
141
+ {
142
+ kind: "contract",
143
+ to: contractAddress,
144
+ data,
145
+ value,
146
+ description: `Call ${params.functionName}`,
147
+ },
148
+ ],
149
+ };
150
+ return serializePreparedFlow(flow);
151
+ }
106
152
  }
107
153
  /**
108
154
  * Decode raw calldata result bytes using a single ABI function entry.
@@ -1 +1 @@
1
- {"version":3,"file":"contract.service.js","sourceRoot":"","sources":["../../../src/services/contract.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contract.service.js","sourceRoot":"","sources":["../../../src/services/contract.service.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,13 @@
1
1
  import { z } from "zod";
2
2
  import { abiSchema, addressSchema, optionalWalletAddressSchema, } from "../schemas/common.js";
3
3
  import { resolveWalletFromRuntime } from "../utils/wallet.js";
4
+ const contractWriteInputSchema = z.object({
5
+ contract_address: addressSchema,
6
+ function_name: z.string().min(1),
7
+ abi: abiSchema,
8
+ function_args: z.array(z.unknown()).optional(),
9
+ value: z.string().optional(),
10
+ });
4
11
  export const contractToolDefinitions = [
5
12
  {
6
13
  name: "call_contract_function",
@@ -34,7 +41,7 @@ export const contractToolDefinitions = [
34
41
  },
35
42
  {
36
43
  name: "estimate_contract_gas",
37
- description: "Estimates gas for a contract function call. Requires caller-supplied ABI JSON.",
44
+ description: "Estimates gas for a contract function call. Requires caller-supplied ABI JSON. Call before execute_contract_function when possible.",
38
45
  inputSchema: z.object({
39
46
  contract_address: addressSchema,
40
47
  function_name: z.string().min(1),
@@ -63,5 +70,50 @@ export const contractToolDefinitions = [
63
70
  });
64
71
  },
65
72
  },
73
+ {
74
+ name: "execute_contract_function",
75
+ description: "Calls a state-changing contract function and broadcasts the transaction. Requires caller-supplied ABI JSON and CELO_PRIVATE_KEY. Prefer estimate_contract_gas first. Optional value is wei as a decimal string.",
76
+ inputSchema: contractWriteInputSchema,
77
+ families: ["execute"],
78
+ surfaces: ["mcp"],
79
+ requiresEnv: ["CELO_PRIVATE_KEY"],
80
+ mcp: {
81
+ title: "Execute Contract Function",
82
+ annotations: { destructiveHint: true, openWorldHint: true },
83
+ },
84
+ handler: async (runtime, input) => {
85
+ const contract = runtime.executors?.contract;
86
+ if (!contract)
87
+ throw new Error("Contract executor not configured.");
88
+ return contract.executeFunction({
89
+ contractAddress: input.contract_address,
90
+ functionName: input.function_name,
91
+ abi: input.abi,
92
+ functionArgs: input.function_args,
93
+ value: input.value,
94
+ });
95
+ },
96
+ },
97
+ {
98
+ name: "prepare_contract_function",
99
+ description: "Prepare an unsigned contract write (caller ABI). User signs in wallet. Prefer estimate_contract_gas first. Optional value is wei as a decimal string.",
100
+ inputSchema: contractWriteInputSchema.extend({
101
+ from: optionalWalletAddressSchema,
102
+ }),
103
+ families: ["prepare"],
104
+ surfaces: ["browser"],
105
+ handler: async (runtime, input) => {
106
+ const sender = resolveWalletFromRuntime(runtime, {
107
+ from: input.from,
108
+ });
109
+ return runtime.celina.contract.prepareFunction(sender, {
110
+ contractAddress: input.contract_address,
111
+ functionName: input.function_name,
112
+ abi: input.abi,
113
+ functionArgs: input.function_args,
114
+ value: input.value,
115
+ });
116
+ },
117
+ },
66
118
  ];
67
119
  //# sourceMappingURL=contract.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"contract.js","sourceRoot":"","sources":["../../../../src/tools/domains/contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contract.js","sourceRoot":"","sources":["../../../../src/tools/domains/contract.ts"],"names":[],"mappings":"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"}
@@ -59,6 +59,15 @@ export type AaveExecutors = {
59
59
  supply: (token: string, amount: string) => Promise<unknown>;
60
60
  withdraw: (token: string, amount?: string, withdrawMax?: boolean) => Promise<unknown>;
61
61
  };
62
+ export type ContractExecutors = {
63
+ executeFunction: (params: {
64
+ contractAddress: `0x${string}`;
65
+ functionName: string;
66
+ abi: unknown;
67
+ functionArgs?: unknown[];
68
+ value?: string;
69
+ }) => Promise<unknown>;
70
+ };
62
71
  export type GoodDollarWriteExecutors = {
63
72
  claimDailyUbi: () => Promise<unknown>;
64
73
  estimateReserveSwap: (tokenIn: string, tokenOut: string, amount: string, options?: {
@@ -87,6 +96,7 @@ export type ToolRuntimeExecutors = {
87
96
  mentoFx?: MentoFxExecutors;
88
97
  uniswap?: UniswapExecutors;
89
98
  aave?: AaveExecutors;
99
+ contract?: ContractExecutors;
90
100
  gooddollarWrite?: GoodDollarWriteExecutors;
91
101
  self?: SelfExecutors;
92
102
  };
@@ -72,6 +72,8 @@ export const TOOL_CATEGORY_BY_NAME = {
72
72
  get_nft_balance: "NFT",
73
73
  call_contract_function: "Contract",
74
74
  estimate_contract_gas: "Contract",
75
+ execute_contract_function: "Contract",
76
+ prepare_contract_function: "Contract",
75
77
  verify_self_agent: "Self",
76
78
  lookup_self_agent: "Self",
77
79
  verify_self_request: "Self",
@@ -1 +1 @@
1
- {"version":3,"file":"website-sync.js","sourceRoot":"","sources":["../../../src/tools/website-sync.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"website-sync.js","sourceRoot":"","sources":["../../../src/tools/website-sync.ts"],"names":[],"mappings":"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"}
@@ -203,5 +203,36 @@ export const contractOperations = [
203
203
  assertHasKeys(result, ["gasEstimate"]);
204
204
  },
205
205
  },
206
+ {
207
+ id: "contract.prepareFunction",
208
+ domain: "contract",
209
+ layer: "prepare",
210
+ requiresEnv: ["CELO_PRIVATE_KEY"],
211
+ sdk: {
212
+ invoke: (client, fx) => {
213
+ const from = fx.signerAddress ?? fx.wallet;
214
+ return client.contract.prepareFunction(from, {
215
+ contractAddress: fx.usdm,
216
+ abi: [
217
+ {
218
+ type: "function",
219
+ name: "approve",
220
+ stateMutability: "nonpayable",
221
+ inputs: [
222
+ { name: "spender", type: "address" },
223
+ { name: "amount", type: "uint256" },
224
+ ],
225
+ outputs: [{ type: "bool" }],
226
+ },
227
+ ],
228
+ functionName: "approve",
229
+ functionArgs: [from, 0n],
230
+ });
231
+ },
232
+ },
233
+ assert: (result) => {
234
+ assertHasKeys(result, ["from", "steps"]);
235
+ },
236
+ },
206
237
  ];
207
238
  //# sourceMappingURL=chain-ext.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chain-ext.js","sourceRoot":"","sources":["../../../../tests/catalog/domains/chain-ext.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chain-ext.js","sourceRoot":"","sources":["../../../../tests/catalog/domains/chain-ext.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,13 @@
1
1
  import { z } from "zod";
2
2
  import { abiSchema, addressSchema, optionalWalletAddressSchema, } from "../schemas/common.js";
3
3
  import { resolveWalletFromRuntime } from "../utils/wallet.js";
4
+ const contractWriteInputSchema = z.object({
5
+ contract_address: addressSchema,
6
+ function_name: z.string().min(1),
7
+ abi: abiSchema,
8
+ function_args: z.array(z.unknown()).optional(),
9
+ value: z.string().optional(),
10
+ });
4
11
  export const contractToolDefinitions = [
5
12
  {
6
13
  name: "call_contract_function",
@@ -34,7 +41,7 @@ export const contractToolDefinitions = [
34
41
  },
35
42
  {
36
43
  name: "estimate_contract_gas",
37
- description: "Estimates gas for a contract function call. Requires caller-supplied ABI JSON.",
44
+ description: "Estimates gas for a contract function call. Requires caller-supplied ABI JSON. Call before execute_contract_function when possible.",
38
45
  inputSchema: z.object({
39
46
  contract_address: addressSchema,
40
47
  function_name: z.string().min(1),
@@ -63,5 +70,50 @@ export const contractToolDefinitions = [
63
70
  });
64
71
  },
65
72
  },
73
+ {
74
+ name: "execute_contract_function",
75
+ description: "Calls a state-changing contract function and broadcasts the transaction. Requires caller-supplied ABI JSON and CELO_PRIVATE_KEY. Prefer estimate_contract_gas first. Optional value is wei as a decimal string.",
76
+ inputSchema: contractWriteInputSchema,
77
+ families: ["execute"],
78
+ surfaces: ["mcp"],
79
+ requiresEnv: ["CELO_PRIVATE_KEY"],
80
+ mcp: {
81
+ title: "Execute Contract Function",
82
+ annotations: { destructiveHint: true, openWorldHint: true },
83
+ },
84
+ handler: async (runtime, input) => {
85
+ const contract = runtime.executors?.contract;
86
+ if (!contract)
87
+ throw new Error("Contract executor not configured.");
88
+ return contract.executeFunction({
89
+ contractAddress: input.contract_address,
90
+ functionName: input.function_name,
91
+ abi: input.abi,
92
+ functionArgs: input.function_args,
93
+ value: input.value,
94
+ });
95
+ },
96
+ },
97
+ {
98
+ name: "prepare_contract_function",
99
+ description: "Prepare an unsigned contract write (caller ABI). User signs in wallet. Prefer estimate_contract_gas first. Optional value is wei as a decimal string.",
100
+ inputSchema: contractWriteInputSchema.extend({
101
+ from: optionalWalletAddressSchema,
102
+ }),
103
+ families: ["prepare"],
104
+ surfaces: ["browser"],
105
+ handler: async (runtime, input) => {
106
+ const sender = resolveWalletFromRuntime(runtime, {
107
+ from: input.from,
108
+ });
109
+ return runtime.celina.contract.prepareFunction(sender, {
110
+ contractAddress: input.contract_address,
111
+ functionName: input.function_name,
112
+ abi: input.abi,
113
+ functionArgs: input.function_args,
114
+ value: input.value,
115
+ });
116
+ },
117
+ },
66
118
  ];
67
119
  //# sourceMappingURL=contract.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"contract.js","sourceRoot":"","sources":["../../../src/tools/domains/contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contract.js","sourceRoot":"","sources":["../../../src/tools/domains/contract.ts"],"names":[],"mappings":"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"}
@@ -59,6 +59,15 @@ export type AaveExecutors = {
59
59
  supply: (token: string, amount: string) => Promise<unknown>;
60
60
  withdraw: (token: string, amount?: string, withdrawMax?: boolean) => Promise<unknown>;
61
61
  };
62
+ export type ContractExecutors = {
63
+ executeFunction: (params: {
64
+ contractAddress: `0x${string}`;
65
+ functionName: string;
66
+ abi: unknown;
67
+ functionArgs?: unknown[];
68
+ value?: string;
69
+ }) => Promise<unknown>;
70
+ };
62
71
  export type GoodDollarWriteExecutors = {
63
72
  claimDailyUbi: () => Promise<unknown>;
64
73
  estimateReserveSwap: (tokenIn: string, tokenOut: string, amount: string, options?: {
@@ -87,6 +96,7 @@ export type ToolRuntimeExecutors = {
87
96
  mentoFx?: MentoFxExecutors;
88
97
  uniswap?: UniswapExecutors;
89
98
  aave?: AaveExecutors;
99
+ contract?: ContractExecutors;
90
100
  gooddollarWrite?: GoodDollarWriteExecutors;
91
101
  self?: SelfExecutors;
92
102
  };
@@ -72,6 +72,8 @@ export const TOOL_CATEGORY_BY_NAME = {
72
72
  get_nft_balance: "NFT",
73
73
  call_contract_function: "Contract",
74
74
  estimate_contract_gas: "Contract",
75
+ execute_contract_function: "Contract",
76
+ prepare_contract_function: "Contract",
75
77
  verify_self_agent: "Self",
76
78
  lookup_self_agent: "Self",
77
79
  verify_self_request: "Self",
@@ -1 +1 @@
1
- {"version":3,"file":"website-sync.js","sourceRoot":"","sources":["../../src/tools/website-sync.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"website-sync.js","sourceRoot":"","sources":["../../src/tools/website-sync.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@andrewkimjoseph/celina-sdk",
3
- "version": "0.15.2",
3
+ "version": "0.15.3",
4
4
  "description": "Celina SDK — Celo mainnet reads, unsigned transaction preparation, and ERC-4337 createAAClient for sponsored UserOps.",
5
5
  "type": "module",
6
6
  "sideEffects": false,