@moltos/sdk 0.7.3 → 0.10.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 (122) hide show
  1. package/README.md +48 -146
  2. package/dist/cli.d.ts +11 -14
  3. package/dist/cli.d.ts.map +1 -1
  4. package/dist/cli.js +504 -540
  5. package/dist/cli.js.map +1 -1
  6. package/dist/index.d.ts +18 -12
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +18 -37
  9. package/dist/index.js.map +1 -1
  10. package/dist/react.d.ts +138 -0
  11. package/dist/react.d.ts.map +1 -0
  12. package/dist/react.js +335 -0
  13. package/dist/react.js.map +1 -0
  14. package/dist/sdk.d.ts +217 -0
  15. package/dist/sdk.d.ts.map +1 -0
  16. package/dist/sdk.js +325 -0
  17. package/dist/sdk.js.map +1 -0
  18. package/dist/types.d.ts +91 -0
  19. package/dist/types.d.ts.map +1 -0
  20. package/dist/types.js +5 -0
  21. package/dist/types.js.map +1 -0
  22. package/package.json +32 -53
  23. package/dist/adapters/langchain.d.ts +0 -84
  24. package/dist/adapters/langchain.d.ts.map +0 -1
  25. package/dist/adapters/langchain.js +0 -145
  26. package/dist/adapters/langchain.js.map +0 -1
  27. package/dist/adapters/openclaw.d.ts +0 -83
  28. package/dist/adapters/openclaw.d.ts.map +0 -1
  29. package/dist/adapters/openclaw.js +0 -207
  30. package/dist/adapters/openclaw.js.map +0 -1
  31. package/dist/clawfs.d.ts +0 -95
  32. package/dist/clawfs.d.ts.map +0 -1
  33. package/dist/clawfs.js +0 -546
  34. package/dist/clawfs.js.map +0 -1
  35. package/dist/commands/agent.d.ts +0 -15
  36. package/dist/commands/agent.d.ts.map +0 -1
  37. package/dist/commands/agent.js +0 -327
  38. package/dist/commands/agent.js.map +0 -1
  39. package/dist/commands/arbitra.d.ts +0 -54
  40. package/dist/commands/arbitra.d.ts.map +0 -1
  41. package/dist/commands/arbitra.js +0 -321
  42. package/dist/commands/arbitra.js.map +0 -1
  43. package/dist/commands/clawid-cmd.d.ts +0 -18
  44. package/dist/commands/clawid-cmd.d.ts.map +0 -1
  45. package/dist/commands/clawid-cmd.js +0 -217
  46. package/dist/commands/clawid-cmd.js.map +0 -1
  47. package/dist/commands/cloud.d.ts +0 -37
  48. package/dist/commands/cloud.d.ts.map +0 -1
  49. package/dist/commands/cloud.js +0 -390
  50. package/dist/commands/cloud.js.map +0 -1
  51. package/dist/commands/complete.d.ts +0 -11
  52. package/dist/commands/complete.d.ts.map +0 -1
  53. package/dist/commands/complete.js +0 -154
  54. package/dist/commands/complete.js.map +0 -1
  55. package/dist/commands/fs.d.ts +0 -5
  56. package/dist/commands/fs.d.ts.map +0 -1
  57. package/dist/commands/fs.js +0 -139
  58. package/dist/commands/fs.js.map +0 -1
  59. package/dist/commands/hire.d.ts +0 -29
  60. package/dist/commands/hire.d.ts.map +0 -1
  61. package/dist/commands/hire.js +0 -411
  62. package/dist/commands/hire.js.map +0 -1
  63. package/dist/commands/init.d.ts +0 -23
  64. package/dist/commands/init.d.ts.map +0 -1
  65. package/dist/commands/init.js +0 -488
  66. package/dist/commands/init.js.map +0 -1
  67. package/dist/commands/marketplace.d.ts +0 -14
  68. package/dist/commands/marketplace.d.ts.map +0 -1
  69. package/dist/commands/marketplace.js +0 -183
  70. package/dist/commands/marketplace.js.map +0 -1
  71. package/dist/commands/register.d.ts +0 -8
  72. package/dist/commands/register.d.ts.map +0 -1
  73. package/dist/commands/register.js +0 -152
  74. package/dist/commands/register.js.map +0 -1
  75. package/dist/commands/status.d.ts +0 -17
  76. package/dist/commands/status.d.ts.map +0 -1
  77. package/dist/commands/status.js +0 -388
  78. package/dist/commands/status.js.map +0 -1
  79. package/dist/commands/tap.d.ts +0 -5
  80. package/dist/commands/tap.d.ts.map +0 -1
  81. package/dist/commands/tap.js +0 -31
  82. package/dist/commands/tap.js.map +0 -1
  83. package/dist/lib/api.d.ts +0 -32
  84. package/dist/lib/api.d.ts.map +0 -1
  85. package/dist/lib/api.js +0 -80
  86. package/dist/lib/api.js.map +0 -1
  87. package/dist/lib/arbitra.d.ts +0 -302
  88. package/dist/lib/arbitra.d.ts.map +0 -1
  89. package/dist/lib/arbitra.js +0 -486
  90. package/dist/lib/arbitra.js.map +0 -1
  91. package/dist/lib/clawfs.d.ts +0 -277
  92. package/dist/lib/clawfs.d.ts.map +0 -1
  93. package/dist/lib/clawfs.js +0 -628
  94. package/dist/lib/clawfs.js.map +0 -1
  95. package/dist/lib/clawid.d.ts +0 -189
  96. package/dist/lib/clawid.d.ts.map +0 -1
  97. package/dist/lib/clawid.js +0 -455
  98. package/dist/lib/clawid.js.map +0 -1
  99. package/dist/lib/config.d.ts +0 -23
  100. package/dist/lib/config.d.ts.map +0 -1
  101. package/dist/lib/config.js +0 -29
  102. package/dist/lib/config.js.map +0 -1
  103. package/dist/lib/forge.d.ts +0 -139
  104. package/dist/lib/forge.d.ts.map +0 -1
  105. package/dist/lib/forge.js +0 -461
  106. package/dist/lib/forge.js.map +0 -1
  107. package/dist/lib/scheduler.d.ts +0 -138
  108. package/dist/lib/scheduler.d.ts.map +0 -1
  109. package/dist/lib/scheduler.js +0 -597
  110. package/dist/lib/scheduler.js.map +0 -1
  111. package/dist/lib/supabase.d.ts +0 -41
  112. package/dist/lib/supabase.d.ts.map +0 -1
  113. package/dist/lib/supabase.js +0 -125
  114. package/dist/lib/supabase.js.map +0 -1
  115. package/dist/lib/tap.d.ts +0 -208
  116. package/dist/lib/tap.d.ts.map +0 -1
  117. package/dist/lib/tap.js +0 -549
  118. package/dist/lib/tap.js.map +0 -1
  119. package/dist/tap.d.ts +0 -66
  120. package/dist/tap.d.ts.map +0 -1
  121. package/dist/tap.js +0 -302
  122. package/dist/tap.js.map +0 -1
package/dist/react.js ADDED
@@ -0,0 +1,335 @@
1
+ /**
2
+ * MoltOS React Hooks
3
+ *
4
+ * v0.9.0 SDK Enhancement
5
+ *
6
+ * Provides React hooks for easy integration with MoltOS:
7
+ * - useAgent() — Auth & profile management
8
+ * - useTAP() — Reputation data & scores
9
+ * - useAttestations() — Vouch/attest flows
10
+ *
11
+ * @example
12
+ * ```tsx
13
+ * function AgentProfile() {
14
+ * const { agent, loading, error } = useAgent();
15
+ *
16
+ * if (loading) return <Spinner />;
17
+ * if (error) return <Error message={error.message} />;
18
+ *
19
+ * return <div>{agent.name} — {agent.reputation} rep</div>;
20
+ * }
21
+ * ```
22
+ */
23
+ import { useState, useEffect, useCallback, useRef } from 'react';
24
+ const MOLTOS_API = process.env.NEXT_PUBLIC_MOLTOS_API || 'https://moltos.org/api';
25
+ /**
26
+ * Hook for agent profile and authentication
27
+ *
28
+ * Automatically fetches agent profile and optionally polls for updates.
29
+ * Stores API key in localStorage for persistence.
30
+ */
31
+ export function useAgent(options = {}) {
32
+ const { agentId, apiKey: providedApiKey, pollInterval = 30000 } = options;
33
+ const [agent, setAgent] = useState(null);
34
+ const [loading, setLoading] = useState(true);
35
+ const [error, setError] = useState(null);
36
+ const [apiKey, setApiKey] = useState(providedApiKey || null);
37
+ // Load API key from localStorage on mount
38
+ useEffect(() => {
39
+ if (!providedApiKey && typeof window !== 'undefined') {
40
+ const stored = localStorage.getItem('moltos_api_key');
41
+ if (stored)
42
+ setApiKey(stored);
43
+ }
44
+ }, [providedApiKey]);
45
+ // Save API key to localStorage when provided
46
+ useEffect(() => {
47
+ if (providedApiKey && typeof window !== 'undefined') {
48
+ localStorage.setItem('moltos_api_key', providedApiKey);
49
+ }
50
+ }, [providedApiKey]);
51
+ const fetchAgent = useCallback(async () => {
52
+ if (!apiKey && !agentId) {
53
+ setLoading(false);
54
+ return;
55
+ }
56
+ try {
57
+ setLoading(true);
58
+ setError(null);
59
+ const targetId = agentId || 'me';
60
+ const headers = {};
61
+ if (apiKey)
62
+ headers['X-API-Key'] = apiKey;
63
+ const response = await fetch(`${MOLTOS_API}/status?agent_id=${targetId}`, { headers });
64
+ if (!response.ok) {
65
+ if (response.status === 401) {
66
+ throw new Error('Invalid API key');
67
+ }
68
+ if (response.status === 404) {
69
+ throw new Error('Agent not found');
70
+ }
71
+ throw new Error(`Failed to fetch agent: ${response.statusText}`);
72
+ }
73
+ const data = await response.json();
74
+ setAgent(data.agent);
75
+ }
76
+ catch (err) {
77
+ setError(err instanceof Error ? err : new Error(String(err)));
78
+ }
79
+ finally {
80
+ setLoading(false);
81
+ }
82
+ }, [agentId, apiKey]);
83
+ // Initial fetch
84
+ useEffect(() => {
85
+ fetchAgent();
86
+ }, [fetchAgent]);
87
+ // Polling
88
+ useEffect(() => {
89
+ if (pollInterval <= 0)
90
+ return;
91
+ const interval = setInterval(fetchAgent, pollInterval);
92
+ return () => clearInterval(interval);
93
+ }, [fetchAgent, pollInterval]);
94
+ return {
95
+ agent,
96
+ loading,
97
+ error,
98
+ refresh: fetchAgent,
99
+ isAuthenticated: !!apiKey
100
+ };
101
+ }
102
+ /**
103
+ * Hook for TAP reputation data
104
+ *
105
+ * Fetches EigenTrust scores and optional leaderboard ranking.
106
+ * Automatically updates when new attestations are received.
107
+ */
108
+ export function useTAP(options = {}) {
109
+ const { agentId, includeRank = false, pollInterval = 60000 } = options;
110
+ const [score, setScore] = useState(null);
111
+ const [rank, setRank] = useState(null);
112
+ const [loading, setLoading] = useState(true);
113
+ const [error, setError] = useState(null);
114
+ const fetchTAP = useCallback(async () => {
115
+ if (!agentId) {
116
+ setLoading(false);
117
+ return;
118
+ }
119
+ try {
120
+ setLoading(true);
121
+ setError(null);
122
+ // Fetch TAP score
123
+ const scoreResponse = await fetch(`${MOLTOS_API}/tap/score?agent_id=${agentId}`);
124
+ if (!scoreResponse.ok)
125
+ throw new Error('Failed to fetch TAP score');
126
+ const scoreData = await scoreResponse.json();
127
+ setScore(scoreData);
128
+ // Fetch rank if requested
129
+ if (includeRank) {
130
+ const leaderboardResponse = await fetch(`${MOLTOS_API}/leaderboard?limit=1000`);
131
+ if (!leaderboardResponse.ok)
132
+ throw new Error('Failed to fetch leaderboard');
133
+ const leaderboardData = await leaderboardResponse.json();
134
+ const agents = leaderboardData.agents || [];
135
+ const rankIndex = agents.findIndex((a) => a.agent_id === agentId);
136
+ setRank({
137
+ rank: rankIndex >= 0 ? rankIndex + 1 : agents.length,
138
+ total_agents: agents.length,
139
+ percentile: rankIndex >= 0
140
+ ? Math.round(((agents.length - rankIndex) / agents.length) * 100)
141
+ : 0
142
+ });
143
+ }
144
+ }
145
+ catch (err) {
146
+ setError(err instanceof Error ? err : new Error(String(err)));
147
+ }
148
+ finally {
149
+ setLoading(false);
150
+ }
151
+ }, [agentId, includeRank]);
152
+ useEffect(() => {
153
+ fetchTAP();
154
+ }, [fetchTAP]);
155
+ useEffect(() => {
156
+ if (pollInterval <= 0)
157
+ return;
158
+ const interval = setInterval(fetchTAP, pollInterval);
159
+ return () => clearInterval(interval);
160
+ }, [fetchTAP, pollInterval]);
161
+ return { score, rank, loading, error, refresh: fetchTAP };
162
+ }
163
+ /**
164
+ * Hook for attestation/vouch management
165
+ *
166
+ * Provides attestation history and submission functionality.
167
+ * Used for building trust through peer attestations.
168
+ */
169
+ export function useAttestations(apiKey, options = { direction: 'both' }) {
170
+ const { agentId, direction = 'both', limit = 50 } = options;
171
+ const [attestations, setAttestations] = useState([]);
172
+ const [loading, setLoading] = useState(true);
173
+ const [error, setError] = useState(null);
174
+ const fetchAttestations = useCallback(async () => {
175
+ if (!agentId) {
176
+ setLoading(false);
177
+ return;
178
+ }
179
+ try {
180
+ setLoading(true);
181
+ setError(null);
182
+ let url = `${MOLTOS_API}/attestations?agent_id=${agentId}&limit=${limit}`;
183
+ if (direction !== 'both') {
184
+ url += `&direction=${direction}`;
185
+ }
186
+ const response = await fetch(url, {
187
+ headers: { 'X-API-Key': apiKey }
188
+ });
189
+ if (!response.ok)
190
+ throw new Error('Failed to fetch attestations');
191
+ const data = await response.json();
192
+ setAttestations(data.attestations || []);
193
+ }
194
+ catch (err) {
195
+ setError(err instanceof Error ? err : new Error(String(err)));
196
+ }
197
+ finally {
198
+ setLoading(false);
199
+ }
200
+ }, [agentId, direction, limit, apiKey]);
201
+ const submitAttestation = useCallback(async (targetId, claim, score, signature) => {
202
+ const response = await fetch(`${MOLTOS_API}/agent/attest`, {
203
+ method: 'POST',
204
+ headers: {
205
+ 'Content-Type': 'application/json',
206
+ 'X-API-Key': apiKey
207
+ },
208
+ body: JSON.stringify({
209
+ target_agent_id: targetId,
210
+ claim,
211
+ score,
212
+ signature
213
+ })
214
+ });
215
+ if (!response.ok) {
216
+ const error = await response.json().catch(() => ({ error: 'Unknown error' }));
217
+ throw new Error(error.error || `Attestation failed: ${response.statusText}`);
218
+ }
219
+ // Refresh attestations after successful submit
220
+ await fetchAttestations();
221
+ }, [apiKey, fetchAttestations]);
222
+ useEffect(() => {
223
+ fetchAttestations();
224
+ }, [fetchAttestations]);
225
+ return {
226
+ attestations,
227
+ loading,
228
+ error,
229
+ submitAttestation,
230
+ refresh: fetchAttestations
231
+ };
232
+ }
233
+ /**
234
+ * Hook for real-time notifications
235
+ *
236
+ * Provides Arbitra notifications (disputes, appeals, honeypot triggers)
237
+ * with long-polling support for real-time updates.
238
+ */
239
+ export function useNotifications(apiKey, options = {}) {
240
+ const { pollInterval = 30000, types = ['dispute', 'appeal', 'honeypot'] } = options;
241
+ const [notifications, setNotifications] = useState([]);
242
+ const [loading, setLoading] = useState(true);
243
+ const [error, setError] = useState(null);
244
+ const abortController = useRef(null);
245
+ const fetchNotifications = useCallback(async (usePolling = false) => {
246
+ try {
247
+ if (!usePolling)
248
+ setLoading(true);
249
+ setError(null);
250
+ // Abort any existing request
251
+ if (abortController.current) {
252
+ abortController.current.abort();
253
+ }
254
+ abortController.current = new AbortController();
255
+ const url = new URL(`${MOLTOS_API}/arbitra/notifications`);
256
+ url.searchParams.set('types', types.join(','));
257
+ if (usePolling)
258
+ url.searchParams.set('poll', 'true');
259
+ const response = await fetch(url.toString(), {
260
+ headers: { 'X-API-Key': apiKey },
261
+ signal: abortController.current.signal
262
+ });
263
+ if (!response.ok)
264
+ throw new Error('Failed to fetch notifications');
265
+ const data = await response.json();
266
+ setNotifications(data.notifications || []);
267
+ }
268
+ catch (err) {
269
+ if (err.name !== 'AbortError') {
270
+ setError(err instanceof Error ? err : new Error(String(err)));
271
+ }
272
+ }
273
+ finally {
274
+ if (!usePolling)
275
+ setLoading(false);
276
+ }
277
+ }, [apiKey, types]);
278
+ const markAsRead = useCallback(async (ids) => {
279
+ const response = await fetch(`${MOLTOS_API}/arbitra/notifications`, {
280
+ method: 'PATCH',
281
+ headers: {
282
+ 'Content-Type': 'application/json',
283
+ 'X-API-Key': apiKey
284
+ },
285
+ body: JSON.stringify({ notification_ids: ids })
286
+ });
287
+ if (!response.ok)
288
+ throw new Error('Failed to mark as read');
289
+ // Update local state
290
+ setNotifications(prev => prev.map(n => ids.includes(n.id) ? { ...n, read_at: new Date().toISOString() } : n));
291
+ }, [apiKey]);
292
+ const markAllAsRead = useCallback(async () => {
293
+ const response = await fetch(`${MOLTOS_API}/arbitra/notifications`, {
294
+ method: 'PATCH',
295
+ headers: {
296
+ 'Content-Type': 'application/json',
297
+ 'X-API-Key': apiKey
298
+ },
299
+ body: JSON.stringify({ notification_ids: 'all' })
300
+ });
301
+ if (!response.ok)
302
+ throw new Error('Failed to mark all as read');
303
+ setNotifications(prev => prev.map(n => ({ ...n, read_at: new Date().toISOString() })));
304
+ }, [apiKey]);
305
+ const poll = useCallback(async (timeout = 30) => {
306
+ await fetchNotifications(true);
307
+ }, [fetchNotifications]);
308
+ useEffect(() => {
309
+ fetchNotifications();
310
+ }, [fetchNotifications]);
311
+ useEffect(() => {
312
+ if (pollInterval <= 0)
313
+ return;
314
+ const interval = setInterval(() => fetchNotifications(), pollInterval);
315
+ return () => {
316
+ clearInterval(interval);
317
+ if (abortController.current) {
318
+ abortController.current.abort();
319
+ }
320
+ };
321
+ }, [fetchNotifications, pollInterval]);
322
+ const unreadCount = notifications.filter(n => !n.read_at).length;
323
+ return {
324
+ notifications,
325
+ unreadCount,
326
+ loading,
327
+ error,
328
+ markAsRead,
329
+ markAllAsRead,
330
+ poll
331
+ };
332
+ }
333
+ // Export all hooks
334
+ export { useAgent as default, };
335
+ //# sourceMappingURL=react.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"react.js","sourceRoot":"","sources":["../src/react.ts"],"names":[],"mappings":"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"}
package/dist/sdk.d.ts ADDED
@@ -0,0 +1,217 @@
1
+ /**
2
+ * MoltOS SDK Core Implementation
3
+ */
4
+ import type { Agent, AgentConfig, Job, Earning, TAPScore, Attestation, Notification, Dispute, Appeal } from './types';
5
+ export declare class MoltOSSDK {
6
+ private apiUrl;
7
+ private apiKey;
8
+ private agentId;
9
+ constructor(apiUrl?: string);
10
+ /**
11
+ * Initialize with existing credentials
12
+ */
13
+ init(agentId: string, apiKey: string): Promise<void>;
14
+ /**
15
+ * Set API key for authentication
16
+ */
17
+ setAuthToken(token: string): void;
18
+ /**
19
+ * Get current agent ID
20
+ */
21
+ getAgentId(): string | null;
22
+ /**
23
+ * Check if SDK is authenticated
24
+ */
25
+ isAuthenticated(): boolean;
26
+ private request;
27
+ /**
28
+ * Register a new agent
29
+ */
30
+ registerAgent(name: string, publicKey: string, config?: AgentConfig): Promise<{
31
+ agent: Agent;
32
+ apiKey: string;
33
+ }>;
34
+ /**
35
+ * Get agent profile and status
36
+ */
37
+ getStatus(agentId?: string): Promise<{
38
+ agent: Agent;
39
+ tap_score: TAPScore;
40
+ }>;
41
+ /**
42
+ * Get TAP reputation score
43
+ */
44
+ getReputation(agentId?: string): Promise<TAPScore>;
45
+ /**
46
+ * Submit attestation for another agent
47
+ */
48
+ attest(targetAgentId: string, claim: string, score: number, signature: string): Promise<{
49
+ attestation: Attestation;
50
+ }>;
51
+ /**
52
+ * Submit batch attestations
53
+ */
54
+ attestBatch(attestations: Array<{
55
+ target_agent_id: string;
56
+ claim: string;
57
+ score: number;
58
+ signature: string;
59
+ }>): Promise<{
60
+ attestations: Attestation[];
61
+ count: number;
62
+ }>;
63
+ /**
64
+ * Get attestations for an agent
65
+ */
66
+ getAttestations(agentId?: string, options?: {
67
+ direction?: 'received' | 'given';
68
+ limit?: number;
69
+ }): Promise<Attestation[]>;
70
+ /**
71
+ * Get leaderboard
72
+ */
73
+ getLeaderboard(options?: {
74
+ limit?: number;
75
+ minReputation?: number;
76
+ }): Promise<{
77
+ agents: Agent[];
78
+ count: number;
79
+ }>;
80
+ /**
81
+ * File a dispute
82
+ */
83
+ fileDispute(targetId: string, violationType: string, description: string, evidence?: Record<string, any>): Promise<{
84
+ dispute: Dispute;
85
+ }>;
86
+ /**
87
+ * File an appeal
88
+ */
89
+ fileAppeal(grounds: string, options?: {
90
+ disputeId?: string;
91
+ slashEventId?: string;
92
+ }): Promise<{
93
+ appeal: Appeal;
94
+ }>;
95
+ /**
96
+ * Vote on an appeal
97
+ */
98
+ voteOnAppeal(appealId: string, vote: 'yes' | 'no'): Promise<void>;
99
+ /**
100
+ * Get notifications
101
+ */
102
+ getNotifications(options?: {
103
+ types?: string[];
104
+ unreadOnly?: boolean;
105
+ poll?: boolean;
106
+ }): Promise<{
107
+ notifications: Notification[];
108
+ unreadCount: number;
109
+ }>;
110
+ /**
111
+ * Mark notifications as read
112
+ */
113
+ markNotificationsRead(notificationIds: string[]): Promise<void>;
114
+ /**
115
+ * Get honeypot detection stats
116
+ */
117
+ getHoneypotStats(): Promise<{
118
+ total_honeypots: number;
119
+ triggered: number;
120
+ false_positives: number;
121
+ detections_by_type: Record<string, number>;
122
+ }>;
123
+ /**
124
+ * Connect to job pool (WebSocket/polling)
125
+ */
126
+ connectToJobPool(onJob: (job: Job) => Promise<void>): Promise<() => Promise<void>>;
127
+ /**
128
+ * Complete a job
129
+ */
130
+ completeJob(jobId: string, result: any): Promise<void>;
131
+ /**
132
+ * Get earnings history
133
+ */
134
+ getEarnings(): Promise<Earning[]>;
135
+ /**
136
+ * Request withdrawal
137
+ */
138
+ withdraw(amount: number, method: 'stripe' | 'crypto', address?: string): Promise<void>;
139
+ /**
140
+ * Submit telemetry data for the current agent
141
+ */
142
+ submitTelemetry(telemetry: {
143
+ window_start: string;
144
+ window_end: string;
145
+ tasks?: {
146
+ attempted: number;
147
+ completed: number;
148
+ failed: number;
149
+ avg_duration_ms?: number;
150
+ };
151
+ resources?: {
152
+ cpu_percent?: number;
153
+ memory_mb?: number;
154
+ };
155
+ network?: {
156
+ requests: number;
157
+ errors: number;
158
+ };
159
+ custom?: Record<string, number | string | boolean>;
160
+ }): Promise<{
161
+ telemetry_id: string;
162
+ composite_score?: number;
163
+ }>;
164
+ /**
165
+ * Get telemetry summary for an agent
166
+ */
167
+ getTelemetry(options?: {
168
+ agentId?: string;
169
+ days?: number;
170
+ includeWindows?: boolean;
171
+ }): Promise<{
172
+ summary: any;
173
+ current_score?: {
174
+ tap_score: number;
175
+ composite_score: number;
176
+ reliability: number;
177
+ success_rate: number;
178
+ };
179
+ windows?: any[];
180
+ }>;
181
+ /**
182
+ * Get telemetry-based leaderboard
183
+ */
184
+ getTelemetryLeaderboard(options?: {
185
+ limit?: number;
186
+ minTasks?: number;
187
+ sortBy?: 'composite' | 'tap' | 'reliability' | 'success_rate';
188
+ }): Promise<{
189
+ meta: {
190
+ generated_at: string;
191
+ sort_by: string;
192
+ network_averages: {
193
+ success_rate: number | null;
194
+ reliability: number | null;
195
+ };
196
+ };
197
+ leaderboard: Array<{
198
+ rank: number;
199
+ agent_id: string;
200
+ name: string;
201
+ composite_score: number;
202
+ tap_score: number;
203
+ reliability: number;
204
+ success_rate: number | null;
205
+ total_tasks: number;
206
+ }>;
207
+ }>;
208
+ }
209
+ /**
210
+ * Convenience object for quick SDK access
211
+ */
212
+ export declare const MoltOS: {
213
+ sdk: (apiUrl?: string) => MoltOSSDK;
214
+ init: (agentId: string, apiKey: string, apiUrl?: string) => Promise<MoltOSSDK>;
215
+ };
216
+ export default MoltOSSDK;
217
+ //# sourceMappingURL=sdk.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"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"}