@aifinpay/agent 1.0.0 → 1.1.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.
- package/dist/agent.js +2 -2
- package/dist/agent.js.map +1 -1
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +127 -0
- package/dist/cli.js.map +1 -0
- package/dist/facilitators/standard-x402.d.ts +9 -0
- package/dist/facilitators/standard-x402.d.ts.map +1 -0
- package/dist/facilitators/standard-x402.js +133 -0
- package/dist/facilitators/standard-x402.js.map +1 -0
- package/package.json +6 -3
package/dist/agent.js
CHANGED
|
@@ -3,8 +3,8 @@ import bs58 from "bs58";
|
|
|
3
3
|
import { sha256 } from "./crypto.js";
|
|
4
4
|
import { AiFinPayError, FundingTimeoutError, X402Error } from "./errors.js";
|
|
5
5
|
import { detectFacilitator } from "./facilitators/detect.js";
|
|
6
|
-
// Canonical domain is aifinpay.io
|
|
7
|
-
//
|
|
6
|
+
// Canonical domain is aifinpay.io. The legacy aifinpay.company host is
|
|
7
|
+
// fully retired (DNS removed) — do not use it.
|
|
8
8
|
const DEFAULT_BASE_URL = "https://aifinpay.io";
|
|
9
9
|
const DEFAULT_TIMEOUT_MS = 30_000;
|
|
10
10
|
const SDK_UA = "aifinpay-agent-node/0.3.0";
|
package/dist/agent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":""}
|
package/dist/cli.js
ADDED
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* `npx @aifinpay/agent init` — one command from zero to a paying agent.
|
|
4
|
+
*
|
|
5
|
+
* 1. generates the agent's wallet LOCALLY (key never leaves this machine),
|
|
6
|
+
* writes .env (AGENT_PK) and protects it via .gitignore
|
|
7
|
+
* 2. detects an MCP host (Claude Code / Cursor) and prints the one-liner
|
|
8
|
+
* 3. prints funding instructions + a ready-to-run code snippet
|
|
9
|
+
*
|
|
10
|
+
* npx @aifinpay/agent init # interactive
|
|
11
|
+
* npx @aifinpay/agent init --yes # zero questions, sane defaults
|
|
12
|
+
* npx @aifinpay/agent init --merchant # ALSO register you as a merchant (paywall side)
|
|
13
|
+
*/
|
|
14
|
+
import { appendFileSync, existsSync, readFileSync, writeFileSync } from 'node:fs';
|
|
15
|
+
import { homedir } from 'node:os';
|
|
16
|
+
import { join } from 'node:path';
|
|
17
|
+
import { createInterface } from 'node:readline/promises';
|
|
18
|
+
import { generatePrivateKey, privateKeyToAccount } from 'viem/accounts';
|
|
19
|
+
const API = process.env.AIFP_API || 'https://api.aifinpay.io';
|
|
20
|
+
const args = process.argv.slice(2);
|
|
21
|
+
const cmd = args.find((a) => !a.startsWith('-')) || 'init';
|
|
22
|
+
const YES = args.includes('--yes') || args.includes('-y');
|
|
23
|
+
const MERCHANT = args.includes('--merchant');
|
|
24
|
+
const c = {
|
|
25
|
+
b: (s) => `\x1b[1m${s}\x1b[0m`,
|
|
26
|
+
dim: (s) => `\x1b[2m${s}\x1b[0m`,
|
|
27
|
+
ok: (s) => `\x1b[32m${s}\x1b[0m`,
|
|
28
|
+
warn: (s) => `\x1b[33m${s}\x1b[0m`,
|
|
29
|
+
code: (s) => `\x1b[36m${s}\x1b[0m`,
|
|
30
|
+
};
|
|
31
|
+
async function ask(q, def) {
|
|
32
|
+
if (YES)
|
|
33
|
+
return def;
|
|
34
|
+
const rl = createInterface({ input: process.stdin, output: process.stdout });
|
|
35
|
+
const a = (await rl.question(`${q} ${c.dim(`(${def})`)} `)).trim();
|
|
36
|
+
rl.close();
|
|
37
|
+
return a || def;
|
|
38
|
+
}
|
|
39
|
+
function upsertEnv(key, value) {
|
|
40
|
+
const envPath = join(process.cwd(), '.env');
|
|
41
|
+
const cur = existsSync(envPath) ? readFileSync(envPath, 'utf8') : '';
|
|
42
|
+
if (new RegExp(`^${key}=`, 'm').test(cur))
|
|
43
|
+
return 'kept';
|
|
44
|
+
appendFileSync(envPath, `${cur.endsWith('\n') || cur === '' ? '' : '\n'}${key}=${value}\n`);
|
|
45
|
+
return 'created';
|
|
46
|
+
}
|
|
47
|
+
function protectEnvInGitignore() {
|
|
48
|
+
const gi = join(process.cwd(), '.gitignore');
|
|
49
|
+
const cur = existsSync(gi) ? readFileSync(gi, 'utf8') : '';
|
|
50
|
+
if (!/^\.env$/m.test(cur))
|
|
51
|
+
writeFileSync(gi, `${cur}${cur && !cur.endsWith('\n') ? '\n' : ''}.env\n`);
|
|
52
|
+
}
|
|
53
|
+
function detectMcpHost() {
|
|
54
|
+
if (existsSync(join(homedir(), '.claude.json')) || existsSync(join(homedir(), '.claude')))
|
|
55
|
+
return 'claude';
|
|
56
|
+
if (existsSync(join(homedir(), '.cursor')))
|
|
57
|
+
return 'cursor';
|
|
58
|
+
return null;
|
|
59
|
+
}
|
|
60
|
+
async function init() {
|
|
61
|
+
console.log(`\n${c.b('◈ AiFinPay')} — set up your agent's wallet\n`);
|
|
62
|
+
// 1. wallet — local generation, or keep the existing key
|
|
63
|
+
const envPath = join(process.cwd(), '.env');
|
|
64
|
+
let pk = '';
|
|
65
|
+
const existing = existsSync(envPath) && readFileSync(envPath, 'utf8').match(/^AGENT_PK=(0x[0-9a-fA-F]{64})$/m);
|
|
66
|
+
if (existing) {
|
|
67
|
+
pk = existing[1];
|
|
68
|
+
console.log(`${c.ok('✓')} found existing AGENT_PK in .env — reusing it`);
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
pk = generatePrivateKey();
|
|
72
|
+
upsertEnv('AGENT_PK', pk);
|
|
73
|
+
console.log(`${c.ok('✓')} wallet generated ${c.dim('locally — the key stays on this machine, saved to .env')}`);
|
|
74
|
+
}
|
|
75
|
+
protectEnvInGitignore();
|
|
76
|
+
console.log(`${c.ok('✓')} .env is covered by .gitignore`);
|
|
77
|
+
const address = privateKeyToAccount(pk).address;
|
|
78
|
+
// 2. MCP host one-liner
|
|
79
|
+
const host = detectMcpHost();
|
|
80
|
+
if (host) {
|
|
81
|
+
console.log(`\n${c.b(`Detected ${host === 'claude' ? 'Claude Code' : 'Cursor'}`)} — give your assistant payment tools:`);
|
|
82
|
+
console.log(` ${c.code('claude mcp add aifinpay -- npx -y @aifinpay/mcp')}`);
|
|
83
|
+
}
|
|
84
|
+
// 3. funding + snippet
|
|
85
|
+
console.log(`\n${c.b('Fund your agent')} ${c.dim("(its own wallet — only you hold the key)")}:`);
|
|
86
|
+
console.log(` address : ${c.code(address)}`);
|
|
87
|
+
console.log(` network : Polygon · send ~1 USDC + ~0.5 POL (gas)`);
|
|
88
|
+
console.log(`\n${c.b('Make your first paid call')}:`);
|
|
89
|
+
console.log(c.code(` import { AiFinPayAgent } from "@aifinpay/agent";\n` +
|
|
90
|
+
` const agent = await AiFinPayAgent.new({ privateKey: process.env.AGENT_PK });\n` +
|
|
91
|
+
` const r = await agent.call({ provider: "exa", body: { query: "hello" } });`));
|
|
92
|
+
console.log(`\n docs: https://aifinpay.io/llms.txt · registry: ${API}/registry`);
|
|
93
|
+
// 4. optional merchant registration (the paywall side)
|
|
94
|
+
if (MERCHANT) {
|
|
95
|
+
console.log(`\n${c.b('Merchant registration')} — charge agents for YOUR API:`);
|
|
96
|
+
const name = await ask(' Service name?', 'My Paid API');
|
|
97
|
+
const payout = await ask(' Payout wallet (0x…)?', address);
|
|
98
|
+
const res = await fetch(`${API}/v1/merchants`, {
|
|
99
|
+
method: 'POST',
|
|
100
|
+
headers: { 'content-type': 'application/json' },
|
|
101
|
+
body: JSON.stringify({ name, pay_to: { polygon: payout } }),
|
|
102
|
+
});
|
|
103
|
+
const j = await res.json();
|
|
104
|
+
if (!res.ok) {
|
|
105
|
+
console.log(`${c.warn('✗')} registration failed: ${j.detail || res.status}`);
|
|
106
|
+
}
|
|
107
|
+
else {
|
|
108
|
+
upsertEnv('AIFP_MERCHANT_ID', j.merchant_id);
|
|
109
|
+
upsertEnv('AIFP_MERCHANT_SECRET', j.merchant_secret);
|
|
110
|
+
console.log(`${c.ok('✓')} registered ${c.code(j.merchant_id)} ${c.dim('(id + one-time secret saved to .env)')}`);
|
|
111
|
+
console.log(` agents pay you with: POST ${API}/v1/quote {"merchant_id":"${j.merchant_id}", …}`);
|
|
112
|
+
console.log(` verify receipts against: ${API}/.well-known/jwks.json`);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
console.log(`\n${c.ok('Done.')} Fund the address above and your agent can pay for search, inference and data.\n`);
|
|
116
|
+
}
|
|
117
|
+
if (cmd === 'init') {
|
|
118
|
+
init().catch((e) => {
|
|
119
|
+
console.error(`${c.warn('✗')} ${e.message}`);
|
|
120
|
+
process.exit(1);
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
else {
|
|
124
|
+
console.log(`Unknown command "${cmd}". Usage: npx @aifinpay/agent init [--yes] [--merchant]`);
|
|
125
|
+
process.exit(1);
|
|
126
|
+
}
|
|
127
|
+
//# sourceMappingURL=cli.js.map
|
package/dist/cli.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { Agent } from "../agent.js";
|
|
2
|
+
import type { AuthPayload, Facilitator, PayOptions } from "./base.js";
|
|
3
|
+
export declare class StandardX402Facilitator implements Facilitator {
|
|
4
|
+
static readonly name = "x402";
|
|
5
|
+
readonly name = "x402";
|
|
6
|
+
static detect(resp: Response): Promise<boolean>;
|
|
7
|
+
buildAuth(resp: Response, agent: Agent, opts: PayOptions): Promise<AuthPayload>;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=standard-x402.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"standard-x402.d.ts","sourceRoot":"","sources":["../../src/facilitators/standard-x402.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAKzC,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAyCtE,qBAAa,uBAAwB,YAAW,WAAW;IACzD,MAAM,CAAC,QAAQ,CAAC,IAAI,UAAU;IAC9B,QAAQ,CAAC,IAAI,UAAU;WAEV,MAAM,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;IAa/C,SAAS,CACb,IAAI,EAAE,QAAQ,EACd,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,WAAW,CAAC;CA0FxB"}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import { PaymentTooExpensiveError, UnsupportedFacilitatorError, } from "../errors.js";
|
|
2
|
+
/**
|
|
3
|
+
* Standard x402 — the `X-PAYMENT` header flow (x402 Foundation / Linux
|
|
4
|
+
* Foundation standard, donated by Coinbase 2026-04). This is what makes
|
|
5
|
+
* AiFinPay agents interoperable with the wider x402 economy (Coinbase, Dexter,
|
|
6
|
+
* 69k+ agents) — distinct from our native `aifinpay` flavor.
|
|
7
|
+
*
|
|
8
|
+
* Wire format:
|
|
9
|
+
* - 402 body: { x402Version, accepts: [ { scheme:"exact", network,
|
|
10
|
+
* maxAmountRequired, payTo, asset, maxTimeoutSeconds, extra:{name,version} }, … ] }
|
|
11
|
+
* - Client signs an EIP-3009 TransferWithAuthorization (gasless) and retries with
|
|
12
|
+
* X-PAYMENT: base64(JSON({ x402Version, scheme, network, payload }))
|
|
13
|
+
*
|
|
14
|
+
* EVM `exact` only for now; Solana `exact` is a follow-up.
|
|
15
|
+
*/
|
|
16
|
+
const CHAIN_IDS = {
|
|
17
|
+
base: 8453,
|
|
18
|
+
"base-sepolia": 84532,
|
|
19
|
+
ethereum: 1,
|
|
20
|
+
mainnet: 1,
|
|
21
|
+
polygon: 137,
|
|
22
|
+
"polygon-amoy": 80002,
|
|
23
|
+
arbitrum: 42161,
|
|
24
|
+
optimism: 10,
|
|
25
|
+
avalanche: 43114,
|
|
26
|
+
bsc: 56,
|
|
27
|
+
};
|
|
28
|
+
const TRANSFER_WITH_AUTHORIZATION_TYPES = {
|
|
29
|
+
TransferWithAuthorization: [
|
|
30
|
+
{ name: "from", type: "address" },
|
|
31
|
+
{ name: "to", type: "address" },
|
|
32
|
+
{ name: "value", type: "uint256" },
|
|
33
|
+
{ name: "validAfter", type: "uint256" },
|
|
34
|
+
{ name: "validBefore", type: "uint256" },
|
|
35
|
+
{ name: "nonce", type: "bytes32" },
|
|
36
|
+
],
|
|
37
|
+
};
|
|
38
|
+
export class StandardX402Facilitator {
|
|
39
|
+
static name = "x402";
|
|
40
|
+
name = "x402";
|
|
41
|
+
static async detect(resp) {
|
|
42
|
+
if (resp.status !== 402)
|
|
43
|
+
return false;
|
|
44
|
+
let body;
|
|
45
|
+
try {
|
|
46
|
+
body = await resp.clone().json();
|
|
47
|
+
}
|
|
48
|
+
catch {
|
|
49
|
+
return false;
|
|
50
|
+
}
|
|
51
|
+
if (typeof body !== "object" || body === null)
|
|
52
|
+
return false;
|
|
53
|
+
const b = body;
|
|
54
|
+
return "x402Version" in b && Array.isArray(b.accepts);
|
|
55
|
+
}
|
|
56
|
+
async buildAuth(resp, agent, opts) {
|
|
57
|
+
const body = (await resp.clone().json());
|
|
58
|
+
const accepts = body.accepts ?? [];
|
|
59
|
+
// Pick the first `exact` requirement on an EVM chain we know how to pay.
|
|
60
|
+
const req = accepts.find((a) => a.scheme === "exact" &&
|
|
61
|
+
typeof a.network === "string" &&
|
|
62
|
+
CHAIN_IDS[a.network] !== undefined);
|
|
63
|
+
if (!req) {
|
|
64
|
+
throw new UnsupportedFacilitatorError("standard x402 detected but no payable EVM `exact` requirement " +
|
|
65
|
+
`(offered: ${accepts.map((a) => `${a.scheme}/${a.network}`).join(", ") || "none"})`);
|
|
66
|
+
}
|
|
67
|
+
const network = req.network;
|
|
68
|
+
const asset = String(req.asset ?? "");
|
|
69
|
+
const payTo = String(req.payTo ?? "");
|
|
70
|
+
const value = String(req.maxAmountRequired ?? "0");
|
|
71
|
+
if (!asset || !payTo) {
|
|
72
|
+
throw new UnsupportedFacilitatorError("standard x402 requirement is missing `asset` or `payTo`");
|
|
73
|
+
}
|
|
74
|
+
// Best-effort USD cap (assumes 6-decimal USDC/EURC pricing).
|
|
75
|
+
if (opts.maxAmountUsd !== undefined) {
|
|
76
|
+
const approxUsd = Number(value) / 1e6;
|
|
77
|
+
if (Number.isFinite(approxUsd) && approxUsd > opts.maxAmountUsd) {
|
|
78
|
+
throw new PaymentTooExpensiveError(`x402 wants ~$${approxUsd.toFixed(4)}, caller cap is $${opts.maxAmountUsd.toFixed(4)}`);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
const account = await agent.evmAccount();
|
|
82
|
+
const extra = (req.extra ?? {});
|
|
83
|
+
const timeout = Number(req.maxTimeoutSeconds ?? 600);
|
|
84
|
+
const now = Math.floor(Date.now() / 1000);
|
|
85
|
+
const validBefore = String(now + (Number.isFinite(timeout) ? timeout : 600));
|
|
86
|
+
const nonce = randomNonce();
|
|
87
|
+
const authorization = {
|
|
88
|
+
from: account.address,
|
|
89
|
+
to: payTo,
|
|
90
|
+
value,
|
|
91
|
+
validAfter: "0",
|
|
92
|
+
validBefore,
|
|
93
|
+
nonce,
|
|
94
|
+
};
|
|
95
|
+
const signature = await account.signTypedData({
|
|
96
|
+
domain: {
|
|
97
|
+
name: String(extra.name ?? "USD Coin"),
|
|
98
|
+
version: String(extra.version ?? "2"),
|
|
99
|
+
chainId: CHAIN_IDS[network],
|
|
100
|
+
verifyingContract: asset,
|
|
101
|
+
},
|
|
102
|
+
types: TRANSFER_WITH_AUTHORIZATION_TYPES,
|
|
103
|
+
primaryType: "TransferWithAuthorization",
|
|
104
|
+
message: {
|
|
105
|
+
from: authorization.from,
|
|
106
|
+
to: authorization.to,
|
|
107
|
+
value: BigInt(value),
|
|
108
|
+
validAfter: 0n,
|
|
109
|
+
validBefore: BigInt(validBefore),
|
|
110
|
+
nonce,
|
|
111
|
+
},
|
|
112
|
+
});
|
|
113
|
+
const paymentPayload = {
|
|
114
|
+
x402Version: body.x402Version ?? 1,
|
|
115
|
+
scheme: "exact",
|
|
116
|
+
network,
|
|
117
|
+
payload: { signature, authorization },
|
|
118
|
+
};
|
|
119
|
+
const header = typeof Buffer !== "undefined"
|
|
120
|
+
? Buffer.from(JSON.stringify(paymentPayload)).toString("base64")
|
|
121
|
+
: btoa(JSON.stringify(paymentPayload));
|
|
122
|
+
return { headers: { "X-PAYMENT": header } };
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
function randomNonce() {
|
|
126
|
+
const b = new Uint8Array(32);
|
|
127
|
+
(globalThis.crypto ?? crypto).getRandomValues(b);
|
|
128
|
+
let s = "0x";
|
|
129
|
+
for (const x of b)
|
|
130
|
+
s += x.toString(16).padStart(2, "0");
|
|
131
|
+
return s;
|
|
132
|
+
}
|
|
133
|
+
//# sourceMappingURL=standard-x402.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"standard-x402.js","sourceRoot":"","sources":["../../src/facilitators/standard-x402.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aifinpay/agent",
|
|
3
|
-
"version": "1.
|
|
4
|
-
"description": "Unified agent-economy SDK for autonomous AI agents
|
|
3
|
+
"version": "1.1.0",
|
|
4
|
+
"description": "Unified agent-economy SDK for autonomous AI agents — chain-opaque AiFinPayAgent surface (call/openSession/balance/verify) over Polygon and Solana execution environments.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"ed25519",
|
|
42
42
|
"stripe-for-ai-agents"
|
|
43
43
|
],
|
|
44
|
-
"author": "CoinSecurities (SECCO) <contact@aifinpay.
|
|
44
|
+
"author": "CoinSecurities (SECCO) <contact@aifinpay.io>",
|
|
45
45
|
"license": "MIT",
|
|
46
46
|
"homepage": "https://github.com/AiFinPay/sdk#readme",
|
|
47
47
|
"repository": {
|
|
@@ -66,5 +66,8 @@
|
|
|
66
66
|
},
|
|
67
67
|
"publishConfig": {
|
|
68
68
|
"access": "public"
|
|
69
|
+
},
|
|
70
|
+
"bin": {
|
|
71
|
+
"aifinpay": "./dist/cli.js"
|
|
69
72
|
}
|
|
70
73
|
}
|