@telaro/sdk 0.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.
Files changed (76) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/QUICKSTART.md +216 -0
  3. package/README.md +129 -0
  4. package/dist/accounts.d.ts +51 -0
  5. package/dist/accounts.d.ts.map +1 -0
  6. package/dist/accounts.js +169 -0
  7. package/dist/accounts.js.map +1 -0
  8. package/dist/api.d.ts +177 -0
  9. package/dist/api.d.ts.map +1 -0
  10. package/dist/api.js +158 -0
  11. package/dist/api.js.map +1 -0
  12. package/dist/borsh.d.ts +33 -0
  13. package/dist/borsh.d.ts.map +1 -0
  14. package/dist/borsh.js +100 -0
  15. package/dist/borsh.js.map +1 -0
  16. package/dist/client.d.ts +70 -0
  17. package/dist/client.d.ts.map +1 -0
  18. package/dist/client.js +164 -0
  19. package/dist/client.js.map +1 -0
  20. package/dist/constants.d.ts +46 -0
  21. package/dist/constants.d.ts.map +1 -0
  22. package/dist/constants.js +47 -0
  23. package/dist/constants.js.map +1 -0
  24. package/dist/credit.d.ts +61 -0
  25. package/dist/credit.d.ts.map +1 -0
  26. package/dist/credit.js +133 -0
  27. package/dist/credit.js.map +1 -0
  28. package/dist/decimal.d.ts +36 -0
  29. package/dist/decimal.d.ts.map +1 -0
  30. package/dist/decimal.js +87 -0
  31. package/dist/decimal.js.map +1 -0
  32. package/dist/discriminators.d.ts +86 -0
  33. package/dist/discriminators.d.ts.map +1 -0
  34. package/dist/discriminators.js +100 -0
  35. package/dist/discriminators.js.map +1 -0
  36. package/dist/events.d.ts +268 -0
  37. package/dist/events.d.ts.map +1 -0
  38. package/dist/events.js +223 -0
  39. package/dist/events.js.map +1 -0
  40. package/dist/format.d.ts +10 -0
  41. package/dist/format.d.ts.map +1 -0
  42. package/dist/format.js +39 -0
  43. package/dist/format.js.map +1 -0
  44. package/dist/hash.d.ts +9 -0
  45. package/dist/hash.d.ts.map +1 -0
  46. package/dist/hash.js +33 -0
  47. package/dist/hash.js.map +1 -0
  48. package/dist/index.d.ts +17 -0
  49. package/dist/index.d.ts.map +1 -0
  50. package/dist/index.js +17 -0
  51. package/dist/index.js.map +1 -0
  52. package/dist/instructions.d.ts +368 -0
  53. package/dist/instructions.d.ts.map +1 -0
  54. package/dist/instructions.js +841 -0
  55. package/dist/instructions.js.map +1 -0
  56. package/dist/metaplex.d.ts +64 -0
  57. package/dist/metaplex.d.ts.map +1 -0
  58. package/dist/metaplex.js +123 -0
  59. package/dist/metaplex.js.map +1 -0
  60. package/dist/pda.d.ts +35 -0
  61. package/dist/pda.d.ts.map +1 -0
  62. package/dist/pda.js +84 -0
  63. package/dist/pda.js.map +1 -0
  64. package/dist/realtime.d.ts +67 -0
  65. package/dist/realtime.d.ts.map +1 -0
  66. package/dist/realtime.js +112 -0
  67. package/dist/realtime.js.map +1 -0
  68. package/dist/score.d.ts +51 -0
  69. package/dist/score.d.ts.map +1 -0
  70. package/dist/score.js +63 -0
  71. package/dist/score.js.map +1 -0
  72. package/dist/types.d.ts +139 -0
  73. package/dist/types.d.ts.map +1 -0
  74. package/dist/types.js +51 -0
  75. package/dist/types.js.map +1 -0
  76. package/package.json +88 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instructions.js","sourceRoot":"","sources":["../src/instructions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,64 @@
1
+ /**
2
+ * Metaplex Core integration — soulbound AgentID NFT.
3
+ *
4
+ * Why client-side mint (vs CPI from our program):
5
+ * - Our `init_agent` already sits at ~3.8KB stack frame; adding mpl-core
6
+ * CPI accounts would push it back over the 4KB BPF limit.
7
+ * - The asset belongs to the user, not our program. They pay for it.
8
+ * - Phantom / Tensor / Magic Eden auto-render the asset because the URI
9
+ * points at our dynamic Trust Card PNG (`/api/card/{pubkey}.png`).
10
+ *
11
+ * Plugin: PermanentFreezeDelegate(frozen=true) → soulbound. The asset cannot
12
+ * be transferred away from the controller's wallet. This makes "switching
13
+ * wallets to escape a bad reputation" mechanically impossible: the AgentID
14
+ * NFT is welded to the controller key, just like the on-chain `Agent` PDA.
15
+ */
16
+ import { Keypair, type Connection, type PublicKey } from "@solana/web3.js";
17
+ export interface MintAgentIdNftInput {
18
+ /** Connection to the cluster. */
19
+ connection: Connection;
20
+ /**
21
+ * Either a wallet adapter (browser, with `signTransaction`) or a Keypair (Node).
22
+ */
23
+ signer: Keypair | {
24
+ publicKey: PublicKey;
25
+ signTransaction: (tx: unknown) => Promise<unknown>;
26
+ signAllTransactions?: (txs: unknown[]) => Promise<unknown[]>;
27
+ signMessage?: (msg: Uint8Array) => Promise<Uint8Array>;
28
+ };
29
+ /** Display name of the agent. Max 32 chars. */
30
+ name: string;
31
+ /**
32
+ * Off-chain metadata JSON URL (Metaplex schema). Should resolve to:
33
+ * { name, description, image, attributes: [{trait_type, value}, ...] }
34
+ *
35
+ * Typically `https://telaro.xyz/api/metadata/{pubkey}` — our web
36
+ * app generates this dynamically from on-chain `Agent` state.
37
+ */
38
+ uri: string;
39
+ /**
40
+ * If true (default), add the PermanentFreezeDelegate plugin → soulbound.
41
+ * Set false for testing where you want to be able to burn the asset.
42
+ */
43
+ soulbound?: boolean;
44
+ }
45
+ export interface MintAgentIdNftResult {
46
+ /** Pubkey of the freshly minted Metaplex Core asset. */
47
+ asset: PublicKey;
48
+ /** Tx signature (base58). */
49
+ signature: string;
50
+ }
51
+ /**
52
+ * Mint a soulbound AgentID NFT for the agent associated with `signer`.
53
+ * Creates a Metaplex Core asset with `PermanentFreezeDelegate(frozen=true)`,
54
+ * making it permanently non-transferable.
55
+ *
56
+ * Call AFTER `TelaroClient.registerAgent` — the on-chain Agent must
57
+ * exist for the metadata URI to resolve to real data.
58
+ */
59
+ export declare function mintAgentIdNft(input: MintAgentIdNftInput): Promise<MintAgentIdNftResult>;
60
+ /** Helper for downstream consumers — derive the Metaplex metadata URL we serve. */
61
+ export declare function bondedAgentsMetadataUri(baseUrl: string, controller: PublicKey): string;
62
+ /** Helper — derive the Trust Card image URL (used in the metadata JSON). */
63
+ export declare function bondedAgentsImageUri(baseUrl: string, controller: PublicKey): string;
64
+ //# sourceMappingURL=metaplex.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metaplex.d.ts","sourceRoot":"","sources":["../src/metaplex.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAgBH,OAAO,EAAE,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAI3E,MAAM,WAAW,mBAAmB;IAClC,iCAAiC;IACjC,UAAU,EAAE,UAAU,CAAC;IACvB;;OAEG;IACH,MAAM,EACF,OAAO,GACP;QACE,SAAS,EAAE,SAAS,CAAC;QACrB,eAAe,EAAE,CAAC,EAAE,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;QACnD,mBAAmB,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7D,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,UAAU,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC;KACxD,CAAC;IACN,+CAA+C;IAC/C,IAAI,EAAE,MAAM,CAAC;IACb;;;;;;OAMG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,oBAAoB;IACnC,wDAAwD;IACxD,KAAK,EAAE,SAAS,CAAC;IACjB,6BAA6B;IAC7B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAClC,KAAK,EAAE,mBAAmB,GACzB,OAAO,CAAC,oBAAoB,CAAC,CAsC/B;AA0BD,mFAAmF;AACnF,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,SAAS,GACpB,MAAM,CAGR;AAED,4EAA4E;AAC5E,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,SAAS,GACpB,MAAM,CAGR"}
@@ -0,0 +1,123 @@
1
+ /**
2
+ * Metaplex Core integration — soulbound AgentID NFT.
3
+ *
4
+ * Why client-side mint (vs CPI from our program):
5
+ * - Our `init_agent` already sits at ~3.8KB stack frame; adding mpl-core
6
+ * CPI accounts would push it back over the 4KB BPF limit.
7
+ * - The asset belongs to the user, not our program. They pay for it.
8
+ * - Phantom / Tensor / Magic Eden auto-render the asset because the URI
9
+ * points at our dynamic Trust Card PNG (`/api/card/{pubkey}.png`).
10
+ *
11
+ * Plugin: PermanentFreezeDelegate(frozen=true) → soulbound. The asset cannot
12
+ * be transferred away from the controller's wallet. This makes "switching
13
+ * wallets to escape a bad reputation" mechanically impossible: the AgentID
14
+ * NFT is welded to the controller key, just like the on-chain `Agent` PDA.
15
+ */
16
+ import { createSignerFromKeypair, generateSigner, signerIdentity, } from "@metaplex-foundation/umi";
17
+ import { createUmi } from "@metaplex-foundation/umi-bundle-defaults";
18
+ import { walletAdapterIdentity } from "@metaplex-foundation/umi-signer-wallet-adapters";
19
+ import { fromWeb3JsKeypair, fromWeb3JsPublicKey, toWeb3JsPublicKey, } from "@metaplex-foundation/umi-web3js-adapters";
20
+ import { create, mplCore } from "@metaplex-foundation/mpl-core";
21
+ import { Keypair } from "@solana/web3.js";
22
+ import { findAgentPda } from "./pda.js";
23
+ /**
24
+ * Mint a soulbound AgentID NFT for the agent associated with `signer`.
25
+ * Creates a Metaplex Core asset with `PermanentFreezeDelegate(frozen=true)`,
26
+ * making it permanently non-transferable.
27
+ *
28
+ * Call AFTER `TelaroClient.registerAgent` — the on-chain Agent must
29
+ * exist for the metadata URI to resolve to real data.
30
+ */
31
+ export async function mintAgentIdNft(input) {
32
+ const umi = umiFor(input.connection, input.signer).use(mplCore());
33
+ const controllerPubkey = input.signer.publicKey;
34
+ const [agentPda] = findAgentPda(controllerPubkey);
35
+ const asset = generateSigner(umi);
36
+ const soulbound = input.soulbound !== false;
37
+ // Construct the create call. mpl-core's typed plugin union is strict;
38
+ // we build the plugins array narrowly so TS picks the right discriminant.
39
+ const builder = create(umi, {
40
+ asset,
41
+ name: input.name.slice(0, 32),
42
+ uri: input.uri,
43
+ owner: fromWeb3JsPublicKey(controllerPubkey),
44
+ plugins: soulbound
45
+ ? [
46
+ {
47
+ type: "PermanentFreezeDelegate",
48
+ frozen: true,
49
+ authority: {
50
+ type: "Address",
51
+ address: fromWeb3JsPublicKey(agentPda),
52
+ },
53
+ },
54
+ ]
55
+ : undefined,
56
+ });
57
+ const result = await builder.sendAndConfirm(umi);
58
+ // Umi returns Uint8Array signatures; encode as base58 to match Solana norms.
59
+ const sig = bs58Encode(result.signature);
60
+ return {
61
+ asset: toWeb3JsPublicKey(asset.publicKey),
62
+ signature: sig,
63
+ };
64
+ }
65
+ /* ------------------------------------------------------------------ */
66
+ /* Umi setup helpers */
67
+ /* ------------------------------------------------------------------ */
68
+ function umiFor(connection, signer) {
69
+ const umi = createUmi(connection.rpcEndpoint);
70
+ if (signer instanceof Keypair) {
71
+ // Convert web3.js Keypair → Umi Keypair → Umi Signer.
72
+ const umiKeypair = fromWeb3JsKeypair(signer);
73
+ const umiSigner = createSignerFromKeypair(umi, umiKeypair);
74
+ return umi.use(signerIdentity(umiSigner));
75
+ }
76
+ // Wallet adapter path. Cast keeps the typing loose between web3.js and umi.
77
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
78
+ return umi.use(walletAdapterIdentity(signer));
79
+ }
80
+ /* ------------------------------------------------------------------ */
81
+ /* Helpers */
82
+ /* ------------------------------------------------------------------ */
83
+ /** Helper for downstream consumers — derive the Metaplex metadata URL we serve. */
84
+ export function bondedAgentsMetadataUri(baseUrl, controller) {
85
+ const [agentPda] = findAgentPda(controller);
86
+ return `${baseUrl.replace(/\/$/, "")}/api/metadata/${agentPda.toBase58()}`;
87
+ }
88
+ /** Helper — derive the Trust Card image URL (used in the metadata JSON). */
89
+ export function bondedAgentsImageUri(baseUrl, controller) {
90
+ const [agentPda] = findAgentPda(controller);
91
+ return `${baseUrl.replace(/\/$/, "")}/api/card/${agentPda.toBase58()}.png`;
92
+ }
93
+ /* ------------------------------------------------------------------ */
94
+ /* bs58 encoding (no extra dep — small inline impl) */
95
+ /* ------------------------------------------------------------------ */
96
+ const BS58_ALPHABET = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";
97
+ function bs58Encode(bytes) {
98
+ if (bytes.length === 0)
99
+ return "";
100
+ let zeros = 0;
101
+ while (zeros < bytes.length && bytes[zeros] === 0)
102
+ zeros++;
103
+ const digits = [];
104
+ for (let i = zeros; i < bytes.length; i++) {
105
+ let carry = bytes[i];
106
+ for (let j = 0; j < digits.length; j++) {
107
+ carry += digits[j] << 8;
108
+ digits[j] = carry % 58;
109
+ carry = (carry / 58) | 0;
110
+ }
111
+ while (carry > 0) {
112
+ digits.push(carry % 58);
113
+ carry = (carry / 58) | 0;
114
+ }
115
+ }
116
+ let out = "";
117
+ for (let i = 0; i < zeros; i++)
118
+ out += "1";
119
+ for (let i = digits.length - 1; i >= 0; i--)
120
+ out += BS58_ALPHABET[digits[i]];
121
+ return out;
122
+ }
123
+ //# sourceMappingURL=metaplex.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metaplex.js","sourceRoot":"","sources":["../src/metaplex.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,uBAAuB,EACvB,cAAc,EACd,cAAc,GAEf,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,iDAAiD,CAAC;AACxF,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,OAAO,EAAmC,MAAM,iBAAiB,CAAC;AAE3E,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAwCxC;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,KAA0B;IAE1B,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;IAElE,MAAM,gBAAgB,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC;IAChD,MAAM,CAAC,QAAQ,CAAC,GAAG,YAAY,CAAC,gBAAgB,CAAC,CAAC;IAElD,MAAM,KAAK,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;IAClC,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,KAAK,KAAK,CAAC;IAE5C,sEAAsE;IACtE,0EAA0E;IAC1E,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,EAAE;QAC1B,KAAK;QACL,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;QAC7B,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,KAAK,EAAE,mBAAmB,CAAC,gBAAgB,CAAC;QAC5C,OAAO,EAAE,SAAS;YAChB,CAAC,CAAC;gBACE;oBACE,IAAI,EAAE,yBAAkC;oBACxC,MAAM,EAAE,IAAI;oBACZ,SAAS,EAAE;wBACT,IAAI,EAAE,SAAkB;wBACxB,OAAO,EAAE,mBAAmB,CAAC,QAAQ,CAAC;qBACvC;iBACF;aACF;YACH,CAAC,CAAC,SAAS;KACd,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;IACjD,6EAA6E;IAC7E,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAEzC,OAAO;QACL,KAAK,EAAE,iBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC;QACzC,SAAS,EAAE,GAAG;KACf,CAAC;AACJ,CAAC;AAED,wEAAwE;AACxE,0EAA0E;AAC1E,wEAAwE;AAExE,SAAS,MAAM,CACb,UAAsB,EACtB,MAAqC;IAErC,MAAM,GAAG,GAAG,SAAS,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAC9C,IAAI,MAAM,YAAY,OAAO,EAAE,CAAC;QAC9B,sDAAsD;QACtD,MAAM,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,SAAS,GAAG,uBAAuB,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QAC3D,OAAO,GAAG,CAAC,GAAG,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC;IAC5C,CAAC;IACD,4EAA4E;IAC5E,8DAA8D;IAC9D,OAAO,GAAG,CAAC,GAAG,CAAC,qBAAqB,CAAC,MAAa,CAAC,CAAC,CAAC;AACvD,CAAC;AAED,wEAAwE;AACxE,0EAA0E;AAC1E,wEAAwE;AAExE,mFAAmF;AACnF,MAAM,UAAU,uBAAuB,CACrC,OAAe,EACf,UAAqB;IAErB,MAAM,CAAC,QAAQ,CAAC,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;IAC5C,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,iBAAiB,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC;AAC7E,CAAC;AAED,4EAA4E;AAC5E,MAAM,UAAU,oBAAoB,CAClC,OAAe,EACf,UAAqB;IAErB,MAAM,CAAC,QAAQ,CAAC,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;IAC5C,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;AAC7E,CAAC;AAED,wEAAwE;AACxE,0EAA0E;AAC1E,wEAAwE;AAExE,MAAM,aAAa,GAAG,4DAA4D,CAAC;AAEnF,SAAS,UAAU,CAAC,KAAiB;IACnC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClC,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,OAAO,KAAK,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC;QAAE,KAAK,EAAE,CAAC;IAE3D,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,IAAI,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACrB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACvC,KAAK,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACxB,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;YACvB,KAAK,GAAG,CAAC,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC;QACD,OAAO,KAAK,GAAG,CAAC,EAAE,CAAC;YACjB,MAAM,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC;YACxB,KAAK,GAAG,CAAC,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IACD,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE;QAAE,GAAG,IAAI,GAAG,CAAC;IAC3C,KAAK,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;QAAE,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7E,OAAO,GAAG,CAAC;AACb,CAAC"}
package/dist/pda.d.ts ADDED
@@ -0,0 +1,35 @@
1
+ import { PublicKey } from "@solana/web3.js";
2
+ export declare function findAgentPda(controller: PublicKey, programId?: PublicKey): [PublicKey, number];
3
+ export declare function findActionLogPda(agent: PublicKey, programId?: PublicKey): [PublicKey, number];
4
+ export declare function findBondVaultPda(agent: PublicKey, programId?: PublicKey): [PublicKey, number];
5
+ export declare function findClaimPda(agent: PublicKey, actionHash: Uint8Array, claimer: PublicKey, programId?: PublicKey): [PublicKey, number];
6
+ export declare function findDepositVaultPda(claim: PublicKey, programId?: PublicKey): [PublicKey, number];
7
+ export declare function findTsusdcConfigPda(agent: PublicKey, programId?: PublicKey): [PublicKey, number];
8
+ export declare function findTsusdcMintPda(agent: PublicKey, programId?: PublicKey): [PublicKey, number];
9
+ export declare function findTsusdcMintAuthPda(agent: PublicKey, programId?: PublicKey): [PublicKey, number];
10
+ export declare function findPoolConfigPda(programId?: PublicKey): [PublicKey, number];
11
+ export declare function findPoolVaultPda(programId?: PublicKey): [PublicKey, number];
12
+ export declare function findPoolStusdcMintPda(programId?: PublicKey): [PublicKey, number];
13
+ export declare function findPoolMintAuthPda(programId?: PublicKey): [PublicKey, number];
14
+ export declare function findProtocolConfigPda(programId?: PublicKey): [PublicKey, number];
15
+ export declare function findCreditLinePda(agent: PublicKey, programId?: PublicKey): [PublicKey, number];
16
+ export declare const LP_KIND_MARGINFI = 0;
17
+ /** Kamino kLend (direct CPI). Devnet/stub only — kLend has a CPI whitelist
18
+ * that excludes Telaro on mainnet. Use LP_KIND_KAMINO_VAULT for mainnet. */
19
+ export declare const LP_KIND_KAMINO = 1;
20
+ /** Kamino kVault — the mainnet-viable Kamino path. Reserved for future
21
+ * implementation; CPI helpers ship in `kvault.rs`. */
22
+ export declare const LP_KIND_KAMINO_VAULT = 2;
23
+ export declare function findLpPositionPda(agent: PublicKey, lpKind?: number, programId?: PublicKey): [PublicKey, number];
24
+ export declare function findCapabilityRegistryPda(agent: PublicKey, programId?: PublicKey): [PublicKey, number];
25
+ export declare function findScoreFeedPda(agent: PublicKey, programId?: PublicKey): [PublicKey, number];
26
+ /** Capability bit ids. Mirrors `programs/telaro/src/state.rs::CAPABILITY_*`. */
27
+ export declare const CAPABILITY_SWAP = 0;
28
+ export declare const CAPABILITY_LP = 1;
29
+ export declare const CAPABILITY_LENDING = 2;
30
+ export declare const CAPABILITY_MEV = 3;
31
+ export declare const CAPABILITY_GOVERNANCE = 4;
32
+ export declare const MAX_CAPABILITY_BITS = 64;
33
+ /** Compose a bitmap from a list of capability bit ids. */
34
+ export declare function capabilitiesBitmap(bits: number[]): bigint;
35
+ //# sourceMappingURL=pda.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pda.d.ts","sourceRoot":"","sources":["../src/pda.ts"],"names":[],"mappings":"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"}
package/dist/pda.js ADDED
@@ -0,0 +1,84 @@
1
+ import { PublicKey } from "@solana/web3.js";
2
+ import { PROGRAM_ID } from "./constants.js";
3
+ export function findAgentPda(controller, programId = PROGRAM_ID) {
4
+ return PublicKey.findProgramAddressSync([Buffer.from("agent"), controller.toBuffer()], programId);
5
+ }
6
+ export function findActionLogPda(agent, programId = PROGRAM_ID) {
7
+ return PublicKey.findProgramAddressSync([Buffer.from("log"), agent.toBuffer()], programId);
8
+ }
9
+ export function findBondVaultPda(agent, programId = PROGRAM_ID) {
10
+ return PublicKey.findProgramAddressSync([Buffer.from("vault"), agent.toBuffer()], programId);
11
+ }
12
+ export function findClaimPda(agent, actionHash, claimer, programId = PROGRAM_ID) {
13
+ return PublicKey.findProgramAddressSync([Buffer.from("claim"), agent.toBuffer(), Buffer.from(actionHash), claimer.toBuffer()], programId);
14
+ }
15
+ export function findDepositVaultPda(claim, programId = PROGRAM_ID) {
16
+ return PublicKey.findProgramAddressSync([Buffer.from("deposit"), claim.toBuffer()], programId);
17
+ }
18
+ // ----- tsUSDC PDAs (per-agent receipt token) -----
19
+ export function findTsusdcConfigPda(agent, programId = PROGRAM_ID) {
20
+ return PublicKey.findProgramAddressSync([Buffer.from("tsusdc-config"), agent.toBuffer()], programId);
21
+ }
22
+ export function findTsusdcMintPda(agent, programId = PROGRAM_ID) {
23
+ return PublicKey.findProgramAddressSync([Buffer.from("tsusdc-mint"), agent.toBuffer()], programId);
24
+ }
25
+ export function findTsusdcMintAuthPda(agent, programId = PROGRAM_ID) {
26
+ return PublicKey.findProgramAddressSync([Buffer.from("tsusdc-mint-auth"), agent.toBuffer()], programId);
27
+ }
28
+ // ----- Underwriter pool PDAs -----
29
+ export function findPoolConfigPda(programId = PROGRAM_ID) {
30
+ return PublicKey.findProgramAddressSync([Buffer.from("pool-config")], programId);
31
+ }
32
+ export function findPoolVaultPda(programId = PROGRAM_ID) {
33
+ return PublicKey.findProgramAddressSync([Buffer.from("pool-vault")], programId);
34
+ }
35
+ export function findPoolStusdcMintPda(programId = PROGRAM_ID) {
36
+ return PublicKey.findProgramAddressSync([Buffer.from("pool-stusdc-mint")], programId);
37
+ }
38
+ export function findPoolMintAuthPda(programId = PROGRAM_ID) {
39
+ return PublicKey.findProgramAddressSync([Buffer.from("pool-mint-auth")], programId);
40
+ }
41
+ // ----- Protocol config PDA -----
42
+ export function findProtocolConfigPda(programId = PROGRAM_ID) {
43
+ return PublicKey.findProgramAddressSync([Buffer.from("protocol-config")], programId);
44
+ }
45
+ export function findCreditLinePda(agent, programId = PROGRAM_ID) {
46
+ return PublicKey.findProgramAddressSync([Buffer.from("credit-line"), agent.toBuffer()], programId);
47
+ }
48
+ // ----- Yield routing PDAs -----
49
+ export const LP_KIND_MARGINFI = 0;
50
+ /** Kamino kLend (direct CPI). Devnet/stub only — kLend has a CPI whitelist
51
+ * that excludes Telaro on mainnet. Use LP_KIND_KAMINO_VAULT for mainnet. */
52
+ export const LP_KIND_KAMINO = 1;
53
+ /** Kamino kVault — the mainnet-viable Kamino path. Reserved for future
54
+ * implementation; CPI helpers ship in `kvault.rs`. */
55
+ export const LP_KIND_KAMINO_VAULT = 2;
56
+ export function findLpPositionPda(agent, lpKind = LP_KIND_MARGINFI, programId = PROGRAM_ID) {
57
+ return PublicKey.findProgramAddressSync([Buffer.from("lp-position"), agent.toBuffer(), Buffer.from([lpKind])], programId);
58
+ }
59
+ // ----- Capability registry -----
60
+ export function findCapabilityRegistryPda(agent, programId = PROGRAM_ID) {
61
+ return PublicKey.findProgramAddressSync([Buffer.from("cap-registry"), agent.toBuffer()], programId);
62
+ }
63
+ export function findScoreFeedPda(agent, programId = PROGRAM_ID) {
64
+ return PublicKey.findProgramAddressSync([Buffer.from("score-feed"), agent.toBuffer()], programId);
65
+ }
66
+ /** Capability bit ids. Mirrors `programs/telaro/src/state.rs::CAPABILITY_*`. */
67
+ export const CAPABILITY_SWAP = 0;
68
+ export const CAPABILITY_LP = 1;
69
+ export const CAPABILITY_LENDING = 2;
70
+ export const CAPABILITY_MEV = 3;
71
+ export const CAPABILITY_GOVERNANCE = 4;
72
+ export const MAX_CAPABILITY_BITS = 64;
73
+ /** Compose a bitmap from a list of capability bit ids. */
74
+ export function capabilitiesBitmap(bits) {
75
+ let m = 0n;
76
+ for (const b of bits) {
77
+ if (b < 0 || b >= MAX_CAPABILITY_BITS) {
78
+ throw new Error(`capability bit out of range: ${b}`);
79
+ }
80
+ m |= 1n << BigInt(b);
81
+ }
82
+ return m;
83
+ }
84
+ //# sourceMappingURL=pda.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pda.js","sourceRoot":"","sources":["../src/pda.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,67 @@
1
+ /**
2
+ * WebSocket helper for real-time score / claim / freeze events.
3
+ *
4
+ * Connects to the indexer's `/ws` endpoint and re-emits typed events.
5
+ * Auto-reconnects on disconnect (with exponential backoff). Auto-resubscribes
6
+ * to the previous filter set on each reconnect.
7
+ *
8
+ * Usage:
9
+ *
10
+ * import { subscribeToScores } from "@telaro/sdk";
11
+ *
12
+ * const unsubscribe = subscribeToScores({
13
+ * url: "wss://indexer.telaro.xyz/ws",
14
+ * agents: ["AgentSenda1JupiterLP..."], // or ["*"] for everyone
15
+ * onEvent: (e) => {
16
+ * if (e.type === "score_updated") {
17
+ * console.log("score:", e.data.newScore);
18
+ * }
19
+ * },
20
+ * });
21
+ *
22
+ * // later
23
+ * unsubscribe();
24
+ *
25
+ * Browser-friendly: uses the global `WebSocket` so no extra dep.
26
+ */
27
+ export type RealtimeEventType = "score_updated" | "claim_submitted" | "claim_resolved" | "frozen";
28
+ export interface RealtimeEvent {
29
+ type: RealtimeEventType;
30
+ agent: string;
31
+ ts: number;
32
+ data: Record<string, unknown>;
33
+ }
34
+ export interface RealtimeSubscribeOptions {
35
+ /** ws:// or wss:// indexer URL. */
36
+ url: string;
37
+ /**
38
+ * List of agent pubkeys to listen for. Pass `["*"]` for all events.
39
+ * Empty array means "no events" (effectively a no-op).
40
+ */
41
+ agents: string[];
42
+ /** Per-event handler. */
43
+ onEvent: (event: RealtimeEvent) => void;
44
+ /** Optional. Called on connect. */
45
+ onOpen?: () => void;
46
+ /** Optional. Called on close (transient or final). */
47
+ onClose?: (reason: string) => void;
48
+ /** Optional. Called on parse / network error. */
49
+ onError?: (err: unknown) => void;
50
+ /** Optional WebSocket constructor (for testing / SSR). */
51
+ WebSocketImpl?: typeof WebSocket;
52
+ /** Initial reconnect delay (ms). Doubles up to 30s. Default 1000. */
53
+ initialReconnectDelayMs?: number;
54
+ }
55
+ export interface RealtimeSubscription {
56
+ /** Close the connection and stop reconnecting. */
57
+ close(): void;
58
+ /** Add agent pubkeys to the active filter; sends an `unsubscribe` to the server. */
59
+ addAgents(agents: string[]): void;
60
+ /** Remove agent pubkeys from the active filter. */
61
+ removeAgents(agents: string[]): void;
62
+ /** True while the underlying socket is OPEN. */
63
+ isOpen(): boolean;
64
+ }
65
+ /** Subscribe and start receiving events. Returns control object. */
66
+ export declare function subscribeToScores(opts: RealtimeSubscribeOptions): RealtimeSubscription;
67
+ //# sourceMappingURL=realtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"realtime.d.ts","sourceRoot":"","sources":["../src/realtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,MAAM,MAAM,iBAAiB,GACzB,eAAe,GACf,iBAAiB,GACjB,gBAAgB,GAChB,QAAQ,CAAC;AAEb,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,iBAAiB,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B;AAED,MAAM,WAAW,wBAAwB;IACvC,mCAAmC;IACnC,GAAG,EAAE,MAAM,CAAC;IACZ;;;OAGG;IACH,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,yBAAyB;IACzB,OAAO,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IACxC,mCAAmC;IACnC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,sDAAsD;IACtD,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,iDAAiD;IACjD,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC;IACjC,0DAA0D;IAC1D,aAAa,CAAC,EAAE,OAAO,SAAS,CAAC;IACjC,qEAAqE;IACrE,uBAAuB,CAAC,EAAE,MAAM,CAAC;CAClC;AAED,MAAM,WAAW,oBAAoB;IACnC,kDAAkD;IAClD,KAAK,IAAI,IAAI,CAAC;IACd,oFAAoF;IACpF,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAClC,mDAAmD;IACnD,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACrC,gDAAgD;IAChD,MAAM,IAAI,OAAO,CAAC;CACnB;AAID,oEAAoE;AACpE,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,wBAAwB,GAAG,oBAAoB,CAmFtF"}
@@ -0,0 +1,112 @@
1
+ /**
2
+ * WebSocket helper for real-time score / claim / freeze events.
3
+ *
4
+ * Connects to the indexer's `/ws` endpoint and re-emits typed events.
5
+ * Auto-reconnects on disconnect (with exponential backoff). Auto-resubscribes
6
+ * to the previous filter set on each reconnect.
7
+ *
8
+ * Usage:
9
+ *
10
+ * import { subscribeToScores } from "@telaro/sdk";
11
+ *
12
+ * const unsubscribe = subscribeToScores({
13
+ * url: "wss://indexer.telaro.xyz/ws",
14
+ * agents: ["AgentSenda1JupiterLP..."], // or ["*"] for everyone
15
+ * onEvent: (e) => {
16
+ * if (e.type === "score_updated") {
17
+ * console.log("score:", e.data.newScore);
18
+ * }
19
+ * },
20
+ * });
21
+ *
22
+ * // later
23
+ * unsubscribe();
24
+ *
25
+ * Browser-friendly: uses the global `WebSocket` so no extra dep.
26
+ */
27
+ const MAX_RECONNECT_DELAY_MS = 30_000;
28
+ /** Subscribe and start receiving events. Returns control object. */
29
+ export function subscribeToScores(opts) {
30
+ const WS = opts.WebSocketImpl ?? globalThis.WebSocket;
31
+ if (!WS)
32
+ throw new Error("No WebSocket implementation available in this runtime");
33
+ let ws = null;
34
+ let closed = false;
35
+ const filters = new Set(opts.agents);
36
+ let reconnectDelay = opts.initialReconnectDelayMs ?? 1_000;
37
+ function connect() {
38
+ if (closed)
39
+ return;
40
+ try {
41
+ ws = new WS(opts.url);
42
+ }
43
+ catch (err) {
44
+ opts.onError?.(err);
45
+ schedule();
46
+ return;
47
+ }
48
+ ws.onopen = () => {
49
+ reconnectDelay = opts.initialReconnectDelayMs ?? 1_000;
50
+ opts.onOpen?.();
51
+ // Re-send filter set after reconnect.
52
+ if (filters.size > 0) {
53
+ ws?.send(JSON.stringify({ subscribe: Array.from(filters) }));
54
+ }
55
+ };
56
+ ws.onmessage = (msg) => {
57
+ try {
58
+ const parsed = JSON.parse(typeof msg.data === "string" ? msg.data : "");
59
+ if (parsed && parsed.type && parsed.agent) {
60
+ opts.onEvent(parsed);
61
+ }
62
+ }
63
+ catch (err) {
64
+ opts.onError?.(err);
65
+ }
66
+ };
67
+ ws.onclose = (ev) => {
68
+ opts.onClose?.(`code=${ev.code} reason=${ev.reason || ""}`);
69
+ ws = null;
70
+ schedule();
71
+ };
72
+ ws.onerror = (err) => {
73
+ opts.onError?.(err);
74
+ };
75
+ }
76
+ function schedule() {
77
+ if (closed)
78
+ return;
79
+ setTimeout(() => connect(), reconnectDelay);
80
+ reconnectDelay = Math.min(reconnectDelay * 2, MAX_RECONNECT_DELAY_MS);
81
+ }
82
+ connect();
83
+ return {
84
+ close() {
85
+ closed = true;
86
+ try {
87
+ ws?.close();
88
+ }
89
+ catch {
90
+ /* ignore */
91
+ }
92
+ },
93
+ addAgents(agents) {
94
+ for (const a of agents)
95
+ filters.add(a);
96
+ if (ws?.readyState === WS.OPEN) {
97
+ ws.send(JSON.stringify({ subscribe: agents }));
98
+ }
99
+ },
100
+ removeAgents(agents) {
101
+ for (const a of agents)
102
+ filters.delete(a);
103
+ if (ws?.readyState === WS.OPEN) {
104
+ ws.send(JSON.stringify({ unsubscribe: agents }));
105
+ }
106
+ },
107
+ isOpen() {
108
+ return ws?.readyState === WS.OPEN;
109
+ },
110
+ };
111
+ }
112
+ //# sourceMappingURL=realtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"realtime.js","sourceRoot":"","sources":["../src/realtime.ts"],"names":[],"mappings":"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"}