@intent-engine/cli 0.1.27 → 0.1.29

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 (69) hide show
  1. package/dist/src/agent/mandate-revoke.js +3 -2
  2. package/dist/src/agent/mandate-revoke.js.map +1 -1
  3. package/dist/src/agent/mcp.js +1 -0
  4. package/dist/src/agent/mcp.js.map +1 -1
  5. package/dist/src/agent/problems.d.ts +1 -0
  6. package/dist/src/agent/problems.js +2 -1
  7. package/dist/src/agent/problems.js.map +1 -1
  8. package/dist/src/agent/profile.d.ts +4 -0
  9. package/dist/src/agent/profile.js +129 -0
  10. package/dist/src/agent/profile.js.map +1 -0
  11. package/dist/src/agent/registry.js +4 -0
  12. package/dist/src/agent/registry.js.map +1 -1
  13. package/dist/src/agent/settle.js +3 -2
  14. package/dist/src/agent/settle.js.map +1 -1
  15. package/dist/src/agent/wallet/attest.js +2 -2
  16. package/dist/src/agent/wallet/attest.js.map +1 -1
  17. package/dist/src/agent/wallet/committee.js +3 -3
  18. package/dist/src/agent/wallet/committee.js.map +1 -1
  19. package/dist/src/agent/wallet/guard.d.ts +7 -3
  20. package/dist/src/agent/wallet/guard.js +22 -5
  21. package/dist/src/agent/wallet/guard.js.map +1 -1
  22. package/dist/src/agent/wallet/split.js +2 -2
  23. package/dist/src/agent/wallet/split.js.map +1 -1
  24. package/dist/src/agent/wallet.js +4 -0
  25. package/dist/src/agent/wallet.js.map +1 -1
  26. package/dist/src/agent/work-claims.d.ts +3 -0
  27. package/dist/src/agent/work-claims.js +145 -0
  28. package/dist/src/agent/work-claims.js.map +1 -0
  29. package/dist/src/arg-options.d.ts +427 -1
  30. package/dist/src/arg-options.js +23 -1
  31. package/dist/src/arg-options.js.map +1 -1
  32. package/dist/src/arg-usage.d.ts +2 -2
  33. package/dist/src/arg-usage.js +4 -2
  34. package/dist/src/arg-usage.js.map +1 -1
  35. package/dist/src/args.d.ts +1 -6
  36. package/dist/src/args.js +15 -77
  37. package/dist/src/args.js.map +1 -1
  38. package/dist/src/artifact.d.ts +7 -0
  39. package/dist/src/artifact.js +34 -7
  40. package/dist/src/artifact.js.map +1 -1
  41. package/dist/src/claim-commands.d.ts +13 -0
  42. package/dist/src/claim-commands.js +175 -0
  43. package/dist/src/claim-commands.js.map +1 -0
  44. package/dist/src/clusters.d.ts +6 -0
  45. package/dist/src/clusters.js +15 -0
  46. package/dist/src/clusters.js.map +1 -0
  47. package/dist/src/command-types.d.ts +42 -3
  48. package/dist/src/commands.js +14 -2
  49. package/dist/src/commands.js.map +1 -1
  50. package/dist/src/flows.d.ts +2 -2
  51. package/dist/src/flows.js +6 -2
  52. package/dist/src/flows.js.map +1 -1
  53. package/dist/src/job-args.d.ts +4 -0
  54. package/dist/src/job-args.js +67 -0
  55. package/dist/src/job-args.js.map +1 -0
  56. package/dist/src/job-commands.js +3 -1
  57. package/dist/src/job-commands.js.map +1 -1
  58. package/dist/src/judge.d.ts +3 -1
  59. package/dist/src/judge.js +7 -1
  60. package/dist/src/judge.js.map +1 -1
  61. package/dist/src/release-simulation.d.ts +18 -0
  62. package/dist/src/release-simulation.js +45 -0
  63. package/dist/src/release-simulation.js.map +1 -0
  64. package/dist/src/trust-args.d.ts +7 -1
  65. package/dist/src/trust-args.js +103 -2
  66. package/dist/src/trust-args.js.map +1 -1
  67. package/dist/src/version.d.ts +1 -1
  68. package/dist/src/version.js +1 -1
  69. package/package.json +4 -4
package/dist/src/args.js CHANGED
@@ -1,15 +1,15 @@
1
1
  import { parseArgs } from "node:util";
2
2
  import { AUTO_PRICE_CAP } from "./compute.js";
3
3
  import { MAX_SUBMIT_WITHIN } from "./agent/signed.js";
4
- import { DEVNET_URL } from "./tokens.js";
5
- import { ACCEPTS, OPTIONS } from "./arg-options.js";
6
- import { addressList, amountOf, https, key, memoUrlOf, mintList, named, noRepeats, noSub, onlyAccepted, optionalField, outputOf, parseAddress, parseBounded, parseFeeBps, parseI64, parseKindFees, parseKinds, parseLimit, parseMaxRent, parsePause, parsePriority, parseSolCost, required, sha256Of, u64, unitsOf, UsageError, } from "./arg-values.js";
7
- import { agentSpec, authorityOf, configChange, JUDGE_TIMEOUT, market, MAX_JUDGE_TIMEOUT, maxPagesOf, profitFloors, relaySpec, releaseOption, runOf, solveFeeAboveCap, treasury, walletLimits, } from "./command-builders.js";
4
+ import { CLUSTERS, clusterUrl, DEFAULT_URL, ENV_KEYPAIR, ENV_URL, WALLET_NOT_MAINNET } from "./clusters.js";
5
+ import { ACCEPTS } from "./arg-options.js";
6
+ import { addressList, amountOf, https, key, mintList, named, noRepeats, noSub, onlyAccepted, optionalField, outputOf, parseAddress, parseBounded, parseFeeBps, parseI64, parseKindFees, parseKinds, parseLimit, parseMaxRent, parsePause, parsePriority, parseSolCost, required, u64, unitsOf, UsageError, } from "./arg-values.js";
7
+ import { agentSpec, authorityOf, configChange, market, maxPagesOf, profitFloors, relaySpec, solveFeeAboveCap, treasury, walletLimits, } from "./command-builders.js";
8
8
  import { createTerms, mandate, terms } from "./order-builders.js";
9
9
  import { USAGE } from "./arg-usage.js";
10
- import { sandboxOf } from "./sandbox.js";
11
- import { committeeOf, feedbackOf, reputationOf } from "./trust-args.js";
10
+ import { optionsFor, trustOf } from "./trust-args.js";
12
11
  import { monitorOf } from "./monitor-args.js";
12
+ import { jobArgsOf } from "./job-args.js";
13
13
  import { DEFAULT_MAX_RENT, DEFAULT_MAX_SOL_COST } from "@intent-engine/solver";
14
14
  import { MIN_CAP_WINDOW_SECS } from "@intent-engine/core";
15
15
  export { ACCEPTS, GLOBAL_OPTIONS, SUB_ACCEPTS, TOKEN_SIDES } from "./arg-options.js";
@@ -17,28 +17,16 @@ export { COMMANDS, SHAPES, USAGE, usageOf } from "./arg-usage.js";
17
17
  export { MAX_EVENT_LIMIT, MAX_RENT_FORMAT, MAX_SOL_COST_FORMAT, outputOf, parseFeeBps, parseI64, parseKinds, parseLimit, parseMaxRent, parsePause, parsePriority, parseSolCost, parseU64, SHA256_NEEDED, UsageError, } from "./arg-values.js";
18
18
  export { expiry, MANDATE_USE_KINDS, needsSpecHash, order, SPEC_HASH_FORMAT } from "./order-builders.js";
19
19
  export { AGENT_DEFAULT_HOURLY_LAMPORTS, AGENT_NEEDS_OWNERS, ISSUE_ALONE, ISSUE_FORMAT, JUDGE_TIMEOUT, MAX_DELIVERY_PAGES, MAX_JUDGE_TIMEOUT, ONE_MARKET, RELAY_DEFAULT_HOURLY_LAMPORTS, RELAY_DEFAULT_TTL, RELAY_MAX_TTL, RELAY_NEEDS_FEES, RELEASE_NEEDED, RUN_NEEDED, solveFeeAboveCap, TREASURY_CREATE_NEEDS_MINTS, WALLET_LIMITS_NEED_WALLET, zeroProfit, } from "./command-builders.js";
20
- export const DEFAULT_URL = "http://127.0.0.1:8899";
21
- export const CLUSTERS = {
22
- localnet: DEFAULT_URL,
23
- devnet: DEVNET_URL,
24
- testnet: "https://api.testnet.solana.com",
25
- "mainnet-beta": "https://api.mainnet-beta.solana.com",
26
- };
27
- export const ENV_URL = "INTENT_ENGINE_URL";
28
- export const ENV_KEYPAIR = "INTENT_ENGINE_KEYPAIR";
20
+ export { CLUSTERS, clusterUrl, DEFAULT_URL, ENV_KEYPAIR, ENV_URL, WALLET_NOT_MAINNET } from "./clusters.js";
29
21
  const SETUP_CLUSTER = "devnet";
30
- export const WALLET_NOT_MAINNET = "mcp --wallet keeps its key in a file on this machine, so it serves devnet, testnet and localnet only";
31
22
  const BALANCE_OF_ONE = "balance takes --keypair or --owner, not both";
32
- export function clusterUrl(text) {
33
- return CLUSTERS[text] ?? text;
34
- }
35
23
  export const MAX_FOLLOW_INTERVAL = 3_600;
36
24
  export const WATCH_INTERVAL = 5;
37
25
  export function parse(argv, env = {}) {
38
26
  noRepeats(argv);
39
27
  let parsed;
40
28
  try {
41
- parsed = parseArgs({ args: [...argv], options: OPTIONS, allowPositionals: true, strict: true });
29
+ parsed = parseArgs({ args: [...argv], options: optionsFor(argv), allowPositionals: true, strict: true });
42
30
  }
43
31
  catch (error) {
44
32
  throw new UsageError(error instanceof Error ? error.message : String(error));
@@ -275,63 +263,13 @@ export function parse(argv, env = {}) {
275
263
  noSub(sub);
276
264
  return { name: "jobs", ...remote, attestor: values.attestor === undefined ? undefined : key(values, "attestor") };
277
265
  case "deliver":
278
- noSub(sub);
279
- return {
280
- name: "deliver",
281
- ...remote,
282
- keypair: required(values, "keypair"),
283
- yes: values.yes === true,
284
- intent: key(values, "intent"),
285
- sha256: sha256Of(required(values, "sha256")),
286
- workUrl: memoUrlOf(required(values, "work-url"), "work-url"),
287
- };
288
- case "deliveries":
289
- noSub(sub);
290
- return { name: "deliveries", ...remote, attestor: key(values, "attestor"), intent: key(values, "intent"), maxPages: maxPagesOf(values) };
291
266
  case "receipt":
292
- noSub(sub);
293
- return {
294
- name: "receipt",
295
- ...remote,
296
- owner: key(values, "owner"),
297
- nonce: u64(values, "nonce"),
298
- sha256: values.sha256 === undefined ? undefined : sha256Of(values.sha256),
299
- ...releaseOption(values),
300
- };
301
267
  case "record-delivery":
268
+ case "judge":
269
+ return jobArgsOf(verb, sub, remote, values);
270
+ case "deliveries":
302
271
  noSub(sub);
303
- return {
304
- name: "record-delivery",
305
- ...remote,
306
- keypair: required(values, "keypair"),
307
- yes: values.yes === true,
308
- owner: key(values, "owner"),
309
- nonce: u64(values, "nonce"),
310
- sha256: sha256Of(required(values, "sha256")),
311
- ...releaseOption(values),
312
- };
313
- case "judge": {
314
- noSub(sub);
315
- const sandbox = sandboxOf(values);
316
- return {
317
- name: "judge",
318
- ...remote,
319
- keypair: required(values, "keypair"),
320
- yes: values.yes === true,
321
- owner: key(values, "owner"),
322
- nonce: u64(values, "nonce"),
323
- spec: required(values, "spec"),
324
- artifact: required(values, "artifact"),
325
- run: sandbox.kind === "viper" ? undefined : runOf(required(values, "run")),
326
- payTo: values["pay-to"] === undefined ? undefined : key(values, "pay-to"),
327
- result: values.result === undefined ? undefined : u64(values, "result"),
328
- timeout: parseBounded(values.timeout ?? String(JUDGE_TIMEOUT), "timeout", MAX_JUDGE_TIMEOUT, 1),
329
- verdict: values.verdict,
330
- maxPages: maxPagesOf(values),
331
- check: values.check,
332
- sandbox,
333
- };
334
- }
272
+ return { name: "deliveries", ...remote, attestor: key(values, "attestor"), intent: key(values, "intent"), maxPages: maxPagesOf(values) };
335
273
  case "solver-table":
336
274
  noSub(sub);
337
275
  return { name: "solver-table", ...remote, solver: key(values, "solver"), mints: mintList(required(values, "mints")) };
@@ -371,11 +309,11 @@ export function parse(argv, env = {}) {
371
309
  case "mandate":
372
310
  return mandate(sub, third, remote, values);
373
311
  case "committee":
374
- return committeeOf(sub, remote, values);
375
312
  case "reputation":
376
- return reputationOf(sub, remote, values);
377
313
  case "feedback":
378
- return feedbackOf(sub, remote, values);
314
+ case "claims":
315
+ case "profile":
316
+ return trustOf(verb, sub, remote, values);
379
317
  case "approve":
380
318
  case "revoke-approval":
381
319
  noSub(sub);
@@ -1 +1 @@
1
- {"version":3,"file":"args.js","sourceRoot":"","sources":["../../src/args.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"args.js","sourceRoot":"","sources":["../../src/args.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,17 @@
1
1
  import { type ManifestEntry } from "@intent-engine/core";
2
+ import { UsageError } from "./arg-values.js";
2
3
  export declare const SKIPPED: Set<string>;
3
4
  export declare const SPEC_COPY = "SPEC.md";
4
5
  export declare const CLEANUP_RETRIES = 5;
5
6
  type CopiedEntry = ManifestEntry & {
6
7
  executable: number;
7
8
  };
9
+ export declare const MAX_ARTIFACT_BYTES = 67108864;
10
+ export declare const MAX_ARTIFACT_FILES = 10000;
11
+ export declare const artifactTooLarge: (path: string, over: string) => string;
12
+ export declare class ArtifactTooLarge extends UsageError {
13
+ constructor(path: string, over: string);
14
+ }
8
15
  export type Artifact = {
9
16
  sha256: string;
10
17
  entries: CopiedEntry[];
@@ -3,6 +3,7 @@ import { chmod, mkdir, mkdtemp, open, readdir, rm, stat, writeFile } from "node:
3
3
  import { tmpdir } from "node:os";
4
4
  import { basename, dirname, join } from "node:path";
5
5
  import { manifestSha256 } from "@intent-engine/core";
6
+ import { UsageError } from "./arg-values.js";
6
7
  import { JudgeRefused } from "./judge-errors.js";
7
8
  export const SKIPPED = new Set([".git", "node_modules", "target"]);
8
9
  export const SPEC_COPY = "SPEC.md";
@@ -18,34 +19,60 @@ async function readEntry(path, full) {
18
19
  await handle.close();
19
20
  }
20
21
  }
21
- async function filesUnder(root, prefix) {
22
- const entries = [];
23
- for (const entry of await readdir(root, { withFileTypes: true })) {
22
+ export const MAX_ARTIFACT_BYTES = 67108864;
23
+ export const MAX_ARTIFACT_FILES = 10_000;
24
+ export const artifactTooLarge = (path, over) => `${path} ${over}, over the artifact limit of ${MAX_ARTIFACT_BYTES} bytes and ${MAX_ARTIFACT_FILES} files; nothing was run or paid`;
25
+ export class ArtifactTooLarge extends UsageError {
26
+ constructor(path, over) {
27
+ super(artifactTooLarge(path, over));
28
+ this.name = "ArtifactTooLarge";
29
+ }
30
+ }
31
+ async function walk(at, prefix, into) {
32
+ for (const entry of await readdir(at, { withFileTypes: true })) {
24
33
  if (SKIPPED.has(entry.name)) {
25
34
  continue;
26
35
  }
27
36
  const path = prefix === "" ? entry.name : `${prefix}/${entry.name}`;
28
- const full = join(root, entry.name);
37
+ const full = join(at, entry.name);
29
38
  if (entry.isDirectory()) {
30
- entries.push(...(await filesUnder(full, path)));
39
+ await walk(full, path, into);
31
40
  }
32
41
  else if (entry.isFile()) {
33
- entries.push(await readEntry(path, full));
42
+ into.files.push({ path, full });
43
+ if (into.files.length > MAX_ARTIFACT_FILES) {
44
+ throw new ArtifactTooLarge(into.root, `holds more than ${MAX_ARTIFACT_FILES} files`);
45
+ }
46
+ into.bytes += (await stat(full)).size;
47
+ if (into.bytes > MAX_ARTIFACT_BYTES) {
48
+ throw new ArtifactTooLarge(into.root, `holds more than ${MAX_ARTIFACT_BYTES} bytes`);
49
+ }
34
50
  }
35
51
  else {
36
52
  throw new JudgeRefused(`the artifact holds ${path}, which is neither a regular file nor a directory; the judge hashes only those`);
37
53
  }
38
54
  }
55
+ }
56
+ async function filesUnder(root) {
57
+ const found = { root, files: [], bytes: 0 };
58
+ await walk(root, "", found);
59
+ const entries = [];
60
+ for (const { path, full } of found.files) {
61
+ entries.push(await readEntry(path, full));
62
+ }
39
63
  return entries;
40
64
  }
41
65
  export async function readArtifact(path) {
42
66
  const found = await stat(path);
43
67
  if (found.isFile()) {
68
+ if (found.size > MAX_ARTIFACT_BYTES) {
69
+ throw new ArtifactTooLarge(path, `is larger than ${MAX_ARTIFACT_BYTES} bytes`);
70
+ }
44
71
  const entry = await readEntry(basename(path), path);
45
72
  return { sha256: createHash("sha256").update(entry.bytes).digest("hex"), entries: [entry], single: true };
46
73
  }
47
74
  if (found.isDirectory()) {
48
- const entries = await filesUnder(path, "");
75
+ const entries = await filesUnder(path);
49
76
  return { sha256: await manifestSha256(entries), entries, single: false };
50
77
  }
51
78
  throw new JudgeRefused(`--artifact ${path} is neither a regular file nor a directory`);
@@ -1 +1 @@
1
- {"version":3,"file":"artifact.js","sourceRoot":"","sources":["../../src/artifact.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"artifact.js","sourceRoot":"","sources":["../../src/artifact.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import type { Address } from "@solana/kit";
2
+ import { type Transport } from "@intent-engine/client";
3
+ import type { Command } from "./command-types.js";
4
+ import type { Runtime } from "./runtime.js";
5
+ type ClaimCommand = Extract<Command, {
6
+ name: "claims-show" | "claims-open" | "claims-take" | "claims-drop" | "claims-settle" | "profile-show" | "profile-set" | "profile-close";
7
+ }>;
8
+ export declare const noClaims: (intent: Address) => string;
9
+ export declare const heldBy: (intent: Address, worker: Address, secondsLeft: bigint) => string;
10
+ export declare const coolingDown: (intent: Address, worker: Address, until: bigint) => string;
11
+ export declare const NO_PROFILE = "has published no profile";
12
+ export declare function claimsCommand(command: ClaimCommand, runtime: Runtime, transport: Transport): Promise<object>;
13
+ export {};
@@ -0,0 +1,175 @@
1
+ import { buildClaimJob, buildCloseProfile, buildCreateProfile, buildDropClaim, buildOpenClaims, buildSettleClaims, buildUpdateProfile, claimBoardAddress, claimUntil, findIntentPda, formatAmount, IntentCoreError, IntentStatus, profileAddress, stakeReceiverOnSettle, } from "@intent-engine/core";
2
+ import { createClient } from "@intent-engine/client";
3
+ import { previewed } from "./admin-commands.js";
4
+ import { FlowRefused } from "./flows.js";
5
+ const NONE = "11111111111111111111111111111111";
6
+ const sol = (lamports) => `${formatAmount(lamports, 9)} SOL`;
7
+ export const noClaims = (intent) => `escrow ${intent} takes no claims; its owner opens them with claims open`;
8
+ export const heldBy = (intent, worker, secondsLeft) => `${worker} holds the claim on escrow ${intent} for ${secondsLeft} more seconds; nothing was sent`;
9
+ export const coolingDown = (intent, worker, until) => `${worker} dropped its claim on escrow ${intent} and may claim it again from ${until}, when that claim would have ended; nothing was sent`;
10
+ export const NO_PROFILE = "has published no profile";
11
+ const claimsShown = (intent, view) => ({
12
+ intent,
13
+ board: view.board,
14
+ state: view.state,
15
+ worker: view.worker,
16
+ until: view.until,
17
+ seconds_left: view.secondsLeft,
18
+ stake: view.stake,
19
+ max_secs: view.maxSecs,
20
+ owner: view.owner,
21
+ cooldown: view.cooldown,
22
+ });
23
+ async function claimsOf(client, owner, nonce) {
24
+ const [intent] = await findIntentPda({ owner, nonce });
25
+ const view = await client.claims(owner, nonce);
26
+ if (view === null) {
27
+ throw new FlowRefused(noClaims(intent));
28
+ }
29
+ return { intent, view };
30
+ }
31
+ async function escrowOpen(client, owner, nonce, now) {
32
+ const found = await client.intent(owner, nonce);
33
+ return found !== null && found.intent.status === IntentStatus.Open && now < found.intent.expiresAt ? found.intent.expiresAt : null;
34
+ }
35
+ async function claimCommand(command, runtime, transport, client) {
36
+ if (command.name === "claims-show") {
37
+ const { intent, view } = await claimsOf(client, command.owner, command.nonce);
38
+ return claimsShown(intent, view);
39
+ }
40
+ const signer = await runtime.loadSigner(command.keypair);
41
+ if (command.name === "claims-open") {
42
+ const [intent] = await findIntentPda({ owner: signer.address, nonce: command.nonce });
43
+ const board = await claimBoardAddress(intent);
44
+ if ((await client.claims(signer.address, command.nonce)) !== null) {
45
+ throw new FlowRefused(`escrow ${intent} already takes claims on board ${board}`);
46
+ }
47
+ const instruction = await buildOpenClaims({ owner: signer, intent, maxSecs: command.maxSecs, stake: command.stake });
48
+ const summary = [
49
+ `Opens: claims on escrow ${intent}; a worker holds the job for up to ${command.maxSecs} seconds by staking ${sol(command.stake)}`,
50
+ `Pays rent: ${signer.address}, for the claims board ${board}`,
51
+ ];
52
+ return previewed(transport, [instruction], signer, { intent, board, summary }, command.yes);
53
+ }
54
+ const { intent, view } = await claimsOf(client, command.owner, command.nonce);
55
+ const shown = claimsShown(intent, view);
56
+ switch (command.name) {
57
+ case "claims-take":
58
+ return takeClaim(command, signer, transport, client, intent, view, shown);
59
+ case "claims-drop": {
60
+ if (view.state !== "held" || view.worker !== signer.address) {
61
+ throw new FlowRefused(`${signer.address} holds no claim on escrow ${intent}; nothing was sent`);
62
+ }
63
+ const summary = [`Drops: this worker's claim on escrow ${intent}`, `Returns: its stake of ${sol(view.stake)} to ${signer.address}`];
64
+ return previewed(transport, [await buildDropClaim({ worker: signer, intent })], signer, { ...shown, summary }, command.yes);
65
+ }
66
+ case "claims-settle":
67
+ return settleClaims(command, signer, transport, client, intent, view, shown);
68
+ }
69
+ }
70
+ async function takeClaim(command, worker, transport, client, intent, view, shown) {
71
+ if (view.state === "held" && view.worker !== null) {
72
+ throw new FlowRefused(heldBy(intent, view.worker, view.secondsLeft));
73
+ }
74
+ if (view.cooldown !== null && view.cooldown.worker === worker.address) {
75
+ throw new FlowRefused(coolingDown(intent, worker.address, view.cooldown.until));
76
+ }
77
+ if (command.secs > view.maxSecs) {
78
+ throw new FlowRefused(`escrow ${intent} lets a worker hold its claim for at most ${view.maxSecs} seconds; pass a lower --secs`);
79
+ }
80
+ const now = await client.chainTime();
81
+ const expiresAt = await escrowOpen(client, command.owner, command.nonce, now);
82
+ if (expiresAt === null) {
83
+ throw new FlowRefused(`escrow ${intent} is no longer open, so its job cannot be claimed`);
84
+ }
85
+ let until;
86
+ try {
87
+ until = claimUntil(view.maxSecs, now, command.secs, expiresAt);
88
+ }
89
+ catch (error) {
90
+ throw error instanceof IntentCoreError ? new FlowRefused(`a claim of ${command.secs} seconds would outlive escrow ${intent}, which expires at ${expiresAt}`) : error;
91
+ }
92
+ const summary = [
93
+ `Claims: escrow ${intent} until ${until}, ${command.secs} seconds; until then only ${worker.address} can be paid`,
94
+ `Stakes: ${sol(view.stake)}, returned when a release pays this worker or it drops the claim, and lost to the owner if the claim lapses first`,
95
+ ...(view.state === "lapsed" ? [`Ends: the lapsed claim of ${view.worker}, whose stake goes to the owner ${view.owner}`] : []),
96
+ ];
97
+ const instruction = await buildClaimJob({ worker, intent, owner: view.owner, secs: command.secs });
98
+ return previewed(transport, [instruction], worker, { ...shown, summary }, command.yes);
99
+ }
100
+ async function settleClaims(command, payer, transport, client, intent, view, shown) {
101
+ const now = await client.chainTime();
102
+ const open = (await escrowOpen(client, command.owner, command.nonce, now)) !== null;
103
+ const board = { owner: view.owner, worker: view.worker ?? NONE, until: view.until, held: view.stake };
104
+ let receiver;
105
+ try {
106
+ receiver = stakeReceiverOnSettle(board, now, open);
107
+ }
108
+ catch (error) {
109
+ if (error instanceof IntentCoreError && view.worker !== null) {
110
+ throw new FlowRefused(`${heldBy(intent, view.worker, view.secondsLeft)}; settle once it lapses or the escrow closes`);
111
+ }
112
+ throw error;
113
+ }
114
+ if (open && receiver === null) {
115
+ throw new FlowRefused(`escrow ${intent} is open and nobody holds its claim, so there is nothing to settle; nothing was sent`);
116
+ }
117
+ const summary = [
118
+ receiver === null ? "Moves: no stake; nobody holds the claim" : `Moves: the stake of ${sol(view.stake)} to ${receiver}`,
119
+ ...(open ? [] : [`Closes: the claims board ${view.board}, returning its rent to the owner ${view.owner}`]),
120
+ `Pays the fee: ${payer.address}`,
121
+ ];
122
+ const instruction = await buildSettleClaims({ intent, owner: view.owner, ...(view.worker === null ? {} : { worker: view.worker }) });
123
+ return previewed(transport, [instruction], payer, { ...shown, summary }, command.yes);
124
+ }
125
+ async function profileCommand(command, runtime, transport, client) {
126
+ if (command.name === "profile-show") {
127
+ const found = await client.profile(command.wallet);
128
+ if (found === null) {
129
+ throw new FlowRefused(`${command.wallet} ${NO_PROFILE}`);
130
+ }
131
+ return {
132
+ wallet: found.wallet,
133
+ profile: await profileAddress(found.wallet),
134
+ skills: found.skills,
135
+ endpoint: found.endpoint,
136
+ doc_url: found.docUrl,
137
+ doc_sha256: found.docSha256,
138
+ updated_at: found.updatedAt,
139
+ };
140
+ }
141
+ const wallet = await runtime.loadSigner(command.keypair);
142
+ const profile = await profileAddress(wallet.address);
143
+ const existing = await client.profile(wallet.address);
144
+ if (command.name === "profile-close") {
145
+ if (existing === null) {
146
+ throw new FlowRefused(`${wallet.address} ${NO_PROFILE}; nothing was sent`);
147
+ }
148
+ const summary = [`Closes: the profile of ${wallet.address} and returns its rent to it`];
149
+ return previewed(transport, [await buildCloseProfile({ wallet })], wallet, { wallet: wallet.address, profile, summary }, command.yes);
150
+ }
151
+ const input = { wallet, ...command.profile };
152
+ const instruction = existing === null ? await buildCreateProfile(input) : await buildUpdateProfile(input);
153
+ const { docUrl, docSha256 } = command.profile;
154
+ const summary = [
155
+ `${existing === null ? "Creates" : "Updates"}: the profile of ${wallet.address} at ${profile}`,
156
+ `Skills: ${command.profile.skills.join(", ")}`,
157
+ `Endpoint: ${command.profile.endpoint}`,
158
+ docUrl === undefined ? "Document: none" : `Document: ${docUrl} with sha256 ${docSha256}`,
159
+ ...(existing === null ? [`Pays rent: ${wallet.address}`] : []),
160
+ ];
161
+ const shown = { wallet: wallet.address, profile, action: existing === null ? "create" : "update", summary };
162
+ return previewed(transport, [instruction], wallet, shown, command.yes);
163
+ }
164
+ export async function claimsCommand(command, runtime, transport) {
165
+ const client = createClient({ url: command.url, transport });
166
+ switch (command.name) {
167
+ case "profile-show":
168
+ case "profile-set":
169
+ case "profile-close":
170
+ return profileCommand(command, runtime, transport, client);
171
+ default:
172
+ return claimCommand(command, runtime, transport, client);
173
+ }
174
+ }
175
+ //# sourceMappingURL=claim-commands.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claim-commands.js","sourceRoot":"","sources":["../../src/claim-commands.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export declare const DEFAULT_URL = "http://127.0.0.1:8899";
2
+ export declare const CLUSTERS: Readonly<Record<string, string>>;
3
+ export declare const ENV_URL = "INTENT_ENGINE_URL";
4
+ export declare const ENV_KEYPAIR = "INTENT_ENGINE_KEYPAIR";
5
+ export declare const WALLET_NOT_MAINNET = "mcp --wallet keeps its key in a file on this machine, so it serves devnet, testnet and localnet only";
6
+ export declare function clusterUrl(text: string): string;
@@ -0,0 +1,15 @@
1
+ import { DEVNET_URL } from "./tokens.js";
2
+ export const DEFAULT_URL = "http://127.0.0.1:8899";
3
+ export const CLUSTERS = {
4
+ localnet: DEFAULT_URL,
5
+ devnet: DEVNET_URL,
6
+ testnet: "https://api.testnet.solana.com",
7
+ "mainnet-beta": "https://api.mainnet-beta.solana.com",
8
+ };
9
+ export const ENV_URL = "INTENT_ENGINE_URL";
10
+ export const ENV_KEYPAIR = "INTENT_ENGINE_KEYPAIR";
11
+ export const WALLET_NOT_MAINNET = "mcp --wallet keeps its key in a file on this machine, so it serves devnet, testnet and localnet only";
12
+ export function clusterUrl(text) {
13
+ return CLUSTERS[text] ?? text;
14
+ }
15
+ //# sourceMappingURL=clusters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clusters.js","sourceRoot":"","sources":["../../src/clusters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,CAAC,MAAM,WAAW,GAAG,uBAAuB,CAAC;AAEnD,MAAM,CAAC,MAAM,QAAQ,GAAqC;IACxD,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,UAAU;IAClB,OAAO,EAAE,gCAAgC;IACzC,cAAc,EAAE,qCAAqC;CACtD,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,mBAAmB,CAAC;AAC3C,MAAM,CAAC,MAAM,WAAW,GAAG,uBAAuB,CAAC;AAEnD,MAAM,CAAC,MAAM,kBAAkB,GAAG,sGAAsG,CAAC;AAEzI,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;AAChC,CAAC"}