@castari/sdk 0.3.2 → 0.4.1

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.
@@ -0,0 +1,95 @@
1
+ import type { HttpClient } from './http.js';
2
+ import type { ManagedFile, ManagedFileList, FileUploadResponse, StorageUsage, PresignedUpload, AgentFile, AgentFileList, AttachFileOptions, ListFilesOptions, UploadFileOptions, UpdateFileOptions, GetUploadUrlOptions } from './types.js';
3
+ /**
4
+ * API for managing files in Castari storage (Storage v2)
5
+ */
6
+ export declare class FilesAPI {
7
+ private client;
8
+ constructor(client: HttpClient);
9
+ /**
10
+ * List files in managed storage
11
+ * @param options - Filtering and pagination options
12
+ * @returns List of files with pagination metadata
13
+ */
14
+ list(options?: ListFilesOptions): Promise<ManagedFileList>;
15
+ /**
16
+ * Get a file by ID
17
+ * @param fileId - The file's unique ID
18
+ * @returns The file metadata
19
+ * @throws NotFoundError if file doesn't exist
20
+ */
21
+ get(fileId: string): Promise<ManagedFile>;
22
+ /**
23
+ * Upload a file to managed storage
24
+ * @param file - The file data as Blob
25
+ * @param filename - The filename
26
+ * @param options - Upload options (description, tags)
27
+ * @returns The uploaded file metadata
28
+ */
29
+ upload(file: Blob, filename: string, options?: UploadFileOptions): Promise<FileUploadResponse>;
30
+ /**
31
+ * Update file metadata
32
+ * @param fileId - The file's unique ID
33
+ * @param options - Update options (description, tags)
34
+ * @returns The updated file metadata
35
+ */
36
+ update(fileId: string, options: UpdateFileOptions): Promise<ManagedFile>;
37
+ /**
38
+ * Delete a file
39
+ * @param fileId - The file's unique ID
40
+ * @throws NotFoundError if file doesn't exist
41
+ */
42
+ delete(fileId: string): Promise<void>;
43
+ /**
44
+ * Download a file's content
45
+ * @param fileId - The file's unique ID
46
+ * @returns The raw Response with file content
47
+ */
48
+ download(fileId: string): Promise<Response>;
49
+ /**
50
+ * Get download URL for a file
51
+ * @param fileId - The file's unique ID
52
+ * @returns The full download URL
53
+ */
54
+ getDownloadUrl(fileId: string): Promise<string>;
55
+ /**
56
+ * Get storage usage statistics
57
+ * @returns Storage usage stats including quota information
58
+ */
59
+ getUsage(): Promise<StorageUsage>;
60
+ /**
61
+ * Get a presigned URL for uploading a file
62
+ * @param filename - The filename to upload
63
+ * @param sizeBytes - The file size in bytes
64
+ * @param options - Additional options (contentType, description, tags)
65
+ * @returns Presigned upload URL and file ID
66
+ */
67
+ getUploadUrl(filename: string, sizeBytes: number, options?: GetUploadUrlOptions): Promise<PresignedUpload>;
68
+ /**
69
+ * Confirm a presigned upload after uploading to the presigned URL
70
+ * @param fileId - The file ID from getUploadUrl
71
+ * @param sha256Hash - The SHA256 hash of the uploaded file
72
+ * @returns The confirmed file metadata
73
+ */
74
+ confirmUpload(fileId: string, sha256Hash: string): Promise<ManagedFile>;
75
+ /**
76
+ * List files attached to an agent
77
+ * @param agentSlug - The agent's unique slug
78
+ * @returns List of attached files with total size
79
+ */
80
+ listAgentFiles(agentSlug: string): Promise<AgentFileList>;
81
+ /**
82
+ * Attach a file to an agent
83
+ * @param agentSlug - The agent's unique slug
84
+ * @param options - Attachment options (fileId, mountPath, readOnly)
85
+ * @returns The attached file details
86
+ */
87
+ attachToAgent(agentSlug: string, options: AttachFileOptions): Promise<AgentFile>;
88
+ /**
89
+ * Detach a file from an agent
90
+ * @param agentSlug - The agent's unique slug
91
+ * @param fileId - The file's unique ID
92
+ */
93
+ detachFromAgent(agentSlug: string, fileId: string): Promise<void>;
94
+ }
95
+ //# sourceMappingURL=files.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"files.d.ts","sourceRoot":"","sources":["../src/files.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,KAAK,EACV,WAAW,EACX,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,eAAe,EACf,SAAS,EACT,aAAa,EACb,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAEpB;;GAEG;AACH,qBAAa,QAAQ;IACP,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,UAAU;IAMtC;;;;OAIG;IACG,IAAI,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC;IAsBhE;;;;;OAKG;IACG,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAI/C;;;;;;OAMG;IACG,MAAM,CACV,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,kBAAkB,CAAC;IAmB9B;;;;;OAKG;IACG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC;IAe9E;;;;OAIG;IACG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI3C;;;;OAIG;IACG,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAIjD;;;;OAIG;IACG,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAIrD;;;OAGG;IACG,QAAQ,IAAI,OAAO,CAAC,YAAY,CAAC;IAQvC;;;;;;OAMG;IACG,YAAY,CAChB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,eAAe,CAAC;IAqB3B;;;;;OAKG;IACG,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAa7E;;;;OAIG;IACG,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAO/D;;;;;OAKG;IACG,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,SAAS,CAAC;IAmBtF;;;;OAIG;IACG,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAMxE"}
package/dist/files.js ADDED
@@ -0,0 +1,193 @@
1
+ /**
2
+ * API for managing files in Castari storage (Storage v2)
3
+ */
4
+ export class FilesAPI {
5
+ client;
6
+ constructor(client) {
7
+ this.client = client;
8
+ }
9
+ // ============================================================================
10
+ // File Operations
11
+ // ============================================================================
12
+ /**
13
+ * List files in managed storage
14
+ * @param options - Filtering and pagination options
15
+ * @returns List of files with pagination metadata
16
+ */
17
+ async list(options) {
18
+ const query = {};
19
+ if (options?.limit !== undefined) {
20
+ query.limit = options.limit;
21
+ }
22
+ if (options?.offset !== undefined) {
23
+ query.offset = options.offset;
24
+ }
25
+ if (options?.scope) {
26
+ query.scope = options.scope;
27
+ }
28
+ if (options?.tags) {
29
+ query.tags = options.tags;
30
+ }
31
+ if (options?.search) {
32
+ query.search = options.search;
33
+ }
34
+ return this.client.request('GET', '/files', { query });
35
+ }
36
+ /**
37
+ * Get a file by ID
38
+ * @param fileId - The file's unique ID
39
+ * @returns The file metadata
40
+ * @throws NotFoundError if file doesn't exist
41
+ */
42
+ async get(fileId) {
43
+ return this.client.request('GET', `/files/${encodeURIComponent(fileId)}`);
44
+ }
45
+ /**
46
+ * Upload a file to managed storage
47
+ * @param file - The file data as Blob
48
+ * @param filename - The filename
49
+ * @param options - Upload options (description, tags)
50
+ * @returns The uploaded file metadata
51
+ */
52
+ async upload(file, filename, options) {
53
+ const formData = new FormData();
54
+ formData.append('file', file, filename);
55
+ if (options?.description) {
56
+ formData.append('description', options.description);
57
+ }
58
+ if (options?.tags && options.tags.length > 0) {
59
+ formData.append('tags', options.tags.join(','));
60
+ }
61
+ return this.client.requestMultipart('POST', '/files', formData, { timeout: 300000 } // 5 minute timeout for uploads
62
+ );
63
+ }
64
+ /**
65
+ * Update file metadata
66
+ * @param fileId - The file's unique ID
67
+ * @param options - Update options (description, tags)
68
+ * @returns The updated file metadata
69
+ */
70
+ async update(fileId, options) {
71
+ const body = {};
72
+ if (options.description !== undefined) {
73
+ body.description = options.description;
74
+ }
75
+ if (options.tags !== undefined) {
76
+ body.tags = options.tags;
77
+ }
78
+ return this.client.request('PATCH', `/files/${encodeURIComponent(fileId)}`, {
79
+ body,
80
+ });
81
+ }
82
+ /**
83
+ * Delete a file
84
+ * @param fileId - The file's unique ID
85
+ * @throws NotFoundError if file doesn't exist
86
+ */
87
+ async delete(fileId) {
88
+ return this.client.request('DELETE', `/files/${encodeURIComponent(fileId)}`);
89
+ }
90
+ /**
91
+ * Download a file's content
92
+ * @param fileId - The file's unique ID
93
+ * @returns The raw Response with file content
94
+ */
95
+ async download(fileId) {
96
+ return this.client.rawRequest('GET', `/files/${encodeURIComponent(fileId)}/content`);
97
+ }
98
+ /**
99
+ * Get download URL for a file
100
+ * @param fileId - The file's unique ID
101
+ * @returns The full download URL
102
+ */
103
+ async getDownloadUrl(fileId) {
104
+ return `${this.client.getBaseUrl()}/api/v1/files/${encodeURIComponent(fileId)}/content`;
105
+ }
106
+ /**
107
+ * Get storage usage statistics
108
+ * @returns Storage usage stats including quota information
109
+ */
110
+ async getUsage() {
111
+ return this.client.request('GET', '/files/usage');
112
+ }
113
+ // ============================================================================
114
+ // Presigned Upload Flow (for large files)
115
+ // ============================================================================
116
+ /**
117
+ * Get a presigned URL for uploading a file
118
+ * @param filename - The filename to upload
119
+ * @param sizeBytes - The file size in bytes
120
+ * @param options - Additional options (contentType, description, tags)
121
+ * @returns Presigned upload URL and file ID
122
+ */
123
+ async getUploadUrl(filename, sizeBytes, options) {
124
+ const body = {
125
+ filename,
126
+ size_bytes: sizeBytes,
127
+ };
128
+ if (options?.contentType) {
129
+ body.content_type = options.contentType;
130
+ }
131
+ if (options?.description) {
132
+ body.description = options.description;
133
+ }
134
+ if (options?.tags && options.tags.length > 0) {
135
+ body.tags = options.tags;
136
+ }
137
+ return this.client.request('POST', '/files/upload-url', {
138
+ body,
139
+ });
140
+ }
141
+ /**
142
+ * Confirm a presigned upload after uploading to the presigned URL
143
+ * @param fileId - The file ID from getUploadUrl
144
+ * @param sha256Hash - The SHA256 hash of the uploaded file
145
+ * @returns The confirmed file metadata
146
+ */
147
+ async confirmUpload(fileId, sha256Hash) {
148
+ return this.client.request('POST', '/files/confirm-upload', {
149
+ body: {
150
+ file_id: fileId,
151
+ sha256_hash: sha256Hash,
152
+ },
153
+ });
154
+ }
155
+ // ============================================================================
156
+ // Agent File Operations
157
+ // ============================================================================
158
+ /**
159
+ * List files attached to an agent
160
+ * @param agentSlug - The agent's unique slug
161
+ * @returns List of attached files with total size
162
+ */
163
+ async listAgentFiles(agentSlug) {
164
+ return this.client.request('GET', `/agents/${encodeURIComponent(agentSlug)}/files`);
165
+ }
166
+ /**
167
+ * Attach a file to an agent
168
+ * @param agentSlug - The agent's unique slug
169
+ * @param options - Attachment options (fileId, mountPath, readOnly)
170
+ * @returns The attached file details
171
+ */
172
+ async attachToAgent(agentSlug, options) {
173
+ const body = {
174
+ file_id: options.fileId,
175
+ };
176
+ if (options.mountPath !== undefined) {
177
+ body.mount_path = options.mountPath;
178
+ }
179
+ if (options.readOnly !== undefined) {
180
+ body.read_only = options.readOnly;
181
+ }
182
+ return this.client.request('POST', `/agents/${encodeURIComponent(agentSlug)}/files`, { body });
183
+ }
184
+ /**
185
+ * Detach a file from an agent
186
+ * @param agentSlug - The agent's unique slug
187
+ * @param fileId - The file's unique ID
188
+ */
189
+ async detachFromAgent(agentSlug, fileId) {
190
+ return this.client.request('DELETE', `/agents/${encodeURIComponent(agentSlug)}/files/${encodeURIComponent(fileId)}`);
191
+ }
192
+ }
193
+ //# sourceMappingURL=files.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"files.js","sourceRoot":"","sources":["../src/files.ts"],"names":[],"mappings":"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"}
package/dist/http.d.ts CHANGED
@@ -28,6 +28,17 @@ export declare class HttpClient {
28
28
  query?: Record<string, string | number | undefined>;
29
29
  timeout?: number;
30
30
  }): Promise<T>;
31
+ /**
32
+ * Get the base URL for API requests
33
+ */
34
+ getBaseUrl(): string;
35
+ /**
36
+ * Make an HTTP request and return the raw Response (for binary downloads, etc.)
37
+ */
38
+ rawRequest(method: HttpMethod, path: string, options?: {
39
+ query?: Record<string, string | number | undefined>;
40
+ timeout?: number;
41
+ }): Promise<Response>;
31
42
  /**
32
43
  * Make a multipart form-data request for file uploads
33
44
  */
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"AAWA,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,CAAC;AAErE,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,QAAQ,CAAC,CAAsB;IACvC,OAAO,CAAC,SAAS,CAAC,CAAS;gBAEf,OAAO,EAAE,iBAAiB;IAMtC;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAKvD;;OAEG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAI7B;;OAEG;IACG,OAAO,CAAC,CAAC,EACb,MAAM,EAAE,UAAU,EAClB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;QACR,IAAI,CAAC,EAAE,OAAO,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,CAAC;QACpD,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,GACA,OAAO,CAAC,CAAC,CAAC;IA4Eb;;OAEG;IACG,gBAAgB,CAAC,CAAC,EACtB,MAAM,EAAE,UAAU,EAClB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,QAAQ,EAClB,OAAO,CAAC,EAAE;QACR,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC,CAAC;QAC9D,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,GACA,OAAO,CAAC,CAAC,CAAC;IA2Eb;;OAEG;IACH,OAAO,CAAC,WAAW;CA6BpB"}
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"AAWA,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,CAAC;AAErE,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,QAAQ,CAAC,CAAsB;IACvC,OAAO,CAAC,SAAS,CAAC,CAAS;gBAEf,OAAO,EAAE,iBAAiB;IAMtC;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAKvD;;OAEG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAI7B;;OAEG;IACG,OAAO,CAAC,CAAC,EACb,MAAM,EAAE,UAAU,EAClB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;QACR,IAAI,CAAC,EAAE,OAAO,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,CAAC;QACpD,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,GACA,OAAO,CAAC,CAAC,CAAC;IA4Eb;;OAEG;IACH,UAAU,IAAI,MAAM;IAIpB;;OAEG;IACG,UAAU,CACd,MAAM,EAAE,UAAU,EAClB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;QACR,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,CAAC;QACpD,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,GACA,OAAO,CAAC,QAAQ,CAAC;IAiEpB;;OAEG;IACG,gBAAgB,CAAC,CAAC,EACtB,MAAM,EAAE,UAAU,EAClB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,QAAQ,EAClB,OAAO,CAAC,EAAE;QACR,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC,CAAC;QAC9D,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,GACA,OAAO,CAAC,CAAC,CAAC;IA2Eb;;OAEG;IACH,OAAO,CAAC,WAAW;CA0BpB"}
package/dist/http.js CHANGED
@@ -91,6 +91,70 @@ export class HttpClient {
91
91
  throw new CastariError('An unexpected error occurred');
92
92
  }
93
93
  }
94
+ /**
95
+ * Get the base URL for API requests
96
+ */
97
+ getBaseUrl() {
98
+ return this.baseUrl;
99
+ }
100
+ /**
101
+ * Make an HTTP request and return the raw Response (for binary downloads, etc.)
102
+ */
103
+ async rawRequest(method, path, options) {
104
+ const url = new URL(`/api/v1${path}`, this.baseUrl);
105
+ // Add query parameters
106
+ if (options?.query) {
107
+ for (const [key, value] of Object.entries(options.query)) {
108
+ if (value !== undefined) {
109
+ url.searchParams.set(key, String(value));
110
+ }
111
+ }
112
+ }
113
+ // Build headers
114
+ const headers = {};
115
+ // Add auth header
116
+ if (this.authValue) {
117
+ headers['Authorization'] = `Bearer ${this.authValue}`;
118
+ }
119
+ // Create abort controller for timeout
120
+ const controller = new AbortController();
121
+ const timeout = options?.timeout ?? 120000;
122
+ const timeoutId = setTimeout(() => controller.abort(), timeout);
123
+ try {
124
+ const response = await fetch(url.toString(), {
125
+ method,
126
+ headers,
127
+ signal: controller.signal,
128
+ redirect: 'follow',
129
+ });
130
+ clearTimeout(timeoutId);
131
+ if (!response.ok) {
132
+ const contentType = response.headers.get('content-type');
133
+ let data;
134
+ if (contentType?.includes('application/json')) {
135
+ data = await response.json();
136
+ }
137
+ else {
138
+ data = await response.text();
139
+ }
140
+ this.handleError(response.status, data, response.headers);
141
+ }
142
+ return response;
143
+ }
144
+ catch (error) {
145
+ clearTimeout(timeoutId);
146
+ if (error instanceof CastariError) {
147
+ throw error;
148
+ }
149
+ if (error instanceof Error) {
150
+ if (error.name === 'AbortError') {
151
+ throw new CastariError('Request timed out');
152
+ }
153
+ throw new CastariError(`Request failed: ${error.message}`);
154
+ }
155
+ throw new CastariError('An unexpected error occurred');
156
+ }
157
+ }
94
158
  /**
95
159
  * Make a multipart form-data request for file uploads
96
160
  */
package/dist/http.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -2,7 +2,10 @@ export { CastariClient } from './client.js';
2
2
  export { AgentsAPI } from './agents.js';
3
3
  export { UsageAPI } from './usage.js';
4
4
  export { AuthAPI } from './auth.js';
5
+ export { StorageAPI } from './storage.js';
6
+ export { MountsAPI } from './mounts.js';
7
+ export { FilesAPI } from './files.js';
5
8
  export { CastariError, AuthenticationError, NotFoundError, ValidationError, RateLimitError, BadRequestError, ServerError, } from './errors.js';
6
9
  export { loadCredentials, saveCredentials, clearCredentials, loadConfig, saveConfig, getApiUrl, getAuth, type Credentials, type Config, } from './config.js';
7
- export type { Agent, AgentConfig, AgentsListResponse, AgentSourceType, AgentStatus, ApiKeyResponse, CreateAgentOptions, InvocationResponse, InvokeOptions, Secret, UploadResponse, User, UsageSummary, UsageSummaryResponse, DailyUsage, DailyUsageResponse, CastariClientOptions, ApiErrorResponse, } from './types.js';
10
+ export type { Agent, AgentConfig, AgentsListResponse, AgentSourceType, AgentStatus, ApiKeyResponse, ApiKeyInfo, ApiKeyListResponse, ApiKeyCreateResponse, CreateAgentOptions, UpdateAgentOptions, InvocationResponse, InvokeOptions, Secret, UploadResponse, User, UsageSummary, UsageSummaryResponse, DailyUsage, DailyUsageResponse, CastariClientOptions, ApiErrorResponse, Session, SessionListResponse, InvocationHistoryItem, InvocationListResponse, StorageProvider, Bucket, BucketListResponse, CreateBucketOptions, UpdateBucketOptions, BucketCredentials, TestConnectionResult, PresignedUrlOptions, PresignedUrl, FileInfo, FileListResponse, PermissionMode, PermissionRule, Mount, MountListResponse, AddMountOptions, UpdateMountOptions, FileScope, FileUploadStatus, ManagedFile, FileUploadResponse, ManagedFileList, StorageUsage, PresignedUpload, AgentFile, AgentFileList, AttachFileOptions, ListFilesOptions, UploadFileOptions, UpdateFileOptions, GetUploadUrlOptions, } from './types.js';
8
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAG5C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,aAAa,EACb,eAAe,EACf,cAAc,EACd,eAAe,EACf,WAAW,GACZ,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,UAAU,EACV,UAAU,EACV,SAAS,EACT,OAAO,EACP,KAAK,WAAW,EAChB,KAAK,MAAM,GACZ,MAAM,aAAa,CAAC;AAGrB,YAAY,EACV,KAAK,EACL,WAAW,EACX,kBAAkB,EAClB,eAAe,EACf,WAAW,EACX,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,aAAa,EACb,MAAM,EACN,cAAc,EACd,IAAI,EACJ,YAAY,EACZ,oBAAoB,EACpB,UAAU,EACV,kBAAkB,EAClB,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAG5C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,aAAa,EACb,eAAe,EACf,cAAc,EACd,eAAe,EACf,WAAW,GACZ,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,UAAU,EACV,UAAU,EACV,SAAS,EACT,OAAO,EACP,KAAK,WAAW,EAChB,KAAK,MAAM,GACZ,MAAM,aAAa,CAAC;AAGrB,YAAY,EACV,KAAK,EACL,WAAW,EACX,kBAAkB,EAClB,eAAe,EACf,WAAW,EACX,cAAc,EACd,UAAU,EACV,kBAAkB,EAClB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,aAAa,EACb,MAAM,EACN,cAAc,EACd,IAAI,EACJ,YAAY,EACZ,oBAAoB,EACpB,UAAU,EACV,kBAAkB,EAClB,oBAAoB,EACpB,gBAAgB,EAEhB,OAAO,EACP,mBAAmB,EAEnB,qBAAqB,EACrB,sBAAsB,EAEtB,eAAe,EACf,MAAM,EACN,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EACnB,YAAY,EACZ,QAAQ,EACR,gBAAgB,EAEhB,cAAc,EACd,cAAc,EACd,KAAK,EACL,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAElB,SAAS,EACT,gBAAgB,EAChB,WAAW,EACX,kBAAkB,EAClB,eAAe,EACf,YAAY,EACZ,eAAe,EACf,SAAS,EACT,aAAa,EACb,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,YAAY,CAAC"}
package/dist/index.js CHANGED
@@ -4,6 +4,9 @@ export { CastariClient } from './client.js';
4
4
  export { AgentsAPI } from './agents.js';
5
5
  export { UsageAPI } from './usage.js';
6
6
  export { AuthAPI } from './auth.js';
7
+ export { StorageAPI } from './storage.js';
8
+ export { MountsAPI } from './mounts.js';
9
+ export { FilesAPI } from './files.js';
7
10
  // Errors
8
11
  export { CastariError, AuthenticationError, NotFoundError, ValidationError, RateLimitError, BadRequestError, ServerError, } from './errors.js';
9
12
  // Config utilities
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc;AACd,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,cAAc;AACd,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,SAAS;AACT,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,aAAa,EACb,eAAe,EACf,cAAc,EACd,eAAe,EACf,WAAW,GACZ,MAAM,aAAa,CAAC;AAErB,mBAAmB;AACnB,OAAO,EACL,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,UAAU,EACV,UAAU,EACV,SAAS,EACT,OAAO,GAGR,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc;AACd,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,cAAc;AACd,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,SAAS;AACT,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,aAAa,EACb,eAAe,EACf,cAAc,EACd,eAAe,EACf,WAAW,GACZ,MAAM,aAAa,CAAC;AAErB,mBAAmB;AACnB,OAAO,EACL,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,UAAU,EACV,UAAU,EACV,SAAS,EACT,OAAO,GAGR,MAAM,aAAa,CAAC"}
@@ -0,0 +1,49 @@
1
+ import type { HttpClient } from './http.js';
2
+ import type { Mount, AddMountOptions, UpdateMountOptions } from './types.js';
3
+ /**
4
+ * API for managing agent mounts
5
+ */
6
+ export declare class MountsAPI {
7
+ private client;
8
+ constructor(client: HttpClient);
9
+ /**
10
+ * List all mounts for an agent
11
+ * @param agentSlug - The agent's unique slug
12
+ * @returns Array of mounts
13
+ */
14
+ getMounts(agentSlug: string): Promise<Mount[]>;
15
+ /**
16
+ * Get a specific mount
17
+ * @param agentSlug - The agent's unique slug
18
+ * @param mountId - The mount's ID
19
+ * @returns The mount
20
+ */
21
+ getMount(agentSlug: string, mountId: string): Promise<Mount>;
22
+ /**
23
+ * Add a mount to an agent
24
+ * @param agentSlug - The agent's unique slug
25
+ * @param options - Mount options
26
+ * @returns The created mount
27
+ */
28
+ addMount(agentSlug: string, options: AddMountOptions): Promise<Mount>;
29
+ /**
30
+ * Update a mount
31
+ * @param agentSlug - The agent's unique slug
32
+ * @param mountId - The mount's ID
33
+ * @param options - Update options
34
+ * @returns The updated mount
35
+ */
36
+ updateMount(agentSlug: string, mountId: string, options: UpdateMountOptions): Promise<Mount>;
37
+ /**
38
+ * Remove a mount from an agent
39
+ * @param agentSlug - The agent's unique slug
40
+ * @param mountId - The mount's ID
41
+ */
42
+ removeMount(agentSlug: string, mountId: string): Promise<void>;
43
+ /**
44
+ * Force sync mounts for a running agent
45
+ * @param agentSlug - The agent's unique slug
46
+ */
47
+ syncMounts(agentSlug: string): Promise<void>;
48
+ }
49
+ //# sourceMappingURL=mounts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mounts.d.ts","sourceRoot":"","sources":["../src/mounts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,KAAK,EAAE,KAAK,EAAqB,eAAe,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEhG;;GAEG;AACH,qBAAa,SAAS;IACR,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,UAAU;IAEtC;;;;OAIG;IACG,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAQpD;;;;;OAKG;IACG,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAOlE;;;;;OAKG;IACG,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC;IAwB3E;;;;;;OAMG;IACG,WAAW,CACf,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,KAAK,CAAC;IA6BjB;;;;OAIG;IACG,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOpE;;;OAGG;IACG,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGnD"}
package/dist/mounts.js ADDED
@@ -0,0 +1,99 @@
1
+ /**
2
+ * API for managing agent mounts
3
+ */
4
+ export class MountsAPI {
5
+ client;
6
+ constructor(client) {
7
+ this.client = client;
8
+ }
9
+ /**
10
+ * List all mounts for an agent
11
+ * @param agentSlug - The agent's unique slug
12
+ * @returns Array of mounts
13
+ */
14
+ async getMounts(agentSlug) {
15
+ const response = await this.client.request('GET', `/agents/${encodeURIComponent(agentSlug)}/mounts`);
16
+ return response.mounts;
17
+ }
18
+ /**
19
+ * Get a specific mount
20
+ * @param agentSlug - The agent's unique slug
21
+ * @param mountId - The mount's ID
22
+ * @returns The mount
23
+ */
24
+ async getMount(agentSlug, mountId) {
25
+ return this.client.request('GET', `/agents/${encodeURIComponent(agentSlug)}/mounts/${encodeURIComponent(mountId)}`);
26
+ }
27
+ /**
28
+ * Add a mount to an agent
29
+ * @param agentSlug - The agent's unique slug
30
+ * @param options - Mount options
31
+ * @returns The created mount
32
+ */
33
+ async addMount(agentSlug, options) {
34
+ const body = {
35
+ bucket_slug: options.bucketSlug,
36
+ mount_path: options.mountPath,
37
+ };
38
+ if (options.sourcePrefix !== undefined) {
39
+ body.source_prefix = options.sourcePrefix;
40
+ }
41
+ if (options.permissionRules !== undefined) {
42
+ body.permission_rules = options.permissionRules;
43
+ }
44
+ if (options.cacheEnabled !== undefined) {
45
+ body.cache_enabled = options.cacheEnabled;
46
+ }
47
+ if (options.cacheTtlSeconds !== undefined) {
48
+ body.cache_ttl_seconds = options.cacheTtlSeconds;
49
+ }
50
+ return this.client.request('POST', `/agents/${encodeURIComponent(agentSlug)}/mounts`, {
51
+ body,
52
+ });
53
+ }
54
+ /**
55
+ * Update a mount
56
+ * @param agentSlug - The agent's unique slug
57
+ * @param mountId - The mount's ID
58
+ * @param options - Update options
59
+ * @returns The updated mount
60
+ */
61
+ async updateMount(agentSlug, mountId, options) {
62
+ const body = {};
63
+ if (options.mountPath !== undefined) {
64
+ body.mount_path = options.mountPath;
65
+ }
66
+ if (options.sourcePrefix !== undefined) {
67
+ body.source_prefix = options.sourcePrefix;
68
+ }
69
+ if (options.permissionRules !== undefined) {
70
+ body.permission_rules = options.permissionRules;
71
+ }
72
+ if (options.cacheEnabled !== undefined) {
73
+ body.cache_enabled = options.cacheEnabled;
74
+ }
75
+ if (options.cacheTtlSeconds !== undefined) {
76
+ body.cache_ttl_seconds = options.cacheTtlSeconds;
77
+ }
78
+ if (options.enabled !== undefined) {
79
+ body.enabled = options.enabled;
80
+ }
81
+ return this.client.request('PATCH', `/agents/${encodeURIComponent(agentSlug)}/mounts/${encodeURIComponent(mountId)}`, { body });
82
+ }
83
+ /**
84
+ * Remove a mount from an agent
85
+ * @param agentSlug - The agent's unique slug
86
+ * @param mountId - The mount's ID
87
+ */
88
+ async removeMount(agentSlug, mountId) {
89
+ return this.client.request('DELETE', `/agents/${encodeURIComponent(agentSlug)}/mounts/${encodeURIComponent(mountId)}`);
90
+ }
91
+ /**
92
+ * Force sync mounts for a running agent
93
+ * @param agentSlug - The agent's unique slug
94
+ */
95
+ async syncMounts(agentSlug) {
96
+ return this.client.request('POST', `/agents/${encodeURIComponent(agentSlug)}/files/sync`);
97
+ }
98
+ }
99
+ //# sourceMappingURL=mounts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mounts.js","sourceRoot":"","sources":["../src/mounts.ts"],"names":[],"mappings":"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"}