run402 4.15.0 → 4.16.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/README.md +2 -0
- package/package.json +1 -1
- package/sdk/dist/kernel.d.ts +37 -0
- package/sdk/dist/kernel.d.ts.map +1 -1
- package/sdk/dist/kernel.js +42 -2
- package/sdk/dist/kernel.js.map +1 -1
- package/sdk/dist/namespaces/ai.d.ts +11 -1
- package/sdk/dist/namespaces/ai.d.ts.map +1 -1
- package/sdk/dist/namespaces/ai.js +6 -5
- package/sdk/dist/namespaces/ai.js.map +1 -1
package/README.md
CHANGED
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
Command-line interface for [Run402](https://run402.com) — provision Postgres databases, deploy static sites, run Node 22 serverless functions, host content-addressed CDN assets, send email, sign on-chain. Paid autonomously with x402 USDC on Base. **Prototype tier is free on testnet.**
|
|
4
4
|
|
|
5
|
+
The CLI lets an agent act as its own first-class Run402 principal rather than borrowing a human account. Identity records who invoked an action; organization roles, grants, delegates, freshness, and spend policy determine what that principal may do. People remain first-class owners and collaborators without becoming routine CLI operators.
|
|
6
|
+
|
|
5
7
|
For the full CLI reference (every flag, every subcommand) see **<https://docs.run402.com/llms-cli.txt>**.
|
|
6
8
|
|
|
7
9
|
## Install
|
package/package.json
CHANGED
package/sdk/dist/kernel.d.ts
CHANGED
|
@@ -35,10 +35,47 @@ export interface RequestOptions {
|
|
|
35
35
|
/** Short verb phrase attached to thrown errors (e.g. "provisioning project"). */
|
|
36
36
|
context: string;
|
|
37
37
|
}
|
|
38
|
+
/**
|
|
39
|
+
* What the seller's `PAYMENT-RESPONSE` receipt says actually settled.
|
|
40
|
+
*
|
|
41
|
+
* OBSERVED, never inferred. `network` is the chain the payment landed on
|
|
42
|
+
* according to the settlement receipt — not a guess from local wallet config.
|
|
43
|
+
* That distinction is the point: a caller must be able to tell a real payment
|
|
44
|
+
* from a testnet one, and a buyer holding mainnet funds makes any config-derived
|
|
45
|
+
* guess wrong.
|
|
46
|
+
*/
|
|
47
|
+
export interface PaymentSettlement {
|
|
48
|
+
success: boolean;
|
|
49
|
+
network: string;
|
|
50
|
+
transaction: string;
|
|
51
|
+
payer: string | null;
|
|
52
|
+
}
|
|
38
53
|
export interface ResponseEnvelope<T = unknown> {
|
|
39
54
|
status: number;
|
|
40
55
|
body: T;
|
|
56
|
+
/**
|
|
57
|
+
* Present only when the response carried an x402 settlement receipt, i.e.
|
|
58
|
+
* this request actually moved money. Absent/`null` means no payment was made
|
|
59
|
+
* on this request — NOT that a payment failed.
|
|
60
|
+
*/
|
|
61
|
+
settlement?: PaymentSettlement | null;
|
|
41
62
|
}
|
|
63
|
+
/**
|
|
64
|
+
* Decode the `PAYMENT-RESPONSE` receipt if the response carries one.
|
|
65
|
+
*
|
|
66
|
+
* Deliberately total: a malformed or unexpected receipt yields `null` rather
|
|
67
|
+
* than throwing. A caller asking "what did I just pay?" must never have its
|
|
68
|
+
* SUCCESSFUL response turned into an error by a reporting concern.
|
|
69
|
+
*
|
|
70
|
+
* Strict receipt VALIDATION — matching the receipt against the challenge the
|
|
71
|
+
* buyer accepted — belongs to the paid-fetch buyer path, which does it. This is
|
|
72
|
+
* disclosure of what the seller reported, and is labelled as such.
|
|
73
|
+
*/
|
|
74
|
+
export declare function decodeSettlementReceipt(res: {
|
|
75
|
+
headers: {
|
|
76
|
+
get(name: string): string | null;
|
|
77
|
+
};
|
|
78
|
+
}): PaymentSettlement | null;
|
|
42
79
|
/** Internal client surface passed to each namespace. */
|
|
43
80
|
export interface Client {
|
|
44
81
|
/** API base URL, e.g. `https://api.run402.com`. Exposed for namespaces that need to compute derived URLs (e.g. REST endpoints). */
|
package/sdk/dist/kernel.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kernel.d.ts","sourceRoot":"","sources":["../src/kernel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAoBH,OAAO,KAAK,EAAE,eAAe,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE1F,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;IAC/B,WAAW,EAAE,mBAAmB,CAAC;IACjC,cAAc,CAAC,EAAE,oBAAoB,GAAG,KAAK,CAAC;CAC/C;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,2FAA2F;IAC3F,OAAO,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC;IAC9B,kFAAkF;IAClF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,8FAA8F;IAC9F,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,iFAAiF;IACjF,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB,CAAC,CAAC,GAAG,OAAO;IAC3C,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"kernel.d.ts","sourceRoot":"","sources":["../src/kernel.ts"],"names":[],"mappings":"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"}
|
package/sdk/dist/kernel.js
CHANGED
|
@@ -17,6 +17,37 @@ const WRITE_AUTH_CODES = new Set([
|
|
|
17
17
|
"WRITE_AUTH_BINDING_MISMATCH",
|
|
18
18
|
"WRITE_AUTH_SESSION_INVALID",
|
|
19
19
|
]);
|
|
20
|
+
/**
|
|
21
|
+
* Decode the `PAYMENT-RESPONSE` receipt if the response carries one.
|
|
22
|
+
*
|
|
23
|
+
* Deliberately total: a malformed or unexpected receipt yields `null` rather
|
|
24
|
+
* than throwing. A caller asking "what did I just pay?" must never have its
|
|
25
|
+
* SUCCESSFUL response turned into an error by a reporting concern.
|
|
26
|
+
*
|
|
27
|
+
* Strict receipt VALIDATION — matching the receipt against the challenge the
|
|
28
|
+
* buyer accepted — belongs to the paid-fetch buyer path, which does it. This is
|
|
29
|
+
* disclosure of what the seller reported, and is labelled as such.
|
|
30
|
+
*/
|
|
31
|
+
export function decodeSettlementReceipt(res) {
|
|
32
|
+
const header = res.headers.get("PAYMENT-RESPONSE") ?? res.headers.get("X-PAYMENT-RESPONSE");
|
|
33
|
+
if (!header)
|
|
34
|
+
return null;
|
|
35
|
+
try {
|
|
36
|
+
const json = typeof atob === "function" ? atob(header) : Buffer.from(header, "base64").toString("utf8");
|
|
37
|
+
const raw = JSON.parse(json);
|
|
38
|
+
if (typeof raw.network !== "string" || typeof raw.transaction !== "string")
|
|
39
|
+
return null;
|
|
40
|
+
return {
|
|
41
|
+
success: raw.success === true,
|
|
42
|
+
network: raw.network,
|
|
43
|
+
transaction: raw.transaction,
|
|
44
|
+
payer: typeof raw.payer === "string" ? raw.payer : null,
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
catch {
|
|
48
|
+
return null;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
20
51
|
export async function request(kernel, path, opts) {
|
|
21
52
|
return (await requestWithResponse(kernel, path, opts)).body;
|
|
22
53
|
}
|
|
@@ -106,8 +137,17 @@ export async function requestWithResponse(kernel, path, opts) {
|
|
|
106
137
|
else {
|
|
107
138
|
resBody = await res.text();
|
|
108
139
|
}
|
|
109
|
-
if (res.ok)
|
|
110
|
-
|
|
140
|
+
if (res.ok) {
|
|
141
|
+
// OMIT the key entirely when no payment settled, rather than setting null.
|
|
142
|
+
// `restResponse` hands this envelope straight to CLI/MCP shims, and callers
|
|
143
|
+
// compare it by exact shape — always adding the key silently widened a
|
|
144
|
+
// public surface for every consumer to serve a field only paid responses
|
|
145
|
+
// use. Caught by an existing deepEqual test, which was right to fail.
|
|
146
|
+
const settlement = decodeSettlementReceipt(res);
|
|
147
|
+
return settlement
|
|
148
|
+
? { status: res.status, body: resBody, settlement }
|
|
149
|
+
: { status: res.status, body: resBody };
|
|
150
|
+
}
|
|
111
151
|
if (res.status === 402) {
|
|
112
152
|
throw new PaymentRequired(`${displayMessage(resBody, "Payment required")} while ${context}`, 402, resBody, context);
|
|
113
153
|
}
|
package/sdk/dist/kernel.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kernel.js","sourceRoot":"","sources":["../src/kernel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,kBAAkB,EAClB,6BAA6B,EAC7B,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,YAAY,EACZ,aAAa,GACd,MAAM,aAAa,CAAC;AAErB,yGAAyG;AACzG,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC;IAC/B,qBAAqB;IACrB,6BAA6B;IAC7B,4BAA4B;CAC7B,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"kernel.js","sourceRoot":"","sources":["../src/kernel.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* `ai` namespace — project-scoped AI add-ons (translation, moderation) and
|
|
3
3
|
* wallet-scoped image generation.
|
|
4
4
|
*/
|
|
5
|
-
import type { Client } from "../kernel.js";
|
|
5
|
+
import type { Client, PaymentSettlement } from "../kernel.js";
|
|
6
6
|
export interface TranslateOptions {
|
|
7
7
|
text: string;
|
|
8
8
|
to: string;
|
|
@@ -38,6 +38,16 @@ export interface GenerateImageResult {
|
|
|
38
38
|
image: string;
|
|
39
39
|
content_type: string;
|
|
40
40
|
aspect: string;
|
|
41
|
+
/**
|
|
42
|
+
* What actually settled for THIS call, from the seller's settlement receipt.
|
|
43
|
+
*
|
|
44
|
+
* `null` when the response carried no receipt — meaning no payment was made
|
|
45
|
+
* on this request (e.g. a prepaid allowance), NOT that one failed. Callers
|
|
46
|
+
* that report a purchase to a human or an agent should surface `network`:
|
|
47
|
+
* the documented quickstart faucet-funds Base Sepolia, so a caller can
|
|
48
|
+
* otherwise watch a payment succeed with no way to know it was test money.
|
|
49
|
+
*/
|
|
50
|
+
payment: PaymentSettlement | null;
|
|
41
51
|
}
|
|
42
52
|
export declare class Ai {
|
|
43
53
|
private readonly client;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai.d.ts","sourceRoot":"","sources":["../../src/namespaces/ai.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"ai.d.ts","sourceRoot":"","sources":["../../src/namespaces/ai.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAI9D,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE;QACX,MAAM,EAAE,OAAO,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,cAAc,EAAE,MAAM,CAAC;QACvB,eAAe,EAAE,MAAM,CAAC;QACxB,mBAAmB,EAAE,MAAM,CAAC;KAC7B,CAAC;CACH;AAED,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,WAAW,GAAG,UAAU,CAAC;AAG9D,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,4BAA4B;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf;;;;;;;;OAQG;IACH,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAAC;CACnC;AAED,qBAAa,EAAE;IACD,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,MAAM;IAE3C,yEAAyE;IACnE,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC;IAepF,mFAAmF;IAC7E,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAWxE,8DAA8D;IACxD,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAStD;;;OAGG;IACG,aAAa,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,CAAC;CAkB9E"}
|
|
@@ -52,11 +52,12 @@ export class Ai {
|
|
|
52
52
|
if (!IMAGE_ASPECTS.includes(aspect)) {
|
|
53
53
|
throw new LocalError(`aspect must be one of: ${IMAGE_ASPECTS.join(", ")}`, "generating image");
|
|
54
54
|
}
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
});
|
|
55
|
+
// requestWithResponse, not request: the settlement receipt rides the
|
|
56
|
+
// RESPONSE, and `request` discards everything but the body — which is
|
|
57
|
+
// exactly how a caller could buy an image with no way to learn which
|
|
58
|
+
// network the money moved on.
|
|
59
|
+
const res = await this.client.requestWithResponse("/generate-image/v1", { method: "POST", body: { prompt: opts.prompt, aspect }, context: "generating image" });
|
|
60
|
+
return { ...res.body, payment: res.settlement ?? null };
|
|
60
61
|
}
|
|
61
62
|
}
|
|
62
63
|
//# sourceMappingURL=ai.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai.js","sourceRoot":"","sources":["../../src/namespaces/ai.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAgCtE,MAAM,aAAa,GAA2B,CAAC,QAAQ,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"ai.js","sourceRoot":"","sources":["../../src/namespaces/ai.ts"],"names":[],"mappings":"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"}
|